diff options
author | Felix Held <felix-coreboot@felixheld.de> | 2021-05-07 18:46:36 +0200 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2021-05-08 17:56:10 +0000 |
commit | 95f1bb852525808a7b514745ebe3d19b6d2df7c4 (patch) | |
tree | 56195beca9a519060a693afb1bec08f44cf028ed /src/soc/amd | |
parent | 509b0a97f6a44ea85a8a37087a03526dd513a88f (diff) | |
download | coreboot-95f1bb852525808a7b514745ebe3d19b6d2df7c4.tar.xz |
soc/amd: factor out ACPI ALIB function numbers to common code
The ACPI ALIB function numbers are defined in the AMD Generic
Encapsulated Software Architecture (AGESA™) Interface Specification
(document #55483).
TEST=Timeless build stays the same for Mandolin (Picasso) and Gardenia
(Stoneyridge).
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: I290ef0db32c65ebb2bbbe4f65db4df772b884161
Reviewed-on: https://review.coreboot.org/c/coreboot/+/53915
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/amd')
-rw-r--r-- | src/soc/amd/common/block/include/amdblocks/alib.h | 9 | ||||
-rw-r--r-- | src/soc/amd/picasso/acpi/cpu.asl | 4 | ||||
-rw-r--r-- | src/soc/amd/picasso/root_complex.c | 4 | ||||
-rw-r--r-- | src/soc/amd/stoneyridge/acpi/sb_pci0_fch.asl | 4 |
4 files changed, 17 insertions, 4 deletions
diff --git a/src/soc/amd/common/block/include/amdblocks/alib.h b/src/soc/amd/common/block/include/amdblocks/alib.h new file mode 100644 index 0000000000..a59ba8b153 --- /dev/null +++ b/src/soc/amd/common/block/include/amdblocks/alib.h @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#ifndef AMD_COMMON_ALIB_H +#define AMD_COMMON_ALIB_H + +#define ALIB_FUNCTION_REPORT_AC_DC_STATE 0x1 +#define ALIB_FUNCTION_DYNAMIC_POWER_THERMAL_CONFIG 0xc + +#endif /* AMD_COMMON_ALIB_H */ diff --git a/src/soc/amd/picasso/acpi/cpu.asl b/src/soc/amd/picasso/acpi/cpu.asl index 294d89f481..869602cc27 100644 --- a/src/soc/amd/picasso/acpi/cpu.asl +++ b/src/soc/amd/picasso/acpi/cpu.asl @@ -1,5 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0-only */ +#include <amdblocks/alib.h> + /* * Wrapper method that calls ALIB function 1 to report current AC/DC state. */ @@ -23,7 +25,7 @@ Method (WAL1) F1DA = \PWRS ^ 1 Printf ("ALIB call: func 1 params %o", Local0) - \_SB.ALIB (1, Local0) + \_SB.ALIB (ALIB_FUNCTION_REPORT_AC_DC_STATE, Local0) } Method (PNOT) diff --git a/src/soc/amd/picasso/root_complex.c b/src/soc/amd/picasso/root_complex.c index 292ee20af8..47b3a43cd3 100644 --- a/src/soc/amd/picasso/root_complex.c +++ b/src/soc/amd/picasso/root_complex.c @@ -2,6 +2,7 @@ #include <acpi/acpigen.h> #include <amdblocks/acpi.h> +#include <amdblocks/alib.h> #include <amdblocks/memmap.h> #include <amdblocks/ioapic.h> #include <arch/ioapic.h> @@ -18,7 +19,6 @@ #include "chip.h" enum { - ALIB_DPTCI_FUNCTION_ID = 0xc, THERMAL_CONTROL_LIMIT_ID = 0x3, SUSTAINED_POWER_LIMIT_PARAM_ID = 0x5, FAST_PPT_LIMIT_PARAM_ID = 0x6, @@ -196,7 +196,7 @@ static void dptc_call_alib(const char *buf_name, uint8_t *buffer, size_t size) /* \_SB.ALIB(0xc, buf_name) */ acpigen_emit_namestring("\\_SB.ALIB"); - acpigen_write_integer(ALIB_DPTCI_FUNCTION_ID); + acpigen_write_integer(ALIB_FUNCTION_DYNAMIC_POWER_THERMAL_CONFIG); acpigen_emit_namestring(buf_name); } diff --git a/src/soc/amd/stoneyridge/acpi/sb_pci0_fch.asl b/src/soc/amd/stoneyridge/acpi/sb_pci0_fch.asl index 4580b772f0..78ce889e5d 100644 --- a/src/soc/amd/stoneyridge/acpi/sb_pci0_fch.asl +++ b/src/soc/amd/stoneyridge/acpi/sb_pci0_fch.asl @@ -1,5 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0-only */ +#include <amdblocks/alib.h> + External(\_SB.ALIB, MethodObj) /* System Bus */ @@ -142,7 +144,7 @@ Method(_INI, 0, Serialized) { F1SZ = 3 F1DA= \PWRS - \_SB.ALIB(1, F1BF) + \_SB.ALIB(ALIB_FUNCTION_REPORT_AC_DC_STATE, F1BF) } /* End Method(_SB._INI) */ |