# This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.389 -> 1.390 # drivers/usb/uhci.h 1.8 -> 1.9 # drivers/usb/uhci.c 1.25 -> 1.26 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/04/08 johannes@erdfelt.com 1.390 # [PATCH] uhci.c 2.4.19-pre6 cleanup # # This patch merely cleans up the code a little and doesn't fix any bugs. # It makes a couple of code paths a bit easier to understand, removes an # unused variable (uhci_list) and some procfs variables when not using # procfs. # -------------------------------------------- # diff -Nru a/drivers/usb/uhci.c b/drivers/usb/uhci.c --- a/drivers/usb/uhci.c Mon Apr 8 09:45:40 2002 +++ b/drivers/usb/uhci.c Mon Apr 8 09:45:40 2002 @@ -1622,8 +1622,7 @@ if (urb->status != -EINPROGRESS) { info("uhci_transfer_result: called for URB %p not in flight?", urb); - spin_unlock_irqrestore(&urb->lock, flags); - return; + goto out; } switch (usb_pipetype(urb->pipe)) { @@ -1643,10 +1642,8 @@ urbp->status = ret; - if (ret == -EINPROGRESS) { - spin_unlock_irqrestore(&urb->lock, flags); - return; - } + if (ret == -EINPROGRESS) + goto out; switch (usb_pipetype(urb->pipe)) { case PIPE_CONTROL: @@ -1660,11 +1657,8 @@ break; case PIPE_INTERRUPT: /* Interrupts are an exception */ - if (urb->interval) { - uhci_add_complete(urb); - spin_unlock_irqrestore(&urb->lock, flags); - return; /* <-- note return */ - } + if (urb->interval) + goto out_complete; /* Release bandwidth for Interrupt or Isoc. transfers */ /* Spinlock needed ? */ @@ -1680,8 +1674,10 @@ /* Remove it from uhci->urb_list */ list_del_init(&urb->urb_list); +out_complete: uhci_add_complete(urb); +out: spin_unlock_irqrestore(&urb->lock, flags); } @@ -2714,6 +2710,7 @@ } uhci->dev = dev; + uhci->irq = dev->irq; uhci->io_addr = io_addr; uhci->io_size = io_size; pci_set_drvdata(dev, uhci); @@ -2921,8 +2918,6 @@ if (request_irq(dev->irq, uhci_interrupt, SA_SHIRQ, "usb-uhci", uhci)) goto err_request_irq; - - uhci->irq = dev->irq; /* disable legacy emulation */ pci_write_config_word(uhci->dev, USBLEGSUP, USBLEGSUP_DEFAULT); diff -Nru a/drivers/usb/uhci.h b/drivers/usb/uhci.h --- a/drivers/usb/uhci.h Mon Apr 8 09:45:40 2002 +++ b/drivers/usb/uhci.h Mon Apr 8 09:45:40 2002 @@ -287,16 +287,16 @@ struct uhci { struct pci_dev *dev; +#ifdef CONFIG_PROC_FS /* procfs */ int num; struct proc_dir_entry *proc_entry; +#endif /* Grabbed from PCI */ int irq; unsigned int io_addr; unsigned int io_size; - - struct list_head uhci_list; struct pci_pool *qh_pool; struct pci_pool *td_pool;