History log of /openbmc/openpower-occ-control/ (Results 1 – 25 of 246)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
37abe9be31-Oct-2024 Chris Cain <cjcain@us.ibm.com>

Update occ-control to use lg2 for all logging

Convert existing log<level>() trace statements to lg2::level()

Testing: Verified on Rainier - captured journal traces before and after
commit during bo

Update occ-control to use lg2 for all logging

Convert existing log<level>() trace statements to lg2::level()

Testing: Verified on Rainier - captured journal traces before and after
commit during boots, mode, pcap and ips changes.

Change-Id: I318fa7bf3902c641b0c28b09190db4b61d0a2fa9
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

3523cc0030-Oct-2024 Chris Cain <cjcain@us.ibm.com>

Add chassis association for total_power sensor

Currently all power and temperatures sensors have an all_sensors chassis
association.
The total system power sensor is used in bmcweb, but had the sens

Add chassis association for total_power sensor

Currently all power and temperatures sensors have an all_sensors chassis
association.
The total system power sensor is used in bmcweb, but had the sensor path
hardcoded. To prevent users from having to hardcode the sensor path this
commit will add a total_power association to the chassis.

Tested on Rainier:
'''
a{sv} 1 "Associations" a(sss) 2 "chassis" "all_sensors" "/xyz/openbmc_project/inventory/system/chassis" "chassis" "total_power" "/xyz/openbmc_project/inventory/system/chassis"

as 1 "/xyz/openbmc_project/sensors/power/total_power"

d 366
'''

Change-Id: I11b82e439de6b9d7a9e9e46eee26bb5e22502283
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

1fe436dc10-Oct-2024 Chris Cain <cjcain@us.ibm.com>

Disable Idle Power Saver support in efficiency modes

IPS will not be published on DBUS when the PowerMode is set to one of
the newer efficiency modes:
EfficiencyFavorPower
EfficiencyFavorPerform

Disable Idle Power Saver support in efficiency modes

IPS will not be published on DBUS when the PowerMode is set to one of
the newer efficiency modes:
EfficiencyFavorPower
EfficiencyFavorPerformance (OEM only)

This will prevent the Redfish interface from allowing GET/PATCH
commands and provides a way for the GUI to know when to suppress
B
displaying the parameters on the customer GUI.

Testing:
Verified on Rainier.

When in a non-efficiency mode, the Redfish query returns IPS data:
(GET /redfish/v1/Systems/system)
'''
...
"Id": "system",
"IdlePowerSaver": {
"Enabled": true,
"EnterDwellTimeSeconds": 240,
"EnterUtilizationPercent": 8,
"ExitDwellTimeSeconds": 10,
"ExitUtilizationPercent": 12
},
"IndicatorLED": "Off",
...
'''

When in an efficiency mode, the Redfish query does not return IPS data.
'''
...
"Id": "system",
"IndicatorLED": "Off",
...
'''

Verified across re-ipls, OCC resets, app restarts.

Change-Id: I45bb0d8e97dab33a1a66c0d791f7bb4848bfce41
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

f0295f5212-Sep-2024 Chris Cain <cjcain@us.ibm.com>

Improve BMC error handling for OCC comm failures

- Delay starting OCC reset until all OCCs have been detected (or
timeout). It will prevent multiple resets from being triggered and to
help detecting

Improve BMC error handling for OCC comm failures

- Delay starting OCC reset until all OCCs have been detected (or
timeout). It will prevent multiple resets from being triggered and to
help detecting when reset is completed (active sensor being set after
reset is complete)
- Wait for PLDM response to OCC reset and HRESET requests and retry if
they fail
- If HRESET returns NOT_READY, collect SBE FFDC and try OCC reset. A
persistent failure will put the system in safe state.

- Prevent overwriting dvfs over-temp filename for p10 and beyond since
that old file is only present in old kernel
- Prevent assert when opening sysfs files. (added catch and then created
an OCC Comm failure PEL, which will force an OCC reset.)
- Check return code after reading sysfs files to confirm success. If
read fails, try reset to recover.

- Updated traces to include which processor/OCC encountered issues.
- Better recovery to close windows that were leaving system in partial
good state.

JIRA: PFES-66
Change-Id: I0b087d0e05bd8562682062e1c662f9e18164a720
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

9a8fe27504-Sep-2024 Chris Cain <cjcain@us.ibm.com>

Remove OSStart as indication host is running

This logic is checking whether PHYP is at standby or runtime. The
OSStart was never implemented by PHYP so it should not be looked at to
determine this s

Remove OSStart as indication host is running

This logic is checking whether PHYP is at standby or runtime. The
OSStart was never implemented by PHYP so it should not be looked at to
determine this state. The hostboot team is going to utilize this
BootProgress to indicate when they are starting PHYP.

Change-Id: Ica6a032eb0881526865967215f94534b85048d2a
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

88811adc27-Aug-2024 Eddie James <eajames@linux.ibm.com>

Fix missing PLDM transport configuration

The PLDM transport option wasn't actually used. In addition,
throttle the PLDM open failure trace.

Signed-off-by: Eddie James <eajames@linux.ibm.com>
Change

Fix missing PLDM transport configuration

The PLDM transport option wasn't actually used. In addition,
throttle the PLDM open failure trace.

Signed-off-by: Eddie James <eajames@linux.ibm.com>
Change-Id: I6c5f9151b3230171a1f050d54bbb143334577ab2

show more ...

6213f19901-Jul-2024 Lakshmi Yadlapati <lakshmiy@us.ibm.com>

Add kernel MCTP (AF_MCTP) support and transport-implementation option

-Added support for kernel MCTP (AF_MCTP) to enable MCTP communication
using AF_MCTP sockets.

- Introduced a new configuration

Add kernel MCTP (AF_MCTP) support and transport-implementation option

-Added support for kernel MCTP (AF_MCTP) to enable MCTP communication
using AF_MCTP sockets.

- Introduced a new configuration option 'transport-implementation'

The 'transport-implementation' option can be set to either:
- 'mctp-demux': Uses the existing mctp-demux transport method.
- 'af-mctp': Uses the new kernel AF_MCTP transport method.

Change-Id: I2978273fe4579d1dce00368dabb7f90815dbbce8
Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
Signed-off-by: Eddie James <eajames@linux.ibm.com>

show more ...

358d396623-Aug-2024 Chris Cain <cjcain@us.ibm.com>

Fix OCC response checksum calculation

The OCC checksum calculation should be ignoring overflow.

Removed redundant trace of the occActive state:
'''
Aug 23 18:38:52 rain100bmc openpower-occ-control[

Fix OCC response checksum calculation

The OCC checksum calculation should be ignoring overflow.

Removed redundant trace of the occActive state:
'''
Aug 23 18:38:52 rain100bmc openpower-occ-control[6515]: updateOCCActive: OCC0 active=true
Aug 23 18:38:52 rain100bmc openpower-occ-control[6515]: Status::occActive OCC0 changed to true
'''

Added trace of first 4 bytes of data for pass-through commands:
'''
Aug 23 19:19:30 rain100bmc openpower-occ-control[27848]: PassThrough::send() Sending 0x00 command to OCC0 (data len=1, data=0x20)
Aug 23 19:19:40 rain100bmc openpower-occ-control[27848]: PassThrough::send() Sending 0x40 command to OCC0 (data len=5, data=0x07001000...)
'''

Change-Id: I632b0e0af214858e15f3d5c196723dc6ffe12445
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

d7542c8316-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

Change-Id: I94e2bfdc8fae9bc14e30c701a0e622709ee9b0fe
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

52328cb414-Feb-2023 Rashmica Gupta <rashmica@linux.ibm.com>

Move to libpldm pldm_transport APIs

- Replaced the deprecated pldm transport APIs with the new libpldm
pldm_transport APIs.

This change migrates the application off of the deprecated "requester"

Move to libpldm pldm_transport APIs

- Replaced the deprecated pldm transport APIs with the new libpldm
pldm_transport APIs.

This change migrates the application off of the deprecated "requester"
APIs in libpldm.

We don't currently have the infrastructure in place to get the correct
TIDs, so to keep everything working as before use the EID as the TID in
the EID-to-TID mapping.

Change-Id: Iedbfe936a710d37f75e737c3d307295ff55cf07b
Signed-off-by: Rashmica Gupta <rashmica@linux.ibm.com>
Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>

show more ...

30040d9d19-Jun-2024 Chris Cain <cjcain@us.ibm.com>

Read mode support from entity manager and update dbus

1. Attempt to read several power mode properties from entity-manager.
Reject any mode change requests that are not in the CustomerModes list.
If

Read mode support from entity manager and update dbus

1. Attempt to read several power mode properties from entity-manager.
Reject any mode change requests that are not in the CustomerModes list.
If the CustomerModes list is empty, all supported mode changes will be
allowed.

CustomerModes: List of power modes that are settable from a customer
user interface.
OemModes: List of OEM power modes that are supported on the system.
EcoModeSupport: Flag to indicate if the system supports a set of
efficiency based settings.

If any of these are not found, occ-control will use the default
supported modes.

Use default if persisted power mode is not supported

2. If previous (persisted) power mode is not supported, the default
power mode for the system will be used. If that default is not found
MaximumPerformance will be used.

Tested on Rainier

'''
xyz.openbmc_project.Control.Power.Mode interface - - -
.AllowedPowerModes property as 3 "xyz.openbmc_project.Control.Power.Mode.PowerMode.MaximumPerformance" "xyz.openbmc_project.Control.Power.Mode.PowerMode.PowerSaving" "xyz.openbmc_project.Control.Power.Mode.PowerMode.Static" const
.PowerMode property s "xyz.openbmc_project.Control.Power.Mode.PowerMode.PowerSaving" emits-change writable
.SafeMode property b false emits-change
'''

Change-Id: Id9b2b493e420fc60b3c29d581d63e9ed0f71c4fc
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

db38e91a24-May-2023 Rashmica Gupta <rashmica@linux.ibm.com>

Move to libpldm instance id APIs

Signed-off-by: Rashmica Gupta <rashmica@linux.ibm.com>
Change-Id: I2955097a78c673f65054fa9bff1ef5243da136a2
Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>

aeba51cd16-Feb-2023 Rashmica Gupta <rashmica@linux.ibm.com>

Change "mctp instance id" to "pldm instance id"

It's not a MCTP thing.

Change-Id: I922d28f848c8948d43ea4b8926d2310c8fb50228
Signed-off-by: Rashmica Gupta <rashmica@linux.ibm.com>
Signed-off-by: Lak

Change "mctp instance id" to "pldm instance id"

It's not a MCTP thing.

Change-Id: I922d28f848c8948d43ea4b8926d2310c8fb50228
Signed-off-by: Rashmica Gupta <rashmica@linux.ibm.com>
Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>

show more ...

97476a1e19-Jun-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Replace deprecated libpldm header path

There are more OEMs than IBM contributing to libpldm, so the OEM headers
were restructured. Replace the deprecated IBM OEM header path with the
namespace

pldm: Replace deprecated libpldm header path

There are more OEMs than IBM contributing to libpldm, so the OEM headers
were restructured. Replace the deprecated IBM OEM header path with the
namespaced path.

The patch was generated by with the coccinelle[1] script from [2]:

```
$ spatch \
--sp-file .../libpldm/origin/evolutions/current/oem-ibm-header-compat.cocci \
--in-place \
$(git ls-files | grep -E '\.[ch](pp)?')
```

[1]: https://coccinelle.gitlabpages.inria.fr/website/
[2]: https://gerrit.openbmc.org/c/openbmc/libpldm/+/72202

Change-Id: Ib3b4c5a650a06e816155a91ac3a83c2176639dc7
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

c33171bb24-May-2024 Chris Cain <cjcain@us.ibm.com>

Throttle PLDM traces after 5 minutes while waiting for PDRs

Existing code waits up to 40 minutes for the OCC active sensors PDRs to
be available. If not available, a BD8D2685 PEL will get logged and

Throttle PLDM traces after 5 minutes while waiting for PDRs

Existing code waits up to 40 minutes for the OCC active sensors PDRs to
be available. If not available, a BD8D2685 PEL will get logged and
occ-control will continue to wait for the PDRs.

This change will throttle the occ-control PLDM traces after 5 minutes,
while continuing to wait for the PDRs. A PEL will still get generated if
the timeout expires.

Tested on Rainier

Change-Id: I35ec939317efee7a458b96709ea9cfc2abe7bebf
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

1173b2b101-Jun-2024 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

Option to override dump request D-Bus path

Added option for overriding the object path for requesting OpenPOWER
dumps. On recent systems the object path is changed so adding option
to override the p

Option to override dump request D-Bus path

Added option for overriding the object path for requesting OpenPOWER
dumps. On recent systems the object path is changed so adding option
to override the path in the recipe.

Change-Id: I1b1691c713be094c7286324e6653836aced11f45
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

show more ...

32f2af0a28-May-2024 Chris Cain <cjcain@us.ibm.com>

Fixed bare URLs in README.md

Fix markdown-lint rule 034-no-bare-urls.md

Change-Id: I084d9c62ef090cacad62a41b36e3f69f8d4313ee
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

a19bd42824-May-2024 Chris Cain <cjcain@us.ibm.com>

Increase timeout before logging PEL when OCC sensors unavailable

Existing code waits up to 5 minutes for the OCC active sensors PDRs to
be available. If not available after 5 minutes, a BD8D2685 PEL

Increase timeout before logging PEL when OCC sensors unavailable

Existing code waits up to 5 minutes for the OCC active sensors PDRs to
be available. If not available after 5 minutes, a BD8D2685 PEL will get
logged and occ-control will continue to wait for the PDRs.

This change will increase that timeout to 40 minutes.

Change-Id: Idfffd03d731bd35a0f5d1ba7fe04e2f635444d74
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

7651c06b02-May-2024 Chris Cain <cjcain@us.ibm.com>

Prevent missing sensor PEL when host is not running

occ-control will create a PEL if the OCC sensors PDRs have not been
found after 5 mintues.
This change will prevent creating that PEL if the host

Prevent missing sensor PEL when host is not running

occ-control will create a PEL if the OCC sensors PDRs have not been
found after 5 mintues.
This change will prevent creating that PEL if the host is not at
runtime.
This condition can happen if the host is powered on and then powered off
before all sensors have been found.

Change-Id: I885f2148b7527ef9b577a60dd33ac9af3618e831
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

1c3349e424-Apr-2024 Chris Cain <cjcain@us.ibm.com>

Update PEL to Predictive when unable to get OCC PDRs

Originally created PEL as informational, but it needs to be predictive
to make it visible.

PEL is created when the PDRs have not been found afte

Update PEL to Predictive when unable to get OCC PDRs

Originally created PEL as informational, but it needs to be predictive
to make it visible.

PEL is created when the PDRs have not been found after 5 minutes.

Change-Id: If9ea66333ea63f1d1d2c6950c16b0401e50949c4
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

4b82f3e322-Apr-2024 Chris Cain <cjcain@us.ibm.com>

Create PEL if unable to get the OCC PDRs

The OCC PDRs are required so occ-control will know when the OCCs are
available and ready to communicate. If the PDRs never become available
there is currentl

Create PEL if unable to get the OCC PDRs

The OCC PDRs are required so occ-control will know when the OCCs are
available and ready to communicate. If the PDRs never become available
there is currently no indication other than the OCC sensors not being
available.
This code change will create a PEL when the PDRs have not been found
after 5 minutes. The service will continue looking for the PDRs after
logging the PEL.

Change-Id: Ia2200273d04b91cba9cad3cf8465cc9cada73428
Signed-off-by: Chris Cain <cjcain@us.ibm.com>

show more ...

755af10227-Feb-2024 Chris Cain <cjcain@us.ibm.com>

Handle other PLDM_STATE_SET_OPERATIONAL states

- Code will no longer assume the OCC is not running if an unexpected
state is received. It will continue to look for a good/known state.
- Added code t

Handle other PLDM_STATE_SET_OPERATIONAL states

- Code will no longer assume the OCC is not running if an unexpected
state is received. It will continue to look for a good/known state.
- Added code that will throttle the occ-control pldm journal traces
if unable to read the OCC active sensor states. In some error
conditions, this tracing would flood the trace and the repeated traces
are not helpful for debug.
- Change some journal entries to ERR when the state indicated that the
system was in safe mode (OCCs disabled)
- If request for occ active sensor state was sent, and then a PLDM
sensor event comes in for that instance, the event status is used and
the response is ignored.
- Added README for occ-control

Signed-off-by: Chris Cain <cjcain@us.ibm.com>
Change-Id: Ic26f1d0c4dc59e7a61b965b052d649e4bc152fde

show more ...

89e54fab28-Feb-2024 Patrick Williams <patrick@stwcx.xyz>

test: fix power10-mode compile errors

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I44a90cfbca3804de4a7fe169fa567a4672a48e78

fb0a5c3c28-Feb-2024 Patrick Williams <patrick@stwcx.xyz>

occ_manager: add missing PLDM check

The configuration POWER10 does not explicitly depend on PLDM, but there
were a few calls to the pldmHandle outside a PLDM guard. Add the PLDM
guards in.

Signed-

occ_manager: add missing PLDM check

The configuration POWER10 does not explicitly depend on PLDM, but there
were a few calls to the pldmHandle outside a PLDM guard. Add the PLDM
guards in.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I1ae1a6a6ade375acc7ba4e59ddf0d8e0c5b7a711

show more ...

6506e0d328-Feb-2024 Patrick Williams <patrick@stwcx.xyz>

meson: fix libpldm move to its own repository

The libpldm moved into its own repository separate from pldm proper.
Update the wrap file and meson.build accordingly.

Signed-off-by: Patrick Williams

meson: fix libpldm move to its own repository

The libpldm moved into its own repository separate from pldm proper.
Update the wrap file and meson.build accordingly.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I9559f361de3fb66a73ab6d18611ec34753377585

show more ...

12345678910