commit | 6663abf392b9e7c0d3ac00f2ec56449237c5f7b7 | [log] [tgz] |
---|---|---|
author | Shawn McCarney <shawnmm@us.ibm.com> | Sat Feb 29 17:25:48 2020 -0600 |
committer | Shawn McCarney <shawnmm@us.ibm.com> | Mon Mar 02 23:26:21 2020 +0000 |
tree | 5c6379c5d7961ab3d326b4875e17c421641b52f7 | |
parent | e632e14a634ae84ce18b5b7b60dfb2573696fc7f [diff] |
regulators: Add PMBus utilities Create namespace pmbus_utils. This namespace contains utilities for sending PMBus commands over an I2C interface. These utilities are needed to implement the pmbus_write_vout_command and pmbus_read_sensor actions from the JSON config file. See pmbus_write_vout_command.md and pmbus_read_sensor.md for more information on these actions. Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com> Change-Id: I2fabca3ac8b9cd8b1f2b462c80feef6b6d7d60e8
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", }