summaryrefslogtreecommitdiffstats
path: root/src/soc/amd/stoneyridge/northbridge.c
diff options
context:
space:
mode:
authorFelix Held <felix-coreboot@felixheld.de>2023-03-24 21:41:35 +0100
committerFelix Held <felix-coreboot@felixheld.de>2023-03-29 16:30:50 +0000
commitfc709fee099b4035e0f5311a401cda886ad0d8a2 (patch)
tree6512838bda8f1d20ac3381c305ba7b9f85150ae0 /src/soc/amd/stoneyridge/northbridge.c
parent7d8c832d1fa9fca354f93571bf0c4b8905de86d8 (diff)
downloadcoreboot-fc709fee099b4035e0f5311a401cda886ad0d8a2.tar.gz
coreboot-fc709fee099b4035e0f5311a401cda886ad0d8a2.tar.bz2
coreboot-fc709fee099b4035e0f5311a401cda886ad0d8a2.zip
soc/amd/stoneyridge: use common AMD CPU power state ACPI generation
Instead of using the PSTATE SSDT generated by binaryPI, use the common AMD code by selecting SOC_AMD_COMMON_BLOCK_ACPI_CPU_POWER_STATE. To match the SSDT from binaryPI, set ACPI_SSDT_PSD_INDEPENDENT to n. There are two differences to the binaryPI SSDT: Now coreboot includes the C1 state in the _CST package instead of just having the kernel add this due to the ACPI_FADT_C1_SUPPORTED bit being set and the address of the PS_STS_REG P state status MSR is written to the corresponding field of the _PCT package instead of being 0. TEST=On Careena the new P and C state ACPI packages are nearly identical to the ones from the SSDT from binaryPI with the two functional differences mentioned above. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Change-Id: Icdf6bc8f0e0363f185a294ab84edcb51322e7eb7 Reviewed-on: https://review.coreboot.org/c/coreboot/+/74023 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Diffstat (limited to 'src/soc/amd/stoneyridge/northbridge.c')
-rw-r--r--src/soc/amd/stoneyridge/northbridge.c13
1 files changed, 0 insertions, 13 deletions
diff --git a/src/soc/amd/stoneyridge/northbridge.c b/src/soc/amd/stoneyridge/northbridge.c
index 384698ac55b2..7913827cd2bd 100644
--- a/src/soc/amd/stoneyridge/northbridge.c
+++ b/src/soc/amd/stoneyridge/northbridge.c
@@ -213,7 +213,6 @@ static unsigned long agesa_write_acpi_tables(const struct device *device,
{
acpi_srat_t *srat;
acpi_slit_t *slit;
- acpi_header_t *ssdt;
acpi_header_t *alib;
acpi_header_t *ivrs;
acpi_hest_t *hest;
@@ -277,18 +276,6 @@ static unsigned long agesa_write_acpi_tables(const struct device *device,
" Skipping.\n");
}
- current = acpi_align_current(current);
- printk(BIOS_DEBUG, "ACPI: * SSDT at %lx\n", current);
- ssdt = (acpi_header_t *)agesawrapper_getlateinitptr(PICK_PSTATE);
- if (ssdt != NULL) {
- memcpy((void *)current, ssdt, ssdt->length);
- ssdt = (acpi_header_t *)current;
- current += ssdt->length;
- } else {
- printk(BIOS_DEBUG, " AGESA PState table NULL. Skipping.\n");
- }
- acpi_add_table(rsdp, ssdt);
-
printk(BIOS_DEBUG, "ACPI: * SSDT for PState at %lx\n", current);
return current;
}