On 10/03/2013 11:59 AM, Suman Anna wrote: > The hwmod init sequence involves initializing and idling all the > hwmods during bootup. If a module class has sysconfig, the init > sequence utilizes the module register base for performing any > sysc configuration. > > The module address space is being removed from hwmod database and > retrieved from the <reg> property of the corresponding DT node. > If a hwmod does not have its corresponding DT node defined and the > memory address space is not defined in the corresponding > omap_hwmod_ocp_if, then the module register target address space > would be NULL and any sysc programming would result in a NULL > pointer dereference and a kernel boot hang. > > Handle this scenario by checking for a valid module address space > during the _init of each hwmod, and leaving it in the registered > state if no module register address base is defined in either of > the hwmod data or the DT data. > > Signed-off-by: Suman Anna <s-anna@xxxxxx> > --- > This patch helps break the dependencies between hwmod entries and > corresponding DT entries (especially on OMAP5, where most of the > address spaces are already cleaned up and the current data files > have minimal entries) and fixes any boot issues due to missing > addresses. See for reference, > http://marc.info/?t=138005421400003&r=1&w=2 > > Tested on BeagleXM, Panda4, BeagleBone Black and Panda5 using > Tero's v7 clk DT patches and Benoit's for-3.13/dts on top of > 3.12-rc3 > > arch/arm/mach-omap2/omap_hwmod.c | 29 +++++++++++++++++++---------- > 1 file changed, 19 insertions(+), 10 deletions(-) Mandatory to have this patch for OMAP5uEVM to boot after Tero's v7 [1] series is merged else the delta between dts and hwmod entries cause OMAP5 platforms to croak and die - at least worked around as seen in [2] :( Tested-by: Nishanth Menon <nm@xxxxxx> [1] http://marc.info/?t=138009899400001&r=1&w=2 [2] OMAP5uEVM: http://pastebin.com/jtEMwTY5 -- Regards, Nishanth Menon -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html