On Thursday 03 October 2013 12:59 PM, 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 > Good to break that dts/hwmod dependency. FWIW, Acked-by: Santosh Shilimkar <santosh.shilimkar@xxxxxx> -- 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