Subject: Fscking OMAP

From: [email-masked] (Tony Lindgren)
Date: Mon, 20 Apr 2015 09:25:16 -0700

* Russell King - ARM Linux <[email-masked]> [150420 08:50]:
> Guys,
> 
> If you're going to introduce a dependency on some infrastructure which
> you absolutely require for booting, then _please_ ensure that the
> configuration system is updated such that pre-existing kernel
> configurations continue to work.
> 
> Don't leave it such that the infrastructure ends up returning -ENOSYS,
> which then filters down into your SoC specific code, and aborts the
> initialisation of critical infrastructure, leaving you with a totally
> silent boot failure.
> 
> In this case, it's the addition of syscon to OMAP internals,
> specifically in omap_control_init().
> 
> This is explicitly targetted at OMAP people, who have wasted much of
> my day today investigating why their platforms no longer boot in DT
> mode.

Ouch, yeah missing dependencies are a pain to debug.

Looks like we get MFD_SYSCON selected with omap2plus_defconfig,
but that's not always the case like you pointed out.

Does the patch below fix the issue for you?

Regards,

Tony

8< -----------------------
From: Tony Lindgren <[email-masked]>
Date: Mon, 20 Apr 2015 09:23:25 -0700
Subject: [PATCH] ARM: OMAP2+: Fix booting with configs that don't have MFD_SYSCON

With the recent changes omaps have developed a dependency to MFD_SYSCON.
This is used for system control module generic register area and some
clocks.

We do have it selected in omap2plus_defconfig, but targeted config
files may not have it selected. Let's make sure it's selected like
few other ARM platforms are already doing.

Reported-by: Russell King <[email-masked]>
Signed-off-by: Tony Lindgren <[email-masked]>

--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -81,6 +81,7 @@ config ARCH_OMAP2PLUS
 	select GENERIC_IRQ_CHIP
 	select MACH_OMAP_GENERIC
 	select MEMORY
+	select MFD_SYSCON
 	select OMAP_DM_TIMER
 	select OMAP_GPMC
 	select PINCTRL