[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar()
pci_conf_read8() needs pci mmcfg mapping to work on multiple pci segments system such as HPE Superdome-Flex. Move acpi_mmcfg_init() call in acpi_boot_init() before calling acpi_parse_dmar() so that when pci_conf_read8() is called in acpi_parse_dev_scope(), we already have the mapping set up. acpi_mmcfg_init() only setup mmcfg mapping and has some global variables initialized so there is no hazard to move it ahead. Meanwhile from its name, acpi_boot_init() is a proper place to call it. The alternative is moving the acpi_parse_dev_scope() call to a later point after acpi_mmcfg_init(). But acpi_parse_one_drhd(), acpi_parse_one_rmrr() and acpi_parse_one_atsr() all called acpi_parse_dev_scope() as their main job. Splitting those functions to two pieces looks less optimal and meaningless. Signed-off-by: Zhenzhong Duan <zhenzhong.duan@xxxxxxxxxx> Tested-by: Gopalasetty, Manoj <manoj.gopalasetty@xxxxxxx> --- xen/arch/x86/acpi/boot.c | 2 ++ xen/arch/x86/setup.c | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/acpi/boot.c b/xen/arch/x86/acpi/boot.c index 8e6c96d..e89c2e9 100644 --- a/xen/arch/x86/acpi/boot.c +++ b/xen/arch/x86/acpi/boot.c @@ -724,6 +724,8 @@ int __init acpi_boot_init(void) acpi_table_parse(ACPI_SIG_HPET, acpi_parse_hpet); + acpi_mmcfg_init(); + acpi_dmar_init(); erst_init(); diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index d5cc584..9d0cd3b 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -1598,8 +1598,6 @@ void __init noreturn __start_xen(unsigned long mbi_p) vesa_mtrr_init(); - acpi_mmcfg_init(); - early_msi_init(); iommu_setup(); /* setup iommu if available */ -- 1.7.3 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |