Fix conflicting "CurrentPowerState" chassis state from chassis_system0 on x86
Changes:
Boot table look up "CurrentPowerState" from the chassis
URL "/xyz/openbmc_project/state/chassis0".
On x86 there is the 'chassis_system0' URL that has the same property
that is needed to be skiped in a state enumeration logic to prevent
unnecessary state override.
"/xyz/openbmc_project/state/chassis0": {
"CurrentPowerState": "On",
"/xyz/openbmc_project/state/chassis_sytem0": {
"CurrentPowerState": "Off",
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>
Change-Id: I772fce4a8dbbd079829e4572d60b39ebf3727c07
diff --git a/lib/state.py b/lib/state.py
index 5f3d50c..6e0e9c3 100755
--- a/lib/state.py
+++ b/lib/state.py
@@ -692,6 +692,12 @@
if "hypervisor0" in url_path:
continue
+ if platform_arch_type == "x86":
+ # Skip conflicting "CurrentPowerState" URL from the enum
+ # /xyz/openbmc_project/state/chassis_system0
+ if "chassis_system0" in url_path:
+ continue
+
for attr_name in ret_values[url_path]:
# Create a state key value based on the attr_name.
try: