From c0b1be0ba1d0c87d9670e695c60eeb6ec901a2d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Thu, 3 Jan 2019 11:38:39 +0200 Subject: amdfam10 boards: Call get_bus_conf() just once MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It has to be called once before PIRQ and MP table generation. Change-Id: I238c6b4810404d320b36d4f6b4a161c1ff11c8d3 Signed-off-by: Kyösti Mälkki Reviewed-on: https://review.coreboot.org/c/30630 Tested-by: build bot (Jenkins) Reviewed-by: Arthur Heymans Reviewed-by: Angel Pons --- src/northbridge/amd/amdfam10/acpi.c | 4 ---- src/northbridge/amd/amdfam10/get_pci1234.c | 11 +++++++++++ 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'src/northbridge') diff --git a/src/northbridge/amd/amdfam10/acpi.c b/src/northbridge/amd/amdfam10/acpi.c index eaea725360..dc139adb87 100644 --- a/src/northbridge/amd/amdfam10/acpi.c +++ b/src/northbridge/amd/amdfam10/acpi.c @@ -215,8 +215,6 @@ void northbridge_acpi_write_vars(struct device *device) char pscope[] = "\\_SB.PCI0"; int i; - get_bus_conf(); /* it will get sblk, pci1234, hcdn, and sbdn */ - acpigen_write_scope(pscope); acpigen_write_name("BUSN"); @@ -333,8 +331,6 @@ unsigned long northbridge_write_acpi_tables(struct device *device, acpi_srat_t *srat; acpi_slit_t *slit; - get_bus_conf(); /* it will get sblk, pci1234, hcdn, and sbdn */ - /* SRAT */ current = ALIGN(current, 8); printk(BIOS_DEBUG, "ACPI: * SRAT at %lx\n", current); diff --git a/src/northbridge/amd/amdfam10/get_pci1234.c b/src/northbridge/amd/amdfam10/get_pci1234.c index d9dd2ced8b..71772b3feb 100644 --- a/src/northbridge/amd/amdfam10/get_pci1234.c +++ b/src/northbridge/amd/amdfam10/get_pci1234.c @@ -13,6 +13,7 @@ * GNU General Public License for more details. */ +#include #include #include #include @@ -108,3 +109,13 @@ void get_pci1234(void) sysconf.hcid[i] = 0; } } + +static void amd_bs_sysconf(void *arg) +{ + /* Prepare sysconf structures, which are used to generate IRQ, + * MP and ACPI table entries. + */ + get_bus_conf(); +} + +BOOT_STATE_INIT_ENTRY(BS_WRITE_TABLES, BS_ON_ENTRY, amd_bs_sysconf, NULL); -- cgit v1.2.3