> -----Original Message----- > From: David Brownell [mailto:david-b@xxxxxxxxxxx] > Sent: Thursday, November 20, 2008 5:56 AM > To: Premi, Sanjeev > Cc: linux-omap@xxxxxxxxxxxxxxx > Subject: Re: [PATCH] Fix section mismatch warning. > > I know that Beagle and Overo get the same warnings, so this > isn't really a sufficient fix... Was trying to fix for EVM. Can extend to these boards once we have a fix. > > On Wednesday 19 November 2008, Sanjeev Premi wrote: > > --- a/arch/arm/mach-omap2/board-omap3evm.c > > +++ b/arch/arm/mach-omap2/board-omap3evm.c > > @@ -130,7 +130,7 @@ static struct twl4030_madc_platform_data > > omap3evm_madc_data = { > > .irq_line = 1, > > }; > > > > -static struct twl4030_platform_data omap3evm_twldata = { > > +static struct twl4030_platform_data __initdata omap3evm_twldata = { > > ... and that's incorrect in any case, since that data is used > by probe() code that's doesn't sit in an init section. Function probe() would be in __devinit. Changing __initdata to __devinit would be fine for compilation. Do you see any issues with it? BTW, I could not locate the definition of platform_driver for twl4030 to verify if probe() is indeed in __devinit. > I have the following in my patchset, currently disabled since > it conflicts with other patches. And in any case, Beagle > can't reboot with these "generic" scripts for some TBD reason. > > - Dave > > ================= CUT HERE > --- > arch/arm/mach-omap2/board-omap3beagle.c | 2 +- > arch/arm/mach-omap2/board-omap3evm.c | 2 +- > arch/arm/mach-omap2/board-overo.c | 2 +- > arch/arm/mach-omap2/twl4030-generic-scripts.c | 3 +++ > arch/arm/mach-omap2/twl4030-generic-scripts.h | 5 +++++ > 5 files changed, 11 insertions(+), 3 deletions(-) > > --- a/arch/arm/mach-omap2/board-omap3beagle.c > +++ b/arch/arm/mach-omap2/board-omap3beagle.c > @@ -188,7 +188,7 @@ static struct twl4030_platform_data beag > /* platform_data for children goes here */ > .usb = &beagle_usb_data, > .gpio = &beagle_gpio_data, > - .power = &generic3430_t2scripts_data, > + .power = GENERIC3430_T2SCRIPTS_DATA, > }; > > static struct i2c_board_info __initdata beagle_i2c_boardinfo[] = { > --- a/arch/arm/mach-omap2/board-omap3evm.c > +++ b/arch/arm/mach-omap2/board-omap3evm.c > @@ -140,7 +140,7 @@ static struct twl4030_platform_data omap > .keypad = &omap3evm_kp_data, > .madc = &omap3evm_madc_data, > .usb = &omap3evm_usb_data, > - .power = &generic3430_t2scripts_data, > + .power = GENERIC3430_T2SCRIPTS_DATA, > .gpio = &omap3evm_gpio_data, > }; > > --- a/arch/arm/mach-omap2/board-overo.c > +++ b/arch/arm/mach-omap2/board-overo.c > @@ -162,7 +162,7 @@ static struct twl4030_platform_data over > .irq_end = TWL4030_IRQ_END, > .gpio = &overo_gpio_data, > .usb = &overo_usb_data, > - .power = &generic3430_t2scripts_data, > + .power = GENERIC3430_T2SCRIPTS_DATA, > }; > > static struct i2c_board_info __initdata overo_i2c_boardinfo[] = { > --- a/arch/arm/mach-omap2/twl4030-generic-scripts.c > +++ b/arch/arm/mach-omap2/twl4030-generic-scripts.c > @@ -23,6 +23,8 @@ > * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA > 02111-1307 USA > */ > > +#ifdef CONFIG_TWL4030_POWER > + > #include <linux/kernel.h> > #include <linux/device.h> > #include <linux/init.h> > @@ -76,3 +78,4 @@ struct twl4030_power_data generic3430_t2 }; > > > +#endif /* CONFIG_TWL4030_POWER */ > --- a/arch/arm/mach-omap2/twl4030-generic-scripts.h > +++ b/arch/arm/mach-omap2/twl4030-generic-scripts.h > @@ -3,6 +3,11 @@ > > #include <linux/i2c/twl4030.h> > > +#ifdef CONFIG_TWL4030_POWER > extern struct twl4030_power_data generic3430_t2scripts_data; > +#define GENERIC3430_T2SCRIPTS_DATA &generic3430_t2scripts_data #else > +#define GENERIC3430_T2SCRIPTS_DATA NULL #endif /* > CONFIG_TWL4030_POWER > +*/ > > #endif > > > -- 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