| commit | 6345c6c569603d45f20c64029e731de06f55f4f0 | [log] [tgz] |
|---|---|---|
| author | Shawn McCarney <shawnmm@us.ibm.com> | Mon May 04 10:35:05 2020 -0500 |
| committer | Shawn McCarney <shawnmm@us.ibm.com> | Wed May 06 17:05:22 2020 +0000 |
| tree | 97514798a50e93adf860cd5e5308279fd7fabd1c | |
| parent | 4e016652d8240570a2ec300fcadd5852543336a7 [diff] |
regulators: Implement D-Bus configure method
The phosphor-regulators D-Bus configure method is called from a service
file when booting the BMC system. The method is called shortly before
the regulators are enabled (turned on).
Previously the configure method did not do anything; it was a
placeholder.
This commit adds the implementation of the configure method. The method
now configures the regulator devices in the system using the rules and
actions in the JSON config file.
Also commented out the partial implementation of the D-Bus monitor
method. This method has not been fully implemented or tested yet.
Tested:
* Tested phosphor-regulators application through chassison/chassisoff
and poweron/poweroff.
* Verified systemd state and journal messages.
* Verified that all configuration specified in the config file was
applied to the regulators.
* Tested when an I2C failure occurs when configuring a regulator.
* Verified that monitoring can be safely enabled and disabled but it
performs no current function.
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com>
Change-Id: I722464a50f572c1a6e23aa13c46238d449312f31
Code for detecting and analyzing power faults on Witherspoon.
To build this package, do the following steps:
1. meson build
2. ninja -C build
To clean the repository again run `rm -rf build`.
Several applications in this repository require a PSU JSON config to run. The JSON config file provides information for:
There is an 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:/sys/bus/i2c/devices/3-0069//sys/bus/i2c/devices/3-0069/hwmon/hwmonX//sys/kernel/debug/pmbus/hwmonX//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",
}