Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/dev/usb Add usbd_reload_device_desc() to get the device ...
details: https://anonhg.NetBSD.org/src/rev/3e951f35e056
branches: trunk
changeset: 480618:3e951f35e056
user: augustss <augustss%NetBSD.org@localhost>
date: Sun Jan 16 23:11:43 2000 +0000
description:
Add usbd_reload_device_desc() to get the device descriptor again from a device.
Useful if e.g. downloading firmware updates the revision number.
diffstat:
sys/dev/usb/usb_subr.c | 25 +++++++++++++++++++------
sys/dev/usb/usbdi.c | 6 +++---
sys/dev/usb/usbdi.h | 14 ++++++++------
3 files changed, 30 insertions(+), 15 deletions(-)
diffs (108 lines):
diff -r 0ebd23bc9686 -r 3e951f35e056 sys/dev/usb/usb_subr.c
--- a/sys/dev/usb/usb_subr.c Sun Jan 16 21:47:00 2000 +0000
+++ b/sys/dev/usb/usb_subr.c Sun Jan 16 23:11:43 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: usb_subr.c,v 1.61 1999/12/18 22:51:58 augustss Exp $ */
+/* $NetBSD: usb_subr.c,v 1.62 2000/01/16 23:11:43 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/usb_subr.c,v 1.18 1999/11/17 22:33:47 n_hibma Exp $ */
/*
@@ -998,8 +998,7 @@
USETW(dev->def_ep_desc.wMaxPacketSize, dd->bMaxPacketSize);
- /* Get the full device descriptor. */
- err = usbd_get_device_desc(dev, dd);
+ err = usbd_reload_device_desc(dev);
if (err) {
DPRINTFN(-1, ("usbd_new_device: addr=%d, getting full desc "
"failed\n", addr));
@@ -1007,9 +1006,6 @@
return (err);
}
- /* Figure out what's wrong with this device. */
- dev->quirks = usbd_find_quirk(dd);
-
/* Set the address */
err = usbd_set_address(dev, addr);
DPRINTFN(5,("usbd_new_device: setting device address=%d\n", addr));
@@ -1042,6 +1038,23 @@
return (USBD_NORMAL_COMPLETION);
}
+usbd_status
+usbd_reload_device_desc(dev)
+ usbd_device_handle dev;
+{
+ usbd_status err;
+
+ /* Get the full device descriptor. */
+ err = usbd_get_device_desc(dev, &dev->ddesc);
+ if (err)
+ return (err);
+
+ /* Figure out what's wrong with this device. */
+ dev->quirks = usbd_find_quirk(&dev->ddesc);
+
+ return (USBD_NORMAL_COMPLETION);
+}
+
void
usbd_remove_device(dev, up)
usbd_device_handle dev;
diff -r 0ebd23bc9686 -r 3e951f35e056 sys/dev/usb/usbdi.c
--- a/sys/dev/usb/usbdi.c Sun Jan 16 21:47:00 2000 +0000
+++ b/sys/dev/usb/usbdi.c Sun Jan 16 23:11:43 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: usbdi.c,v 1.56 2000/01/16 13:34:51 augustss Exp $ */
+/* $NetBSD: usbdi.c,v 1.57 2000/01/16 23:11:43 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/usbdi.c,v 1.28 1999/11/17 22:33:49 n_hibma Exp $ */
/*
@@ -151,8 +151,8 @@
usbd_status err;
int i;
- DPRINTFN(3,("usbd_open_pipe: address=0x%x flags=0x%x\n", address,
- flags));
+ DPRINTFN(3,("usbd_open_pipe: iface=%p address=0x%x flags=0x%x\n",
+ iface, address, flags));
for (i = 0; i < iface->idesc->bNumEndpoints; i++) {
ep = &iface->endpoints[i];
diff -r 0ebd23bc9686 -r 3e951f35e056 sys/dev/usb/usbdi.h
--- a/sys/dev/usb/usbdi.h Sun Jan 16 21:47:00 2000 +0000
+++ b/sys/dev/usb/usbdi.h Sun Jan 16 23:11:43 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: usbdi.h,v 1.37 2000/01/16 13:12:05 augustss Exp $ */
+/* $NetBSD: usbdi.h,v 1.38 2000/01/16 23:11:43 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/usbdi.h,v 1.18 1999/11/17 22:33:49 n_hibma Exp $ */
/*
@@ -174,6 +174,13 @@
void usbd_add_event __P((int, usbd_device_handle));
+void usbd_devinfo __P((usbd_device_handle, int, char *));
+struct usbd_quirks *usbd_get_quirks __P((usbd_device_handle));
+usb_endpoint_descriptor_t *usbd_get_endpoint_descriptor
+ __P((usbd_interface_handle iface, u_int8_t address));
+
+usbd_status usbd_reload_device_desc __P((usbd_device_handle));
+
/* NetBSD attachment information */
/* Attach data */
@@ -233,11 +240,6 @@
#endif
-void usbd_devinfo __P((usbd_device_handle, int, char *));
-struct usbd_quirks *usbd_get_quirks __P((usbd_device_handle));
-usb_endpoint_descriptor_t *usbd_get_endpoint_descriptor
- __P((usbd_interface_handle iface, u_int8_t address));
-
#if defined(__FreeBSD__)
int usbd_driver_load __P((module_t mod, int what, void *arg));
#endif
Home |
Main Index |
Thread Index |
Old Index