aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/usb/cdc_ether.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/usb/cdc_ether.c')
-rw-r--r--drivers/net/usb/cdc_ether.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c
index 197912d9c04..21e183a83b9 100644
--- a/drivers/net/usb/cdc_ether.c
+++ b/drivers/net/usb/cdc_ether.c
@@ -411,6 +411,12 @@ static int cdc_bind(struct usbnet *dev, struct usb_interface *intf)
411 return 0; 411 return 0;
412} 412}
413 413
414static int cdc_manage_power(struct usbnet *dev, int on)
415{
416 dev->intf->needs_remote_wakeup = on;
417 return 0;
418}
419
414static const struct driver_info cdc_info = { 420static const struct driver_info cdc_info = {
415 .description = "CDC Ethernet Device", 421 .description = "CDC Ethernet Device",
416 .flags = FLAG_ETHER | FLAG_LINK_INTR, 422 .flags = FLAG_ETHER | FLAG_LINK_INTR,
@@ -418,6 +424,7 @@ static const struct driver_info cdc_info = {
418 .bind = cdc_bind, 424 .bind = cdc_bind,
419 .unbind = usbnet_cdc_unbind, 425 .unbind = usbnet_cdc_unbind,
420 .status = cdc_status, 426 .status = cdc_status,
427 .manage_power = cdc_manage_power,
421}; 428};
422 429
423static const struct driver_info mbm_info = { 430static const struct driver_info mbm_info = {
@@ -619,6 +626,7 @@ static struct usb_driver cdc_driver = {
619 .suspend = usbnet_suspend, 626 .suspend = usbnet_suspend,
620 .resume = usbnet_resume, 627 .resume = usbnet_resume,
621 .reset_resume = usbnet_resume, 628 .reset_resume = usbnet_resume,
629 .supports_autosuspend = 1,
622}; 630};
623 631
624 632