Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ACPI/IORT: Remove linker section for IORT entries probing

The IORT linker section introduced by commit 34ceea275f62
("ACPI/IORT: Introduce linker section for IORT entries probing")
was needed to make sure SMMU drivers are registered (and therefore
probed) in the kernel before devices using the SMMU have a chance
to probe in turn.

Through the introduction of deferred IOMMU configuration the linker
section based IORT probing infrastructure is not needed any longer, in
that device/SMMU probe dependencies are managed through the probe
deferral mechanism, making the IORT linker section infrastructure
unused, so that it can be removed.

Remove the unused IORT linker section probing infrastructure
from the kernel to complete the ACPI IORT IOMMU configure probe
deferral mechanism implementation.

Tested-by: Hanjun Guo <hanjun.guo@linaro.org>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Sricharan R <sricharan@codeaurora.org>
Signed-off-by: Joerg Roedel <jroedel@suse.de>

authored by

Lorenzo Pieralisi and committed by
Joerg Roedel
316ca880 f6810c15

-6
-2
drivers/acpi/arm64/iort.c
··· 1000 1000 } 1001 1001 1002 1002 iort_init_platform_devices(); 1003 - 1004 - acpi_probe_device_table(iort); 1005 1003 }
-1
include/asm-generic/vmlinux.lds.h
··· 566 566 IRQCHIP_OF_MATCH_TABLE() \ 567 567 ACPI_PROBE_TABLE(irqchip) \ 568 568 ACPI_PROBE_TABLE(clksrc) \ 569 - ACPI_PROBE_TABLE(iort) \ 570 569 EARLYCON_TABLE() 571 570 572 571 #define INIT_TEXT \
-3
include/linux/acpi_iort.h
··· 52 52 { return NULL; } 53 53 #endif 54 54 55 - #define IORT_ACPI_DECLARE(name, table_id, fn) \ 56 - ACPI_DECLARE_PROBE_ENTRY(iort, name, table_id, 0, NULL, 0, fn) 57 - 58 55 #endif /* __ACPI_IORT_H__ */