hello,

Current /usr/sbin/usbdevs handles up to 10 USB host controllers.

But my PC has 11 hosts, here is the result of dmesg | grep usb.

----
usb0 at xhci0: USB revision 3.0
uhub0 at usb0 configuration 1 interface 0 "ASMedia xHCI root hub" rev 3.00/1.00 
addr 1
usb1 at ehci0: USB revision 2.0
uhub1 at usb1 configuration 1 interface 0 "AMD EHCI root hub" rev 2.00/1.00 
addr 1
usb2 at ehci1: USB revision 2.0
uhub2 at usb2 configuration 1 interface 0 "AMD EHCI root hub" rev 2.00/1.00 
addr 1
usb3 at ehci2: USB revision 2.0
uhub3 at usb3 configuration 1 interface 0 "VIA EHCI root hub" rev 2.00/1.00 
addr 1
usb4 at uhci0: USB revision 1.0
uhub4 at usb4 configuration 1 interface 0 "VIA UHCI root hub" rev 1.00/1.00 
addr 1
usb5 at uhci1: USB revision 1.0
uhub5 at usb5 configuration 1 interface 0 "VIA UHCI root hub" rev 1.00/1.00 
addr 1
usb6 at ehci3: USB revision 2.0
uhub6 at usb6 configuration 1 interface 0 "AMD EHCI root hub" rev 2.00/1.00 
addr 1
usb7 at ohci0: USB revision 1.0
uhub7 at usb7 configuration 1 interface 0 "AMD OHCI root hub" rev 1.00/1.00 
addr 1
usb8 at ohci1: USB revision 1.0
uhub8 at usb8 configuration 1 interface 0 "AMD OHCI root hub" rev 1.00/1.00 
addr 1
usb9 at ohci2: USB revision 1.0
uhub9 at usb9 configuration 1 interface 0 "AMD OHCI root hub" rev 1.00/1.00 
addr 1
usb10 at ohci3: USB revision 1.0
uhub10 at usb10 configuration 1 interface 0 "AMD OHCI root hub" rev 1.00/1.00 
addr 1
----

There is only way using "usbctl -f /dev/usb10" (from ports/sysutils/usbutil)
to obtain the information for devices that attached 11th host.

NetBSD's usbdevs uses /dev/drvctl to break the limit, or up to 16 hosts.
We do not have /dev/drvctl, so we have to simply increasing the value.
How much is the suitable? I am trying with 24 (32 is too much I think),
is there any good ideas?

And, at least we also have to fix ports/sysutils/usbutil and
devel/libusb-1.0 (libusb-compat not checked yet).

Index: usbdevs.c
===================================================================
RCS file: /cvs/src/usr.sbin/usbdevs/usbdevs.c,v
retrieving revision 1.34
diff -u -p -r1.34 usbdevs.c
--- usbdevs.c   12 Jul 2021 15:09:22 -0000      1.34
+++ usbdevs.c   25 Mar 2022 21:37:19 -0000
@@ -271,7 +271,7 @@ main(int argc, char **argv)
                int i;
                int ncont = 0;
 
-               for (i = 0; i < 10; i++) {
+               for (i = 0; i < 24; i++) {
                        char path[PATH_MAX];
 
                        snprintf(path, sizeof(path), "%s%d", USBDEV, i);

-- 
SASANO Takayoshi (JG1UAA) <u...@mx5.nisiq.net>

Reply via email to