Loading drivers/input/mouse/bcm5974.c +12 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,7 @@ struct bcm5974_config { struct bcm5974 { char phys[64]; struct usb_device *udev; /* usb device */ struct usb_interface *intf; /* our interface */ struct input_dev *input; /* input dev */ struct bcm5974_config cfg; /* device configuration */ struct mutex pm_mutex; /* serialize access to open/suspend */ Loading Loading @@ -478,6 +479,10 @@ static int bcm5974_open(struct input_dev *input) struct bcm5974 *dev = input_get_drvdata(input); int error; error = usb_autopm_get_interface(dev->intf); if (error) return error; mutex_lock(&dev->pm_mutex); error = bcm5974_start_traffic(dev); Loading @@ -486,6 +491,9 @@ static int bcm5974_open(struct input_dev *input) mutex_unlock(&dev->pm_mutex); if (error) usb_autopm_put_interface(dev->intf); return error; } Loading @@ -499,6 +507,8 @@ static void bcm5974_close(struct input_dev *input) dev->opened = 0; mutex_unlock(&dev->pm_mutex); usb_autopm_put_interface(dev->intf); } static int bcm5974_suspend(struct usb_interface *iface, pm_message_t message) Loading Loading @@ -551,6 +561,7 @@ static int bcm5974_probe(struct usb_interface *iface, } dev->udev = udev; dev->intf = iface; dev->input = input_dev; dev->cfg = *cfg; mutex_init(&dev->pm_mutex); Loading Loading @@ -652,6 +663,7 @@ static struct usb_driver bcm5974_driver = { .resume = bcm5974_resume, .reset_resume = bcm5974_resume, .id_table = bcm5974_table, .supports_autosuspend = 1, }; static int __init bcm5974_init(void) Loading Loading
drivers/input/mouse/bcm5974.c +12 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,7 @@ struct bcm5974_config { struct bcm5974 { char phys[64]; struct usb_device *udev; /* usb device */ struct usb_interface *intf; /* our interface */ struct input_dev *input; /* input dev */ struct bcm5974_config cfg; /* device configuration */ struct mutex pm_mutex; /* serialize access to open/suspend */ Loading Loading @@ -478,6 +479,10 @@ static int bcm5974_open(struct input_dev *input) struct bcm5974 *dev = input_get_drvdata(input); int error; error = usb_autopm_get_interface(dev->intf); if (error) return error; mutex_lock(&dev->pm_mutex); error = bcm5974_start_traffic(dev); Loading @@ -486,6 +491,9 @@ static int bcm5974_open(struct input_dev *input) mutex_unlock(&dev->pm_mutex); if (error) usb_autopm_put_interface(dev->intf); return error; } Loading @@ -499,6 +507,8 @@ static void bcm5974_close(struct input_dev *input) dev->opened = 0; mutex_unlock(&dev->pm_mutex); usb_autopm_put_interface(dev->intf); } static int bcm5974_suspend(struct usb_interface *iface, pm_message_t message) Loading Loading @@ -551,6 +561,7 @@ static int bcm5974_probe(struct usb_interface *iface, } dev->udev = udev; dev->intf = iface; dev->input = input_dev; dev->cfg = *cfg; mutex_init(&dev->pm_mutex); Loading Loading @@ -652,6 +663,7 @@ static struct usb_driver bcm5974_driver = { .resume = bcm5974_resume, .reset_resume = bcm5974_resume, .id_table = bcm5974_table, .supports_autosuspend = 1, }; static int __init bcm5974_init(void) Loading