History log of /openbmc/phosphor-power/ (Results 201 – 225 of 842)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
33d492f423-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Do not add trailing \0 to VINI SN

The SerialNumber property in the asset decorator properties has the
correct length, but for some reason a null (\0) was added to the end of
the value we sen

psu-ng: Do not add trailing \0 to VINI SN

The SerialNumber property in the asset decorator properties has the
correct length, but for some reason a null (\0) was added to the end of
the value we send out to the VINI SN property. Doing this results in an
incorrect VPD data length.

Tested:
Built fully p10bmc image, flashed to Rainier 2S2U.
Used busctl introspect to examine powersupply properties.
Powered on system
Used PHYP macro to verifyvpd

Change-Id: Id82014c656161bb5e59b2216d7da80c09c3c7f29
Signed-off-by: Brandon Wyman <bjwyman@gmail.com>

show more ...

90d529af22-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Need driver to bind before updateInventory

If the power supply is present, we need to bind the device driver before
we attempt to read the VPD and other properties from it.

If we are bindin

psu-ng: Need driver to bind before updateInventory

If the power supply is present, we need to bind the device driver before
we attempt to read the VPD and other properties from it.

If we are binding the device driver, we need to ensure we find or update
the directory/path we are using for sysfs files we will read.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: I2a0b2b3b76c77600ee34c847b62daf4eff40f39a

show more ...

b1ee60f022-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Move bindDelay into bindOrUnbindDriver()

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: Ia936958deb8b6c6c413d58339c54a8930e773090

3225a45c18-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Add a clearVinUVFault function

Create a clearVinUVFault() function specifically for clearing the VIN_UV
and unit is off fault bits.

Use this function when see a vinUVFault with good voltage

psu-ng: Add a clearVinUVFault function

Create a clearVinUVFault() function specifically for clearing the VIN_UV
and unit is off fault bits.

Use this function when see a vinUVFault with good voltage read back from
READ_VIN. This should clear the latched fault if the fault is no longer
active. If the fault is still active, the next read will show the fault
again.

Also call clearVinUVFault() from the clearFaults() function.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: Ic26029fe64e3cd3e232c615b223cafb774bf77f9

show more ...

4fc191f010-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Clear faults if VIN_UV and READ_VIN good

If we see that we have set the VIN_UV fault indicator, but the READ_VIN
value is returning a non-zero voltage for input, attempt to clear the
faults.

psu-ng: Clear faults if VIN_UV and READ_VIN good

If we see that we have set the VIN_UV fault indicator, but the READ_VIN
value is returning a non-zero voltage for input, attempt to clear the
faults. This could be a latched input voltage under-voltage condition
that has now cleared.

Save off actualVoltage in PowerSupply member variable. This allows for
comparing the previous actual voltage with the new reading, to trace out
the actual voltage instead of the calculated 0/110/220 voltage.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: Ibf1642a081ccf4d4a9c4202ce2536799806af017

show more ...

321a615b18-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Create a shortName and use for tracing

Given the full inventory path, find and store off the short part of the
name (powersupply0) for use in various tracing messages.

Signed-off-by: Brando

psu-ng: Create a shortName and use for tracing

Given the full inventory path, find and store off the short part of the
name (powersupply0) for use in various tracing messages.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: I59906e9f5eabdae16b4d67dcf8e6d4146f7d0fe8

show more ...

280fa71517-Mar-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Remove disconnected Rainier system GPIO pins

Per engineering updates, remove disconnected GPIO pins from Rainier
configuration file. This will prevent incorrect isolation of power good
failure

pseq: Remove disconnected Rainier system GPIO pins

Per engineering updates, remove disconnected GPIO pins from Rainier
configuration file. This will prevent incorrect isolation of power good
failures.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: I6fe74d7bcde4474acc1c00171c7b4767b65b1eb1

show more ...

1cb0f13e14-Mar-2022 Mike Capps <mikepcapps@gmail.com>

psu-ng : add header to SerialNumber property

The VINI SN property has header + SerialNumber but the serial number was
missing the header.

Signed-off-by: Mike Capps <mikepcapps@gmail.com>
Change-Id:

psu-ng : add header to SerialNumber property

The VINI SN property has header + SerialNumber but the serial number was
missing the header.

Signed-off-by: Mike Capps <mikepcapps@gmail.com>
Change-Id: I8b1d67ccced5ca3c244e57ca041f2ee11872e111

show more ...

3accffe310-Mar-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Add all the GPIO pin values in failure data

Add all the power sequencer pin values to the additional data in
failures. Refactor the GPIO isolation logic to use pins already read.
Only hold the

pseq: Add all the GPIO pin values in failure data

Add all the power sequencer pin values to the additional data in
failures. Refactor the GPIO isolation logic to use pins already read.
Only hold the pins open during the read.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: Ic9042b7d2b71e2332f8071b853aa1f21f90a5a3f

show more ...

9e292ee210-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Limit tracing to STATUS_WORD changes

Add in a statusWordOld to compare with new statusWord value. Use that to
limit tracing to only when the value changes.

Signed-off-by: Brandon Wyman <bjw

psu-ng: Limit tracing to STATUS_WORD changes

Add in a statusWordOld to compare with new statusWord value. Use that to
limit tracing to only when the value changes.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: I40d9d8c08b5e60f7c11f753c0bf88c78304ecb1d

show more ...

6f939a3110-Mar-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Fix up format for STATUS_* journal traces

The format specifiers for the various journal traces are short by 2
characters. Since the specifier puts the 0x on the front, I need to
specify 6 fo

psu-ng: Fix up format for STATUS_* journal traces

The format specifiers for the various journal traces are short by 2
characters. Since the specifier puts the 0x on the front, I need to
specify 6 for STATUS_WORD to get both bytes, and 4 for the other 1-byte
values.

Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
Change-Id: I16550b351f02f9d57c8a50104fdbf2a7dcdde521

show more ...

b4ad95dd08-Mar-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Observe minimum power off time

In order to give hardware components an appropriate time to discharge
and prevent thrashing during brownouts, enforce a minimum power off
time. A 25 second minim

pseq: Observe minimum power off time

In order to give hardware components an appropriate time to discharge
and prevent thrashing during brownouts, enforce a minimum power off
time. A 25 second minimum delay will be enforced after power off before
the next power on. A minimum of 15 seconds must pass after cold start
until a power on will start.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: Ib0cd0bcda1ca492548ee7912bab9a46181337098

show more ...

f6f0da9d28-Feb-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Refactor on failure method

Refactor onFailure() method to consolidate logic and improve amount
of device information captured as additional data.

Signed-off-by: Jim Wright <jlwright@us.ibm.co

pseq: Refactor on failure method

Refactor onFailure() method to consolidate logic and improve amount
of device information captured as additional data.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: Id8ab37343ce9c9a98a2e52f360b552c2af7c4848

show more ...

7f20c5d028-Feb-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Issue failures as system terminating

Power sequencing failures are system terminating, add the additional
data values that so indicate.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-

pseq: Issue failures as system terminating

Power sequencing failures are system terminating, add the additional
data values that so indicate.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: I5a3acdcdb159bcc653bd3ffc38e4f275d294ccbf

show more ...

4875262628-Feb-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Prevent multiple failures

Multiple failures can occur when the power down sequence is slow. Add a
flag to threshold the failures. Clear the flag at power on.

Signed-off-by: Jim Wright <jlwrig

pseq: Prevent multiple failures

Multiple failures can occur when the power down sequence is slow. Add a
flag to threshold the failures. Clear the flag at power on.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: I1b476feff1967b4fa60f29bd719bf6ee14fba103

show more ...

ca1e9ea118-Feb-2022 Matt Spinler <spinler@us.ibm.com>

psu-ng: Handle health rollup based on availability

When a PSU is set to not available, create an association between the
power supply and its chassis as a way to 'roll up' the health status to
that

psu-ng: Handle health rollup based on availability

When a PSU is set to not available, create an association between the
power supply and its chassis as a way to 'roll up' the health status to
that chassis. It looks like:

<chassis>/critical
endpoints: <power supply>
<power supply>/health_rollup
endpoints: <chassis>

There is Redfish code that look at the endpoints in that chassis
association object to determine if the chassis health is OK or not.

Note that some systems, such as IBM's, have other code that will fill
in that association when it is called out in an event log, which is why
this code doesn't have to do it for every single fault.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I262dd738ebadb72aa207011941066fc282bfe4df

show more ...

10fc6e8708-Feb-2022 Brandon Wyman <bjwyman@gmail.com>

psu-ng: Call setPowerSupplyError method for fault

If/when a fault occurs, and the PSU manager is going to create an error,
also call the setPowerSupplyError D-Bus method to let the power
control/seq

psu-ng: Call setPowerSupplyError method for fault

If/when a fault occurs, and the PSU manager is going to create an error,
also call the setPowerSupplyError D-Bus method to let the power
control/sequencer app known that a power supply error has occurred. If
an associated pgood fault also occurs, the power control/sequencer app
can make a determination of whether it is due to the power supply error.

Call setPowerSupplyError method with null string during clearing of
faults.

Tested:
Simulated power supply faults followed by pgood fault.
Verified power supply fault used for source of pgood fault.
After PSU & pgood fault, poweron, try just pgood fault.
Verified pgood fault logged.
Real Rainier 2S2U normally fault free operation during poweron.
Real Rainier 2S2U VIN_UV fault works as expected.
Real Rainier 2S2U AC loss fault.
Real Rainier 2S2U injected pgood fault (no PSU error).

Change-Id: Ia5c7c4fdcbd3b86c5184cb5bc6d93a9628747f18
Signed-off-by: Brandon Wyman <bjwyman@gmail.com>

show more ...

0975eaf414-Feb-2022 Matt Spinler <spinler@us.ibm.com>

psu-ng: Add Availability support to power supplies

Add support for determining if a power supply is considered 'available'
or not, and set the Available D-Bus property on the
xyz.openbmc_project.Sta

psu-ng: Add Availability support to power supplies

Add support for determining if a power supply is considered 'available'
or not, and set the Available D-Bus property on the
xyz.openbmc_project.State.Decorator.Availability interface with the
result.

A power supply is considered unavailable if any of the following are
true:
- it isn't present
- there is a input fault active
- there is a Vin UV fault active
- there is a PS KILL fault active
- there is a Iout OC fault active

The latter four faults are the faults where it can't provide good
output power, hence the PS is unavailable. These faults also don't
call out the power supply directly, so the Functional property won't
get set to false, unlike other faults.

The Available D-Bus property is then able to be used in Redfish
responses for the heath and state properties in the power supply
schema.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I349eddb8c052cf238276c832af0dde9e49f6d3f0

show more ...

5c6ac77e16-Feb-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Cleanup Rainier config file pin entries

Remove from the Rainier config file the pins which do not factor into
the overall chassis power good. The PCIE slot pins do not represent a
power good f

pseq: Cleanup Rainier config file pin entries

Remove from the Rainier config file the pins which do not factor into
the overall chassis power good. The PCIE slot pins do not represent a
power good fail. The software pgood pin has been removed from current
system documentation. The individual PSU pgoods will be monitored by the
power supply application.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: Id2ecb4eb2aee8048737a048b0ba45a1b48711334

show more ...

abd64b9411-Feb-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Clear power supply error at power on

After a successful tranisition to power on state, clear any set power
supply error. This resets the monitoring and follows the usual
assumption that hardwa

pseq: Clear power supply error at power on

After a successful tranisition to power on state, clear any set power
supply error. This resets the monitoring and follows the usual
assumption that hardware could have changed while the power was off.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: I75f0f4cff91bb914d8edc422b13b4ff71267029a

show more ...

e4c3a29910-Feb-2022 Adriana Kobylak <anoo@us.ibm.com>

psu-ng: Don't log brownout error if all PSUs are missing

During a BMC reboot at runtime, the PSUs may not exist yet on D-Bus.
Therefore, add a check to ignore if all PSUs are marked as not present,

psu-ng: Don't log brownout error if all PSUs are missing

During a BMC reboot at runtime, the PSUs may not exist yet on D-Bus.
Therefore, add a check to ignore if all PSUs are marked as not present,
or the total of PSUs is 0, and not log a brownout error. Therefore to
log a brownout error, at least one PSU must report a AC loss VIN fault.

Tested: Verified a brownout error is not logged on a reboot at runtime
even though the number of PSUs was 0. Also a brownout error was not
logged when all PSUs were manually set to not present.

Change-Id: Ic96ccb2609a4a4d8f07c3a63106ec43619dc341b
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>

show more ...

8b150f3028-Jan-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Add Everest configuration file

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: I2b456c098b7fcbfbf753e1745a7640418d50ed0d

5f99bc0228-Jan-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Add service file

Add service file for power control and power sequence monitoring
combined application. Change meson build files to support.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Ch

pseq: Add service file

Add service file for power control and power sequence monitoring
combined application. Change meson build files to support.

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: I0c06b0b66c7d02145516564dc98123a4633498b3

show more ...

99ed8e7928-Jan-2022 Jim Wright <jlwright@us.ibm.com>

pseq: Add Rainier configuration file

Signed-off-by: Jim Wright <jlwright@us.ibm.com>
Change-Id: Ib7caad4766bb80835c2cbe76a7854f5c48dae553

2549d79226-Jan-2022 Adriana Kobylak <anoo@us.ibm.com>

psu-ng: Log error on brownout condition

Per design document:
https://github.com/openbmc/docs/blob/master/designs/power-recovery.md#brownout

The BMC must log an error indicating the brownout event h

psu-ng: Log error on brownout condition

Per design document:
https://github.com/openbmc/docs/blob/master/designs/power-recovery.md#brownout

The BMC must log an error indicating the brownout event has occurred.

Check for a brownout condition where all PSUs are either not present or
report an AC loss VIN fault. The error log would be the same as a
Blackout condition. Keep track if the error was created via a variable
so that the error is not created multiple times. Clear the variable once
the brownout condition is no longer detected or when then system is
powered off so that it gets logged on the next power on.

Tested: On Rainier 2S2U simulation where there are 4 PSUs slots but only
two power supplies connected, inject a VIN fault on the two present PSUs
and verify an error log for AC loss 110000AC is created:

Jan 31 16:57:37 p10bmc phosphor-psu-monitor[963]: INPUT fault:
STATUS_WORD = 0x2848, STATUS_MFR_SPECIFIC = 0x0, STATUS_INPUT = 0x38
Jan 31 16:57:37 p10bmc phosphor-psu-monitor[963]: VIN_UV fault:
STATUS_WORD = 0x2848, STATUS_MFR_SPECIFIC = 0x0, STATUS_INPUT = 0x38
Jan 31 16:57:38 p10bmc phosphor-psu-monitor[963]: INPUT fault:
STATUS_WORD = 0x2848, STATUS_MFR_SPECIFIC = 0x0, STATUS_INPUT = 0x38
Jan 31 16:57:38 p10bmc phosphor-psu-monitor[963]: VIN_UV fault:
STATUS_WORD = 0x2848, STATUS_MFR_SPECIFIC = 0x0, STATUS_INPUT = 0x38
Jan 31 16:57:38 p10bmc phosphor-log-manager[305]: Created PEL 0x50000007
(BMC ID 7) with SRC 110000AC

Change-Id: I7760b59a02ef2afc81bd7807c7896183d99a66ec
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>

show more ...

12345678910>>...34