soc/intel/xeon_sp/acpi: Fix uncore dsdt for multiple cpus
Fix the asl to use CONFIG_MAX_CPUS to create entries for multiple cpu uncores. Don't add the RTxx resource entries multiple times. The function is called for each CPUs. Change-Id: Ia4eb9716ae4bd72fb4eb98649105be629623cbef Signed-off-by: Marc Jones <marcjones@sysproconsulting.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/47060 Reviewed-by: Jay Talbott <JayTalbott@sysproconsulting.com> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
995a7e25a1
commit
2c707160a9
|
@ -69,7 +69,7 @@ MAKE_IIO_DEV(01, 10)
|
||||||
MAKE_IIO_DEV(02, 20)
|
MAKE_IIO_DEV(02, 20)
|
||||||
MAKE_IIO_DEV(03, 28)
|
MAKE_IIO_DEV(03, 28)
|
||||||
|
|
||||||
#if MAX_SOCKET > 1
|
#if (CONFIG_MAX_SOCKET > 1)
|
||||||
MAKE_IIO_DEV(06, 40)
|
MAKE_IIO_DEV(06, 40)
|
||||||
MAKE_IIO_DEV(07, 50)
|
MAKE_IIO_DEV(07, 50)
|
||||||
MAKE_IIO_DEV(08, 60)
|
MAKE_IIO_DEV(08, 60)
|
||||||
|
|
|
@ -60,6 +60,10 @@ void uncore_inject_dsdt(const struct device *device)
|
||||||
{
|
{
|
||||||
struct iiostack_resource stack_info = {0};
|
struct iiostack_resource stack_info = {0};
|
||||||
|
|
||||||
|
/* Only add RTxx entries once. */
|
||||||
|
if (device->bus->secondary != 0)
|
||||||
|
return;
|
||||||
|
|
||||||
get_iiostack_info(&stack_info);
|
get_iiostack_info(&stack_info);
|
||||||
|
|
||||||
acpigen_write_scope("\\_SB");
|
acpigen_write_scope("\\_SB");
|
||||||
|
|
|
@ -104,6 +104,10 @@ void uncore_inject_dsdt(const struct device *device)
|
||||||
const IIO_UDS *hob = fsp_find_extension_hob_by_guid(uds_guid, &hob_size);
|
const IIO_UDS *hob = fsp_find_extension_hob_by_guid(uds_guid, &hob_size);
|
||||||
assert(hob != NULL && hob_size != 0);
|
assert(hob != NULL && hob_size != 0);
|
||||||
|
|
||||||
|
/* Only add RTxx entries once. */
|
||||||
|
if (device->bus->secondary != 0)
|
||||||
|
return;
|
||||||
|
|
||||||
acpigen_write_scope("\\_SB");
|
acpigen_write_scope("\\_SB");
|
||||||
for (int socket = 0; socket < hob->PlatformData.numofIIO; ++socket) {
|
for (int socket = 0; socket < hob->PlatformData.numofIIO; ++socket) {
|
||||||
IIO_RESOURCE_INSTANCE iio_resource =
|
IIO_RESOURCE_INSTANCE iio_resource =
|
||||||
|
|
Loading…
Reference in New Issue