summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx/mach-imx27.c
diff options
context:
space:
mode:
authorSaravana Kannan <saravanak@google.com>2021-02-04 17:38:46 -0800
committerShawn Guo <shawnguo@kernel.org>2021-03-15 12:21:18 +0800
commite2c1b0ff38c961d49ce34efda48fa45eb1cb5f19 (patch)
tree13a31a5b1fe53ec8fdec74eb4c27e20241f246f9 /arch/arm/mach-imx/mach-imx27.c
parenta38fd8748464831584a19438cbb3082b5a2dab15 (diff)
downloadlwn-e2c1b0ff38c961d49ce34efda48fa45eb1cb5f19.tar.gz
lwn-e2c1b0ff38c961d49ce34efda48fa45eb1cb5f19.zip
ARM: imx: avic: Convert to using IRQCHIP_DECLARE
Using IRQCHIP_DECLARE lets fw_devlink know that it should not wait for these interrupt controllers to be populated as struct devices. Without this change, fw_devlink=on will make the consumers of these interrupt controllers wait for the struct device to be added and thereby block the consumers' probes forever. Converting to IRQCHIP_DECLARE addresses boot issues on imx25 with fw_devlink=on that were reported by Martin. This also removes a lot of boilerplate code. Fixes: e590474768f1 ("driver core: Set fw_devlink=on by default") Reported-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Saravana Kannan <saravanak@google.com> Tested-by: Martin Kaiser <martin@kaiser.cx> Reviewed-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Diffstat (limited to 'arch/arm/mach-imx/mach-imx27.c')
-rw-r--r--arch/arm/mach-imx/mach-imx27.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/arch/arm/mach-imx/mach-imx27.c b/arch/arm/mach-imx/mach-imx27.c
index 262422a9c196..e325c9468105 100644
--- a/arch/arm/mach-imx/mach-imx27.c
+++ b/arch/arm/mach-imx/mach-imx27.c
@@ -56,17 +56,6 @@ static void __init imx27_init_early(void)
mxc_set_cpu_type(MXC_CPU_MX27);
}
-static void __init mx27_init_irq(void)
-{
- void __iomem *avic_base;
- struct device_node *np;
-
- np = of_find_compatible_node(NULL, NULL, "fsl,avic");
- avic_base = of_iomap(np, 0);
- BUG_ON(!avic_base);
- mxc_init_irq(avic_base);
-}
-
static const char * const imx27_dt_board_compat[] __initconst = {
"fsl,imx27",
NULL
@@ -75,7 +64,6 @@ static const char * const imx27_dt_board_compat[] __initconst = {
DT_MACHINE_START(IMX27_DT, "Freescale i.MX27 (Device Tree Support)")
.map_io = mx27_map_io,
.init_early = imx27_init_early,
- .init_irq = mx27_init_irq,
.init_late = imx27_pm_init,
.dt_compat = imx27_dt_board_compat,
MACHINE_END