fa23e330 | 18-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Add support to read binary PMBus data
PMBus::readBinary() can read a sysfs file that contains binary data and returns a vector of bytes representing that data.
Change-Id: I3c729f502e155b007b9ab22a4
Add support to read binary PMBus data
PMBus::readBinary() can read a sysfs file that contains binary data and returns a vector of bytes representing that data.
Change-Id: I3c729f502e155b007b9ab22a4eeefec437f150e1 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
35aa1433 | 18-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Add support to set a GPIO either low or high
Change-Id: I07379f0cb63dc714cf538e4100f1a01077391f37 Signed-off-by: Matt Spinler <spinler@us.ibm.com> |
da2e0fe9 | 18-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Move GPIO class to common library
It will soon by used by the power supply code as well as the power sequencer code, so moving it to a common location.
Change-Id: Ia3e2bcf27239c6861fcb6a9d45ae08a4e
Move GPIO class to common library
It will soon by used by the power supply code as well as the power sequencer code, so moving it to a common location.
Change-Id: Ia3e2bcf27239c6861fcb6a9d45ae08a4eed778b7 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
0d09f298 | 22-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Don't use MESSAGE in elog metadata
That name is already used by the journal, and strange things can happen when there are two MESSAGE fields in a single journal entry. For example, dumping the journ
Don't use MESSAGE in elog metadata
That name is already used by the journal, and strange things can happen when there are two MESSAGE fields in a single journal entry. For example, dumping the journal without the verbose option will show that metadata as a standalone journal entry.
Change-Id: Ibc45799063f7b50b2f39a068192333bf57244d52 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
018a7bce | 04-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Fill in PowerSupply::updateInventory()
This function will read the power supply's CCIN, part number, serial number, and firmware version from the supply and then write them to the supply's inventory
Fill in PowerSupply::updateInventory()
This function will read the power supply's CCIN, part number, serial number, and firmware version from the supply and then write them to the supply's inventory object.
If the supply isn't present, it will write empty values to the inventory, so stale values won't be left in the case that something was removed.
The Purpose property on the Software.Version interface also always needs to get written to 'Other', otherwise it defaults to 'Unknown'.
The CCIN was chosen as the closest thing available for use in the Model property.
Resolves openbmc/openbmc#1782
Change-Id: I20ab1225beda93a889cc70f20c40efdfa99e64f6 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
589e8726 | 04-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Rearrange constants at the top of power_supply.cpp
Grouped the types together in preparation for adding more, and also made the naming consistent.
Change-Id: I3fff04087584e5eab8b4ef480c24774a14247a
Rearrange constants at the top of power_supply.cpp
Grouped the types together in preparation for adding more, and also made the naming consistent.
Change-Id: I3fff04087584e5eab8b4ef480c24774a14247a66 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
234ce0d2 | 04-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Add update power supply inventory stubs and calls
This function will read values from the power supply and put them into the inventory.
This commit doesn't deal with what is written, but it is prop
Add update power supply inventory stubs and calls
This function will read values from the power supply and put them into the inventory.
This commit doesn't deal with what is written, but it is properties like the part and serial numbers.
It needs to be called: * On startup, regardless of presence state. * When a power supply is added, after the hwmon directory has been determined, to read the values for the new unit * When a power supply is removed.
When the function is called when the unit isn't present, it will just write empty values to the inventory. This ensures when a unit is removed that it doesn't contain stale values.
Change-Id: I432a515cf30321d1c9e327fc9c0332d1c724cf94 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
fbae7b6c | 04-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Add readString PMBus function
This function will return the data read as an std::string.
Change-Id: Idd7afbd9b4c7e602fad3146d941f03366140948b Signed-off-by: Matt Spinler <spinler@us.ibm.com> |
4dc4678e | 04-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Add PMBus device hwmon debug access type
This can be used to find a file in: /sys/kernel/debug/pmbus/hwmonX/<device type>
For example: /sys/kernel/debug/pmbus/hwmon3/cffps1
Change-Id: Ifd9ae3a58f9
Add PMBus device hwmon debug access type
This can be used to find a file in: /sys/kernel/debug/pmbus/hwmonX/<device type>
For example: /sys/kernel/debug/pmbus/hwmon3/cffps1
Change-Id: Ifd9ae3a58f9097c89ebf80e3e19a180962968f0f Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
ba05348f | 04-Jan-2018 |
Matt Spinler <spinler@us.ibm.com> |
Add function to get PMBus device name
This will be used in the future to find a path to certain sysfs files.
Change-Id: Ia919b2f954fddf7b97bd1c5025f7c54af942b318 Signed-off-by: Matt Spinler <spinle
Add function to get PMBus device name
This will be used in the future to find a path to certain sysfs files.
Change-Id: Ia919b2f954fddf7b97bd1c5025f7c54af942b318 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
78c5c2b0 | 14-Dec-2017 |
Matt Spinler <spinler@us.ibm.com> |
Change interval units to milliseconds
Allow the monitoring intervals to be specified in milliseconds instead of seconds in order to handle polling intervals less than a second.
Change-Id: I3ef078df
Change interval units to milliseconds
Allow the monitoring intervals to be specified in milliseconds instead of seconds in order to handle polling intervals less than a second.
Change-Id: I3ef078df29ef2866920f00103710b02dbde6fcb2 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
701eef6c | 13-Dec-2017 |
Matt Spinler <spinler@us.ibm.com> |
Stop polling the GPU PGOOD fault GPIO
The UCD90160 has been recently reconfigured to tie its GPU PGOOD GPIO into its master PGOOD. This means we no longer have to poll it every second since now if
Stop polling the GPU PGOOD fault GPIO
The UCD90160 has been recently reconfigured to tie its GPU PGOOD GPIO into its master PGOOD. This means we no longer have to poll it every second since now if there is a GPU PGOOD error it will drop the master PGOOD signal SYS_PWR_OK and the power fault analysis code will be called to perform a full check and the isolation will be done there.
Change-Id: Ia0b21014f6130ed79f5735c3be6cf5c1d39782fc Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
de16d053 | 13-Dec-2017 |
Matt Spinler <spinler@us.ibm.com> |
Don't log errors for voltage warnings
Some of the bits in the STATUS_VOUT command response are just warnings, as defined by the PMBUS spec.
Previously the code would create voltage fault errors if
Don't log errors for voltage warnings
Some of the bits in the STATUS_VOUT command response are just warnings, as defined by the PMBUS spec.
Previously the code would create voltage fault errors if any bits were on in that response, and this change is to check for the actual fault (non-warning) bits only before creating error logs.
Also, the code will throw the response value into the journal now if any bits are on at all because warnings are still useful when getting a full picture of fault conditions.
Resolves openbmc/openbmc#2714
Change-Id: I51692ced4ce03bb05d64e7a90f88bd6586897942 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
show more ...
|
0a4f519b | 06-Dec-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Add a utility function for setting a property
Change-Id: I4914c8fb24e5a9dca95cb68461423e9c6961b0a9 Signed-off-by: Brandon Wyman <bjwyman@gmail.com> |
01741f17 | 01-Dec-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Fill in the function for resolving errors
The function will look for the error log entries that have the matching callout string via the association interface. It will then loop over those entries m
Fill in the function for resolving errors
The function will look for the error log entries that have the matching callout string via the association interface. It will then loop over those entries matching the callout and look for the entries that match the message for the fault/error we are looking to resolve. If/when a match is found, the Resolved property for the logging entry will be set to true.
Resolves: openbmc/openbmc#2676
Change-Id: Ic24841bca0b9fff7d70cc6343862f96f451ec468 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
08b05712 | 30-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Resolve error when input fault clears
Change-Id: I3e670f77815791852268a727c3b75bb445c099d3 Signed-off-by: Brandon Wyman <bjwyman@gmail.com> |
43ce2089 | 30-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Add a function for resolving errors
Create a function that will take a callback and message as input parameters. These will be used to find each error that matches, so that the Resolved property can
Add a function for resolving errors
Create a function that will take a callback and message as input parameters. These will be used to find each error that matches, so that the Resolved property can be set to true.
Change-Id: Icd19e72b3f59c7f7e719d58746c490d8c7e22fad Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
64dd2701 | 29-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Remove the TODO for need to deglitch
This should have been removed as part of the work for openbmc/openbmc#2484.
Change-Id: I2fb13ed7ac3ec707954a73d9348b71d5d54d95d6 Signed-off-by: Brandon Wyman <b
Remove the TODO for need to deglitch
This should have been removed as part of the work for openbmc/openbmc#2484.
Change-Id: I2fb13ed7ac3ec707954a73d9348b71d5d54d95d6 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
2ef48cf6 | 21-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Fix power supply present delay
The member variable indicating a power supply is present should be updated after the timer expires. If the message is not indicating present, the variable should be se
Fix power supply present delay
The member variable indicating a power supply is present should be updated after the timer expires. If the message is not indicating present, the variable should be set to false and the timer stopped.
Change-Id: Id5b78e42858cc2dd96b8a3fc9ecb21ec4eec6b10 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
2877add8 | 10-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Update HWMON path when supply becomes present
If the monitor starts when a power supply is missing, and then it is later added, the path to the HWMON directory will need to be updated. It is also po
Update HWMON path when supply becomes present
If the monitor starts when a power supply is missing, and then it is later added, the path to the HWMON directory will need to be updated. It is also possible that the power supply could be removed, something else added, and then the power supply gets added back, which could also require an update to the HWMON directory, as the path may have changed.
Change-Id: I9d6f6f2967e6c8fa419b7dbee052d18dc2552951 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
b08efa4f | 16-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Increase the power on delay timer to 5 seconds
The current level of ship-level Witherspoon power supplies are not always asserting the POWER_GOOD bit in the STATUS_WORD within the expected 2 second
Increase the power on delay timer to 5 seconds
The current level of ship-level Witherspoon power supplies are not always asserting the POWER_GOOD bit in the STATUS_WORD within the expected 2 second window. Increasing the power on delay timer from 2 seconds to 5 seconds.
Change-Id: I980fefcd67c092b694ef482f89928f2bd9f82857 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
e2fc7aa9 | 13-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Add check for faultFound to power fault checks
The faultFound flag was added in an earlier series of commits. This was intended to limit the number of faults leading up to error log entries. During
Add check for faultFound to power fault checks
The faultFound flag was added in an earlier series of commits. This was intended to limit the number of faults leading up to error log entries. During the checks for when the system is powered on, a number of the faults (OC, OV, OT, etc.) can ultimately lead to other faults, especially the UNIT_IS_OFF fault. For instance, if an overcurrent fault is detected, it likely means that the power supply will turn itself off. When that fault is seen and logged, the faultFound will be set to true. If that is the case, we do not need to also log a fault for the PGOOD being off or the UNIT_IS_OFF bit being on, we already know a fault has occurred. The metadata should capture the resulting end state.
Change-Id: I27ea7e77d492597a3581026285c7e552a1297a60 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
a3c675c1 | 14-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Implement de-glitch for input fault
If three consecutive reads in a row, on second apart, show the INPUT_FAULT_WARN and/or VIN_UV_FAULT on, create and log an error.
Resolves: openbmc/openbmc#2484
Implement de-glitch for input fault
If three consecutive reads in a row, on second apart, show the INPUT_FAULT_WARN and/or VIN_UV_FAULT on, create and log an error.
Resolves: openbmc/openbmc#2484
Change-Id: I35dedfc6acbb68bd8004c4fd1cc3d6dc799a9a17 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
e4af980f | 13-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Implement de-glitch for read failures
If three consecutive read failures in a row occur, one second apart, create and log an error.
Change-Id: Iaed04c307de2419c614b7916a99dd36a6aa2c106 Signed-off-b
Implement de-glitch for read failures
If three consecutive read failures in a row occur, one second apart, create and log an error.
Change-Id: Iaed04c307de2419c614b7916a99dd36a6aa2c106 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
50044ea7 | 08-Nov-2017 |
Brandon Wyman <bjwyman@gmail.com> |
Implement de-glitch for temperature fault or warn
If three consecutive reads in a row, one second apart, show the fault on, create an log an error.
Change-Id: I9fb1285a01e269beffd2201f5082545748f5b
Implement de-glitch for temperature fault or warn
If three consecutive reads in a row, one second apart, show the fault on, create an log an error.
Change-Id: I9fb1285a01e269beffd2201f5082545748f5bee3 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|