Commit 28824b18 authored by Michal Nazarewicz's avatar Michal Nazarewicz Committed by Greg Kroah-Hartman

USB: gadget: __init and __exit tags removed

__init, __initdata and __exit tags have have been removed from
various files to make it possible for gadgets that do not use
the __init/__exit tags to use those.

Files in question are related to:
* the core composite framework,
* the mass storage function (fixing a section mismatch) and
* ethernet driver (ACM, ECM, RNDIS).
Signed-off-by: default avatarMichal Nazarewicz <m.nazarewicz@samsung.com>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 8120a8aa
...@@ -85,7 +85,7 @@ MODULE_PARM_DESC(iSerialNumber, "SerialNumber string"); ...@@ -85,7 +85,7 @@ MODULE_PARM_DESC(iSerialNumber, "SerialNumber string");
* This function returns the value of the function's bind(), which is * This function returns the value of the function's bind(), which is
* zero for success else a negative errno value. * zero for success else a negative errno value.
*/ */
int __init usb_add_function(struct usb_configuration *config, int usb_add_function(struct usb_configuration *config,
struct usb_function *function) struct usb_function *function)
{ {
int value = -EINVAL; int value = -EINVAL;
...@@ -215,7 +215,7 @@ int usb_function_activate(struct usb_function *function) ...@@ -215,7 +215,7 @@ int usb_function_activate(struct usb_function *function)
* Returns the interface ID which was allocated; or -ENODEV if no * Returns the interface ID which was allocated; or -ENODEV if no
* more interface IDs can be allocated. * more interface IDs can be allocated.
*/ */
int __init usb_interface_id(struct usb_configuration *config, int usb_interface_id(struct usb_configuration *config,
struct usb_function *function) struct usb_function *function)
{ {
unsigned id = config->next_interface_id; unsigned id = config->next_interface_id;
...@@ -480,7 +480,7 @@ static int set_config(struct usb_composite_dev *cdev, ...@@ -480,7 +480,7 @@ static int set_config(struct usb_composite_dev *cdev,
* assigns global resources including string IDs, and per-configuration * assigns global resources including string IDs, and per-configuration
* resources such as interface IDs and endpoints. * resources such as interface IDs and endpoints.
*/ */
int __init usb_add_config(struct usb_composite_dev *cdev, int usb_add_config(struct usb_composite_dev *cdev,
struct usb_configuration *config) struct usb_configuration *config)
{ {
int status = -EINVAL; int status = -EINVAL;
...@@ -677,7 +677,7 @@ static int get_string(struct usb_composite_dev *cdev, ...@@ -677,7 +677,7 @@ static int get_string(struct usb_composite_dev *cdev,
* ensure that for example different functions don't wrongly assign * ensure that for example different functions don't wrongly assign
* different meanings to the same identifier. * different meanings to the same identifier.
*/ */
int __init usb_string_id(struct usb_composite_dev *cdev) int usb_string_id(struct usb_composite_dev *cdev)
{ {
if (cdev->next_string_id < 254) { if (cdev->next_string_id < 254) {
/* string id 0 is reserved */ /* string id 0 is reserved */
...@@ -910,7 +910,7 @@ static ssize_t composite_show_suspended(struct device *dev, ...@@ -910,7 +910,7 @@ static ssize_t composite_show_suspended(struct device *dev,
static DEVICE_ATTR(suspended, 0444, composite_show_suspended, NULL); static DEVICE_ATTR(suspended, 0444, composite_show_suspended, NULL);
static void /* __init_or_exit */ static void
composite_unbind(struct usb_gadget *gadget) composite_unbind(struct usb_gadget *gadget)
{ {
struct usb_composite_dev *cdev = get_gadget_data(gadget); struct usb_composite_dev *cdev = get_gadget_data(gadget);
...@@ -960,7 +960,7 @@ composite_unbind(struct usb_gadget *gadget) ...@@ -960,7 +960,7 @@ composite_unbind(struct usb_gadget *gadget)
composite = NULL; composite = NULL;
} }
static void __init static void
string_override_one(struct usb_gadget_strings *tab, u8 id, const char *s) string_override_one(struct usb_gadget_strings *tab, u8 id, const char *s)
{ {
struct usb_string *str = tab->strings; struct usb_string *str = tab->strings;
...@@ -973,7 +973,7 @@ string_override_one(struct usb_gadget_strings *tab, u8 id, const char *s) ...@@ -973,7 +973,7 @@ string_override_one(struct usb_gadget_strings *tab, u8 id, const char *s)
} }
} }
static void __init static void
string_override(struct usb_gadget_strings **tab, u8 id, const char *s) string_override(struct usb_gadget_strings **tab, u8 id, const char *s)
{ {
while (*tab) { while (*tab) {
...@@ -982,7 +982,7 @@ string_override(struct usb_gadget_strings **tab, u8 id, const char *s) ...@@ -982,7 +982,7 @@ string_override(struct usb_gadget_strings **tab, u8 id, const char *s)
} }
} }
static int __init composite_bind(struct usb_gadget *gadget) static int composite_bind(struct usb_gadget *gadget)
{ {
struct usb_composite_dev *cdev; struct usb_composite_dev *cdev;
int status = -ENOMEM; int status = -ENOMEM;
...@@ -1113,7 +1113,6 @@ static struct usb_gadget_driver composite_driver = { ...@@ -1113,7 +1113,6 @@ static struct usb_gadget_driver composite_driver = {
.speed = USB_SPEED_HIGH, .speed = USB_SPEED_HIGH,
.bind = composite_bind, .bind = composite_bind,
/* .unbind = __exit_p(composite_unbind), */
.unbind = composite_unbind, .unbind = composite_unbind,
.setup = composite_setup, .setup = composite_setup,
...@@ -1142,7 +1141,7 @@ static struct usb_gadget_driver composite_driver = { ...@@ -1142,7 +1141,7 @@ static struct usb_gadget_driver composite_driver = {
* while it was binding. That would usually be done in order to wait for * while it was binding. That would usually be done in order to wait for
* some userspace participation. * some userspace participation.
*/ */
int __init usb_composite_register(struct usb_composite_driver *driver) int usb_composite_register(struct usb_composite_driver *driver)
{ {
if (!driver || !driver->dev || !driver->bind || composite) if (!driver || !driver->dev || !driver->bind || composite)
return -EINVAL; return -EINVAL;
...@@ -1163,7 +1162,7 @@ int __init usb_composite_register(struct usb_composite_driver *driver) ...@@ -1163,7 +1162,7 @@ int __init usb_composite_register(struct usb_composite_driver *driver)
* This function is used to unregister drivers using the composite * This function is used to unregister drivers using the composite
* driver framework. * driver framework.
*/ */
void /* __exit */ usb_composite_unregister(struct usb_composite_driver *driver) void usb_composite_unregister(struct usb_composite_driver *driver)
{ {
if (composite != driver) if (composite != driver)
return; return;
......
...@@ -128,7 +128,7 @@ int usb_gadget_config_buf( ...@@ -128,7 +128,7 @@ int usb_gadget_config_buf(
* with identifiers (for interfaces, strings, endpoints, and more) * with identifiers (for interfaces, strings, endpoints, and more)
* as needed by a given function instance. * as needed by a given function instance.
*/ */
struct usb_descriptor_header **__init struct usb_descriptor_header **
usb_copy_descriptors(struct usb_descriptor_header **src) usb_copy_descriptors(struct usb_descriptor_header **src)
{ {
struct usb_descriptor_header **tmp; struct usb_descriptor_header **tmp;
...@@ -175,7 +175,7 @@ usb_copy_descriptors(struct usb_descriptor_header **src) ...@@ -175,7 +175,7 @@ usb_copy_descriptors(struct usb_descriptor_header **src)
* intended use is to help remembering the endpoint descriptor to use * intended use is to help remembering the endpoint descriptor to use
* when enabling a given endpoint. * when enabling a given endpoint.
*/ */
struct usb_endpoint_descriptor *__init struct usb_endpoint_descriptor *
usb_find_endpoint( usb_find_endpoint(
struct usb_descriptor_header **src, struct usb_descriptor_header **src,
struct usb_descriptor_header **copy, struct usb_descriptor_header **copy,
......
...@@ -34,12 +34,12 @@ ...@@ -34,12 +34,12 @@
/* we must assign addresses for configurable endpoints (like net2280) */ /* we must assign addresses for configurable endpoints (like net2280) */
static __initdata unsigned epnum; static unsigned epnum;
// #define MANY_ENDPOINTS // #define MANY_ENDPOINTS
#ifdef MANY_ENDPOINTS #ifdef MANY_ENDPOINTS
/* more than 15 configurable endpoints */ /* more than 15 configurable endpoints */
static __initdata unsigned in_epnum; static unsigned in_epnum;
#endif #endif
...@@ -59,7 +59,7 @@ static __initdata unsigned in_epnum; ...@@ -59,7 +59,7 @@ static __initdata unsigned in_epnum;
* NOTE: each endpoint is unidirectional, as specified by its USB * NOTE: each endpoint is unidirectional, as specified by its USB
* descriptor; and isn't specific to a configuration or altsetting. * descriptor; and isn't specific to a configuration or altsetting.
*/ */
static int __init static int
ep_matches ( ep_matches (
struct usb_gadget *gadget, struct usb_gadget *gadget,
struct usb_ep *ep, struct usb_ep *ep,
...@@ -187,7 +187,7 @@ ep_matches ( ...@@ -187,7 +187,7 @@ ep_matches (
return 1; return 1;
} }
static struct usb_ep * __init static struct usb_ep *
find_ep (struct usb_gadget *gadget, const char *name) find_ep (struct usb_gadget *gadget, const char *name)
{ {
struct usb_ep *ep; struct usb_ep *ep;
...@@ -229,7 +229,7 @@ find_ep (struct usb_gadget *gadget, const char *name) ...@@ -229,7 +229,7 @@ find_ep (struct usb_gadget *gadget, const char *name)
* *
* On failure, this returns a null endpoint descriptor. * On failure, this returns a null endpoint descriptor.
*/ */
struct usb_ep * __init usb_ep_autoconfig ( struct usb_ep *usb_ep_autoconfig (
struct usb_gadget *gadget, struct usb_gadget *gadget,
struct usb_endpoint_descriptor *desc struct usb_endpoint_descriptor *desc
) )
...@@ -304,7 +304,7 @@ struct usb_ep * __init usb_ep_autoconfig ( ...@@ -304,7 +304,7 @@ struct usb_ep * __init usb_ep_autoconfig (
* state such as ep->driver_data and the record of assigned endpoints * state such as ep->driver_data and the record of assigned endpoints
* used by usb_ep_autoconfig(). * used by usb_ep_autoconfig().
*/ */
void __init usb_ep_autoconfig_reset (struct usb_gadget *gadget) void usb_ep_autoconfig_reset (struct usb_gadget *gadget)
{ {
struct usb_ep *ep; struct usb_ep *ep;
......
...@@ -116,7 +116,7 @@ acm_iad_descriptor = { ...@@ -116,7 +116,7 @@ acm_iad_descriptor = {
}; };
static struct usb_interface_descriptor acm_control_interface_desc __initdata = { static struct usb_interface_descriptor acm_control_interface_desc = {
.bLength = USB_DT_INTERFACE_SIZE, .bLength = USB_DT_INTERFACE_SIZE,
.bDescriptorType = USB_DT_INTERFACE, .bDescriptorType = USB_DT_INTERFACE,
/* .bInterfaceNumber = DYNAMIC */ /* .bInterfaceNumber = DYNAMIC */
...@@ -127,7 +127,7 @@ static struct usb_interface_descriptor acm_control_interface_desc __initdata = { ...@@ -127,7 +127,7 @@ static struct usb_interface_descriptor acm_control_interface_desc __initdata = {
/* .iInterface = DYNAMIC */ /* .iInterface = DYNAMIC */
}; };
static struct usb_interface_descriptor acm_data_interface_desc __initdata = { static struct usb_interface_descriptor acm_data_interface_desc = {
.bLength = USB_DT_INTERFACE_SIZE, .bLength = USB_DT_INTERFACE_SIZE,
.bDescriptorType = USB_DT_INTERFACE, .bDescriptorType = USB_DT_INTERFACE,
/* .bInterfaceNumber = DYNAMIC */ /* .bInterfaceNumber = DYNAMIC */
...@@ -138,7 +138,7 @@ static struct usb_interface_descriptor acm_data_interface_desc __initdata = { ...@@ -138,7 +138,7 @@ static struct usb_interface_descriptor acm_data_interface_desc __initdata = {
/* .iInterface = DYNAMIC */ /* .iInterface = DYNAMIC */
}; };
static struct usb_cdc_header_desc acm_header_desc __initdata = { static struct usb_cdc_header_desc acm_header_desc = {
.bLength = sizeof(acm_header_desc), .bLength = sizeof(acm_header_desc),
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_HEADER_TYPE, .bDescriptorSubType = USB_CDC_HEADER_TYPE,
...@@ -146,7 +146,7 @@ static struct usb_cdc_header_desc acm_header_desc __initdata = { ...@@ -146,7 +146,7 @@ static struct usb_cdc_header_desc acm_header_desc __initdata = {
}; };
static struct usb_cdc_call_mgmt_descriptor static struct usb_cdc_call_mgmt_descriptor
acm_call_mgmt_descriptor __initdata = { acm_call_mgmt_descriptor = {
.bLength = sizeof(acm_call_mgmt_descriptor), .bLength = sizeof(acm_call_mgmt_descriptor),
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_CALL_MANAGEMENT_TYPE, .bDescriptorSubType = USB_CDC_CALL_MANAGEMENT_TYPE,
...@@ -154,14 +154,14 @@ acm_call_mgmt_descriptor __initdata = { ...@@ -154,14 +154,14 @@ acm_call_mgmt_descriptor __initdata = {
/* .bDataInterface = DYNAMIC */ /* .bDataInterface = DYNAMIC */
}; };
static struct usb_cdc_acm_descriptor acm_descriptor __initdata = { static struct usb_cdc_acm_descriptor acm_descriptor = {
.bLength = sizeof(acm_descriptor), .bLength = sizeof(acm_descriptor),
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_ACM_TYPE, .bDescriptorSubType = USB_CDC_ACM_TYPE,
.bmCapabilities = USB_CDC_CAP_LINE, .bmCapabilities = USB_CDC_CAP_LINE,
}; };
static struct usb_cdc_union_desc acm_union_desc __initdata = { static struct usb_cdc_union_desc acm_union_desc = {
.bLength = sizeof(acm_union_desc), .bLength = sizeof(acm_union_desc),
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_UNION_TYPE, .bDescriptorSubType = USB_CDC_UNION_TYPE,
...@@ -171,7 +171,7 @@ static struct usb_cdc_union_desc acm_union_desc __initdata = { ...@@ -171,7 +171,7 @@ static struct usb_cdc_union_desc acm_union_desc __initdata = {
/* full speed support: */ /* full speed support: */
static struct usb_endpoint_descriptor acm_fs_notify_desc __initdata = { static struct usb_endpoint_descriptor acm_fs_notify_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
.bEndpointAddress = USB_DIR_IN, .bEndpointAddress = USB_DIR_IN,
...@@ -180,21 +180,21 @@ static struct usb_endpoint_descriptor acm_fs_notify_desc __initdata = { ...@@ -180,21 +180,21 @@ static struct usb_endpoint_descriptor acm_fs_notify_desc __initdata = {
.bInterval = 1 << GS_LOG2_NOTIFY_INTERVAL, .bInterval = 1 << GS_LOG2_NOTIFY_INTERVAL,
}; };
static struct usb_endpoint_descriptor acm_fs_in_desc __initdata = { static struct usb_endpoint_descriptor acm_fs_in_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
.bEndpointAddress = USB_DIR_IN, .bEndpointAddress = USB_DIR_IN,
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
}; };
static struct usb_endpoint_descriptor acm_fs_out_desc __initdata = { static struct usb_endpoint_descriptor acm_fs_out_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
.bEndpointAddress = USB_DIR_OUT, .bEndpointAddress = USB_DIR_OUT,
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
}; };
static struct usb_descriptor_header *acm_fs_function[] __initdata = { static struct usb_descriptor_header *acm_fs_function[] = {
(struct usb_descriptor_header *) &acm_iad_descriptor, (struct usb_descriptor_header *) &acm_iad_descriptor,
(struct usb_descriptor_header *) &acm_control_interface_desc, (struct usb_descriptor_header *) &acm_control_interface_desc,
(struct usb_descriptor_header *) &acm_header_desc, (struct usb_descriptor_header *) &acm_header_desc,
...@@ -210,7 +210,7 @@ static struct usb_descriptor_header *acm_fs_function[] __initdata = { ...@@ -210,7 +210,7 @@ static struct usb_descriptor_header *acm_fs_function[] __initdata = {
/* high speed support: */ /* high speed support: */
static struct usb_endpoint_descriptor acm_hs_notify_desc __initdata = { static struct usb_endpoint_descriptor acm_hs_notify_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
.bEndpointAddress = USB_DIR_IN, .bEndpointAddress = USB_DIR_IN,
...@@ -219,21 +219,21 @@ static struct usb_endpoint_descriptor acm_hs_notify_desc __initdata = { ...@@ -219,21 +219,21 @@ static struct usb_endpoint_descriptor acm_hs_notify_desc __initdata = {
.bInterval = GS_LOG2_NOTIFY_INTERVAL+4, .bInterval = GS_LOG2_NOTIFY_INTERVAL+4,
}; };
static struct usb_endpoint_descriptor acm_hs_in_desc __initdata = { static struct usb_endpoint_descriptor acm_hs_in_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
.wMaxPacketSize = cpu_to_le16(512), .wMaxPacketSize = cpu_to_le16(512),
}; };
static struct usb_endpoint_descriptor acm_hs_out_desc __initdata = { static struct usb_endpoint_descriptor acm_hs_out_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
.wMaxPacketSize = cpu_to_le16(512), .wMaxPacketSize = cpu_to_le16(512),
}; };
static struct usb_descriptor_header *acm_hs_function[] __initdata = { static struct usb_descriptor_header *acm_hs_function[] = {
(struct usb_descriptor_header *) &acm_iad_descriptor, (struct usb_descriptor_header *) &acm_iad_descriptor,
(struct usb_descriptor_header *) &acm_control_interface_desc, (struct usb_descriptor_header *) &acm_control_interface_desc,
(struct usb_descriptor_header *) &acm_header_desc, (struct usb_descriptor_header *) &acm_header_desc,
...@@ -571,7 +571,7 @@ static int acm_send_break(struct gserial *port, int duration) ...@@ -571,7 +571,7 @@ static int acm_send_break(struct gserial *port, int duration)
/*-------------------------------------------------------------------------*/ /*-------------------------------------------------------------------------*/
/* ACM function driver setup/binding */ /* ACM function driver setup/binding */
static int __init static int
acm_bind(struct usb_configuration *c, struct usb_function *f) acm_bind(struct usb_configuration *c, struct usb_function *f)
{ {
struct usb_composite_dev *cdev = c->cdev; struct usb_composite_dev *cdev = c->cdev;
...@@ -719,7 +719,7 @@ static inline bool can_support_cdc(struct usb_configuration *c) ...@@ -719,7 +719,7 @@ static inline bool can_support_cdc(struct usb_configuration *c)
* handle all the ones it binds. Caller is also responsible * handle all the ones it binds. Caller is also responsible
* for calling @gserial_cleanup() before module unload. * for calling @gserial_cleanup() before module unload.
*/ */
int __init acm_bind_config(struct usb_configuration *c, u8 port_num) int acm_bind_config(struct usb_configuration *c, u8 port_num)
{ {
struct f_acm *acm; struct f_acm *acm;
int status; int status;
......
...@@ -113,7 +113,7 @@ static inline unsigned ecm_bitrate(struct usb_gadget *g) ...@@ -113,7 +113,7 @@ static inline unsigned ecm_bitrate(struct usb_gadget *g)
/* interface descriptor: */ /* interface descriptor: */
static struct usb_interface_descriptor ecm_control_intf __initdata = { static struct usb_interface_descriptor ecm_control_intf = {
.bLength = sizeof ecm_control_intf, .bLength = sizeof ecm_control_intf,
.bDescriptorType = USB_DT_INTERFACE, .bDescriptorType = USB_DT_INTERFACE,
...@@ -126,7 +126,7 @@ static struct usb_interface_descriptor ecm_control_intf __initdata = { ...@@ -126,7 +126,7 @@ static struct usb_interface_descriptor ecm_control_intf __initdata = {
/* .iInterface = DYNAMIC */ /* .iInterface = DYNAMIC */
}; };
static struct usb_cdc_header_desc ecm_header_desc __initdata = { static struct usb_cdc_header_desc ecm_header_desc = {
.bLength = sizeof ecm_header_desc, .bLength = sizeof ecm_header_desc,
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_HEADER_TYPE, .bDescriptorSubType = USB_CDC_HEADER_TYPE,
...@@ -134,7 +134,7 @@ static struct usb_cdc_header_desc ecm_header_desc __initdata = { ...@@ -134,7 +134,7 @@ static struct usb_cdc_header_desc ecm_header_desc __initdata = {
.bcdCDC = cpu_to_le16(0x0110), .bcdCDC = cpu_to_le16(0x0110),
}; };
static struct usb_cdc_union_desc ecm_union_desc __initdata = { static struct usb_cdc_union_desc ecm_union_desc = {
.bLength = sizeof(ecm_union_desc), .bLength = sizeof(ecm_union_desc),
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_UNION_TYPE, .bDescriptorSubType = USB_CDC_UNION_TYPE,
...@@ -142,7 +142,7 @@ static struct usb_cdc_union_desc ecm_union_desc __initdata = { ...@@ -142,7 +142,7 @@ static struct usb_cdc_union_desc ecm_union_desc __initdata = {
/* .bSlaveInterface0 = DYNAMIC */ /* .bSlaveInterface0 = DYNAMIC */
}; };
static struct usb_cdc_ether_desc ecm_desc __initdata = { static struct usb_cdc_ether_desc ecm_desc = {
.bLength = sizeof ecm_desc, .bLength = sizeof ecm_desc,
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_ETHERNET_TYPE, .bDescriptorSubType = USB_CDC_ETHERNET_TYPE,
...@@ -157,7 +157,7 @@ static struct usb_cdc_ether_desc ecm_desc __initdata = { ...@@ -157,7 +157,7 @@ static struct usb_cdc_ether_desc ecm_desc __initdata = {
/* the default data interface has no endpoints ... */ /* the default data interface has no endpoints ... */
static struct usb_interface_descriptor ecm_data_nop_intf __initdata = { static struct usb_interface_descriptor ecm_data_nop_intf = {
.bLength = sizeof ecm_data_nop_intf, .bLength = sizeof ecm_data_nop_intf,
.bDescriptorType = USB_DT_INTERFACE, .bDescriptorType = USB_DT_INTERFACE,
...@@ -172,7 +172,7 @@ static struct usb_interface_descriptor ecm_data_nop_intf __initdata = { ...@@ -172,7 +172,7 @@ static struct usb_interface_descriptor ecm_data_nop_intf __initdata = {
/* ... but the "real" data interface has two bulk endpoints */ /* ... but the "real" data interface has two bulk endpoints */
static struct usb_interface_descriptor ecm_data_intf __initdata = { static struct usb_interface_descriptor ecm_data_intf = {
.bLength = sizeof ecm_data_intf, .bLength = sizeof ecm_data_intf,
.bDescriptorType = USB_DT_INTERFACE, .bDescriptorType = USB_DT_INTERFACE,
...@@ -187,7 +187,7 @@ static struct usb_interface_descriptor ecm_data_intf __initdata = { ...@@ -187,7 +187,7 @@ static struct usb_interface_descriptor ecm_data_intf __initdata = {
/* full speed support: */ /* full speed support: */
static struct usb_endpoint_descriptor fs_ecm_notify_desc __initdata = { static struct usb_endpoint_descriptor fs_ecm_notify_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -197,7 +197,7 @@ static struct usb_endpoint_descriptor fs_ecm_notify_desc __initdata = { ...@@ -197,7 +197,7 @@ static struct usb_endpoint_descriptor fs_ecm_notify_desc __initdata = {
.bInterval = 1 << LOG2_STATUS_INTERVAL_MSEC, .bInterval = 1 << LOG2_STATUS_INTERVAL_MSEC,
}; };
static struct usb_endpoint_descriptor fs_ecm_in_desc __initdata = { static struct usb_endpoint_descriptor fs_ecm_in_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -205,7 +205,7 @@ static struct usb_endpoint_descriptor fs_ecm_in_desc __initdata = { ...@@ -205,7 +205,7 @@ static struct usb_endpoint_descriptor fs_ecm_in_desc __initdata = {
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
}; };
static struct usb_endpoint_descriptor fs_ecm_out_desc __initdata = { static struct usb_endpoint_descriptor fs_ecm_out_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -213,7 +213,7 @@ static struct usb_endpoint_descriptor fs_ecm_out_desc __initdata = { ...@@ -213,7 +213,7 @@ static struct usb_endpoint_descriptor fs_ecm_out_desc __initdata = {
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
}; };
static struct usb_descriptor_header *ecm_fs_function[] __initdata = { static struct usb_descriptor_header *ecm_fs_function[] = {
/* CDC ECM control descriptors */ /* CDC ECM control descriptors */
(struct usb_descriptor_header *) &ecm_control_intf, (struct usb_descriptor_header *) &ecm_control_intf,
(struct usb_descriptor_header *) &ecm_header_desc, (struct usb_descriptor_header *) &ecm_header_desc,
...@@ -231,7 +231,7 @@ static struct usb_descriptor_header *ecm_fs_function[] __initdata = { ...@@ -231,7 +231,7 @@ static struct usb_descriptor_header *ecm_fs_function[] __initdata = {
/* high speed support: */ /* high speed support: */
static struct usb_endpoint_descriptor hs_ecm_notify_desc __initdata = { static struct usb_endpoint_descriptor hs_ecm_notify_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -240,7 +240,7 @@ static struct usb_endpoint_descriptor hs_ecm_notify_desc __initdata = { ...@@ -240,7 +240,7 @@ static struct usb_endpoint_descriptor hs_ecm_notify_desc __initdata = {
.wMaxPacketSize = cpu_to_le16(ECM_STATUS_BYTECOUNT), .wMaxPacketSize = cpu_to_le16(ECM_STATUS_BYTECOUNT),
.bInterval = LOG2_STATUS_INTERVAL_MSEC + 4, .bInterval = LOG2_STATUS_INTERVAL_MSEC + 4,
}; };
static struct usb_endpoint_descriptor hs_ecm_in_desc __initdata = { static struct usb_endpoint_descriptor hs_ecm_in_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -249,7 +249,7 @@ static struct usb_endpoint_descriptor hs_ecm_in_desc __initdata = { ...@@ -249,7 +249,7 @@ static struct usb_endpoint_descriptor hs_ecm_in_desc __initdata = {
.wMaxPacketSize = cpu_to_le16(512), .wMaxPacketSize = cpu_to_le16(512),
}; };
static struct usb_endpoint_descriptor hs_ecm_out_desc __initdata = { static struct usb_endpoint_descriptor hs_ecm_out_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -258,7 +258,7 @@ static struct usb_endpoint_descriptor hs_ecm_out_desc __initdata = { ...@@ -258,7 +258,7 @@ static struct usb_endpoint_descriptor hs_ecm_out_desc __initdata = {
.wMaxPacketSize = cpu_to_le16(512), .wMaxPacketSize = cpu_to_le16(512),
}; };
static struct usb_descriptor_header *ecm_hs_function[] __initdata = { static struct usb_descriptor_header *ecm_hs_function[] = {
/* CDC ECM control descriptors */ /* CDC ECM control descriptors */
(struct usb_descriptor_header *) &ecm_control_intf, (struct usb_descriptor_header *) &ecm_control_intf,
(struct usb_descriptor_header *) &ecm_header_desc, (struct usb_descriptor_header *) &ecm_header_desc,
...@@ -597,7 +597,7 @@ static void ecm_close(struct gether *geth) ...@@ -597,7 +597,7 @@ static void ecm_close(struct gether *geth)
/* ethernet function driver setup/binding */ /* ethernet function driver setup/binding */
static int __init static int
ecm_bind(struct usb_configuration *c, struct usb_function *f) ecm_bind(struct usb_configuration *c, struct usb_function *f)
{ {
struct usb_composite_dev *cdev = c->cdev; struct usb_composite_dev *cdev = c->cdev;
...@@ -763,7 +763,8 @@ ecm_unbind(struct usb_configuration *c, struct usb_function *f) ...@@ -763,7 +763,8 @@ ecm_unbind(struct usb_configuration *c, struct usb_function *f)
* Caller must have called @gether_setup(). Caller is also responsible * Caller must have called @gether_setup(). Caller is also responsible
* for calling @gether_cleanup() before module unload. * for calling @gether_cleanup() before module unload.
*/ */
int __init ecm_bind_config(struct usb_configuration *c, u8 ethaddr[ETH_ALEN]) int
ecm_bind_config(struct usb_configuration *c, u8 ethaddr[ETH_ALEN])
{ {
struct f_ecm *ecm; struct f_ecm *ecm;
int status; int status;
......
...@@ -2967,7 +2967,7 @@ static void fsg_unbind(struct usb_configuration *c, struct usb_function *f) ...@@ -2967,7 +2967,7 @@ static void fsg_unbind(struct usb_configuration *c, struct usb_function *f)
} }
static int __init fsg_bind(struct usb_configuration *c, struct usb_function *f) static int fsg_bind(struct usb_configuration *c, struct usb_function *f)
{ {
struct fsg_dev *fsg = fsg_from_func(f); struct fsg_dev *fsg = fsg_from_func(f);
struct usb_gadget *gadget = c->cdev->gadget; struct usb_gadget *gadget = c->cdev->gadget;
......
...@@ -122,7 +122,7 @@ static unsigned int bitrate(struct usb_gadget *g) ...@@ -122,7 +122,7 @@ static unsigned int bitrate(struct usb_gadget *g)
/* interface descriptor: */ /* interface descriptor: */
static struct usb_interface_descriptor rndis_control_intf __initdata = { static struct usb_interface_descriptor rndis_control_intf = {
.bLength = sizeof rndis_control_intf, .bLength = sizeof rndis_control_intf,
.bDescriptorType = USB_DT_INTERFACE, .bDescriptorType = USB_DT_INTERFACE,
...@@ -135,7 +135,7 @@ static struct usb_interface_descriptor rndis_control_intf __initdata = { ...@@ -135,7 +135,7 @@ static struct usb_interface_descriptor rndis_control_intf __initdata = {
/* .iInterface = DYNAMIC */ /* .iInterface = DYNAMIC */
}; };
static struct usb_cdc_header_desc header_desc __initdata = { static struct usb_cdc_header_desc header_desc = {
.bLength = sizeof header_desc, .bLength = sizeof header_desc,
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_HEADER_TYPE, .bDescriptorSubType = USB_CDC_HEADER_TYPE,
...@@ -143,7 +143,7 @@ static struct usb_cdc_header_desc header_desc __initdata = { ...@@ -143,7 +143,7 @@ static struct usb_cdc_header_desc header_desc __initdata = {
.bcdCDC = cpu_to_le16(0x0110), .bcdCDC = cpu_to_le16(0x0110),
}; };
static struct usb_cdc_call_mgmt_descriptor call_mgmt_descriptor __initdata = { static struct usb_cdc_call_mgmt_descriptor call_mgmt_descriptor = {
.bLength = sizeof call_mgmt_descriptor, .bLength = sizeof call_mgmt_descriptor,
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_CALL_MANAGEMENT_TYPE, .bDescriptorSubType = USB_CDC_CALL_MANAGEMENT_TYPE,
...@@ -152,7 +152,7 @@ static struct usb_cdc_call_mgmt_descriptor call_mgmt_descriptor __initdata = { ...@@ -152,7 +152,7 @@ static struct usb_cdc_call_mgmt_descriptor call_mgmt_descriptor __initdata = {
.bDataInterface = 0x01, .bDataInterface = 0x01,
}; };
static struct usb_cdc_acm_descriptor rndis_acm_descriptor __initdata = { static struct usb_cdc_acm_descriptor rndis_acm_descriptor = {
.bLength = sizeof rndis_acm_descriptor, .bLength = sizeof rndis_acm_descriptor,
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_ACM_TYPE, .bDescriptorSubType = USB_CDC_ACM_TYPE,
...@@ -160,7 +160,7 @@ static struct usb_cdc_acm_descriptor rndis_acm_descriptor __initdata = { ...@@ -160,7 +160,7 @@ static struct usb_cdc_acm_descriptor rndis_acm_descriptor __initdata = {
.bmCapabilities = 0x00, .bmCapabilities = 0x00,
}; };
static struct usb_cdc_union_desc rndis_union_desc __initdata = { static struct usb_cdc_union_desc rndis_union_desc = {
.bLength = sizeof(rndis_union_desc), .bLength = sizeof(rndis_union_desc),
.bDescriptorType = USB_DT_CS_INTERFACE, .bDescriptorType = USB_DT_CS_INTERFACE,
.bDescriptorSubType = USB_CDC_UNION_TYPE, .bDescriptorSubType = USB_CDC_UNION_TYPE,
...@@ -170,7 +170,7 @@ static struct usb_cdc_union_desc rndis_union_desc __initdata = { ...@@ -170,7 +170,7 @@ static struct usb_cdc_union_desc rndis_union_desc __initdata = {
/* the data interface has two bulk endpoints */ /* the data interface has two bulk endpoints */
static struct usb_interface_descriptor rndis_data_intf __initdata = { static struct usb_interface_descriptor rndis_data_intf = {
.bLength = sizeof rndis_data_intf, .bLength = sizeof rndis_data_intf,
.bDescriptorType = USB_DT_INTERFACE, .bDescriptorType = USB_DT_INTERFACE,
...@@ -198,7 +198,7 @@ rndis_iad_descriptor = { ...@@ -198,7 +198,7 @@ rndis_iad_descriptor = {
/* full speed support: */ /* full speed support: */
static struct usb_endpoint_descriptor fs_notify_desc __initdata = { static struct usb_endpoint_descriptor fs_notify_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -208,7 +208,7 @@ static struct usb_endpoint_descriptor fs_notify_desc __initdata = { ...@@ -208,7 +208,7 @@ static struct usb_endpoint_descriptor fs_notify_desc __initdata = {
.bInterval = 1 << LOG2_STATUS_INTERVAL_MSEC, .bInterval = 1 << LOG2_STATUS_INTERVAL_MSEC,
}; };
static struct usb_endpoint_descriptor fs_in_desc __initdata = { static struct usb_endpoint_descriptor fs_in_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -216,7 +216,7 @@ static struct usb_endpoint_descriptor fs_in_desc __initdata = { ...@@ -216,7 +216,7 @@ static struct usb_endpoint_descriptor fs_in_desc __initdata = {
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
}; };
static struct usb_endpoint_descriptor fs_out_desc __initdata = { static struct usb_endpoint_descriptor fs_out_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -224,7 +224,7 @@ static struct usb_endpoint_descriptor fs_out_desc __initdata = { ...@@ -224,7 +224,7 @@ static struct usb_endpoint_descriptor fs_out_desc __initdata = {
.bmAttributes = USB_ENDPOINT_XFER_BULK, .bmAttributes = USB_ENDPOINT_XFER_BULK,
}; };
static struct usb_descriptor_header *eth_fs_function[] __initdata = { static struct usb_descriptor_header *eth_fs_function[] = {
(struct usb_descriptor_header *) &rndis_iad_descriptor, (struct usb_descriptor_header *) &rndis_iad_descriptor,
/* control interface matches ACM, not Ethernet */ /* control interface matches ACM, not Ethernet */
(struct usb_descriptor_header *) &rndis_control_intf, (struct usb_descriptor_header *) &rndis_control_intf,
...@@ -242,7 +242,7 @@ static struct usb_descriptor_header *eth_fs_function[] __initdata = { ...@@ -242,7 +242,7 @@ static struct usb_descriptor_header *eth_fs_function[] __initdata = {
/* high speed support: */ /* high speed support: */
static struct usb_endpoint_descriptor hs_notify_desc __initdata = { static struct usb_endpoint_descriptor hs_notify_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -251,7 +251,7 @@ static struct usb_endpoint_descriptor hs_notify_desc __initdata = { ...@@ -251,7 +251,7 @@ static struct usb_endpoint_descriptor hs_notify_desc __initdata = {
.wMaxPacketSize = cpu_to_le16(STATUS_BYTECOUNT), .wMaxPacketSize = cpu_to_le16(STATUS_BYTECOUNT),
.bInterval = LOG2_STATUS_INTERVAL_MSEC + 4, .bInterval = LOG2_STATUS_INTERVAL_MSEC + 4,
}; };
static struct usb_endpoint_descriptor hs_in_desc __initdata = { static struct usb_endpoint_descriptor hs_in_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -260,7 +260,7 @@ static struct usb_endpoint_descriptor hs_in_desc __initdata = { ...@@ -260,7 +260,7 @@ static struct usb_endpoint_descriptor hs_in_desc __initdata = {
.wMaxPacketSize = cpu_to_le16(512), .wMaxPacketSize = cpu_to_le16(512),
}; };
static struct usb_endpoint_descriptor hs_out_desc __initdata = { static struct usb_endpoint_descriptor hs_out_desc = {
.bLength = USB_DT_ENDPOINT_SIZE, .bLength = USB_DT_ENDPOINT_SIZE,
.bDescriptorType = USB_DT_ENDPOINT, .bDescriptorType = USB_DT_ENDPOINT,
...@@ -269,7 +269,7 @@ static struct usb_endpoint_descriptor hs_out_desc __initdata = { ...@@ -269,7 +269,7 @@ static struct usb_endpoint_descriptor hs_out_desc __initdata = {
.wMaxPacketSize = cpu_to_le16(512), .wMaxPacketSize = cpu_to_le16(512),
}; };
static struct usb_descriptor_header *eth_hs_function[] __initdata = { static struct usb_descriptor_header *eth_hs_function[] = {
(struct usb_descriptor_header *) &rndis_iad_descriptor, (struct usb_descriptor_header *) &rndis_iad_descriptor,
/* control interface matches ACM, not Ethernet */ /* control interface matches ACM, not Ethernet */
(struct usb_descriptor_header *) &rndis_control_intf, (struct usb_descriptor_header *) &rndis_control_intf,
...@@ -594,7 +594,7 @@ static void rndis_close(struct gether *geth) ...@@ -594,7 +594,7 @@ static void rndis_close(struct gether *geth)
/* ethernet function driver setup/binding */ /* ethernet function driver setup/binding */
static int __init static int
rndis_bind(struct usb_configuration *c, struct usb_function *f) rndis_bind(struct usb_configuration *c, struct usb_function *f)
{ {
struct usb_composite_dev *cdev = c->cdev; struct usb_composite_dev *cdev = c->cdev;
...@@ -786,7 +786,8 @@ static inline bool can_support_rndis(struct usb_configuration *c) ...@@ -786,7 +786,8 @@ static inline bool can_support_rndis(struct usb_configuration *c)
* Caller must have called @gether_setup(). Caller is also responsible * Caller must have called @gether_setup(). Caller is also responsible
* for calling @gether_cleanup() before module unload. * for calling @gether_cleanup() before module unload.
*/ */
int __init rndis_bind_config(struct usb_configuration *c, u8 ethaddr[ETH_ALEN]) int
rndis_bind_config(struct usb_configuration *c, u8 ethaddr[ETH_ALEN])
{ {
struct f_rndis *rndis; struct f_rndis *rndis;
int status; int status;
......
...@@ -715,7 +715,7 @@ static u8 __init nibble(unsigned char c) ...@@ -715,7 +715,7 @@ static u8 __init nibble(unsigned char c)
return 0; return 0;
} }
static int __init get_ether_addr(const char *str, u8 *dev_addr) static int get_ether_addr(const char *str, u8 *dev_addr)
{ {
if (str) { if (str) {
unsigned i; unsigned i;
...@@ -764,7 +764,7 @@ static struct device_type gadget_type = { ...@@ -764,7 +764,7 @@ static struct device_type gadget_type = {
* *
* Returns negative errno, or zero on success * Returns negative errno, or zero on success
*/ */
int __init gether_setup(struct usb_gadget *g, u8 ethaddr[ETH_ALEN]) int gether_setup(struct usb_gadget *g, u8 ethaddr[ETH_ALEN])
{ {
struct eth_dev *dev; struct eth_dev *dev;
struct net_device *net; struct net_device *net;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment