tree 3fe50c810f8c15161918972b030a1636232b5d6e
parent 3a492527fd18be317e257a58c772c2fb7775376c
author Shawn McCarney <shawnmm@us.ibm.com> 1702649859 -0600
committer Shawn McCarney <shawnmm@us.ibm.com> 1702655070 -0600

pseq: Document enhanced JSON config file format

The JSON config file format is being enhanced for the
phosphor-power-sequencer application.

The enhancements are intended to provide the following benefits:
* Generalize the format so it can be used for any power sequencer
  device.  The current format is intended only for UCD90XXX devices.
* Remove the "pins" array.  Move the GPIO pin information to an optional
  property of a rail object.  This will eliminate some duplication and
  make pgood isolation more flexible.
* Change the meaning of the rail order within the array of rails.
  * In the current format, the array index implies the PMBus PAGE.  This
    causes problems because it is impossible to ignore a PAGE that is
    not a valid voltage rail.  It also does not provide information
    on the power on sequence, which is often different than the PAGE
    order.
  * In the new format, the rails in the array will be in power on
    sequence order.  The PMBus page will be explicitly defined using
    a new property.
* Add rail property that specifies the PMBus PAGE.
* Add rail property that specifies the pgood status should be obtained
  using the PMBus STATUS_VOUT command.
* Add rail property that specifies the pgood status should be obtained
  by comparing the output voltage (READ_VOUT) to the undervoltage
  (VOUT_UV_FAULT_LIMIT) and overvoltage (VOUT_OV_FAULT_LIMIT) limits.
* Add rail property that specifies the pgood status should be obtained
  from a GPIO.

Note: This commit contains only the new JSON file format documentation.
Subsequent commits will contain the new C++ implementation and new
versions of the existing JSON files.  The current documentation, C++,
and JSON files will be retained and will remain active until all of the
new support has been merged.

Change-Id: I358a885f1675a9dd8f9ae0115e560abb3c0828fe
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com>
