diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2012-12-23 15:10:12 -0500 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2013-04-03 07:43:31 -0400 |
commit | d6a0143985489e470a118605352f4b18df0ce142 (patch) | |
tree | 9fe2505807f5d5a721914dcb175542d4e342e414 /drivers/usb/gadget/ether.c | |
parent | 15761826eecda192f4d1527e08c32193a03e94b7 (diff) |
usb: gadget: move the global the_dev variable to their users
the u_ether.c file has a global variable named the_dev which keeps a
pointer to the network device after it has been created via
gether_setup_name(). It is only used internally by u_ether. This patches
moves the variable to its users and passes it via the port.ioport where
it is saved later anyway.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/ether.c')
-rw-r--r-- | drivers/usb/gadget/ether.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c index 18c3f423706e..56c8ecae9bc3 100644 --- a/drivers/usb/gadget/ether.c +++ b/drivers/usb/gadget/ether.c | |||
@@ -207,7 +207,7 @@ static struct usb_gadget_strings *dev_strings[] = { | |||
207 | }; | 207 | }; |
208 | 208 | ||
209 | static u8 hostaddr[ETH_ALEN]; | 209 | static u8 hostaddr[ETH_ALEN]; |
210 | 210 | static struct eth_dev *the_dev; | |
211 | /*-------------------------------------------------------------------------*/ | 211 | /*-------------------------------------------------------------------------*/ |
212 | 212 | ||
213 | /* | 213 | /* |
@@ -224,7 +224,7 @@ static int __init rndis_do_config(struct usb_configuration *c) | |||
224 | c->bmAttributes |= USB_CONFIG_ATT_WAKEUP; | 224 | c->bmAttributes |= USB_CONFIG_ATT_WAKEUP; |
225 | } | 225 | } |
226 | 226 | ||
227 | return rndis_bind_config(c, hostaddr); | 227 | return rndis_bind_config(c, hostaddr, the_dev); |
228 | } | 228 | } |
229 | 229 | ||
230 | static struct usb_configuration rndis_config_driver = { | 230 | static struct usb_configuration rndis_config_driver = { |
@@ -257,11 +257,11 @@ static int __init eth_do_config(struct usb_configuration *c) | |||
257 | } | 257 | } |
258 | 258 | ||
259 | if (use_eem) | 259 | if (use_eem) |
260 | return eem_bind_config(c); | 260 | return eem_bind_config(c, the_dev); |
261 | else if (can_support_ecm(c->cdev->gadget)) | 261 | else if (can_support_ecm(c->cdev->gadget)) |
262 | return ecm_bind_config(c, hostaddr); | 262 | return ecm_bind_config(c, hostaddr, the_dev); |
263 | else | 263 | else |
264 | return geth_bind_config(c, hostaddr); | 264 | return geth_bind_config(c, hostaddr, the_dev); |
265 | } | 265 | } |
266 | 266 | ||
267 | static struct usb_configuration eth_config_driver = { | 267 | static struct usb_configuration eth_config_driver = { |
@@ -279,9 +279,9 @@ static int __init eth_bind(struct usb_composite_dev *cdev) | |||
279 | int status; | 279 | int status; |
280 | 280 | ||
281 | /* set up network link layer */ | 281 | /* set up network link layer */ |
282 | status = gether_setup(cdev->gadget, hostaddr); | 282 | the_dev = gether_setup(cdev->gadget, hostaddr); |
283 | if (status < 0) | 283 | if (IS_ERR(the_dev)) |
284 | return status; | 284 | return PTR_ERR(the_dev); |
285 | 285 | ||
286 | /* set up main config label and device descriptor */ | 286 | /* set up main config label and device descriptor */ |
287 | if (use_eem) { | 287 | if (use_eem) { |
@@ -338,13 +338,13 @@ static int __init eth_bind(struct usb_composite_dev *cdev) | |||
338 | return 0; | 338 | return 0; |
339 | 339 | ||
340 | fail: | 340 | fail: |
341 | gether_cleanup(); | 341 | gether_cleanup(the_dev); |
342 | return status; | 342 | return status; |
343 | } | 343 | } |
344 | 344 | ||
345 | static int __exit eth_unbind(struct usb_composite_dev *cdev) | 345 | static int __exit eth_unbind(struct usb_composite_dev *cdev) |
346 | { | 346 | { |
347 | gether_cleanup(); | 347 | gether_cleanup(the_dev); |
348 | return 0; | 348 | return 0; |
349 | } | 349 | } |
350 | 350 | ||