diff options
author | joe <joe@FreeBSD.org> | 2002-04-25 12:37:55 +0000 |
---|---|---|
committer | joe <joe@FreeBSD.org> | 2002-04-25 12:37:55 +0000 |
commit | a7d3eff088eadf038b79e3edacaee068a5bcc3b4 (patch) | |
tree | 055527f241c388372c3f31b71f204a91b38ee877 /sys/dev/usb/usb_subr.c | |
parent | 6b33a417059de3aa4a546e125216b858ab66ac21 (diff) | |
download | FreeBSD-src-a7d3eff088eadf038b79e3edacaee068a5bcc3b4.zip FreeBSD-src-a7d3eff088eadf038b79e3edacaee068a5bcc3b4.tar.gz |
MFNetBSD:
revision 1.94
date: 2001/11/20 13:50:07; author: augustss; state: Exp; lines: +16 -9
Update for new speed handling.
Diffstat (limited to 'sys/dev/usb/usb_subr.c')
-rw-r--r-- | sys/dev/usb/usb_subr.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sys/dev/usb/usb_subr.c b/sys/dev/usb/usb_subr.c index 160f833..ca47749 100644 --- a/sys/dev/usb/usb_subr.c +++ b/sys/dev/usb/usb_subr.c @@ -1,4 +1,4 @@ -/* $NetBSD: usb_subr.c,v 1.92 2001/11/16 01:57:47 augustss Exp $ */ +/* $NetBSD: usb_subr.c,v 1.94 2001/11/20 13:50:07 augustss Exp $ */ /* $FreeBSD$ */ /* @@ -933,6 +933,7 @@ usbd_new_device(device_ptr_t parent, usbd_bus_handle bus, int depth, int speed, int port, struct usbd_port *up) { usbd_device_handle dev; + struct usbd_device *hub; usb_device_descriptor_t *dd; usbd_status err; int addr; @@ -969,8 +970,14 @@ usbd_new_device(device_ptr_t parent, usbd_bus_handle bus, int depth, dev->ddesc.bMaxPacketSize = 0; dev->depth = depth; dev->powersrc = up; - dev->langid = USBD_NOLANG; + dev->myhub = up->parent; + for (hub = up->parent; + hub != NULL && hub->speed != USB_SPEED_HIGH; + hub = hub->myhub) + ; + dev->myhighhub = hub; dev->speed = speed; + dev->langid = USBD_NOLANG; dev->cookie.cookie = ++usb_cookie_no; /* Establish the default pipe. */ |