USB: at91_udc, shrink runtime footprint
This is a runtime codespace shrink: in most cases, platform devices should put probe() should in the init section, and remove() in the exit section. And I have no idea why the module init/exit routines were mismarked. It also moves one function table into read-only data. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Родитель
691895c661
Коммит
398acce7af
|
@ -784,7 +784,7 @@ static int at91_ep_set_halt(struct usb_ep *_ep, int value)
|
|||
return status;
|
||||
}
|
||||
|
||||
static struct usb_ep_ops at91_ep_ops = {
|
||||
static const struct usb_ep_ops at91_ep_ops = {
|
||||
.enable = at91_ep_enable,
|
||||
.disable = at91_ep_disable,
|
||||
.alloc_request = at91_ep_alloc_request,
|
||||
|
@ -1651,7 +1651,7 @@ static void at91udc_shutdown(struct platform_device *dev)
|
|||
pullup(platform_get_drvdata(dev), 0);
|
||||
}
|
||||
|
||||
static int __devinit at91udc_probe(struct platform_device *pdev)
|
||||
static int __init at91udc_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
struct at91_udc *udc;
|
||||
|
@ -1762,7 +1762,7 @@ fail0:
|
|||
return retval;
|
||||
}
|
||||
|
||||
static int __devexit at91udc_remove(struct platform_device *pdev)
|
||||
static int __exit at91udc_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct at91_udc *udc = platform_get_drvdata(pdev);
|
||||
struct resource *res;
|
||||
|
@ -1836,8 +1836,7 @@ static int at91udc_resume(struct platform_device *pdev)
|
|||
#endif
|
||||
|
||||
static struct platform_driver at91_udc = {
|
||||
.probe = at91udc_probe,
|
||||
.remove = __devexit_p(at91udc_remove),
|
||||
.remove = __exit_p(at91udc_remove),
|
||||
.shutdown = at91udc_shutdown,
|
||||
.suspend = at91udc_suspend,
|
||||
.resume = at91udc_resume,
|
||||
|
@ -1847,13 +1846,13 @@ static struct platform_driver at91_udc = {
|
|||
},
|
||||
};
|
||||
|
||||
static int __devinit udc_init_module(void)
|
||||
static int __init udc_init_module(void)
|
||||
{
|
||||
return platform_driver_register(&at91_udc);
|
||||
return platform_driver_probe(&at91_udc, at91udc_probe);
|
||||
}
|
||||
module_init(udc_init_module);
|
||||
|
||||
static void __devexit udc_exit_module(void)
|
||||
static void __exit udc_exit_module(void)
|
||||
{
|
||||
platform_driver_unregister(&at91_udc);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче