[PATCH v12 7/9] ACPI: x86: s2idle: Store if constraint is enabled

From: Mario Limonciello
Date: Wed Aug 16 2023 - 18:11:28 EST


Constraints are currently only stored when enabled. To enable
the ability to check if constraints are present they need to be
stored even if disabled.

Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx>
---
v9->v10:
* split from other patches
---
drivers/acpi/x86/s2idle.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
index b8b3151215f0a..826f2924d05fe 100644
--- a/drivers/acpi/x86/s2idle.c
+++ b/drivers/acpi/x86/s2idle.c
@@ -78,6 +78,7 @@ struct lpi_device_constraint {
struct lpi_constraints {
acpi_handle handle;
int min_dstate;
+ bool enabled;
};

/* AMD Constraint package structure */
@@ -157,8 +158,7 @@ static void lpi_device_get_constraints_amd(void)
}
}

- if (!dev_info.enabled || !dev_info.name ||
- !dev_info.min_dstate)
+ if (!dev_info.name)
continue;

status = acpi_get_handle(NULL, dev_info.name, &list->handle);
@@ -173,7 +173,7 @@ static void lpi_device_get_constraints_amd(void)
dev_info.min_dstate);

list->min_dstate = dev_info.min_dstate;
-
+ list->enabled = dev_info.enabled;
lpi_constraints_table_size++;
}
}
@@ -236,7 +236,7 @@ static void lpi_device_get_constraints(void)
}
}

- if (!info.enabled || !info.package || !info.name)
+ if (!info.package || !info.name)
continue;

constraint = &lpi_constraints_table[lpi_constraints_table_size];
@@ -248,7 +248,7 @@ static void lpi_device_get_constraints(void)
acpi_handle_debug(lps0_device_handle,
"index:%d Name:%s\n", i, info.name);

- constraint->min_dstate = -1;
+ constraint->min_dstate = -EINVAL;

for (j = 0; j < package_count; j++) {
union acpi_object *info_obj = &info.package[j];
@@ -285,7 +285,7 @@ static void lpi_device_get_constraints(void)
"Incomplete constraint defined\n");
continue;
}
-
+ constraint->enabled = info.enabled;
lpi_constraints_table_size++;
}

--
2.34.1