4ab86564 | 18-Nov-2022 |
Jim Wright <jlwright@us.ibm.com> |
psu-ng: Change detection of brownout errors
Brownout errors can occur such that the power supplies are able to recover but the chassis power good is lost and the system powers down. In these cases t
psu-ng: Change detection of brownout errors
Brownout errors can occur such that the power supplies are able to recover but the chassis power good is lost and the system powers down. In these cases the power supply application should continue to process the brownout condition so that the brownout error is logged and the auto power restart happens correctly. Use the power state and the chassis pgood properties from the power control service to allow this to happen.
The power supply driver or device may not latch the AC fault. Set an expiring indication that the AC fault occurred.
A power supply may not indicate the loss of AC and may only indicate the loss of power good. As long as at least one power supply indicates the AC loss, tolerate the pgood failure indications.
The net of the changes is that a brownout error will be issued when the chassis power good is lost, and all present power supplies indicate an AC failure or a power good failure, and at least one power supply indicates an AC failure.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I5a11746a036d0a66b11c76ec12784b8870fa306f
show more ...
|
1530024a | 17-Nov-2022 |
Jim Wright <jlwright@us.ibm.com> |
psu-ng: Fix Doxygen comments
Some comments intended to be Doxygen do not start with a double asterisk. Fix them.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I78ead797c4131ff850643ad0
psu-ng: Fix Doxygen comments
Some comments intended to be Doxygen do not start with a double asterisk. Fix them.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I78ead797c4131ff850643ad0c82660b231e9bbf8
show more ...
|
1b639538 | 19-Nov-2022 |
Jim Wright <jlwright@us.ibm.com> |
pseq: Use event for power good failure wait
The current 7 second wait after power good failure blocks D-Bus message processing. Use a systemd event instead to address.
Signed-off-by: Jim Wright <jl
pseq: Use event for power good failure wait
The current 7 second wait after power good failure blocks D-Bus message processing. Use a systemd event instead to address.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I7870fc264f6e5318a980869183bdd8aebfd85810
show more ...
|
cefe85f2 | 18-Nov-2022 |
Jim Wright <jlwright@us.ibm.com> |
psu-ng: Suppress additional errors after brownout
After a brownout error occurs, multiple error conditions on multiple power supplies can be indicated. Suppress the additional error logs in favor of
psu-ng: Suppress additional errors after brownout
After a brownout error occurs, multiple error conditions on multiple power supplies can be indicated. Suppress the additional error logs in favor of the more comprehensive brownout error.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I2ed4c1e58185a82f9fc8bfdcb4ee380346351593
show more ...
|
5c186c8d | 17-Nov-2022 |
Jim Wright <jlwright@us.ibm.com> |
psu-ng: Use power control constants consistently
To simplify code and promote reuse, use power control constants consistently.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I6eaed534eb
psu-ng: Use power control constants consistently
To simplify code and promote reuse, use power control constants consistently.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I6eaed534eb48aa06a184848c19c12d6ac7a82518
show more ...
|
bb54ba3a | 17-Nov-2022 |
Shawn McCarney <shawnmm@us.ibm.com> |
regulators: Initial Bonnell config file
Create an initial version of the voltage regulators JSON configuration file for Bonnell systems.
The file contains the minimum required structure plus some g
regulators: Initial Bonnell config file
Create an initial version of the voltage regulators JSON configuration file for Bonnell systems.
The file contains the minimum required structure plus some general rules that will likely be used in subsequent commits.
This minimal file is enough for Bonnell hardware bring-up. No voltage regulator configuration or monitoring will occur. The regulators will power on with their default register values.
Testing: * Ran validation tool * Started Rainier 2S2U simulation session * Modified EntityManager data so that system appeared to be a Bonnell * Tested that file was found and loaded successfully * Tested that chassis powered on successfully with no errors logged
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com> Change-Id: I30309e3096401c5464ae1bff75334491e2bc00d7
show more ...
|
941b60df | 19-Oct-2022 |
Jim Wright <jlwright@us.ibm.com> |
psu-ng: Allow more than expected number of PS
When checking for a valid configuration, the number of present power supplies should not be less than the expected number. Allow the expected number or
psu-ng: Allow more than expected number of PS
When checking for a valid configuration, the number of present power supplies should not be less than the expected number. Allow the expected number or greater to be present without error.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I725f65fe8a799c9d2205baeb4f8081799c50ce7d
show more ...
|
d7f99fec | 13-Oct-2022 |
Shawn McCarney <shawnmm@us.ibm.com> |
Update OWNERS file
Remove Brandon since he has left the project. Add Jim since he owns two applications in this repository.
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com> Change-Id: Id9019b049
Update OWNERS file
Remove Brandon since he has left the project. Add Jim since he owns two applications in this repository.
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com> Change-Id: Id9019b04956b0492bf7b0c718b34def5fe245507
show more ...
|
983c989d | 12-Oct-2022 |
Shawn McCarney <shawnmm@us.ibm.com> |
psu-ng: Change max size of firmware version to 12
For IBM power supplies, the firmware version is read from a file created by the device driver.
The maximum number of version bytes read from the PS
psu-ng: Change max size of firmware version to 12
For IBM power supplies, the firmware version is read from a file created by the device driver.
The maximum number of version bytes read from the PSU is 6. However, the device driver formats the value as a hex string. Each byte results in two ASCII characters. Thus, the maximum ASCII string size is 12.
Change the maximum size of this value from 6 to 12 to avoid data truncation.
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com> Change-Id: I92bbd5f4b4e19d96f7c9931da394d1c4186cd576
show more ...
|
1c0576bb | 03-Oct-2022 |
Jim Wright <jlwright@us.ibm.com> |
pseq: Add README for power sequencer directory
Add a README markup file describing the structure of the power sequencer subdirectory and the applications built from within it.
Signed-off-by: Jim Wr
pseq: Add README for power sequencer directory
Add a README markup file describing the structure of the power sequencer subdirectory and the applications built from within it.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I788db49144c1b03107a51c3bd65143f2df1b6963
show more ...
|
76d06b16 | 27-Sep-2022 |
Jim Wright <jlwright@us.ibm.com> |
pseq: Add README for source file directory
Add a README markup file describing the classes contained in the source file directory.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: Ibd150a
pseq: Add README for source file directory
Add a README markup file describing the classes contained in the source file directory.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: Ibd150ac648f3216631f3a547f7b80b73b30f5041
show more ...
|
dfe1f203 | 07-Sep-2022 |
Jim Wright <jlwright@us.ibm.com> |
pseq: Add README for configuration file directory
Add a README markup file describing the contents and format of the configuration file directory.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Ch
pseq: Add README for configuration file directory
Add a README markup file describing the contents and format of the configuration file directory.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: I75f5b6cd52c54a7259d334ffe43c9dabbe452221
show more ...
|
f7019cb5 | 12-Sep-2022 |
Shawn McCarney <shawnmm@us.ibm.com> |
regulators: Fix possible uninitialized variable
The latest version of tools used during CI are emitting a new warning in the phosphor-regulators source code. The warning states that a variable valu
regulators: Fix possible uninitialized variable
The latest version of tools used during CI are emitting a new warning in the phosphor-regulators source code. The warning states that a variable value might not be getting defined before being used.
This is not an actual bug; the variable value will always be defined. However, modify the code so that CI will pass.
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com> Change-Id: I090b50c3565ffbb57bfeab02fbcfd98d86aa527c
show more ...
|
10eaa6c0 | 04-Aug-2022 |
Patrick Williams <patrick@stwcx.xyz> |
MAINTAINERS: remove file
The MAINTAINERS file is deprecated in favor of OWNERS.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: If1ec053eee550ea87af588d5f2ae4936c3581d93
|
f477eb76 | 28-Jul-2022 |
Brandon Wyman <bjwyman@gmail.com> |
psu-ng: Limit calling of missing PSU helper
Only call updateMissingPSUs() if we have an interface added for the supported configuration data, or new power supply device information.
Tested: Sim
psu-ng: Limit calling of missing PSU helper
Only call updateMissingPSUs() if we have an interface added for the supported configuration data, or new power supply device information.
Tested: Simulated Rainier 2S2U - Verify fewer "D-Bus property ... access failure exception" traces. - Verify proper operations during power on. - Run simulated input fault, and repair, verify errors. Rainier 2S2U - Apply patched binary. - Verify D-Bus traces - Poweron, verify lack of additional D-Bus traces.
Change-Id: I37833138e862ed910c072aa76491b0a413c18782 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
056935ca | 24-Jun-2022 |
Brandon Wyman <bjwyman@gmail.com> |
psu-ng: Use regex to replace invalid VPD data
Passing non-ASCII/unprintable VPD character data to D-Bus or other applications can lead to crashes or other unexpected behavior.
Change-Id: I9a70f4505
psu-ng: Use regex to replace invalid VPD data
Passing non-ASCII/unprintable VPD character data to D-Bus or other applications can lead to crashes or other unexpected behavior.
Change-Id: I9a70f4505d330652e36143395ff92902a203fa44 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
8393f467 | 28-Jun-2022 |
Brandon Wyman <bjwyman@gmail.com> |
psu-ng: Refactor reading VPD values to helper
Create a readVPDValue() helper function. Replace the repetitive try/catch, read size check, resize code with a call to that common helper.
Change-Id: I
psu-ng: Refactor reading VPD values to helper
Create a readVPDValue() helper function. Replace the repetitive try/catch, read size check, resize code with a call to that common helper.
Change-Id: Ia4ceec5fa4422c3c56ff4ab3ea369c193916a388 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
ad4aff23 | 21-Jun-2022 |
Brandon Wyman <bjwyman@gmail.com> |
psu-ng: Remove updateInventory in PSUManager initialize
This should not be needed, as the power supplies will update the inventory as they are created, or if a GPIO changes from missing to present.
psu-ng: Remove updateInventory in PSUManager initialize
This should not be needed, as the power supplies will update the inventory as they are created, or if a GPIO changes from missing to present.
Removing this should avoid updating the inventory twice whenever the process is started.
Change-Id: I0aac8fc7aa7d3ff1fec3b25e1153cd8f0e699527 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
7354ce62 | 22-Jul-2022 |
Patrick Williams <patrick@stwcx.xyz> |
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are for: * bus_t * exception_t * manager_t * match_t * message_t * object_t * slot_t
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ief05bd757cffb1453e058a719ee4b060861752e7
show more ...
|
cfee4d0e | 22-Jul-2022 |
Patrick Williams <patrick@stwcx.xyz> |
OWNERS: switch 'matches' to 'matchers'
The original OWNERS template had a mistake which used 'matches' instead of the field supported by the Gerrit plugin 'matchers'. Update the OWNERS file to have
OWNERS: switch 'matches' to 'matchers'
The original OWNERS template had a mistake which used 'matches' instead of the field supported by the Gerrit plugin 'matchers'. Update the OWNERS file to have the correct field.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I3c80571414a5152c9bf1805f232cd97dceb631f8
show more ...
|
c91eed0e | 22-Jul-2022 |
Jim Wright <jlwright@us.ibm.com> |
pseq: Add presence checking
As a circumvention for hardware problems, it can be necessary to check for device presence in order to prevent calling out not present components. Add the ability to conf
pseq: Add presence checking
As a circumvention for hardware problems, it can be necessary to check for device presence in order to prevent calling out not present components. Add the ability to configure presence checking in the PSEQ configuration files and use presence, when configured, in problem determination.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: Ia9d8ee57f2d643f61ece45d9c03d523b891e98b8
show more ...
|
08fcb9fb | 21-Jul-2022 |
Jim Wright <jlwright@us.ibm.com> |
pseq: Adjust power good failure wait time
In order to support a potentially longer power supply power good deglitch time (https://gerrit.openbmc.org/c/openbmc/phosphor-power/+/55213), change the wai
pseq: Adjust power good failure wait time
In order to support a potentially longer power supply power good deglitch time (https://gerrit.openbmc.org/c/openbmc/phosphor-power/+/55213), change the wait time after power good failure from 5 to 7 seconds.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: Ic0097de90c4f6998a447a76c199b519fd686d210
show more ...
|
6d469fd4 | 15-Jun-2022 |
Brandon Wyman <bjwyman@gmail.com> |
psu-ng: PGOOD_DEGLITCH_LIMIT of five
Turns out that the (IBM) power supplies take up to around 3 seconds to get the PGOOD# bit in STATUS_WORD set to the good (0) state after the input power is withi
psu-ng: PGOOD_DEGLITCH_LIMIT of five
Turns out that the (IBM) power supplies take up to around 3 seconds to get the PGOOD# bit in STATUS_WORD set to the good (0) state after the input power is within range. Adjust the de-glitch value to avoid logging PGOOD errors for the power supplies, as they mostly ride through the momentary drops in the input power.
Use PGOOD_DEGLITCH_LIMIT instead of DEGLITCH_LIMIT for the pgoodFault.
Tested: Rainier 2S4U 1. Drop outlet power for 0.5 seconds, verify no 110015F1. 2. Drop outlet power for 1 second, verify no 110015F1. 3. Drop outlet power for 1.5 seconds, verify no 110015F1. Rainier 2S2U 1. Drop outlet power for 1 second, verify no 110015F1. 2. Drop outlet power for 5 seconds, verify 110015F0 (VIN_UV) IS logged. 3. Drop outlet power for 1.5 seconds, verify no 110015F1. Everest (powersupply0 unplugged, powersupply3 missing) 1. Drop outlet power for 0.5 seconds, verify no 110015F1. 2. Drop outlet power for 1 second, verify no 110015F1. 3. Drop outlet power for 1.5 seconds, verify no 110015F1. 4. Drop outlet power for 3 seconds, verify 110015F0 IS logged. 5. Drop all outlet power for 5 seconds, verify 110000AC.
Change-Id: I6ba12209e6c84548fec036101ca02d857ed900f6 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
9bc5f768 | 12-Jul-2022 |
Brandon Wyman <bjwyman@gmail.com> |
psu-ng: Fix false brownout fault logging
The hasVINUVCount only matters if a power supply is present. Issues noticed on an internal system test on Rainier 1S4U, during the replacement of a power sup
psu-ng: Fix false brownout fault logging
The hasVINUVCount only matters if a power supply is present. Issues noticed on an internal system test on Rainier 1S4U, during the replacement of a power supply with a fan fault, a 110000AC PEL (brownout) was logged.
If we have two power supplies total, then have a fault on one of them, in the act of replacing it, we will remove input voltage, and then remove the power supply. If the power supply is missing, and it previously had an input under-voltage fault, it does not really count against a brownout anymore, other than now being missing. We already account for present power supplies, the issue appears to be with counting VIN_UV faults against missing power supplies. Only count a power supply as VIN_UV faulted if it is present.
Tested: Simulated Rainier 2S2U 1. Fake fan fault psu0. 2. Fake VIN_UV fault psu0 (remove power). 3. Remove psu0 4. Install psu0, apply power (clear all faults). 5. Verify no brownout fault logged. 6. Repeat for psu1 Simulated Rainier 2S2U Re-run brownout fault script. Verify brownout fault logged. Real Rainier 1S4U 1. Remove psu2. 2. Insert obstruction to block fan. 3. Install psu2. 4. Wait for PSU fan fault to be logged. 5. Remove psu2. 6. Remove fan obstruction from PSU. 7. Install psu2. 8. Verify no brownout fault logged. 9. Repeat for psu3.
Change-Id: I809112ca0afc0b8294b62a62cdcc147b51ccc6e6 Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
show more ...
|
aca86d05 | 10-Jun-2022 |
Jim Wright <jlwright@us.ibm.com> |
psu-ng: Adjust power on monitoring window
Monitor both pgood and state properties from the power control d-bus interface in order to adjust the window in which power supply monitoring is done. Facto
psu-ng: Adjust power on monitoring window
Monitor both pgood and state properties from the power control d-bus interface in order to adjust the window in which power supply monitoring is done. Factor in both properties to determine when system is in power failure and adjust which power supply failures are monitored in that window.
Signed-off-by: Jim Wright <jlwright@us.ibm.com> Change-Id: Ib13c9cc6689f0b67c4d396eabfcf50dcab155e9b
show more ...
|