b8c4f337 | 21-Mar-2023 |
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
Change-Id: Ib0d2666217b7fd0e3621e16557dd44ae0c35598a Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
cb0d2740 | 13-Mar-2023 |
Jonathan Doman <jonathan.doman@intel.com> |
sst: Add emr support in sst_mailbox backend
Change-Id: I1192c61827dc573bc0a13cb81a164e37ccb78ca9 Signed-off-by: Jonathan Doman <jonathan.doman@intel.com> |
b4c3bcd7 | 09-Mar-2023 |
Jonathan Doman <jonathan.doman@intel.com> |
sst: Prefer cached values over default values
In anticipation of support for future CPUs, change some assumptions: * When host is off, return cached property values instead of "default" values. CP
sst: Prefer cached values over default values
In anticipation of support for future CPUs, change some assumptions: * When host is off, return cached property values instead of "default" values. CPUs may not guarantee support for level 0, so there is no universal default. * Must always check the backend interface is ready before using it. * Rename numLevels() to maxLevel() since there may be discontinuities in the supported levels. * Also add some more debug prints.
Tested: * On CPU that supports level 0 - verified that output of sst-info.sh script was the same before and after these changes. * On a CPU that only supports level 4 - verified that when host was powered off, the AppliedConfig showed config4 (valid) instead of config0 (invalid).
Change-Id: Idffcb9a6534ba32760f6d6b2ac244f47427995ea Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>
show more ...
|
dd1811c9 | 14-Mar-2023 |
Nikhil Namjoshi <nikhilnamjoshi@google.com> |
Add dbus match rule to detect motherboard object creation
In some rare cases, it is observed that the smbios table is received by smbiosmdr daemon way before Entity Manager creates the motherboard o
Add dbus match rule to detect motherboard object creation
In some rare cases, it is observed that the smbios table is received by smbiosmdr daemon way before Entity Manager creates the motherboard object path. When that happens, smbios daemon creates dbus objects for the cpus but fails to associate them with the chassis. This causes missing "Processors" and "Memory" sections under "Links" in the chassis response.
The issue can be easily reproduced by rebooting just the BMC without rebooting the host node.
The fix is to setup a dbus matcher when the motherboard path is not found. The matcher shall look for the event when xyz.openbmc_project.Inventory.Item.System interface is added to the dbus object.
Tested:
Tried rebooting the bmc multiple times and verified that post reboot, the "Processors" and "Memory" sections are visible under "Links" section in the Chassis response
``` { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>", "@odata.type": "#Chassis.v1_17_0.Chassis", "Actions": { "#Chassis.Reset": { "@Redfish.ActionInfo": "/redfish/v1/Chassis/<Chassis Name>/ResetActionInfo", "target": "/redfish/v1/Chassis/<Chassis Name>/Actions/Chassis.Reset" } }, "Assembly": { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>/Assembly" }, "ChassisType": ".....", "Id": "<Chassis Name>", "Links": { "Cables": [ { .... } ], "Cables@odata.count": .., "ComputerSystems": [ { "@odata.id": "/redfish/v1/Systems/system" } ], "Contains": [ ....... ], "Contains@odata.count": .., "ManagedBy": [ { "@odata.id": "/redfish/v1/Managers/bmc" } ], "Processors": [ <<==== Processor section is present { "@odata.id": "/redfish/v1/Systems/system/Processors/cpu0" }, { "@odata.id": "/redfish/v1/Systems/system/Processors/cpu1" }, { "@odata.id": "/redfish/v1/Systems/system/Processors/cpu2" }, ..... ], "Processors@odata.count": .. }, "LogServices": { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>/LogServices" }, "Manufacturer": ".....", "Memory": { <<==== Memory section is present "@odata.id": "/redfish/v1/Systems/system/Memory" }, "Model": ".....", "Name": "<Chassis Name>", "PCIeDevices": { "@odata.id": "/redfish/v1/Systems/system/PCIeDevices" }, "PartNumber": ".....", "Power": { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>/Power" }, "PowerState": "On", "PowerSubsystem": { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>/PowerSubsystem" }, "Sensors": { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>/Sensors" }, "SerialNumber": ".....", "Status": { "Health": "OK", "HealthRollup": "OK", "State": "Enabled" }, "Thermal": { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>/Thermal" }, "ThermalSubsystem": { "@odata.id": "/redfish/v1/Chassis/<Chassis Name>/ThermalSubsystem" } } ```
Change-Id: I58b514c9e845d64770fa6f946493222a011a2018 Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com>
show more ...
|
1cf66fee | 09-Mar-2023 |
Jonathan Doman <jonathan.doman@intel.com> |
Fix sst-info.sh script
Partial revert of 3e6be2eea132571ec4cae82cd16cdec6c9170560, which applied shellcheck recommendations a bit too zealously.
* Go back to /bin/sh since we don't need bash constr
Fix sst-info.sh script
Partial revert of 3e6be2eea132571ec4cae82cd16cdec6c9170560, which applied shellcheck recommendations a bit too zealously.
* Go back to /bin/sh since we don't need bash constructs * Remove function keyword from function defs, which is not POSIX sh and also not even recommended for bash * Replace some intentional word splitting with a new function
Tested: Tested with DEBUG=1 on a system that supports SST and verified that all three subcommands were constructing busctl calls correctly.
Change-Id: I83ec923cea4f64a04706c0e92200cd92e0ab5ac0 Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>
show more ...
|
39cc3683 | 14-Mar-2023 |
Tom Tung <shes050117@gmail.com> |
dimm: use size to determine if DIMM is present and functional
Currently, we are using "NO DIMM" in dimmManufacturer to determine if there is a DIMM sensor or not. However, it's "Unknown" in an AMD m
dimm: use size to determine if DIMM is present and functional
Currently, we are using "NO DIMM" in dimmManufacturer to determine if there is a DIMM sensor or not. However, it's "Unknown" in an AMD machine we are testing.
Looking into SMBIOS spec (DSP0134_3.3.0), it looks like using size to determine if DIMM is present and functional is a better option.
Tested: Check an Intel CPU machine and the Present is true when DIMM is there and false when it's not: ``` busctl introspect xyz.openbmc_project.Smbios.MDR_V2 \ /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm0 \ xyz.openbmc_project.Inventory.Item NAME TYPE SIGNATURE RESULT/VALUE FLAGS .Present property b true emits-change writable .PrettyName property s "" emits-change writable
busctl introspect xyz.openbmc_project.Smbios.MDR_V2 \ /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm1 \ xyz.openbmc_project.Inventory.Item NAME TYPE SIGNATURE RESULT/VALUE FLAGS .Present property b false emits-change writable .PrettyName property s "" emits-change writable ``` Check an AMD machine and it works fine with a bad DIMM and a good DIMM: ``` busctl introspect xyz.openbmc_project.Smbios.MDR_V2 /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm0 xyz.openbmc_project.Inventory.Item NAME TYPE SIGNATURE RESULT/VALUE FLAGS .Present property b false emits-change writable .PrettyName property s "" emits-change writable
busctl introspect xyz.openbmc_project.Smbios.MDR_V2 /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm1 xyz.openbmc_project.Inventory.Item NAME TYPE SIGNATURE RESULT/VALUE FLAGS .Present property b true emits-change writable .PrettyName property s "" emits-change writable ```
Change-Id: If6ea55f35b4af3225c4a07de481d930fa461b3e7 Signed-off-by: Tom Tung <shes050117@gmail.com>
show more ...
|
6d8d8d63 | 09-Dec-2022 |
kuiying <wangkuiying.wky@alibaba-inc.com> |
Updagte Kuiying's email address
Kuiying's email address is changed to wangkuiying.wky@alibaba-inc.com
Signed-off-by: kuiying <wangkuiying.wky@alibaba-inc.com> Change-Id: I44c9837a0702b0349d1648f3ea
Updagte Kuiying's email address
Kuiying's email address is changed to wangkuiying.wky@alibaba-inc.com
Signed-off-by: kuiying <wangkuiying.wky@alibaba-inc.com> Change-Id: I44c9837a0702b0349d1648f3ea56c27607372c3e
show more ...
|
efd41540 | 13-Dec-2022 |
John Edward Broadbent <jebr@google.com> |
Add config to allow DIMM only in Location Code
This change creates an option that excludes the bank number from the location code. This addresses issues from [1] that changed the location format, br
Add config to allow DIMM only in Location Code
This change creates an option that excludes the bank number from the location code. This addresses issues from [1] that changed the location format, breaking previous assumptions related to location codes.
This command was used the validate the format of the location code. ''' $ busctl introspect "xyz.openbmc_project.Smbios.MDR_V2" /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm4 ... xyz.openbmc_project.Inventory.Decorator.LocationCode interface - - - .LocationCode property s "DIMM2" emits-change ```
[1] https://github.com/openbmc/smbios-mdr/commit/744b35aad0051084c7b71fee8898d1e496345270
Signed-off-by: John Edward Broadbent <jebr@google.com> Change-Id: I3b1e219aabba20c0031bfe78bad17887cf05715c
show more ...
|
3e6be2ee | 04-Dec-2022 |
Patrick Williams <patrick@stwcx.xyz> |
shellcheck: fix issues and format with beautysh
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I5129be6a6c4fc98eb0ef13901d6814683145a617 |
f5a2d2ad | 04-Dec-2022 |
Patrick Williams <patrick@stwcx.xyz> |
sst-compare-redfish-os.py: fix flake8 and reformat with black
flake8 was reporting numerous issues in this script, some of which were due to line lengths longer than desired. Fix the flake8 issues
sst-compare-redfish-os.py: fix flake8 and reformat with black
flake8 was reporting numerous issues in this script, some of which were due to line lengths longer than desired. Fix the flake8 issues and reformat with black.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I5cc3bdbf2982858f3756ef81a6677a94ab619a55
show more ...
|
306df484 | 08-Dec-2022 |
Patrick Williams <patrick@stwcx.xyz> |
beautysh: re-format
beautysh is enabled in the openbmc-build-scripts on Bash/Zsh/POSIX-sh files to have a consistent formatting. Re-run the formatter on the whole repository.
Change-Id: I808cd4a37
beautysh: re-format
beautysh is enabled in the openbmc-build-scripts on Bash/Zsh/POSIX-sh files to have a consistent formatting. Re-run the formatter on the whole repository.
Change-Id: I808cd4a379c290d39eb4481b66a8ae26b1b993aa Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
966fcb10 | 26-Nov-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
Change-Id: I5d9984f2642be11be6255f8adbf4586dd8f05a40 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
bb9c622d | 03-Nov-2022 |
Gobinath Krishnamoorthy <gobinathk@google.com> |
Use mobo's object system iface to find mobo path.
This change use system interface to find the inventory object path of the root board in the system. This replaces the `ReScan` method to get the roo
Use mobo's object system iface to find mobo path.
This change use system interface to find the inventory object path of the root board in the system. This replaces the `ReScan` method to get the root object path. The `ReScan` implementation in EntityManager never upstreamed and that CL was abandoned. CL: https://gerrit.openbmc.org/c/openbmc/entity-manager/+/46128
TESTED:
busctl get-property xyz.openbmc_project.Smbios.MDR_V2 \ > /xyz/openbmc_project/inventory/system/chassis/motherboard/cpu0 \ > xyz.openbmc_project.Association.Definitions Associations a(sss) 1 "chassis" "processors" "/xyz/openbmc_project/inventory/system/board/motherboard"
busctl get-property xyz.openbmc_project.Smbios.MDR_V2 \ > /xyz/openbmc_project/inventory/system/chassis/motherboard/cpu1 \ > xyz.openbmc_project.Association.Definitions Associations a(sss) 1 "chassis" "processors" "/xyz/openbmc_project/inventory/system/board/motherboard"
busctl --verbose get-property xyz.openbmc_project.ObjectMapper \ /xyz/openbmc_project/inventory/system/board/motherboard/processors \ xyz.openbmc_project.Association endpoints ARRAY "s" { STRING "/xyz/openbmc_project/inventory/system/chassis/motherboard/cpu0"; STRING "/xyz/openbmc_project/inventory/system/chassis/motherboard/cpu1"; };
Signed-off-by: Gobinath Krishnamoorthy <gobinathk@google.com> Change-Id: Idc6f8c58324c7618a2c4c5a2c4079599c7c29cf4
show more ...
|
744b35aa | 02-Nov-2022 |
Konstantin Aladyshev <aladyshev22@gmail.com> |
Utilize 'Bank Locator' memory device table field
SMBIOS specification defines the following fields in the 'Memory Device (Type 17)' table:
''' Device Locator String number of the string that identi
Utilize 'Bank Locator' memory device table field
SMBIOS specification defines the following fields in the 'Memory Device (Type 17)' table:
''' Device Locator String number of the string that identifies the physically-labeled socket or board position where the memory device is located. EXAMPLE: "DIMM 0"
Bank Locator String number of the string that identifies the physically labeled bank where the memory device is located. EXAMPLE: "Bank 0" or "A" '''
Currently smbios-mdr uses only 'Device Locator' field for the 'Dimm::MemoryDeviceLocator' value. Utilize both 'Bank Locator' and 'Device Locator' fields to construct more complete locator value.
Tested: Tested on the AMD EthanolX board. Example of the locator fields in one of the Type 17 tables: Bank Locator: "P0 CHANNEL A", Device Locator: "DIMM 0".
Before the patch "MemoryDeviceLocator" property on the "xyz.openbmc_project.Inventory.Item.Dimm" interface is equal to the "DIMM 0". After the patch it is equal to the "P0 CHANNEL A DIMM 0".
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com> Change-Id: I0e4913b8ac0639a9549c217ca9dfbfe34ea82c68
show more ...
|
7393e48d | 19-Sep-2022 |
Jayaprakash Mutyala <mutyalax.jayaprakash@intel.com> |
Fix - BIOS version on Redfish
Even though SMBIOS populating bios_active version, Set BIOS ID IPMI command is failing to set the bios_active version. This change support to populate bios_acvite versi
Fix - BIOS version on Redfish
Even though SMBIOS populating bios_active version, Set BIOS ID IPMI command is failing to set the bios_active version. This change support to populate bios_acvite version on BMC.
Tested: Verified using Redfish and EWS. BIOS version populated as expected.
Signed-off-by: Jayaprakash Mutyala <mutyalax.jayaprakash@intel.com> Change-Id: If9df1297e7289847ca0e57cbadf128112eeced92
show more ...
|
1e1ca736 | 21-Sep-2022 |
Jason M. Bills <jason.m.bills@intel.com> |
Add missing include for boost::flat_map
A recent update to sdbusplus exposed a missing include. This adds the include to fix the build.
Signed-off-by: Jason M. Bills <jason.m.bills@intel.com> Chang
Add missing include for boost::flat_map
A recent update to sdbusplus exposed a missing include. This adds the include to fix the build.
Signed-off-by: Jason M. Bills <jason.m.bills@intel.com> Change-Id: I7db08ff8c85fa2dcf234ff42956b68c6ca6eb0e4
show more ...
|
b492838a | 26-Aug-2022 |
shamim-ali <shamima@ami.com> |
Add Support for SMBIOS VERSION - 3.5
As per SMBIOS specification(DSP0134) conformance guidelines,Before parsing the SMBIOS data the system will check for SMBIOS Version. Added 3.5 to the supported v
Add Support for SMBIOS VERSION - 3.5
As per SMBIOS specification(DSP0134) conformance guidelines,Before parsing the SMBIOS data the system will check for SMBIOS Version. Added 3.5 to the supported version.Now BMC will be able to validate the SMBIOS version.
Tested:
Verified BMC is able to validate SMBIOS Version 3.5
Signed-off-by: shamim-ali <shamima@ami.com> Change-Id: Ic886ab78395733b8e8a52b5219caf7e4b9502c3c
show more ...
|
2eca4fe5 | 17-Aug-2022 |
kasunath <kasunath@google.com> |
Expose memory error correction type
Memory error correction types are provided by smbios table type-16. This change use that table to populate 'ECC' field in xyz.openbmc_project.Inventory.Item.Dimm
Expose memory error correction type
Memory error correction types are provided by smbios table type-16. This change use that table to populate 'ECC' field in xyz.openbmc_project.Inventory.Item.Dimm interface.
Tested: Tested this on a real machine.
Signed-off-by: Kasun Athukorala <kasunath@google.com> Change-Id: Iaeb27f81d9b97be1858d1c4564318f5dc69cfa4f
show more ...
|
634ec6ae | 25-Jul-2022 |
kasunath <kasunath@google.com> |
Remove trailing spaces in PartNumber
Sometime PartNumber can contain trailing spaces. This is unnecessary and can cause issues when trying to compare with this field. This change will remove trailin
Remove trailing spaces in PartNumber
Sometime PartNumber can contain trailing spaces. This is unnecessary and can cause issues when trying to compare with this field. This change will remove trailing whitespaces if any.
Tested: Verified on a machine that the part number doesn't contain any trailing white spaces with this change.
Signed-off-by: Kasun Athukorala <kasunath@google.com> Change-Id: I271c9f527f98fbb79493cfe3715b421b44996a91
show more ...
|
b7ccf0ce | 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: I96f87cfe2a0792ff29c25f2280addeed339a67e0
|
19849573 | 13-Jun-2022 |
Jiaqing Zhao <jiaqing.zhao@intel.com> |
cpu: Set DBus EffectiveFamily property
According to the phosphor-dbus-interfaces yaml file, EffectiveFamily is the raw value of the Processor Family in SMBIOS Processor Information structure defined
cpu: Set DBus EffectiveFamily property
According to the phosphor-dbus-interfaces yaml file, EffectiveFamily is the raw value of the Processor Family in SMBIOS Processor Information structure defined in DSP0134 section 7.5.2. This patch sets that value on DBus.
Tested: Verified the value of EffectiveFamily matches the value in SMBIOS table
Change-Id: I9b2274e9fc263d6550fd48e33c7ad233c910b1c1 Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>
show more ...
|
77b9c478 | 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: Ibc88a5de1e7a11d332410985f29698b24aeae983
show more ...
|
06639639 | 14-Jun-2022 |
Jonathan Doman <jonathan.doman@intel.com> |
cpuinfoapp: sst: Disallow BaseSpeedPriorityEnabled writes
The flow for dynamic OOB enabling of SST-BF is not working, so we need to return errors if a user tries to modify BaseSpeedPriorityEnabled i
cpuinfoapp: sst: Disallow BaseSpeedPriorityEnabled writes
The flow for dynamic OOB enabling of SST-BF is not working, so we need to return errors if a user tries to modify BaseSpeedPriorityEnabled instead of letting them get into an unsupported configuration.
Change-Id: I3a1d0162ce31db66a1a7d05e4a2a89827b5277f8 Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>
show more ...
|
49ea830e | 26-May-2022 |
Jonathan Doman <jonathan.doman@intel.com> |
sst: Rediscover profiles after host reboot
In some cases, host processor reboot may change the static SST-PP profile information. This commit adds ability to register callbacks to run upon hostState
sst: Rediscover profiles after host reboot
In some cases, host processor reboot may change the static SST-PP profile information. This commit adds ability to register callbacks to run upon hostState changes, and reruns SST discovery whenever the host exits the power-off state.
Tested: - Ran tools/sst-compare-redfish-os.py tool on platform with SPR host CPU, and observed no mismatches before and after a host reboot. - Confirmed Redfish OperatingConfig properties still populated when host is off.
Signed-off-by: Jonathan Doman <jonathan.doman@intel.com> Change-Id: I9e7b0ebb8c5ec7a8464346f3476490b765579428
show more ...
|
63089f7e | 16-Jun-2022 |
Jonathan Doman <jonathan.doman@intel.com> |
Fix phosphor-host-ipmid externalproject build
It switched to meson build system.
Signed-off-by: Jonathan Doman <jonathan.doman@intel.com> Change-Id: Ic5914f0865f6cace569b775a85e6030f5277f182 |