Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 3675
b: refs/heads/master
c: 247f310
h: refs/heads/master
i:
  3673: 0f6b934
  3671: 16fb0f0
v: v3
  • Loading branch information
Alan Stern authored and Greg Kroah-Hartman committed Jun 27, 2005
1 parent 05816ab commit 1a875f1
Show file tree
Hide file tree
Showing 7 changed files with 5 additions and 136 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 8ec8d20b21f00a36343ca0ebd6c6be9421724a1e
refs/heads/master: 247f3105636caa9d1d8a4c3dfb755de42633bc80
24 changes: 2 additions & 22 deletions trunk/drivers/usb/gadget/dummy_hcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -1625,7 +1625,6 @@ static DEVICE_ATTR (urbs, S_IRUGO, show_urbs, NULL);
static int dummy_start (struct usb_hcd *hcd)
{
struct dummy *dum;
struct usb_device *root;
int retval;

dum = hcd_to_dummy (hcd);
Expand All @@ -1642,35 +1641,16 @@ static int dummy_start (struct usb_hcd *hcd)

INIT_LIST_HEAD (&dum->urbp_list);

root = usb_alloc_dev (NULL, &hcd->self, 0);
if (!root)
return -ENOMEM;
if ((retval = dummy_register_udc (dum)) != 0)
return retval;

/* only show a low-power port: just 8mA */
hcd->power_budget = 8;

/* root hub enters addressed state... */
hcd->state = HC_STATE_RUNNING;
root->speed = USB_SPEED_HIGH;

/* ...then configured, so khubd sees us. */
if ((retval = usb_hcd_register_root_hub (root, hcd)) != 0) {
goto err1;
}

if ((retval = dummy_register_udc (dum)) != 0)
goto err2;

/* FIXME 'urbs' should be a per-device thing, maybe in usbcore */
device_create_file (dummy_dev(dum), &dev_attr_urbs);
return 0;

err2:
usb_disconnect (&hcd->self.root_hub);
err1:
usb_put_dev (root);
hcd->state = HC_STATE_QUIESCING;
return retval;
}

static void dummy_stop (struct usb_hcd *hcd)
Expand Down
31 changes: 0 additions & 31 deletions trunk/drivers/usb/host/ehci-hcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -492,8 +492,6 @@ static int ehci_start (struct usb_hcd *hcd)
{
struct ehci_hcd *ehci = hcd_to_ehci (hcd);
u32 temp;
struct usb_device *udev;
struct usb_bus *bus;
int retval;
u32 hcc_params;
u8 sbrn = 0;
Expand Down Expand Up @@ -631,17 +629,6 @@ static int ehci_start (struct usb_hcd *hcd)

/* set async sleep time = 10 us ... ? */

/* wire up the root hub */
bus = hcd_to_bus (hcd);
udev = first ? usb_alloc_dev (NULL, bus, 0) : bus->root_hub;
if (!udev) {
done2:
ehci_mem_cleanup (ehci);
return -ENOMEM;
}
udev->speed = USB_SPEED_HIGH;
udev->state = first ? USB_STATE_ATTACHED : USB_STATE_CONFIGURED;

/*
* Start, enabling full USB 2.0 functionality ... usb 1.1 devices
* are explicitly handed to companion controller(s), so no TT is
Expand All @@ -664,24 +651,6 @@ static int ehci_start (struct usb_hcd *hcd)
first ? "initialized" : "restarted",
temp >> 8, temp & 0xff, DRIVER_VERSION);

/*
* From here on, khubd concurrently accesses the root
* hub; drivers will be talking to enumerated devices.
* (On restart paths, khubd already knows about the root
* hub and could find work as soon as we wrote FLAG_CF.)
*
* Before this point the HC was idle/ready. After, khubd
* and device drivers may start it running.
*/
if (first && usb_hcd_register_root_hub (udev, hcd) != 0) {
if (hcd->state == HC_STATE_RUNNING)
ehci_quiesce (ehci);
ehci_reset (ehci);
usb_put_dev (udev);
retval = -ENODEV;
goto done2;
}

writel (INTR_MASK, &ehci->regs->intr_enable); /* Turn On Interrupts */

if (first)
Expand Down
16 changes: 0 additions & 16 deletions trunk/drivers/usb/host/isp116x-hcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -1547,7 +1547,6 @@ static int isp116x_start(struct usb_hcd *hcd)
{
struct isp116x *isp116x = hcd_to_isp116x(hcd);
struct isp116x_platform_data *board = isp116x->board;
struct usb_device *udev;
u32 val;
unsigned long flags;

Expand Down Expand Up @@ -1609,24 +1608,9 @@ static int isp116x_start(struct usb_hcd *hcd)
isp116x->rhstatus = isp116x_read_reg32(isp116x, HCRHSTATUS);

isp116x_write_reg32(isp116x, HCFMINTVL, 0x27782edf);
spin_unlock_irqrestore(&isp116x->lock, flags);

udev = usb_alloc_dev(NULL, &hcd->self, 0);
if (!udev) {
isp116x_stop(hcd);
return -ENOMEM;
}

udev->speed = USB_SPEED_FULL;
hcd->state = HC_STATE_RUNNING;

if (usb_hcd_register_root_hub(udev, hcd) != 0) {
isp116x_stop(hcd);
usb_put_dev(udev);
return -ENODEV;
}

spin_lock_irqsave(&isp116x->lock, flags);
/* Set up interrupts */
isp116x->intenb = HCINT_MIE | HCINT_RHSC | HCINT_UE;
if (board->remote_wakeup_enable)
Expand Down
30 changes: 2 additions & 28 deletions trunk/drivers/usb/host/ohci-hcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -505,13 +505,10 @@ static int ohci_init (struct ohci_hcd *ohci)
/* Start an OHCI controller, set the BUS operational
* resets USB and controller
* enable interrupts
* connect the virtual root hub
*/
static int ohci_run (struct ohci_hcd *ohci)
{
u32 mask, temp;
struct usb_device *udev;
struct usb_bus *bus;
int first = ohci->fminterval == 0;

disable (ohci);
Expand Down Expand Up @@ -672,36 +669,13 @@ static int ohci_run (struct ohci_hcd *ohci)

// POTPGT delay is bits 24-31, in 2 ms units.
mdelay ((temp >> 23) & 0x1fe);
bus = &ohci_to_hcd(ohci)->self;
ohci_to_hcd(ohci)->state = HC_STATE_RUNNING;

ohci_dump (ohci, 1);

udev = bus->root_hub;
if (udev) {
return 0;
}

/* connect the virtual root hub */
udev = usb_alloc_dev (NULL, bus, 0);
if (!udev) {
disable (ohci);
ohci->hc_control &= ~OHCI_CTRL_HCFS;
ohci_writel (ohci, ohci->hc_control, &ohci->regs->control);
return -ENOMEM;
}

udev->speed = USB_SPEED_FULL;
if (usb_hcd_register_root_hub (udev, ohci_to_hcd(ohci)) != 0) {
usb_put_dev (udev);
disable (ohci);
ohci->hc_control &= ~OHCI_CTRL_HCFS;
ohci_writel (ohci, ohci->hc_control, &ohci->regs->control);
return -ENODEV;
}
if (ohci_to_hcd(ohci)->self.root_hub == NULL)
create_debug_files (ohci);

register_reboot_notifier (&ohci->reboot_notifier);
create_debug_files (ohci);
return 0;
}

Expand Down
13 changes: 0 additions & 13 deletions trunk/drivers/usb/host/sl811-hcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -1563,28 +1563,15 @@ static int
sl811h_start(struct usb_hcd *hcd)
{
struct sl811 *sl811 = hcd_to_sl811(hcd);
struct usb_device *udev;

/* chip has been reset, VBUS power is off */

udev = usb_alloc_dev(NULL, &hcd->self, 0);
if (!udev)
return -ENOMEM;

udev->speed = USB_SPEED_FULL;
hcd->state = HC_STATE_RUNNING;

if (sl811->board) {
hcd->can_wakeup = sl811->board->can_wakeup;
hcd->power_budget = sl811->board->power * 2;
}

if (usb_hcd_register_root_hub(udev, hcd) != 0) {
usb_put_dev(udev);
sl811h_stop(hcd);
return -ENODEV;
}

/* enable power and interupts */
port_power(sl811, 1);

Expand Down
25 changes: 0 additions & 25 deletions trunk/drivers/usb/host/uhci-hcd.c
Original file line number Diff line number Diff line change
Expand Up @@ -562,7 +562,6 @@ static int uhci_start(struct usb_hcd *hcd)
int retval = -EBUSY;
int i;
dma_addr_t dma_handle;
struct usb_device *udev;
struct dentry *dentry;

hcd->uses_new_polling = 1;
Expand Down Expand Up @@ -626,14 +625,6 @@ static int uhci_start(struct usb_hcd *hcd)
goto err_create_qh_pool;
}

/* Initialize the root hub */

udev = usb_alloc_dev(NULL, &hcd->self, 0);
if (!udev) {
dev_err(uhci_dev(uhci), "unable to allocate root hub\n");
goto err_alloc_root_hub;
}

uhci->term_td = uhci_alloc_td(uhci);
if (!uhci->term_td) {
dev_err(uhci_dev(uhci), "unable to allocate terminating TD\n");
Expand Down Expand Up @@ -713,24 +704,11 @@ static int uhci_start(struct usb_hcd *hcd)

configure_hc(uhci);
start_rh(uhci);

udev->speed = USB_SPEED_FULL;

if (usb_hcd_register_root_hub(udev, hcd) != 0) {
dev_err(uhci_dev(uhci), "unable to start root hub\n");
retval = -ENOMEM;
goto err_start_root_hub;
}

return 0;

/*
* error exits:
*/
err_start_root_hub:
reset_hc(uhci);
del_timer_sync(&uhci->stall_timer);

err_alloc_skelqh:
for (i = 0; i < UHCI_NUM_SKELQH; i++)
if (uhci->skelqh[i]) {
Expand All @@ -742,9 +720,6 @@ static int uhci_start(struct usb_hcd *hcd)
uhci->term_td = NULL;

err_alloc_term_td:
usb_put_dev(udev);

err_alloc_root_hub:
dma_pool_destroy(uhci->qh_pool);
uhci->qh_pool = NULL;

Expand Down

0 comments on commit 1a875f1

Please sign in to comment.