Paul,

I did the similar patch several days ago.
https://patchwork.kernel.org/patch/367011/


On Tue, Dec 7, 2010 at 8:32 AM, Paul Walmsley <[email protected]> wrote:
>
> Resolve the following section mismatch warnings in the OMAP core code
> when building omap2plus_defconfig:
>
> WARNING: vmlinux.o(.text+0x2617c): Section mismatch in reference from the 
> function zoom_twl_gpio_setup() to the (unknown reference) .init.data:(unknown)
> WARNING: vmlinux.o(.text+0x26378): Section mismatch in reference from the 
> function cm_t35_twl_gpio_setup() to the (unknown reference) 
> .init.data:(unknown)
> WARNING: vmlinux.o(.data+0x1f460): Section mismatch in reference from the 
> variable h4_config to the (unknown reference) .init.data:(unknown)
> WARNING: vmlinux.o(.data+0x1fc88): Section mismatch in reference from the 
> variable sdp2430_config to the (unknown reference) .init.data:(unknown)
> WARNING: vmlinux.o(.data+0x20258): Section mismatch in reference from the 
> variable apollon_config to the (unknown reference) .init.data:(unknown)
>
> Signed-off-by: Paul Walmsley <[email protected]>
> ---
>  arch/arm/mach-omap2/board-2430sdp.c          |    2 +-
>  arch/arm/mach-omap2/board-apollon.c          |    2 +-
>  arch/arm/mach-omap2/board-cm-t35.c           |    2 +-
>  arch/arm/mach-omap2/board-h4.c               |    2 +-
>  arch/arm/mach-omap2/board-zoom-peripherals.c |    6 +++---
>  5 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/board-2430sdp.c 
> b/arch/arm/mach-omap2/board-2430sdp.c
> index b527f8d..9ab8bb1 100644
> --- a/arch/arm/mach-omap2/board-2430sdp.c
> +++ b/arch/arm/mach-omap2/board-2430sdp.c
> @@ -135,7 +135,7 @@ static inline void board_smc91x_init(void)
>
>  #endif
>
> -static struct omap_board_config_kernel sdp2430_config[] = {
> +static struct omap_board_config_kernel sdp2430_config[] __initdata = {
>        {OMAP_TAG_LCD, &sdp2430_lcd_config},
>  };
>
> diff --git a/arch/arm/mach-omap2/board-apollon.c 
> b/arch/arm/mach-omap2/board-apollon.c
> index 2c6db1a..5c432d8 100644
> --- a/arch/arm/mach-omap2/board-apollon.c
> +++ b/arch/arm/mach-omap2/board-apollon.c
> @@ -270,7 +270,7 @@ static struct omap_lcd_config apollon_lcd_config 
> __initdata = {
>        .ctrl_name      = "internal",
>  };
>
> -static struct omap_board_config_kernel apollon_config[] = {
> +static struct omap_board_config_kernel apollon_config[] __initdata = {
>        { OMAP_TAG_LCD,         &apollon_lcd_config },
>  };
>
> diff --git a/arch/arm/mach-omap2/board-cm-t35.c 
> b/arch/arm/mach-omap2/board-cm-t35.c
> index 63f764e..df16d69 100644
> --- a/arch/arm/mach-omap2/board-cm-t35.c
> +++ b/arch/arm/mach-omap2/board-cm-t35.c
> @@ -594,7 +594,7 @@ static struct omap2_hsmmc_info mmc[] = {
>        {}      /* Terminator */
>  };
>
> -static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = {
> +static struct ehci_hcd_omap_platform_data ehci_pdata = {

How about move out the code of ehci init from cm_t35_twl_gpio_setup
like others did?

>        .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY,
>        .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY,
>        .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN,
> diff --git a/arch/arm/mach-omap2/board-h4.c b/arch/arm/mach-omap2/board-h4.c
> index 929993b..5549f2c 100644
> --- a/arch/arm/mach-omap2/board-h4.c
> +++ b/arch/arm/mach-omap2/board-h4.c
> @@ -283,7 +283,7 @@ static struct omap_usb_config h4_usb_config __initdata = {
>        .hmc_mode       = 0x00,         /* 0:dev|otg 1:disable 2:disable */
>  };
>
> -static struct omap_board_config_kernel h4_config[] = {
> +static struct omap_board_config_kernel h4_config[] __initdata = {
>        { OMAP_TAG_LCD,         &h4_lcd_config },
>  };
>
> diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c 
> b/arch/arm/mach-omap2/board-zoom-peripherals.c
> index 86c9b21..e58fe1e 100644
> --- a/arch/arm/mach-omap2/board-zoom-peripherals.c
> +++ b/arch/arm/mach-omap2/board-zoom-peripherals.c
> @@ -196,7 +196,7 @@ struct wl12xx_platform_data omap_zoom_wlan_data 
> __initdata = {
>        .board_ref_clock = 1,
>  };
>
> -static struct omap2_hsmmc_info mmc[] __initdata = {
> +static struct omap2_hsmmc_info mmc[] = {
>        {
>                .name           = "external",
>                .mmc            = 1,
> @@ -224,8 +224,8 @@ static struct omap2_hsmmc_info mmc[] __initdata = {
>        {}      /* Terminator */
>  };
>
> -static int zoom_twl_gpio_setup(struct device *dev,
> -               unsigned gpio, unsigned ngpio)
> +static int zoom_twl_gpio_setup(struct device *dev, unsigned gpio,
> +                              unsigned ngpio)
>  {
>        /* gpio + 0 is "mmc0_cd" (input/IRQ) */
>        mmc[0].gpio_cd = gpio + 0;
> --
> 1.7.2.3
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>



-- 
Bryan Wu <[email protected]>
Kernel Developer    +86.138-1617-6545 Mobile
Ubuntu Kernel Team
Canonical Ltd.      www.canonical.com
Ubuntu - Linux for human beings | www.ubuntu.com
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to