musb_hdrc runtime code shrinkage
PATCH 1/1 musb_hdrc runtime code shrinkage
Move musb_hdrc driver init into the init section, by switching over to use platform_driver_probe(). Shrinks this driver's run-time footprint by about 5KB ... pretty good for linker level tweaks to just one (big) driver, and there's a bit more shrinkage yet to be had (for DMA init).
Signed-off-by David Brownell <[email protected]>
drivers/usb/musb/davinci.c +1 -1
@@ -376,7 +376,7 @@ static irqreturn_t davinci_interrupt(intreturn IRQ_HANDLED ; } -int __devinit musb_platform_init (struct musb *musb) +int __init musb_platform_init (struct musb *musb) {void *__iomem tibase = musb->ctrl_base;u32 revision;
drivers/usb/musb/omap2430.c +1 -1
@@ -61,7 +61,7 @@ static void omap_vbus_power(struct musb { } -int __devinit musb_platform_init (struct musb *musb) +int __init musb_platform_init (struct musb *musb) {/* Erratum - reset value of STP has pull-down. Change it to pull-up. */
drivers/usb/musb/plat_uds.c +22 -19
159 lines not on this page · raw message
drivers/usb/musb/tusb6010.c +4 -4
@@ -682,7 +682,7 @@ void musb_platform_disable(struct musb ** Sets up TUSB6010 CPU interface specific signals and registers * Note: Settings optimized for OMAP24xx */ -static void tusb_setup_cpu_interface (struct musb *musb) +static void __init tusb_setup_cpu_interface (struct musb *musb) {void __iomem *base = musb->ctrl_base;
@@ -708,7 +708,7 @@ static void tusb_setup_cpu_interface(str#define TUSB_REV_MAJOR (reg_val) ((reg_val >> 4) & 0xf)#define TUSB_REV_MINOR (reg_val) (reg_val & 0xf) -static int tusb_print_revision (struct musb *musb) +static int __init tusb_print_revision (struct musb *musb) {void __iomem *base = musb->ctrl_base;
@@ -729,7 +729,7 @@ static int tusb_print_revision(struct mureturn TUSB_REV_MAJOR (musb_readl (base,TUSB_INT_CTRL_REV )); } -static int __devinit tusb_start (struct musb *musb) +static int __init tusb_start (struct musb *musb) {void __iomem *base = musb->ctrl_base;int ret =0 ;
@@ -798,7 +798,7 @@ err:return -ENODEV ; } -int __devinit musb_platform_init (struct musb *musb) +int __init musb_platform_init (struct musb *musb) {struct platform_device *pdev;struct resource *mem;
drivers/usb/musb/cppi_dma.c +2 -2
@@ -91,7 +91,7 @@ static void cppi_reset_rx(struct cppi_rxmusb_writel (CAST &rx->byteCount,0 ,0 ); } -static void __devinit cppi_pool_init (struct cppi *cppi,struct cppi_channel *c) +static void __init cppi_pool_init (struct cppi *cppi,struct cppi_channel *c) {int j;
@@ -137,7 +137,7 @@ static void cppi_pool_free(struct cppi_c c->lastHwBDProcessed =NULL ; } -static int __devinit cppi_controller_start (struct dma_controller *c) +static int __init cppi_controller_start (struct dma_controller *c) {struct cppi *pController;void *__iomem regBase;
drivers/usb/musb/musb_gadget.c +3 -3
@@ -1589,7 +1589,7 @@ static void musb_gadget_release(struct d } -static void __devinit +static void __init init_peripheral_ep (struct musb *musb,struct musb_ep *ep,u8 bEnd,int is_in) {struct musb_hw_ep *hw_ep = musb->aLocalEnd + bEnd;
@@ -1626,7 +1626,7 @@ init_peripheral_ep(struct musb *musb, st* Initialize the endpoints exposed to peripheral drivers, with backlinks * to the rest of the driver state. */ -static inline void __devinit musb_g_init_endpoints (struct musb *pThis) +static inline void __init musb_g_init_endpoints (struct musb *pThis) {u8 bEnd;struct musb_hw_ep *hw_ep;
@@ -1659,7 +1659,7 @@ static inline void __devinit musb_g_init/* called once during driver setup to initialize and link into * the driver model; memory is zeroed. */ -int __devinit musb_gadget_setup (struct musb *pThis) +int __init musb_gadget_setup (struct musb *pThis) {int status;
drivers/usb/musb/musb_procfs.c +1 -1
@@ -813,7 +813,7 @@ void __devexit musb_debug_delete(char *nremove_proc_entry (name,NULL ); } -struct proc_dir_entry *__devinit +struct proc_dir_entry *__init musb_debug_create (char *name,struct musb *data) {struct proc_dir_entry *pde;
drivers/usb/musb/musbdefs.h +1 -1
@@ -525,7 +525,7 @@ extern int musb_platform_get_vbus_status#define musb_platform_get_vbus_status (x) 0#endif -extern int __devinit musb_platform_init (struct musb *musb); +extern int __init musb_platform_init (struct musb *musb);extern int musb_platform_exit (struct musb *musb);/*-------------------------- ProcFS definitions ---------------------*/
Quoted 4 lines · David Brownell
Move
musb_hdrcdriver init into the init section, by switching over to useplatform_driver_probe(). Shrinks this driver's run-time footprint by about 5KB ... pretty good for linker level tweaks to just one (big) driver, and there's a bit more shrinkage yet to be had (for DMA init).
Pushed.
Tony