README: Add description for psu json config

Signed-off-by: Lei YU <mine260309@gmail.com>
Change-Id: I7b64330bcf159486603fe977f2e3411247069d79
diff --git a/README.md b/README.md
index 1299878..3cb35c5 100644
--- a/README.md
+++ b/README.md
@@ -9,3 +9,46 @@
 
 To clean the repository again run `rm -rf build`.
 ```
+
+## Power Supply Monitor and Util JSON config
+
+Several applications in this repository require a PSU JSON config to run.
+The JSON config file provides information for:
+* Where to access the pmbus attributes
+* Which attribute file in pmbus maps to which property and interface in D-Bus
+* Which kernel device directory is used on which PSU
+
+There is an example [psu.json](example/psu.json) to describe the necessary
+configurations.
+
+* `inventoryPMBusAccessType` defines the pmbus access type, which tells the
+   service which sysfs type to use to read the attributes.
+   The possible values are:
+   * Base: The base dir, e.g. `/sys/bus/i2c/devices/3-0069/`
+   * Hwmon: The hwmon dir, e.g. `/sys/bus/i2c/devices/3-0069/hwmon/hwmonX/`
+   * Debug: The pmbus debug dir, e.g. `/sys/kernel/debug/pmbus/hwmonX/`
+   * DeviceDebug: The device debug dir, e.g. '/sys/kernel/debug/<driver>.<instance>/`
+   * HwmonDeviceDebug: The hwmon device debug dir, e.g. `/sys/kernel/debug/pmbus/hwmonX/cffps1/`
+* `fruConfigs` defines the mapping between the attribute file and the FRU
+   inventory interface and property.
+   The configuration example below indicates that the service will read
+   `part_number` attribute file from a directory specified by the above pmbus
+   access type, and assign to `PartNumber` property in
+   `xyz.openbmc_project.Inventory.Decorator.Asset` interface.
+   ```
+     "fruConfigs": [
+       {
+         "propertyName": "PartNumber",
+         "fileName": "part_number",
+         "interface": "xyz.openbmc_project.Inventory.Decorator.Asset"
+       }
+     ]
+   ```
+* `psuDevices` defines the kernel device dir for each PSU in inventory.
+   The configuration example below indicates that `powersupply0`'s device is
+   located in `/sys/bus/i2c/devices/3-0069`.
+   ```
+     "psuDevices": {
+       "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0" : "/sys/bus/i2c/devices/3-0069",
+     }
+   ```