The UCD90320Monitor class determines its device configuration from a JSON configuration file. The configuration file describes the power sequencer rails and power good (pgood) pins defined in the system.
The expected filename format is UCD90320Monitor_<systemType>.json, where <systemType> is a Compatible System name from a Chassis Entity Manager configuration file.
Example file name:
UCD90320Monitor_mysystem.json
The configuration consists of an array of rails and an array of pins. Both rails and pins use a name element. The name element should be mnemonic and unique. If the BMC system utilizes the openpower-pels extension, then it will be used as an index into the phosphor-logging Message Registry.
Example rails array with name elements:
"rails": [
{ "name": "12.0V" },
{ "name": "VDN_DCM0" }
]
The pins array also uses a line element which is the GPIO line number of the pgood pin in the power sequencer device.
Example pins array with name and line elements:
"pins": [
{
"name": "5.0V",
"line": 67
},
{
"name": "VCS_DCM0",
"line": 74
}
]
Both rails and pins can optionally define a presence element which is an inventory path to a system component which must be present in order for the rail or pin to be used in failure isolation. By default, a rail or pin is considered to be present, which could mean the necessary parts are always present in the system or that a not present part would not cause a pgood failure.
Example rails array element including presence element:
{
"name": "VCS1",
"presence": "/xyz/openbmc_project/inventory/system/chassis/motherboard/vrm1"
}
Example pins array element including presence element:
{
"name": "VPCIE",
"line": 61,
"presence": "/xyz/openbmc_project/inventory/system/chassis/motherboard/vrm0"
}