Lines Matching +full:application +full:- +full:specific
1 # Power Supply Monitoring Application
7 Created: 2019-06-17
12 supply application for enterprise class systems. Some enterprise class systems
14 supply types and numbers. An application capable of communicating with the
22 The OpenBMC project currently has a [witherspoon-pfault-analysis][1] repository
23 that contains a power supply monitor application and a power sequencer monitor
24 application. The current power supply application is lacking things desired for
27 The intent of this new application design is to enhance the OpenBMC project with
28 a single power supply application that can communicate with one or more
30 in the existing application that has multiple instances talking to a single
35 Some of these requirements may be deemed as business specific logic, and thus
38 1. The power supply application must detect, isolate, and report individual
40 2. The power supply application must determine power supply presence,
42 3. The power supply application must report power supply failures to IPMI and
44 4. The power supply application must report power supply present/missing changes
47 moved from the `phosphor-dbus-monitor` to this application, depending on if
50 5. The power supply application must ensure proper power supply configuration
52 6. The power supply application must collect and report power supply VPD (unless
53 that VPD is collected and reported via another application reading an EEPROM
55 7. The power supply application must allow power supply hot-plug and concurrent
57 8. The power supply application should create and update average and maximum
59 9. The power supply application must be able to detect how many power supplies
63 10. The application must be able to recognize if the power supplies present
65 the application updating properties for a Minimum Ship Level ([MSL][3])
67 11. The application must create error logs for invalid configurations, or for
70 12. The application would periodically communicate with the power supplies via
72 only known to be created and updated by the [ibm-cffps][4] device driver).
76 specific code paths may be required for commands in the "User Data and
78 Specific Commands" (MFR_SPECIFIC_00 through MFR_SPECIFIC_45), as well as bit
83 The proposal is to create a single new power supply application in the OpenBMC
84 [phosphor-power][6] repository. The application would be written in C++17.
86 Upon startup, the power supply application would be passed a parameter
88 file. This file would contain information such as the D-Bus object name(s),
93 The power supply application would then detect which system type it is running
95 information, what type each supply is, etc. The application would then try to
97 would be considered invalid. The application should continue to check what if
101 to the system. At that point the application will start to and continue to
106 The proposed power supply application would not control any fans internal to the
107 power supply, that function would be left to other userspace application(s).
112 considered, essentially similar to the [psu-monitor][5] from the
113 [witherspoon-pfault-analysis][1] repository. This design was avoided due to:
115 - Complexity of the various valid and invalid configuration combinations.
116 - Power line disturbance communication.
117 - Timing/serialization concerns with power supply communication.
121 The application is expected to have some impact on the PLDM API, due to the
129 The application is expected to have a similar or lesser performance impact than
130 the one application per power supply.
136 - Configuration not listed as valid results in appropriate behavior.
137 - Application detects and logs faults for power supply faults including input
140 - Power supply VPD data reported for present power supplies.
141 - Power supply removal and insertion, on a system supporting concurrent
143 - System operates through power supply faults and power line disturbances as
149 [1]: https://github.com/openbmc/witherspoon-pfault-analysis
152 …https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Control/R…
154 https://github.com/openbmc/linux/blob/dev-5.3/drivers/hwmon/pmbus/ibm-cffps.c
156 https://github.com/openbmc/witherspoon-pfault-analysis/tree/master/power-supply
157 [6]: https://github.com/openbmc/phosphor-power/