acpi/Kconfig: move \_SB scope out of ACPI_CPU_STRING

In ACPI 1.0 the processor objects were inside the \_PR scope, but since
ACPI 2.0 the \_SB scope can be used for that. Outside of coreboot some
firmwares still used the \_PR scope for a while for legacy ACPI 1.0 OS
compatibility, but apart from that the \_PR scope is deprecated.
coreboot already uses the \_SB scope for the processor devices
everywhere, so move the \_SB scope out of the ACPI_CPU_STRING to the
format string inside the 3 snprintf statements that use the
ACPI_CPU_STRING.

Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Suggested-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Change-Id: I76f18594a3a623b437a163c270547d3e9618c31a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/75167
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Tim Wawrzynczak <inforichland@gmail.com>
Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
Reviewed-by: Fred Reitberger <reitbergerfred@gmail.com>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
This commit is contained in:
Felix Held 2023-05-12 15:55:06 +02:00
parent 3d19aa9ce8
commit f0a8b042c9
7 changed files with 10 additions and 11 deletions

View File

@ -8,13 +8,11 @@ config ACPI_AMD_HARDWARE_SLEEP_VALUES
config ACPI_CPU_STRING
string
default "\\_SB.CP%02X"
default "CP%02X"
depends on HAVE_ACPI_TABLES
help
Specifies the ACPI name format string used by the acpigen
function to generate the processor scope. Default is \_SB.CPxx.
Note that you need to escape the '\' character in the string.
The resulting string will be truncated to at most 15 chars.
function to generate the processor scope. Default is CPxx.
config ACPI_HAVE_PCAT_8259
def_bool y if !ACPI_NO_PCAT_8259

View File

@ -391,7 +391,7 @@ void acpigen_set_package_element_namestr(const char *package, unsigned int eleme
void acpigen_write_processor_namestring(unsigned int cpu_index)
{
char buffer[16];
snprintf(buffer, sizeof(buffer), CONFIG_ACPI_CPU_STRING, cpu_index);
snprintf(buffer, sizeof(buffer), "\\_SB." CONFIG_ACPI_CPU_STRING, cpu_index);
acpigen_emit_namestring(buffer);
}
@ -1939,7 +1939,8 @@ void acpigen_write_CPPC_package(const struct cppc_config *config)
void acpigen_write_CPPC_method(void)
{
char pscope[16];
snprintf(pscope, sizeof(pscope), CONFIG_ACPI_CPU_STRING "." CPPC_PACKAGE_NAME, 0);
snprintf(pscope, sizeof(pscope),
"\\_SB." CONFIG_ACPI_CPU_STRING "." CPPC_PACKAGE_NAME, 0);
acpigen_write_method("_CPC", 0);
acpigen_emit_byte(RETURN_OP);

View File

@ -10,6 +10,6 @@ if CPU_AMD_PI_00730F01
config ACPI_CPU_STRING
string
default "\\_SB.P%03d"
default "P%03d"
endif # CPU_AMD_PI_00730F01

View File

@ -35,7 +35,7 @@ config CBFS_CACHE_SIZE
config ACPI_CPU_STRING
string
default "\\_SB.C%03d"
default "C%03d"
endif # SOC_AMD_COMMON_BLOCK_NONCAR

View File

@ -268,7 +268,7 @@ config SMM_MODULE_STACK_SIZE
config ACPI_CPU_STRING
string
default "\\_SB.P%03d"
default "P%03d"
config ACPI_SSDT_PSD_INDEPENDENT
default n

View File

@ -158,7 +158,7 @@ void acpigen_write_CPPC_hybrid_method(s32 core_id)
snprintf(pkg_path, sizeof(pkg_path), CPPC_PACKAGE_NAME, 0);
else
snprintf(pkg_path, sizeof(pkg_path),
CONFIG_ACPI_CPU_STRING "." CPPC_PACKAGE_NAME, 0);
"\\_SB." CONFIG_ACPI_CPU_STRING "." CPPC_PACKAGE_NAME, 0);
acpigen_write_method("_CPC", 0);

View File

@ -25,7 +25,7 @@ config MAX_CPUS
config ACPI_CPU_STRING
string
default "\\_SB.C%03X"
default "C%03X"
config SIPI_FINAL_TIMEOUT
int