| 6ab6da0f | 11-Feb-2026 |
Chris Cain <cjcain@us.ibm.com> |
Block USR1 signal until the signal handler is enabled
The USR1 signal is used to collect dump data from the occ-control app. The signal was not being blocked until just before the handler was starte
Block USR1 signal until the signal handler is enabled
The USR1 signal is used to collect dump data from the occ-control app. The signal was not being blocked until just before the handler was started. Tester hit a window where the app got started, and then the signal came in before the handler was enabled, so the app was killed instead of doing the data collection.
This change will block the USR1 signal as first thing in the start of the app, preventing the app from being killed.
Signed-off-by: Chris Cain <cjcain@us.ibm.com> Change-Id: I7c437072bdd19411bc9dfca45a26cf87d0df9ac8
show more ...
|
| dd4f40e9 | 28-Jan-2026 |
Chris Cain <cjcain@us.ibm.com> |
Prevent trying to read IPS status if driver not ready
Need to make sure that the OCC device driver has detected all the devices and created the hwmon path before attempting to read a status file.
S
Prevent trying to read IPS status if driver not ready
Need to make sure that the OCC device driver has detected all the devices and created the hwmon path before attempting to read a status file.
Signed-off-by: Chris Cain <cjcain@us.ibm.com> Change-Id: I6c0e581d2c028204e033ebe4282fdbac619c0dcb
show more ...
|
| db89b160 | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: Initial commit
Added initial .clang-tidy configuration file with recommended C++ checks aligned with the OpenBMC-approved checklist. This setup enforces modern C++ best practices and hel
clang-tidy: Initial commit
Added initial .clang-tidy configuration file with recommended C++ checks aligned with the OpenBMC-approved checklist. This setup enforces modern C++ best practices and helps catch common issues early in development.
Change-Id: I87f8970d13cdb543a3167b6aa069edf7c0f0f554 Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| a312b69a | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: add explicit optional guards
Add has_value() checks before dereferencing pldmInstanceID in prepareSetEffecterReq and encodeGetStateSensorRequest to satisfy clang-tidy bugprone-unchecked-
clang-tidy: add explicit optional guards
Add has_value() checks before dereferencing pldmInstanceID in prepareSetEffecterReq and encodeGetStateSensorRequest to satisfy clang-tidy bugprone-unchecked-optional-access. Also extract a local const instanceId in sendPldm for logging instead of using pldmInstanceID.value() directly. These changes avoid warnings without altering functional behavior.
Fixed below errors ''' ../pldm.cpp:424:9: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors] 424 | pldmInstanceID.value(), effecterId, effecterCount, stateField.data(), ../pldm.cpp:716:47: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors] 716 | "INST", instance, "ID", pldmInstanceID.value(), "LEN", ../pldm.cpp:1117:55: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors] 1117 | auto msgRc = encode_get_state_sensor_readings_req(pldmInstanceID.value(), '''
Change-Id: I5dcbaa7760b4de26368ef51edad8295b3c7341ad Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| dc362760 | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: replace NULL/0 with nullptr
Adopt C++11 nullptr for pointer initialization and null checks, replacing 0/NULL. Improves readability, avoids implicit integer conversions, and aligns with c
clang-tidy: replace NULL/0 with nullptr
Adopt C++11 nullptr for pointer initialization and null checks, replacing 0/NULL. Improves readability, avoids implicit integer conversions, and aligns with clang-tidy modernize-use-nullptr. No functional behavior changes.
Change-Id: Id94e27d3c7fd2a370310f91c48f1a7d06e79513f Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| 4ac400fa | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: initialize event and pointers to nullptr
Clang-tidy warned about uninitialized fields being used in the constructor initializer list.
Fixed below errors ''' ../test/error_files_tests.cp
clang-tidy: initialize event and pointers to nullptr
Clang-tidy warned about uninitialized fields being used in the constructor initializer list.
Fixed below errors ''' ../test/error_files_tests.cpp:27:46: error: field 'event' is uninitialized when used here [-Werror,-Wuninitialized] ../test/utest.cpp:18:46: error: field 'event' is uninitialized when used here [-Werror,-Wuninitialized] '''
Change-Id: Ie60d7a3fbe5a3ce2f7a9a2ffe898c18584616f9f Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| 3d6cc9d2 | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: fix invalid enum scoping in occ_status
Enums for ThrottleReasons were incorrectly referenced through the object instance (e.g., throttleHandle->ThrottleReasons::PowerLimit), which is inv
clang-tidy: fix invalid enum scoping in occ_status
Enums for ThrottleReasons were incorrectly referenced through the object instance (e.g., throttleHandle->ThrottleReasons::PowerLimit), which is invalid C++ and fails under clang-tidy due to stricter name lookup rules.
Fixed below error ''' ../occ_status.cpp:622:54: error: 'sdbusplus::common::xyz::openbmc_project::control::power::Throttle::ThrottleReasons::PowerLimit' is not a member of class 'sdbusplus::server::object::object<sdbusplus::server::xyz::openbmc_project::control::power::Throttle>' 622 | throttleHandle->ThrottleReasons::PowerLimit); | ~~~~~~~~~~~~~~~~~^ ../occ_status.cpp:627:54: error: 'sdbusplus::common::xyz::openbmc_project::control::power::Throttle::ThrottleReasons::ThermalLimit' is not a member of class 'sdbusplus::server::object::object<sdbusplus::server::xyz::openbmc_project::control::power::Throttle>' 627 | throttleHandle->ThrottleReasons::ThermalLimit); | ~~~~~~~~~~~~~~~~~^ ../occ_status.cpp:632:54: error: 'sdbusplus::common::xyz::openbmc_project::control::power::Throttle::ThrottleReasons::ManagementDetectedFault' is not a member of class 'sdbusplus::server::object::object<sdbusplus::server::xyz::openbmc_project::control::power::Throttle>' 632 | throttleHandle->ThrottleReasons::ManagementDetectedFault); | ~~~~~~~~~~~~~~~~~^ '''
Change-Id: Ibceb682d28148b3a686b07c1cb2b13faf316dfad Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| 1c75f38a | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: add missing override
Mark setMode with override to match the base and silence -Winconsistent-missing-override. No functional change.
Fixed below error ''' ../occ_pass_through.hpp:65:10
clang-tidy: add missing override
Mark setMode with override to match the base and silence -Winconsistent-missing-override. No functional change.
Fixed below error ''' ../occ_pass_through.hpp:65:10: error: 'setMode' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override] 65 | bool setMode(const uint8_t mode, const uint16_t modeData); '''
Change-Id: I9daa8b34a146d05e1b8d89e2c980b279af443acc Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| 43788648 | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: unify tag to class for Manager
Change Manager definition in occ_manager.hpp from struct to class and update all forward declarations to use class for consistency. This resolves -Wmismatc
clang-tidy: unify tag to class for Manager
Change Manager definition in occ_manager.hpp from struct to class and update all forward declarations to use class for consistency. This resolves -Wmismatched-tags warning and prevents potential MSVC ABI linker issues. No functional change.
Fixd below error ''' ../occ_manager.hpp:59:1: error: 'Manager' defined as a struct here but previously declared as a class; this is valid, but may result in linker errors under the Microsoft C++ ABI [-Werror,-Wmismatched-tags] 59 | struct Manager | ^ ../occ_status.hpp:26:1: note: did you mean struct here? 26 | class Manager; | ^~~~~ | struct ../occ_device.hpp:22:1: note: did you mean struct here? 22 | class Manager; | ^~~~~ | struct ../occ_presence.hpp:9:1: note: did you mean struct here? 9 | class Manager; | ^~~~~ | struct ../powermode.hpp:24:1: note: did you mean struct here? 24 | class Manager; | ^~~~~ | struct '''
Change-Id: I9dec5889efac4f0e0ff465ed64fe864aae014d90 Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| b86aab7a | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: remove unused private field
Drop unused private member 'manager' from powermode.hpp to resolve -Wunused-private-field warning. No functional change.
Fixed below error ''' ../powermode.h
clang-tidy: remove unused private field
Drop unused private member 'manager' from powermode.hpp to resolve -Wunused-private-field warning. No functional change.
Fixed below error ''' ../powermode.hpp:352:20: error: private field 'manager' is not used [-Werror,-Wunused-private-field] 352 | const Manager& manager; '''
Change-Id: I0ddf0414b8193637fced2679280e53fa4cc1aa1f Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| d7751374 | 31-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: delete default constructor
Default constructor was invalid for class semantics and caused clang-tidy/Clang diagnostics. Mark the default constructor as `=delete` to prevent accidental de
clang-tidy: delete default constructor
Default constructor was invalid for class semantics and caused clang-tidy/Clang diagnostics. Mark the default constructor as `=delete` to prevent accidental default construction and keep -Werror builds green. No functional changes.
Fixed below errors (example) ''' ../occ_errors.hpp:36:12: error: explicitly defaulted move assignment operator is implicitly deleted [-Werror,-Wdefaulted-function-deleted] 36 | Error& operator=(Error&&) = default; '''
Change-Id: I08d6a6e84bb98fe5e5c01265f494e2eb5eaf6bf0 Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| 5af5a452 | 04-Nov-2025 |
Chris Cain <cjcain@us.ibm.com> |
Fix compile error for pstbmc target
Compiler does not appear to like user-defined literal suffix to create std::string object from string.
Defined a constant string instead of literal and compile w
Fix compile error for pstbmc target
Compiler does not appear to like user-defined literal suffix to create std::string object from string.
Defined a constant string instead of literal and compile works.
Change-Id: I77c0886d4703eb36b94a45d4d27cd9505ff1394e Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
| 764d3599 | 04-Nov-2025 |
Patrick Williams <patrick@stwcx.xyz> |
use sdbusplus unpack syntax
Rather than defining a variable and then reading it from a message, sdbusplus also supports directly unpack-ing from the message. Use this syntax instead as it is more e
use sdbusplus unpack syntax
Rather than defining a variable and then reading it from a message, sdbusplus also supports directly unpack-ing from the message. Use this syntax instead as it is more efficient and succinct.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Id36cca2ca362f505ed9f70d30f6665a8c1a62722
show more ...
|
| cbeaa78b | 04-Nov-2025 |
Patrick Williams <patrick@stwcx.xyz> |
utils: remove is_method_error call
An `is_method_error` is not appropriate after an sdbus `call` since `call` will always throw an exception. Remove the pointless call and instead catch the excepti
utils: remove is_method_error call
An `is_method_error` is not appropriate after an sdbus `call` since `call` will always throw an exception. Remove the pointless call and instead catch the exception.
Change-Id: I6bd39b96b66c9e1ea8b254bc5b9ebd126b619810 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
| ffb6321e | 01-Aug-2025 |
Chris Cain <cjcain@us.ibm.com> |
Add support for collecting data for BMC dumps
When occ-control receives a USR1 signal, it will trigger the code to collect the following data: - number of OCC objects created - for each active OCC:
Add support for collecting data for BMC dumps
When occ-control receives a USR1 signal, it will trigger the code to collect the following data: - number of OCC objects created - for each active OCC: state, role, hwmon path, poll response, and WOF data
The data will be written in JSON format to a file which can be collected and added to a dump. (/tmp/occ_control_dump.json)
To force the data collection: killall -s SIGUSR1 openpower-occ-control
Change-Id: I7a304f7ce0eb1c9109f630f187adf9c95722652e Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
| ab397db1 | 09-Jul-2025 |
Patrick Williams <patrick@stwcx.xyz> |
meson: use non-deprecated systemd packageconfig
Systemd's packageconfig file has both `systemdsystemunitdir` and `systemd_system_unit_dir` defined. The non-underscore one appears to be a deprecated
meson: use non-deprecated systemd packageconfig
Systemd's packageconfig file has both `systemdsystemunitdir` and `systemd_system_unit_dir` defined. The non-underscore one appears to be a deprecated alias[1]. Move to the non-deprecated / underscore-separated variant.
[1]: https://github.com/systemd/systemd/commit/4908de44b0a0409f84a7cdc5641b114d6ce8ba03
Change-Id: I40fe79738683cf569f9aa4705adecabf187a65d5 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
| 16a5adb2 | 10-Jun-2025 |
Sheldon Bailey <baileysh@us.ibm.com> |
Remove Legacy code from P10 and future code
Remove Occ control code that supports older hardware models P8 and P9. This is in preparation for occ control taking over occ poll handling.
Change-Id: I
Remove Legacy code from P10 and future code
Remove Occ control code that supports older hardware models P8 and P9. This is in preparation for occ control taking over occ poll handling.
Change-Id: Iff99ac8ff3a3fe6e9a6af994b20b06793ead50fc Signed-off-by: Sheldon Bailey <baileysh@us.ibm.com>
show more ...
|
| ee36451f | 16-Apr-2025 |
Chris Cain <cjcain@us.ibm.com> |
Use pldm_msg_hdr_correlate_response()
This call to ensure the PLDM response matches the PLDM request for the HRESET, OCC Reset, and Sensor Status requests.
If it does not match, the response is ign
Use pldm_msg_hdr_correlate_response()
This call to ensure the PLDM response matches the PLDM request for the HRESET, OCC Reset, and Sensor Status requests.
If it does not match, the response is ignored.
Tested on Rainier
Change-Id: Id072aa79518752c11eb0f3108cd4066cfa1baa85 Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
| f7881506 | 16-Apr-2025 |
Chris Cain <cjcain@us.ibm.com> |
Prevent multiple PM complex resets from being queued
- Clear any prior reset request when notified that OCCs are active - If OCC state is safe/not valid, prevent immediate request for reset. Start a
Prevent multiple PM complex resets from being queued
- Clear any prior reset request when notified that OCCs are active - If OCC state is safe/not valid, prevent immediate request for reset. Start a safe state delay timer and if it does not recover then request a reset. - If unable to read the OCC state after a retry, then request a reset. (no change to this behavior)
Problem: A system where the OCC went to safe state, and BMC requested a reset, but HTMT had already requested a reset, so the PM complex got reset multiple times when not necessary.
Tested on Rainier/Fuji
Change-Id: Id40b00e6d3708358478271bb6d5acef804715d4a Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
| c488bac1 | 17-Mar-2025 |
Chris Cain <cjcain@us.ibm.com> |
Clear flags when the host changes to powered off state
When the host is powered off, the OCCs will be stopped, so clear any reset pending flags as well as any outstanding HRESET requests.
This will
Clear flags when the host changes to powered off state
When the host is powered off, the OCCs will be stopped, so clear any reset pending flags as well as any outstanding HRESET requests.
This will ensure the next boot will start clean and not react to something that happened on prior boot.
Tested on Rainier for several error scenarios.
Change-Id: Ie4156975a844e823787f7162ee0542d7f099bd12 Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
| a21c4719 | 04-Mar-2025 |
Chris Cain <cjcain@us.ibm.com> |
Idle power saver status not updated after boot
After booting system in default mode with idle power saver enabled, the idle power saver status never changed to active. The OCC showed that IPS was ac
Idle power saver status not updated after boot
After booting system in default mode with idle power saver enabled, the idle power saver status never changed to active. The OCC showed that IPS was active.
This change will ensure that the status gets updated correctly.
Validated with 1110 code on Rainier
Change-Id: Ied1b9c135768214024d6cfed442d63075f56b033 Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
| b89d619c | 05-Mar-2025 |
Sheldon Bailey <baileysh@us.ibm.com> |
Fix occ_control terminate after OCC reset
Change to wrapper the OccDBusSensors access in a try/catch instead of terminating on failed access
Change-Id: Ib35c1fbc1f9e01e074ec5ccf84639c1821953654 Sig
Fix occ_control terminate after OCC reset
Change to wrapper the OccDBusSensors access in a try/catch instead of terminating on failed access
Change-Id: Ib35c1fbc1f9e01e074ec5ccf84639c1821953654 Signed-off-by: Sheldon Bailey <baileysh@us.ibm.com>
show more ...
|
| d2b044f9 | 12-Feb-2025 |
Sheldon Bailey <baileysh@us.ibm.com> |
Handle OCC poll changes for per chip power data
Handle OCC poll change for per chip memory and processor data. and Provide the data to Redfish
Change-Id: I88725599ec70d61fb43c1699520ea17ccac91243 S
Handle OCC poll changes for per chip power data
Handle OCC poll change for per chip memory and processor data. and Provide the data to Redfish
Change-Id: I88725599ec70d61fb43c1699520ea17ccac91243 Signed-off-by: Sheldon Bailey <baileysh@us.ibm.com>
show more ...
|
| 92dfb271 | 13-Feb-2025 |
Chris Cain <cjcain@us.ibm.com> |
Ignore HRESET_NOT_READY state until HRESET completes
After HRESET has been requested, code will wait for HRESET_READY or HRESET_FAILED status before attempting OCC communication again.
Code will al
Ignore HRESET_NOT_READY state until HRESET completes
After HRESET has been requested, code will wait for HRESET_READY or HRESET_FAILED status before attempting OCC communication again.
Code will also not clear the outstandingHReset until READY/FAILED, since the reset should still be in progress.
OCC comm will get disabled before the HRESET and re-enabled if reset completes successfully. If failed, no further comm will work.
My testing found that pldm instance ids were not getting freed automatically when receiving a response. So this change will also free those IDs when the response is received.
Tested on Rainier with recoverable and unrecoverable SBE injects.
''' Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: readOccState: Failed to read OCC0 state: Read error on I/O operation - failbit badbit Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: Status::readOccState: open/read failed trying to read OCC0 state (open errno=0) Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: readOccState: Failed to read OCC0 state: Read error on I/O operation - failbit badbit Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: Status::readOccState: open/read failed trying to read OCC0 state (open errno=11) Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: SBE timeout, requesting HRESET (OCC0) Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: Status::occActive OCC0 changed to False Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: got id 15 and set PldmInstanceId to 15 Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: openMctpDemuxTransport: pldmFd has fd=9 Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: sendPldm: calling pldm_transport_send_msg(OCC0, instance:15, 8 bytes, timeout 30) Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: pldmResetCallback: calling pldm_transport_recv_msg() instance:15 Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: pldmResetCallback: pldm_transport_recv_msg() rsp was 4 bytes Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: pldmResetCallback: Reset has been successfully started Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: Freed PLDM instance ID 15 Feb 13 18:33:29 p10bmc openpower-occ-control[22740]: pldm: HRESET is NOT READY (OCC0) Feb 13 18:34:30 p10bmc openpower-occ-control[22740]: HRESET succeeded (OCC0) Feb 13 18:34:30 p10bmc openpower-occ-control[22740]: Status::occActive OCC0 changed to True Feb 13 18:34:30 p10bmc openpower-occ-control[22740]: validateOccMaster: OCC0 is master of 4 OCCs Feb 13 18:34:34 p10bmc openpower-occ-control[22740]: Status::readOccState: OCC0 state 0x3 (lastState: 0x0) Feb 13 18:34:34 p10bmc openpower-occ-control[22740]: PowerMode::sendModeChange: SET_MODE(12,0) command to OCC0 (9 bytes) Feb 13 18:34:34 p10bmc openpower-occ-control[22740]: Idle Power Saver Parameters: enabled:True, enter:8%/240s, exit:12%/10s Feb 13 18:34:34 p10bmc openpower-occ-control[22740]: PowerMode::sendIpsData: SET_CFG_DATA[IPS] command to OCC0 (12 bytes) Feb 13 18:34:34 p10bmc openpower-occ-control[22740]: Status::readOccState: successfully read OCC0 state: 3 '''
Change-Id: I7e5bc60576e4e8fa6cba4253be535220cb8048ec Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|
| ff0ce409 | 17-Jan-2025 |
Chris Cain <cjcain@us.ibm.com> |
Add SensorPurpose for total_power sensor
Change will allow users to find the total system/chassis power sensor by querying the SensorPurpose for TotalPower. The total_power chassis association is be
Add SensorPurpose for total_power sensor
Change will allow users to find the total system/chassis power sensor by querying the SensorPurpose for TotalPower. The total_power chassis association is being removed, since the SensorPurpose will be used in its place.
Tested on Rainier.
''' $ busctl call xyz.openbmc_project.ObjectMapper /xyz/openbmc_project/object_mapper xyz.openbmc_project.ObjectMapper GetSubTree sias "/" 0 1 "xyz.openbmc_project.Sensor.Purpose"
a{sa{sas}} 1 "/xyz/openbmc_project/sensors/power/total_power" 1 "org.open_power.OCC.Control" 6 "org.freedesktop.DBus.Introspectable" "org.freedesktop.DBus.Peer" "org.freedesktop.DBus.Properties" "xyz.openbmc_project.Sensor.Purpose" "xyz.openbmc_project.Sensor.Value" "xyz.openbmc_project.State.Decorator.OperationalStatus"
$ busctl -l introspect org.open_power.OCC.Control /xyz/openbmc_project/sensors/power/total_power
NAME TYPE SIGNATURE RESULT/VALUE FLAGS org.freedesktop.DBus.Introspectable interface - - - .Introspect method - s - org.freedesktop.DBus.Peer interface - - - .GetMachineId method - s - .Ping method - - - org.freedesktop.DBus.Properties interface - - - .Get method ss v - .GetAll method s a{sv} - .Set method ssv - - .PropertiesChanged signal sa{sv}as - - xyz.openbmc_project.Association.Definitions interface - - - .Associations property a(sss) 1 "chassis" "all_sensors" "/xyz/openbmc_project/inventory/system/chassis" emits-change writable B xyz.openbmc_project.Sensor.Purpose interface - - - .Purpose property as 1 "xyz.openbmc_project.Sensor.Purpose.SensorPurpose.TotalPower" emits-change xyz.openbmc_project.Sensor.Value interface - - - .MaxValue property d inf emits-change writable .MinValue property d -inf emits-change writable .Unit property s "xyz.openbmc_project.Sensor.Value.Unit.Watts" emits-change writable .Value property d 419 emits-change writable xyz.openbmc_project.State.Decorator.OperationalStatus interface - - - .Functional property b true emits-change writable '''
Change-Id: I414c01e81cbb965d9ab68bafa06565d997abbe0f Signed-off-by: Chris Cain <cjcain@us.ibm.com>
show more ...
|