Salut Jean-philippe, jean-philippe francois <jp.francois@xxxxxxxxxx> writes: > Hi list, > > Launching program using I2C after init leads to an oops with 3.9 on a > custom dm3730 based board. > > Looking at the disassembly of the _enable function in omap_hwmod.o, I > noticed the call to _enable_preprogram was a direct branch to an > adress in the .text section in the middle of another function. Looking > for _enable_preprogram, it was at the right offset, but in the > .init.text section, so I guess this is why it works fine during the > boot, and oops once init is started > > I recompiled the kernel with the attached patch and the oops is gone. > Is that the right ting to do ? Yes, that looks like the right thing to do. Could you please send a proper patch with changelog and signoff? Thanks, Kevin > Jean-Philippe François > > > Index: b/arch/arm/mach-omap2/omap_hwmod.c > =================================================================== > --- a/arch/arm/mach-omap2/omap_hwmod.c > +++ b/arch/arm/mach-omap2/omap_hwmod.c > @@ -2066,7 +2066,7 @@ > * do so is present in the hwmod data, then call it and pass along the > * return value; otherwise, return 0. > */ > -static int __init _enable_preprogram(struct omap_hwmod *oh) > +static int _enable_preprogram(struct omap_hwmod *oh) > { > if (!oh->class->enable_preprogram) > return 0; -- 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