aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorOliver Neukum <oneukum@suse.de>2007-06-11 08:55:51 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2007-07-12 19:34:37 -0400
commit87d093e25d73249ae92b28ae88db92eaea7df70f (patch)
tree355861f143061c1de47ce6c41d1c5b8b0be438d7 /drivers/usb
parent758f7e161b1da3039368bf7180b9d9f4c33453da (diff)
USB: usb-skeleton: use anchors in pre/post reset
use anchors in pre/post_reset Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/usb-skeleton.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/usb/usb-skeleton.c b/drivers/usb/usb-skeleton.c
index 59973aecd968..8de11deb5d14 100644
--- a/drivers/usb/usb-skeleton.c
+++ b/drivers/usb/usb-skeleton.c
@@ -467,12 +467,35 @@ static int skel_resume (struct usb_interface *intf)
467 return 0; 467 return 0;
468} 468}
469 469
470static int skel_pre_reset(struct usb_interface *intf)
471{
472 struct usb_skel *dev = usb_get_intfdata(intf);
473
474 mutex_lock(&dev->io_mutex);
475 skel_draw_down(dev);
476
477 return 0;
478}
479
480static int skel_post_reset(struct usb_interface *intf)
481{
482 struct usb_skel *dev = usb_get_intfdata(intf);
483
484 /* we are sure no URBs are active - no locking needed */
485 dev->errors = -EPIPE;
486 mutex_unlock(&dev->io_mutex);
487
488 return 0;
489}
490
470static struct usb_driver skel_driver = { 491static struct usb_driver skel_driver = {
471 .name = "skeleton", 492 .name = "skeleton",
472 .probe = skel_probe, 493 .probe = skel_probe,
473 .disconnect = skel_disconnect, 494 .disconnect = skel_disconnect,
474 .suspend = skel_suspend, 495 .suspend = skel_suspend,
475 .resume = skel_resume, 496 .resume = skel_resume,
497 .pre_reset = skel_pre_reset,
498 .post_reset = skel_post_reset,
476 .id_table = skel_table, 499 .id_table = skel_table,
477 .supports_autosuspend = 1, 500 .supports_autosuspend = 1,
478}; 501};