ARM: imx6: allow booting with old DT
authorLucas Stach <l.stach@pengutronix.de>
Tue, 26 May 2015 16:43:36 +0000 (18:43 +0200)
committerShawn Guo <shawn.guo@linaro.org>
Wed, 27 May 2015 07:04:40 +0000 (15:04 +0800)
commit634a603760c26d163ff92751d91ac7b859e879c4
tree6dc02c7e2f1e281cfc70499d76047cee7b9cf13f
parente46b5a6470a5e2c8e1096f8f60887ac19949055b
ARM: imx6: allow booting with old DT

The GPC rewrite to IRQ domains has been on the premise that it may break
suspend/resume for new kernels on old DT, but otherwise keep things working
from a user perspective. This was an accepted compromise to be able to move
the GIC cleanup forward.

What actually happened was that booting a new kernel on an old DT crashes
before even the console is up, so the user does not even see the warning
that the DT is too old. The warning message suggests that this has been
known before, which is clearly unacceptable.

Fix the early crash by mapping the GPC memory space if the IRQ controller
doesn't claim it. This keeps at least CPUidle and the needed CPU wakeup
workarounds working. With this fixed the system is able to boot up
properly minus the expected suspend/resume breakage.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
arch/arm/mach-imx/gpc.c