x86, AMD IOMMU: do runtime list initialization at compile time

This patch changes the list initialization for the iommu list and the unity map
list from runtime to compile time.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Cc: iommu@lists.linux-foundation.org
Cc: bhavna.sarathy@amd.com
Cc: robert.richter@amd.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Joerg Roedel 2008-07-11 17:14:31 +02:00 committed by Ingo Molnar
parent 58a3bee567
commit 2e22847fbe

View File

@ -118,12 +118,12 @@ static int __initdata amd_iommu_detected;
u16 amd_iommu_last_bdf; /* largest PCI device id we have u16 amd_iommu_last_bdf; /* largest PCI device id we have
to handle */ to handle */
struct list_head amd_iommu_unity_map; /* a list of required unity mappings LIST_HEAD(amd_iommu_unity_map); /* a list of required unity mappings
we find in ACPI */ we find in ACPI */
unsigned amd_iommu_aperture_order = 26; /* size of aperture in power of 2 */ unsigned amd_iommu_aperture_order = 26; /* size of aperture in power of 2 */
int amd_iommu_isolate; /* if 1, device isolation is enabled */ int amd_iommu_isolate; /* if 1, device isolation is enabled */
struct list_head amd_iommu_list; /* list of all AMD IOMMUs in the LIST_HEAD(amd_iommu_list); /* list of all AMD IOMMUs in the
system */ system */
/* /*
@ -673,8 +673,6 @@ static int __init init_iommu_all(struct acpi_table_header *table)
struct amd_iommu *iommu; struct amd_iommu *iommu;
int ret; int ret;
INIT_LIST_HEAD(&amd_iommu_list);
end += table->length; end += table->length;
p += IVRS_HEADER_LENGTH; p += IVRS_HEADER_LENGTH;
@ -780,8 +778,6 @@ static int __init init_memory_definitions(struct acpi_table_header *table)
u8 *p = (u8 *)table, *end = (u8 *)table; u8 *p = (u8 *)table, *end = (u8 *)table;
struct ivmd_header *m; struct ivmd_header *m;
INIT_LIST_HEAD(&amd_iommu_unity_map);
end += table->length; end += table->length;
p += IVRS_HEADER_LENGTH; p += IVRS_HEADER_LENGTH;