summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Held <felix-coreboot@felixheld.de>2022-03-02 15:16:17 +0100
committerFelix Held <felix-coreboot@felixheld.de>2022-03-03 18:34:05 +0000
commit91d006c003781dcd83e82fe7c992174a93d6c4c5 (patch)
treed4ea4f965f95ce73fefe207f564351ed720839f5
parentebb6723115c5049c3ad4979a25934a0ee677697c (diff)
soc/amd/stoneyridge/acpi: generate PPKG object in generate_cpu_entries
Generate the PPKG object in the generate_cpu_entries function instead of generating the PCNT object that is the used in the PPKG method in cpu.asl to provide the PPKG object. This both simplifies the code and aligns Stoneyridge with the other AMD SoCs. This will also make the code behave correctly in a case where the number of CPU cores/threads isn't a power of two. TEST=None, but equivalent change on Picasso was verified to not break anything on Mandolin. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Change-Id: Ib42d718102151a72a5fe812e83eb2eb4f9e7b611 Reviewed-on: https://review.coreboot.org/c/coreboot/+/62539 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Raul Rangel <rrangel@chromium.org>
-rw-r--r--src/mainboard/google/kahlee/variants/baseboard/include/baseboard/acpi/thermal.asl2
-rw-r--r--src/soc/amd/stoneyridge/acpi.c4
-rw-r--r--src/soc/amd/stoneyridge/acpi/cpu.asl39
3 files changed, 3 insertions, 42 deletions
diff --git a/src/mainboard/google/kahlee/variants/baseboard/include/baseboard/acpi/thermal.asl b/src/mainboard/google/kahlee/variants/baseboard/include/baseboard/acpi/thermal.asl
index 2930def1f8..6f62aefe4f 100644
--- a/src/mainboard/google/kahlee/variants/baseboard/include/baseboard/acpi/thermal.asl
+++ b/src/mainboard/google/kahlee/variants/baseboard/include/baseboard/acpi/thermal.asl
@@ -2,6 +2,8 @@
#include <variant/thermal.h>
+External (\PPKG, MethodObj)
+
/* Thermal Zone */
Scope (\_TZ)
diff --git a/src/soc/amd/stoneyridge/acpi.c b/src/soc/amd/stoneyridge/acpi.c
index 4c3b6254fd..0a670885f3 100644
--- a/src/soc/amd/stoneyridge/acpi.c
+++ b/src/soc/amd/stoneyridge/acpi.c
@@ -151,7 +151,5 @@ void generate_cpu_entries(const struct device *device)
acpigen_pop_len();
}
- acpigen_write_scope("\\");
- acpigen_write_name_integer("PCNT", cores);
- acpigen_pop_len();
+ acpigen_write_processor_package("PPKG", 0, cores);
}
diff --git a/src/soc/amd/stoneyridge/acpi/cpu.asl b/src/soc/amd/stoneyridge/acpi/cpu.asl
index 24b81a13ab..818bcdb4d2 100644
--- a/src/soc/amd/stoneyridge/acpi/cpu.asl
+++ b/src/soc/amd/stoneyridge/acpi/cpu.asl
@@ -4,42 +4,3 @@
Method (PNOT)
{
}
-
-/*
- * Processor Object
- */
-/* These devices are created at runtime */
-External (\PCNT, IntObj)
-External (\_SB.P000, DeviceObj)
-External (\_SB.P001, DeviceObj)
-External (\_SB.P002, DeviceObj)
-External (\_SB.P003, DeviceObj)
-External (\_SB.P004, DeviceObj)
-External (\_SB.P005, DeviceObj)
-External (\_SB.P006, DeviceObj)
-External (\_SB.P007, DeviceObj)
-
-/* Return a package containing enabled processor entries */
-Method (PPKG)
-{
- If (\PCNT >= 4) {
- Return (Package ()
- {
- \_SB.P000,
- \_SB.P001,
- \_SB.P002,
- \_SB.P003
- })
- } ElseIf (\PCNT>= 2) {
- Return (Package ()
- {
- \_SB.P000,
- \_SB.P001
- })
- } Else {
- Return (Package ()
- {
- \_SB.P000
- })
- }
-}