diff options
author | Felipe Balbi <balbi@ti.com> | 2013-04-02 16:13:40 +0200 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2013-04-02 16:13:40 +0200 |
commit | 50757b24944ede7ab07165cdb57c995456b6e916 (patch) | |
tree | ba45c92d5e693c3c1c9bd7231d1e2b8b3d8b6062 /drivers/usb/gadget/pxa27x_udc.c | |
parent | usb: gadget: udc-core: prevent a memory leak (diff) | |
download | linux-50757b24944ede7ab07165cdb57c995456b6e916.tar.xz linux-50757b24944ede7ab07165cdb57c995456b6e916.zip |
usb: gadget: pxa27x_udc: fix Section Mismatches
Remove all section annotations to fix the
following section mismatches:
>> WARNING: drivers/usb/gadget/pxa27x_udc.o(.text+0x597c): Section mismatch in
reference from the function .pxa_udc_probe() to the function
.init.text:.udc_init_data.constprop.11()
The function .pxa_udc_probe() references
the function __init .udc_init_data.constprop.11().
This is often because .pxa_udc_probe lacks a __init
annotation or the annotation of .udc_init_data.constprop.11 is wrong.
--
>> WARNING: drivers/usb/gadget/pxa27x_udc.o(.text+0x5a04): Section mismatch in
reference from the function .pxa_udc_probe() to the function
.init.text:.pxa_ep_setup()
The function .pxa_udc_probe() references
the function __init .pxa_ep_setup().
This is often because .pxa_udc_probe lacks a __init
annotation or the annotation of .pxa_ep_setup is wrong.
Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/pxa27x_udc.c')
-rw-r--r-- | drivers/usb/gadget/pxa27x_udc.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c index ad954c49d061..6b4c7d95853f 100644 --- a/drivers/usb/gadget/pxa27x_udc.c +++ b/drivers/usb/gadget/pxa27x_udc.c @@ -609,7 +609,7 @@ static void inc_ep_stats_bytes(struct pxa_ep *ep, int count, int is_in) * * Find the physical pxa27x ep, and setup its UDCCR */ -static __init void pxa_ep_setup(struct pxa_ep *ep) +static void pxa_ep_setup(struct pxa_ep *ep) { u32 new_udccr; @@ -631,7 +631,7 @@ static __init void pxa_ep_setup(struct pxa_ep *ep) * * Setup all pxa physical endpoints, except ep0 */ -static __init void pxa_eps_setup(struct pxa_udc *dev) +static void pxa_eps_setup(struct pxa_udc *dev) { unsigned int i; @@ -1716,7 +1716,7 @@ static void udc_disable(struct pxa_udc *udc) * Initializes gadget endpoint list, endpoints locks. No action is taken * on the hardware. */ -static __init void udc_init_data(struct pxa_udc *dev) +static void udc_init_data(struct pxa_udc *dev) { int i; struct pxa_ep *ep; @@ -2490,7 +2490,7 @@ err_clk: * pxa_udc_remove - removes the udc device driver * @_dev: platform device */ -static int __exit pxa_udc_remove(struct platform_device *_dev) +static int pxa_udc_remove(struct platform_device *_dev) { struct pxa_udc *udc = platform_get_drvdata(_dev); int gpio = udc->mach->gpio_pullup; @@ -2609,7 +2609,7 @@ static struct platform_driver udc_driver = { .owner = THIS_MODULE, }, .probe = pxa_udc_probe, - .remove = __exit_p(pxa_udc_remove), + .remove = pxa_udc_remove, .shutdown = pxa_udc_shutdown, #ifdef CONFIG_PM .suspend = pxa_udc_suspend, |