diff options
author | Peter Chen <peter.chen@freescale.com> | 2014-07-04 12:39:04 +0800 |
---|---|---|
committer | Peter Chen <peter.chen@freescale.com> | 2014-07-04 17:31:06 +0800 |
commit | 463ada98906cee6035426bba377b7f9d0d2f979c (patch) | |
tree | c0d194629939fd760ecff1edd5e883645e1073ea /drivers | |
parent | 295dcfe35d2708721917d136493b7a0cc84adb76 (diff) |
ENGR00320792-1 Revert "usb: gadget: remove __init from gadget driver bind function"
This reverts commit 6d9f0704e3acf4b754188817974247c1963c1493.
Signed-off-by: Peter Chen <peter.chen@freescale.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/gadget/acm_ms.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/audio.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/cdc2.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/dbgp.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/ether.c | 6 | ||||
-rw-r--r-- | drivers/usb/gadget/f_eem.c | 26 | ||||
-rw-r--r-- | drivers/usb/gadget/f_hid.c | 6 | ||||
-rw-r--r-- | drivers/usb/gadget/f_midi.c | 12 | ||||
-rw-r--r-- | drivers/usb/gadget/f_ncm.c | 36 | ||||
-rw-r--r-- | drivers/usb/gadget/f_uac1.c | 12 | ||||
-rw-r--r-- | drivers/usb/gadget/f_uac2.c | 2 | ||||
-rw-r--r-- | drivers/usb/gadget/f_uvc.c | 28 | ||||
-rw-r--r-- | drivers/usb/gadget/gmidi.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/hid.c | 6 | ||||
-rw-r--r-- | drivers/usb/gadget/mass_storage.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/multi.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/ncm.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/nokia.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/printer.c | 6 | ||||
-rw-r--r-- | drivers/usb/gadget/serial.c | 2 | ||||
-rw-r--r-- | drivers/usb/gadget/u_uac1.c | 2 | ||||
-rw-r--r-- | drivers/usb/gadget/webcam.c | 4 | ||||
-rw-r--r-- | drivers/usb/gadget/zero.c | 2 |
23 files changed, 93 insertions, 93 deletions
diff --git a/drivers/usb/gadget/acm_ms.c b/drivers/usb/gadget/acm_ms.c index 9907a255e693..4b947bb50f62 100644 --- a/drivers/usb/gadget/acm_ms.c +++ b/drivers/usb/gadget/acm_ms.c @@ -114,7 +114,7 @@ static struct usb_function_instance *f_acm_inst; /* * We _always_ have both ACM and mass storage functions. */ -static int acm_ms_do_config(struct usb_configuration *c) +static int __init acm_ms_do_config(struct usb_configuration *c) { int status; @@ -160,7 +160,7 @@ static struct usb_configuration acm_ms_config_driver = { /*-------------------------------------------------------------------------*/ -static int acm_ms_bind(struct usb_composite_dev *cdev) +static int __init acm_ms_bind(struct usb_composite_dev *cdev) { struct usb_gadget *gadget = cdev->gadget; int status; diff --git a/drivers/usb/gadget/audio.c b/drivers/usb/gadget/audio.c index f2a47e9aef79..231b0efe8fdc 100644 --- a/drivers/usb/gadget/audio.c +++ b/drivers/usb/gadget/audio.c @@ -107,7 +107,7 @@ static const struct usb_descriptor_header *otg_desc[] = { /*-------------------------------------------------------------------------*/ -static int audio_do_config(struct usb_configuration *c) +static int __init audio_do_config(struct usb_configuration *c) { /* FIXME alloc iConfiguration string, set it in c->strings */ @@ -133,7 +133,7 @@ static struct usb_configuration audio_config_driver = { /*-------------------------------------------------------------------------*/ -static int audio_bind(struct usb_composite_dev *cdev) +static int __init audio_bind(struct usb_composite_dev *cdev) { int status; diff --git a/drivers/usb/gadget/cdc2.c b/drivers/usb/gadget/cdc2.c index 21bd230fef1e..2c5255182769 100644 --- a/drivers/usb/gadget/cdc2.c +++ b/drivers/usb/gadget/cdc2.c @@ -111,7 +111,7 @@ static struct usb_function_instance *fi_serial; /* * We _always_ have both CDC ECM and CDC ACM functions. */ -static int cdc_do_config(struct usb_configuration *c) +static int __init cdc_do_config(struct usb_configuration *c) { int status; @@ -154,7 +154,7 @@ static struct usb_configuration cdc_config_driver = { /*-------------------------------------------------------------------------*/ -static int cdc_bind(struct usb_composite_dev *cdev) +static int __init cdc_bind(struct usb_composite_dev *cdev) { struct usb_gadget *gadget = cdev->gadget; int status; diff --git a/drivers/usb/gadget/dbgp.c b/drivers/usb/gadget/dbgp.c index b96e86e17de0..986fc511a2ed 100644 --- a/drivers/usb/gadget/dbgp.c +++ b/drivers/usb/gadget/dbgp.c @@ -235,7 +235,7 @@ static void dbgp_unbind(struct usb_gadget *gadget) static unsigned char tty_line; #endif -static int dbgp_configure_endpoints(struct usb_gadget *gadget) +static int __init dbgp_configure_endpoints(struct usb_gadget *gadget) { int stp; @@ -291,7 +291,7 @@ fail_1: return -ENODEV; } -static int dbgp_bind(struct usb_gadget *gadget, +static int __init dbgp_bind(struct usb_gadget *gadget, struct usb_gadget_driver *driver) { int err, stp; diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c index ea9dfe4af7d1..56c8ecae9bc3 100644 --- a/drivers/usb/gadget/ether.c +++ b/drivers/usb/gadget/ether.c @@ -215,7 +215,7 @@ static struct eth_dev *the_dev; * the first one present. That's to make Microsoft's drivers happy, * and to follow DOCSIS 1.0 (cable modem standard). */ -static int rndis_do_config(struct usb_configuration *c) +static int __init rndis_do_config(struct usb_configuration *c) { /* FIXME alloc iConfiguration string, set it in c->strings */ @@ -247,7 +247,7 @@ MODULE_PARM_DESC(use_eem, "use CDC EEM mode"); /* * We _always_ have an ECM, CDC Subset, or EEM configuration. */ -static int eth_do_config(struct usb_configuration *c) +static int __init eth_do_config(struct usb_configuration *c) { /* FIXME alloc iConfiguration string, set it in c->strings */ @@ -273,7 +273,7 @@ static struct usb_configuration eth_config_driver = { /*-------------------------------------------------------------------------*/ -static int eth_bind(struct usb_composite_dev *cdev) +static int __init eth_bind(struct usb_composite_dev *cdev) { struct usb_gadget *gadget = cdev->gadget; int status; diff --git a/drivers/usb/gadget/f_eem.c b/drivers/usb/gadget/f_eem.c index 82281cb69308..f4e0bbef602a 100644 --- a/drivers/usb/gadget/f_eem.c +++ b/drivers/usb/gadget/f_eem.c @@ -40,7 +40,7 @@ static inline struct f_eem *func_to_eem(struct usb_function *f) /* interface descriptor: */ -static struct usb_interface_descriptor eem_intf = { +static struct usb_interface_descriptor eem_intf __initdata = { .bLength = sizeof eem_intf, .bDescriptorType = USB_DT_INTERFACE, @@ -54,7 +54,7 @@ static struct usb_interface_descriptor eem_intf = { /* full speed support: */ -static struct usb_endpoint_descriptor eem_fs_in_desc = { +static struct usb_endpoint_descriptor eem_fs_in_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -62,7 +62,7 @@ static struct usb_endpoint_descriptor eem_fs_in_desc = { .bmAttributes = USB_ENDPOINT_XFER_BULK, }; -static struct usb_endpoint_descriptor eem_fs_out_desc = { +static struct usb_endpoint_descriptor eem_fs_out_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -70,7 +70,7 @@ static struct usb_endpoint_descriptor eem_fs_out_desc = { .bmAttributes = USB_ENDPOINT_XFER_BULK, }; -static struct usb_descriptor_header *eem_fs_function[] = { +static struct usb_descriptor_header *eem_fs_function[] __initdata = { /* CDC EEM control descriptors */ (struct usb_descriptor_header *) &eem_intf, (struct usb_descriptor_header *) &eem_fs_in_desc, @@ -80,7 +80,7 @@ static struct usb_descriptor_header *eem_fs_function[] = { /* high speed support: */ -static struct usb_endpoint_descriptor eem_hs_in_desc = { +static struct usb_endpoint_descriptor eem_hs_in_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -89,7 +89,7 @@ static struct usb_endpoint_descriptor eem_hs_in_desc = { .wMaxPacketSize = cpu_to_le16(512), }; -static struct usb_endpoint_descriptor eem_hs_out_desc = { +static struct usb_endpoint_descriptor eem_hs_out_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -98,7 +98,7 @@ static struct usb_endpoint_descriptor eem_hs_out_desc = { .wMaxPacketSize = cpu_to_le16(512), }; -static struct usb_descriptor_header *eem_hs_function[] = { +static struct usb_descriptor_header *eem_hs_function[] __initdata = { /* CDC EEM control descriptors */ (struct usb_descriptor_header *) &eem_intf, (struct usb_descriptor_header *) &eem_hs_in_desc, @@ -108,7 +108,7 @@ static struct usb_descriptor_header *eem_hs_function[] = { /* super speed support: */ -static struct usb_endpoint_descriptor eem_ss_in_desc = { +static struct usb_endpoint_descriptor eem_ss_in_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -117,7 +117,7 @@ static struct usb_endpoint_descriptor eem_ss_in_desc = { .wMaxPacketSize = cpu_to_le16(1024), }; -static struct usb_endpoint_descriptor eem_ss_out_desc = { +static struct usb_endpoint_descriptor eem_ss_out_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -126,7 +126,7 @@ static struct usb_endpoint_descriptor eem_ss_out_desc = { .wMaxPacketSize = cpu_to_le16(1024), }; -static struct usb_ss_ep_comp_descriptor eem_ss_bulk_comp_desc = { +static struct usb_ss_ep_comp_descriptor eem_ss_bulk_comp_desc __initdata = { .bLength = sizeof eem_ss_bulk_comp_desc, .bDescriptorType = USB_DT_SS_ENDPOINT_COMP, @@ -135,7 +135,7 @@ static struct usb_ss_ep_comp_descriptor eem_ss_bulk_comp_desc = { /* .bmAttributes = 0, */ }; -static struct usb_descriptor_header *eem_ss_function[] = { +static struct usb_descriptor_header *eem_ss_function[] __initdata = { /* CDC EEM control descriptors */ (struct usb_descriptor_header *) &eem_intf, (struct usb_descriptor_header *) &eem_ss_in_desc, @@ -242,7 +242,7 @@ static void eem_disable(struct usb_function *f) /* EEM function driver setup/binding */ -static int +static int __init eem_bind(struct usb_configuration *c, struct usb_function *f) { struct usb_composite_dev *cdev = c->cdev; @@ -528,7 +528,7 @@ error: * Caller must have called @gether_setup(). Caller is also responsible * for calling @gether_cleanup() before module unload. */ -int eem_bind_config(struct usb_configuration *c, struct eth_dev *dev) +int __init eem_bind_config(struct usb_configuration *c, struct eth_dev *dev) { struct f_eem *eem; int status; diff --git a/drivers/usb/gadget/f_hid.c b/drivers/usb/gadget/f_hid.c index 991320e14f0b..6e69a8e8d22a 100644 --- a/drivers/usb/gadget/f_hid.c +++ b/drivers/usb/gadget/f_hid.c @@ -560,7 +560,7 @@ const struct file_operations f_hidg_fops = { .llseek = noop_llseek, }; -static int hidg_bind(struct usb_configuration *c, struct usb_function *f) +static int __init hidg_bind(struct usb_configuration *c, struct usb_function *f) { struct usb_ep *ep; struct f_hidg *hidg = func_to_hidg(f); @@ -689,7 +689,7 @@ static struct usb_gadget_strings *ct_func_strings[] = { /*-------------------------------------------------------------------------*/ /* usb_configuration */ -int hidg_bind_config(struct usb_configuration *c, +int __init hidg_bind_config(struct usb_configuration *c, struct hidg_func_descriptor *fdesc, int index) { struct f_hidg *hidg; @@ -743,7 +743,7 @@ int hidg_bind_config(struct usb_configuration *c, return status; } -int ghid_setup(struct usb_gadget *g, int count) +int __init ghid_setup(struct usb_gadget *g, int count) { int status; dev_t dev; diff --git a/drivers/usb/gadget/f_midi.c b/drivers/usb/gadget/f_midi.c index c28e0a74c102..263e721c2694 100644 --- a/drivers/usb/gadget/f_midi.c +++ b/drivers/usb/gadget/f_midi.c @@ -97,7 +97,7 @@ DECLARE_USB_MIDI_OUT_JACK_DESCRIPTOR(1); DECLARE_USB_MS_ENDPOINT_DESCRIPTOR(16); /* B.3.1 Standard AC Interface Descriptor */ -static struct usb_interface_descriptor ac_interface_desc = { +static struct usb_interface_descriptor ac_interface_desc __initdata = { .bLength = USB_DT_INTERFACE_SIZE, .bDescriptorType = USB_DT_INTERFACE, /* .bInterfaceNumber = DYNAMIC */ @@ -108,7 +108,7 @@ static struct usb_interface_descriptor ac_interface_desc = { }; /* B.3.2 Class-Specific AC Interface Descriptor */ -static struct uac1_ac_header_descriptor_1 ac_header_desc = { +static struct uac1_ac_header_descriptor_1 ac_header_desc __initdata = { .bLength = UAC_DT_AC_HEADER_SIZE(1), .bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorSubtype = USB_MS_HEADER, @@ -119,7 +119,7 @@ static struct uac1_ac_header_descriptor_1 ac_header_desc = { }; /* B.4.1 Standard MS Interface Descriptor */ -static struct usb_interface_descriptor ms_interface_desc = { +static struct usb_interface_descriptor ms_interface_desc __initdata = { .bLength = USB_DT_INTERFACE_SIZE, .bDescriptorType = USB_DT_INTERFACE, /* .bInterfaceNumber = DYNAMIC */ @@ -130,7 +130,7 @@ static struct usb_interface_descriptor ms_interface_desc = { }; /* B.4.2 Class-Specific MS Interface Descriptor */ -static struct usb_ms_header_descriptor ms_header_desc = { +static struct usb_ms_header_descriptor ms_header_desc __initdata = { .bLength = USB_DT_MS_HEADER_SIZE, .bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorSubtype = USB_MS_HEADER, @@ -733,7 +733,7 @@ fail: /* MIDI function driver setup/binding */ -static int +static int __init f_midi_bind(struct usb_configuration *c, struct usb_function *f) { struct usb_descriptor_header **midi_function; @@ -923,7 +923,7 @@ fail: * * Returns zero on success, else negative errno. */ -int f_midi_bind_config(struct usb_configuration *c, +int __init f_midi_bind_config(struct usb_configuration *c, int index, char *id, unsigned int in_ports, unsigned int out_ports, diff --git a/drivers/usb/gadget/f_ncm.c b/drivers/usb/gadget/f_ncm.c index d65e49ceca44..ee19bc8d0040 100644 --- a/drivers/usb/gadget/f_ncm.c +++ b/drivers/usb/gadget/f_ncm.c @@ -125,7 +125,7 @@ static struct usb_cdc_ncm_ntb_parameters ntb_parameters = { #define NCM_STATUS_INTERVAL_MS 32 #define NCM_STATUS_BYTECOUNT 16 /* 8 byte header + data */ -static struct usb_interface_assoc_descriptor ncm_iad_desc = { +static struct usb_interface_assoc_descriptor ncm_iad_desc __initdata = { .bLength = sizeof ncm_iad_desc, .bDescriptorType = USB_DT_INTERFACE_ASSOCIATION, @@ -139,7 +139,7 @@ static struct usb_interface_assoc_descriptor ncm_iad_desc = { /* interface descriptor: */ -static struct usb_interface_descriptor ncm_control_intf = { +static struct usb_interface_descriptor ncm_control_intf __initdata = { .bLength = sizeof ncm_control_intf, .bDescriptorType = USB_DT_INTERFACE, @@ -151,7 +151,7 @@ static struct usb_interface_descriptor ncm_control_intf = { /* .iInterface = DYNAMIC */ }; -static struct usb_cdc_header_desc ncm_header_desc = { +static struct usb_cdc_header_desc ncm_header_desc __initdata = { .bLength = sizeof ncm_header_desc, .bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorSubType = USB_CDC_HEADER_TYPE, @@ -159,7 +159,7 @@ static struct usb_cdc_header_desc ncm_header_desc = { .bcdCDC = cpu_to_le16(0x0110), }; -static struct usb_cdc_union_desc ncm_union_desc = { +static struct usb_cdc_union_desc ncm_union_desc __initdata = { .bLength = sizeof(ncm_union_desc), .bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorSubType = USB_CDC_UNION_TYPE, @@ -167,7 +167,7 @@ static struct usb_cdc_union_desc ncm_union_desc = { /* .bSlaveInterface0 = DYNAMIC */ }; -static struct usb_cdc_ether_desc ecm_desc = { +static struct usb_cdc_ether_desc ecm_desc __initdata = { .bLength = sizeof ecm_desc, .bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorSubType = USB_CDC_ETHERNET_TYPE, @@ -182,7 +182,7 @@ static struct usb_cdc_ether_desc ecm_desc = { #define NCAPS (USB_CDC_NCM_NCAP_ETH_FILTER | USB_CDC_NCM_NCAP_CRC_MODE) -static struct usb_cdc_ncm_desc ncm_desc = { +static struct usb_cdc_ncm_desc ncm_desc __initdata = { .bLength = sizeof ncm_desc, .bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorSubType = USB_CDC_NCM_TYPE, @@ -194,7 +194,7 @@ static struct usb_cdc_ncm_desc ncm_desc = { /* the default data interface has no endpoints ... */ -static struct usb_interface_descriptor ncm_data_nop_intf = { +static struct usb_interface_descriptor ncm_data_nop_intf __initdata = { .bLength = sizeof ncm_data_nop_intf, .bDescriptorType = USB_DT_INTERFACE, @@ -209,7 +209,7 @@ static struct usb_interface_descriptor ncm_data_nop_intf = { /* ... but the "real" data interface has two bulk endpoints */ -static struct usb_interface_descriptor ncm_data_intf = { +static struct usb_interface_descriptor ncm_data_intf __initdata = { .bLength = sizeof ncm_data_intf, .bDescriptorType = USB_DT_INTERFACE, @@ -224,7 +224,7 @@ static struct usb_interface_descriptor ncm_data_intf = { /* full speed support: */ -static struct usb_endpoint_descriptor fs_ncm_notify_desc = { +static struct usb_endpoint_descriptor fs_ncm_notify_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -234,7 +234,7 @@ static struct usb_endpoint_descriptor fs_ncm_notify_desc = { .bInterval = NCM_STATUS_INTERVAL_MS, }; -static struct usb_endpoint_descriptor fs_ncm_in_desc = { +static struct usb_endpoint_descriptor fs_ncm_in_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -242,7 +242,7 @@ static struct usb_endpoint_descriptor fs_ncm_in_desc = { .bmAttributes = USB_ENDPOINT_XFER_BULK, }; -static struct usb_endpoint_descriptor fs_ncm_out_desc = { +static struct usb_endpoint_descriptor fs_ncm_out_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -250,7 +250,7 @@ static struct usb_endpoint_descriptor fs_ncm_out_desc = { .bmAttributes = USB_ENDPOINT_XFER_BULK, }; -static struct usb_descriptor_header *ncm_fs_function[] = { +static struct usb_descriptor_header *ncm_fs_function[] __initdata = { (struct usb_descriptor_header *) &ncm_iad_desc, /* CDC NCM control descriptors */ (struct usb_descriptor_header *) &ncm_control_intf, @@ -269,7 +269,7 @@ static struct usb_descriptor_header *ncm_fs_function[] = { /* high speed support: */ -static struct usb_endpoint_descriptor hs_ncm_notify_desc = { +static struct usb_endpoint_descriptor hs_ncm_notify_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -278,7 +278,7 @@ static struct usb_endpoint_descriptor hs_ncm_notify_desc = { .wMaxPacketSize = cpu_to_le16(NCM_STATUS_BYTECOUNT), .bInterval = USB_MS_TO_HS_INTERVAL(NCM_STATUS_INTERVAL_MS), }; -static struct usb_endpoint_descriptor hs_ncm_in_desc = { +static struct usb_endpoint_descriptor hs_ncm_in_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -287,7 +287,7 @@ static struct usb_endpoint_descriptor hs_ncm_in_desc = { .wMaxPacketSize = cpu_to_le16(512), }; -static struct usb_endpoint_descriptor hs_ncm_out_desc = { +static struct usb_endpoint_descriptor hs_ncm_out_desc __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -296,7 +296,7 @@ static struct usb_endpoint_descriptor hs_ncm_out_desc = { .wMaxPacketSize = cpu_to_le16(512), }; -static struct usb_descriptor_header *ncm_hs_function[] = { +static struct usb_descriptor_header *ncm_hs_function[] __initdata = { (struct usb_descriptor_header *) &ncm_iad_desc, /* CDC NCM control descriptors */ (struct usb_descriptor_header *) &ncm_control_intf, @@ -1152,7 +1152,7 @@ static void ncm_close(struct gether *geth) /* ethernet function driver setup/binding */ -static int +static int __init ncm_bind(struct usb_configuration *c, struct usb_function *f) { struct usb_composite_dev *cdev = c->cdev; @@ -1287,7 +1287,7 @@ ncm_unbind(struct usb_configuration *c, struct usb_function *f) * Caller must have called @gether_setup(). Caller is also responsible * for calling @gether_cleanup() before module unload. */ -int ncm_bind_config(struct usb_configuration *c, u8 ethaddr[ETH_ALEN], +int __init ncm_bind_config(struct usb_configuration *c, u8 ethaddr[ETH_ALEN], struct eth_dev *dev) { struct f_ncm *ncm; diff --git a/drivers/usb/gadget/f_uac1.c b/drivers/usb/gadget/f_uac1.c index e11f6cdbe27f..fa8ea4ea00c1 100644 --- a/drivers/usb/gadget/f_uac1.c +++ b/drivers/usb/gadget/f_uac1.c @@ -46,7 +46,7 @@ static int generic_get_cmd(struct usb_audio_control *con, u8 cmd); #define F_AUDIO_NUM_INTERFACES 2 /* B.3.1 Standard AC Interface Descriptor */ -static struct usb_interface_descriptor ac_interface_desc = { +static struct usb_interface_descriptor ac_interface_desc __initdata = { .bLength = USB_DT_INTERFACE_SIZE, .bDescriptorType = USB_DT_INTERFACE, .bNumEndpoints = 0, @@ -188,7 +188,7 @@ static struct usb_endpoint_descriptor as_out_ep_desc = { }; /* Class-specific AS ISO OUT Endpoint Descriptor */ -static struct uac_iso_endpoint_descriptor as_iso_out_desc = { +static struct uac_iso_endpoint_descriptor as_iso_out_desc __initdata = { .bLength = UAC_ISO_ENDPOINT_DESC_SIZE, .bDescriptorType = USB_DT_CS_ENDPOINT, .bDescriptorSubtype = UAC_EP_GENERAL, @@ -197,7 +197,7 @@ static struct uac_iso_endpoint_descriptor as_iso_out_desc = { .wLockDelay = __constant_cpu_to_le16(1), }; -static struct usb_descriptor_header *f_audio_desc[] = { +static struct usb_descriptor_header *f_audio_desc[] __initdata = { (struct usb_descriptor_header *)&ac_interface_desc, (struct usb_descriptor_header *)&ac_header_desc, @@ -625,7 +625,7 @@ static void f_audio_build_desc(struct f_audio *audio) } /* audio function driver setup/binding */ -static int +static int __init f_audio_bind(struct usb_configuration *c, struct usb_function *f) { struct usb_composite_dev *cdev = c->cdev; @@ -695,7 +695,7 @@ static int generic_get_cmd(struct usb_audio_control *con, u8 cmd) } /* Todo: add more control selecotor dynamically */ -int control_selector_init(struct f_audio *audio) +int __init control_selector_init(struct f_audio *audio) { INIT_LIST_HEAD(&audio->cs); list_add(&feature_unit.list, &audio->cs); @@ -719,7 +719,7 @@ int control_selector_init(struct f_audio *audio) * * Returns zero on success, else negative errno. */ -int audio_bind_config(struct usb_configuration *c) +int __init audio_bind_config(struct usb_configuration *c) { struct f_audio *audio; int status; diff --git a/drivers/usb/gadget/f_uac2.c b/drivers/usb/gadget/f_uac2.c index 346700c7d4b2..03c1fb686644 100644 --- a/drivers/usb/gadget/f_uac2.c +++ b/drivers/usb/gadget/f_uac2.c @@ -912,7 +912,7 @@ free_ep(struct uac2_rtd_params *prm, struct usb_ep *ep) "%s:%d Error!\n", __func__, __LINE__); } -static int +static int __init afunc_bind(struct usb_configuration *cfg, struct usb_function *fn) { struct audio_dev *agdev = func_to_agdev(fn); diff --git a/drivers/usb/gadget/f_uvc.c b/drivers/usb/gadget/f_uvc.c index 9a2e96919c12..38dcedddc52c 100644 --- a/drivers/usb/gadget/f_uvc.c +++ b/drivers/usb/gadget/f_uvc.c @@ -75,7 +75,7 @@ static struct usb_gadget_strings *uvc_function_strings[] = { #define UVC_STATUS_MAX_PACKET_SIZE 16 /* 16 bytes status */ -static struct usb_interface_assoc_descriptor uvc_iad = { +static struct usb_interface_assoc_descriptor uvc_iad __initdata = { .bLength = sizeof(uvc_iad), .bDescriptorType = USB_DT_INTERFACE_ASSOCIATION, .bFirstInterface = 0, @@ -86,7 +86,7 @@ static struct usb_interface_assoc_descriptor uvc_iad = { .iFunction = 0, }; -static struct usb_interface_descriptor uvc_control_intf = { +static struct usb_interface_descriptor uvc_control_intf __initdata = { .bLength = USB_DT_INTERFACE_SIZE, .bDescriptorType = USB_DT_INTERFACE, .bInterfaceNumber = UVC_INTF_VIDEO_CONTROL, @@ -98,7 +98,7 @@ static struct usb_interface_descriptor uvc_control_intf = { .iInterface = 0, }; -static struct usb_endpoint_descriptor uvc_control_ep = { +static struct usb_endpoint_descriptor uvc_control_ep __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, .bEndpointAddress = USB_DIR_IN, @@ -107,7 +107,7 @@ static struct usb_endpoint_descriptor uvc_control_ep = { .bInterval = 8, }; -static struct usb_ss_ep_comp_descriptor uvc_ss_control_comp = { +static struct usb_ss_ep_comp_descriptor uvc_ss_control_comp __initdata = { .bLength = sizeof(uvc_ss_control_comp), .bDescriptorType = USB_DT_SS_ENDPOINT_COMP, /* The following 3 values can be tweaked if necessary. */ @@ -116,14 +116,14 @@ static struct usb_ss_ep_comp_descriptor uvc_ss_control_comp = { .wBytesPerInterval = cpu_to_le16(UVC_STATUS_MAX_PACKET_SIZE), }; -static struct uvc_control_endpoint_descriptor uvc_control_cs_ep = { +static struct uvc_control_endpoint_descriptor uvc_control_cs_ep __initdata = { .bLength = UVC_DT_CONTROL_ENDPOINT_SIZE, .bDescriptorType = USB_DT_CS_ENDPOINT, .bDescriptorSubType = UVC_EP_INTERRUPT, .wMaxTransferSize = cpu_to_le16(UVC_STATUS_MAX_PACKET_SIZE), }; -static struct usb_interface_descriptor uvc_streaming_intf_alt0 = { +static struct usb_interface_descriptor uvc_streaming_intf_alt0 __initdata = { .bLength = USB_DT_INTERFACE_SIZE, .bDescriptorType = USB_DT_INTERFACE, .bInterfaceNumber = UVC_INTF_VIDEO_STREAMING, @@ -135,7 +135,7 @@ static struct usb_interface_descriptor uvc_streaming_intf_alt0 = { .iInterface = 0, }; -static struct usb_interface_descriptor uvc_streaming_intf_alt1 = { +static struct usb_interface_descriptor uvc_streaming_intf_alt1 __initdata = { .bLength = USB_DT_INTERFACE_SIZE, .bDescriptorType = USB_DT_INTERFACE, .bInterfaceNumber = UVC_INTF_VIDEO_STREAMING, @@ -147,7 +147,7 @@ static struct usb_interface_descriptor uvc_streaming_intf_alt1 = { .iInterface = 0, }; -static struct usb_endpoint_descriptor uvc_fs_streaming_ep = { +static struct usb_endpoint_descriptor uvc_fs_streaming_ep __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, .bEndpointAddress = USB_DIR_IN, @@ -160,7 +160,7 @@ static struct usb_endpoint_descriptor uvc_fs_streaming_ep = { .bInterval = 0, }; -static struct usb_endpoint_descriptor uvc_hs_streaming_ep = { +static struct usb_endpoint_descriptor uvc_hs_streaming_ep __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, .bEndpointAddress = USB_DIR_IN, @@ -173,7 +173,7 @@ static struct usb_endpoint_descriptor uvc_hs_streaming_ep = { .bInterval = 0, }; -static struct usb_endpoint_descriptor uvc_ss_streaming_ep = { +static struct usb_endpoint_descriptor uvc_ss_streaming_ep __initdata = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, @@ -187,7 +187,7 @@ static struct usb_endpoint_descriptor uvc_ss_streaming_ep = { .bInterval = 0, }; -static struct usb_ss_ep_comp_descriptor uvc_ss_streaming_comp = { +static struct usb_ss_ep_comp_descriptor uvc_ss_streaming_comp __initdata = { .bLength = sizeof(uvc_ss_streaming_comp), .bDescriptorType = USB_DT_SS_ENDPOINT_COMP, /* The following 3 values can be tweaked if necessary. */ @@ -441,7 +441,7 @@ uvc_register_video(struct uvc_device *uvc) } \ } while (0) -static struct usb_descriptor_header ** +static struct usb_descriptor_header ** __init uvc_copy_descriptors(struct uvc_device *uvc, enum usb_device_speed speed) { struct uvc_input_header_descriptor *uvc_streaming_header; @@ -582,7 +582,7 @@ uvc_function_unbind(struct usb_configuration *c, struct usb_function *f) kfree(uvc); } -static int +static int __init uvc_function_bind(struct usb_configuration *c, struct usb_function *f) { struct usb_composite_dev *cdev = c->cdev; @@ -743,7 +743,7 @@ error: * Caller must have called @uvc_setup(). Caller is also responsible for * calling @uvc_cleanup() before module unload. */ -int +int __init uvc_bind_config(struct usb_configuration *c, const struct uvc_descriptor_header * const *fs_control, const struct uvc_descriptor_header * const *ss_control, diff --git a/drivers/usb/gadget/gmidi.c b/drivers/usb/gadget/gmidi.c index f42afefa7b35..e879e2c9f461 100644 --- a/drivers/usb/gadget/gmidi.c +++ b/drivers/usb/gadget/gmidi.c @@ -128,14 +128,14 @@ static struct usb_configuration midi_config = { .MaxPower = CONFIG_USB_GADGET_VBUS_DRAW, }; -static int midi_bind_config(struct usb_configuration *c) +static int __init midi_bind_config(struct usb_configuration *c) { return f_midi_bind_config(c, index, id, in_ports, out_ports, buflen, qlen); } -static int midi_bind(struct usb_composite_dev *cdev) +static int __init midi_bind(struct usb_composite_dev *cdev) { int status; diff --git a/drivers/usb/gadget/hid.c b/drivers/usb/gadget/hid.c index dc70b1585e45..c36260ea8bf2 100644 --- a/drivers/usb/gadget/hid.c +++ b/drivers/usb/gadget/hid.c @@ -111,7 +111,7 @@ static struct usb_gadget_strings *dev_strings[] = { /****************************** Configurations ******************************/ -static int do_config(struct usb_configuration *c) +static int __init do_config(struct usb_configuration *c) { struct hidg_func_node *e; int func = 0, status = 0; @@ -139,7 +139,7 @@ static struct usb_configuration config_driver = { /****************************** Gadget Bind ******************************/ -static int hid_bind(struct usb_composite_dev *cdev) +static int __init hid_bind(struct usb_composite_dev *cdev) { struct usb_gadget *gadget = cdev->gadget; struct list_head *tmp; @@ -183,7 +183,7 @@ static int __exit hid_unbind(struct usb_composite_dev *cdev) return 0; } -static int hidg_plat_driver_probe(struct platform_device *pdev) +static int __init hidg_plat_driver_probe(struct platform_device *pdev) { struct hidg_func_descriptor *func = pdev->dev.platform_data; struct hidg_func_node *entry; diff --git a/drivers/usb/gadget/mass_storage.c b/drivers/usb/gadget/mass_storage.c index 9f6025cd1a63..fd26fc84919b 100644 --- a/drivers/usb/gadget/mass_storage.c +++ b/drivers/usb/gadget/mass_storage.c @@ -113,7 +113,7 @@ static int msg_thread_exits(struct fsg_common *common) return 0; } -static int msg_do_config(struct usb_configuration *c) +static int __init msg_do_config(struct usb_configuration *c) { static const struct fsg_operations ops = { .thread_exits = msg_thread_exits, @@ -150,7 +150,7 @@ static struct usb_configuration msg_config_driver = { /****************************** Gadget Bind ******************************/ -static int msg_bind(struct usb_composite_dev *cdev) +static int __init msg_bind(struct usb_composite_dev *cdev) { int status; diff --git a/drivers/usb/gadget/multi.c b/drivers/usb/gadget/multi.c index fcc536671b9c..4a45e80c6e38 100644 --- a/drivers/usb/gadget/multi.c +++ b/drivers/usb/gadget/multi.c @@ -143,7 +143,7 @@ static struct eth_dev *the_dev; #ifdef USB_ETH_RNDIS static struct usb_function *f_acm_rndis; -static int rndis_do_config(struct usb_configuration *c) +static __init int rndis_do_config(struct usb_configuration *c) { int ret; @@ -207,7 +207,7 @@ static int rndis_config_register(struct usb_composite_dev *cdev) #ifdef CONFIG_USB_G_MULTI_CDC static struct usb_function *f_acm_multi; -static int cdc_do_config(struct usb_configuration *c) +static __init int cdc_do_config(struct usb_configuration *c) { int ret; diff --git a/drivers/usb/gadget/ncm.c b/drivers/usb/gadget/ncm.c index 9a7c859388d5..3b02fd4649ce 100644 --- a/drivers/usb/gadget/ncm.c +++ b/drivers/usb/gadget/ncm.c @@ -116,7 +116,7 @@ static u8 hostaddr[ETH_ALEN]; /*-------------------------------------------------------------------------*/ -static int ncm_do_config(struct usb_configuration *c) +static int __init ncm_do_config(struct usb_configuration *c) { /* FIXME alloc iConfiguration string, set it in c->strings */ @@ -138,7 +138,7 @@ static struct usb_configuration ncm_config_driver = { /*-------------------------------------------------------------------------*/ -static int gncm_bind(struct usb_composite_dev *cdev) +static int __init gncm_bind(struct usb_composite_dev *cdev) { struct usb_gadget *gadget = cdev->gadget; int status; diff --git a/drivers/usb/gadget/nokia.c b/drivers/usb/gadget/nokia.c index 6f860b8dc648..3b344b41a167 100644 --- a/drivers/usb/gadget/nokia.c +++ b/drivers/usb/gadget/nokia.c @@ -127,7 +127,7 @@ static struct usb_configuration nokia_config_100ma_driver = { static struct usb_function_instance *fi_acm; -static int nokia_bind_config(struct usb_configuration *c) +static int __init nokia_bind_config(struct usb_configuration *c) { struct usb_function *f_acm; int status = 0; @@ -170,7 +170,7 @@ err_conf: return status; } -static int nokia_bind(struct usb_composite_dev *cdev) +static int __init nokia_bind(struct usb_composite_dev *cdev) { struct usb_gadget *gadget = cdev->gadget; int status; diff --git a/drivers/usb/gadget/printer.c b/drivers/usb/gadget/printer.c index 2ecf3b1a112b..bf7a56b6d48a 100644 --- a/drivers/usb/gadget/printer.c +++ b/drivers/usb/gadget/printer.c @@ -978,7 +978,7 @@ unknown: return value; } -static int printer_func_bind(struct usb_configuration *c, +static int __init printer_func_bind(struct usb_configuration *c, struct usb_function *f) { struct printer_dev *dev = container_of(f, struct printer_dev, function); @@ -1104,7 +1104,7 @@ static struct usb_configuration printer_cfg_driver = { .bmAttributes = USB_CONFIG_ATT_ONE | USB_CONFIG_ATT_SELFPOWER, }; -static int printer_bind_config(struct usb_configuration *c) +static int __init printer_bind_config(struct usb_configuration *c) { struct usb_gadget *gadget = c->cdev->gadget; struct printer_dev *dev; @@ -1225,7 +1225,7 @@ static int printer_unbind(struct usb_composite_dev *cdev) return 0; } -static int printer_bind(struct usb_composite_dev *cdev) +static int __init printer_bind(struct usb_composite_dev *cdev) { int ret; diff --git a/drivers/usb/gadget/serial.c b/drivers/usb/gadget/serial.c index 812780fe209f..1f5f978d35d5 100644 --- a/drivers/usb/gadget/serial.c +++ b/drivers/usb/gadget/serial.c @@ -174,7 +174,7 @@ out: return ret; } -static int gs_bind(struct usb_composite_dev *cdev) +static int __init gs_bind(struct usb_composite_dev *cdev) { int status; diff --git a/drivers/usb/gadget/u_uac1.c b/drivers/usb/gadget/u_uac1.c index bca223082867..c7d460f43390 100644 --- a/drivers/usb/gadget/u_uac1.c +++ b/drivers/usb/gadget/u_uac1.c @@ -301,7 +301,7 @@ static struct gaudio *the_card; * * Returns negative errno, or zero on success */ -int gaudio_setup(struct gaudio *card) +int __init gaudio_setup(struct gaudio *card) { int ret; diff --git a/drivers/usb/gadget/webcam.c b/drivers/usb/gadget/webcam.c index c79a654f4b07..8cef1e658c29 100644 --- a/drivers/usb/gadget/webcam.c +++ b/drivers/usb/gadget/webcam.c @@ -323,7 +323,7 @@ static const struct uvc_descriptor_header * const uvc_ss_streaming_cls[] = { * USB configuration */ -static int +static int __init webcam_config_bind(struct usb_configuration *c) { return uvc_bind_config(c, uvc_fs_control_cls, uvc_ss_control_cls, @@ -345,7 +345,7 @@ webcam_unbind(struct usb_composite_dev *cdev) return 0; } -static int +static int __init webcam_bind(struct usb_composite_dev *cdev) { int ret; diff --git a/drivers/usb/gadget/zero.c b/drivers/usb/gadget/zero.c index 69ebb4a9c38c..0dd07ae1555d 100644 --- a/drivers/usb/gadget/zero.c +++ b/drivers/usb/gadget/zero.c @@ -272,7 +272,7 @@ static struct usb_function_instance *func_inst_lb; module_param_named(qlen, gzero_options.qlen, uint, S_IRUGO|S_IWUSR); MODULE_PARM_DESC(qlen, "depth of loopback queue"); -static int zero_bind(struct usb_composite_dev *cdev) +static int __init zero_bind(struct usb_composite_dev *cdev) { struct f_ss_opts *ss_opts; struct f_lb_opts *lb_opts; |