of USB2 "duplicate" psuedo busses, it is not at all uncommon for machines
to have more than 4 USB busses nowadays.
PR: bin/81533
Submitted by: Darren Pilgrim dmp at bitfreak dot org
Approved by: re (scottl)
MFC after: 1 week
device is involved, (e.g. plugin a hub with multiple devices
already attached to it)
Submitted by: Naoyuki Tai <ntai@smartfruit.com>
PR: 43993
MFC in: 1 week
uhub.c: revision 1.37
usb.4: revision 1.30
usb.c: revision 1.38
usb.h: revision 1.40
usb_port.h: revision 1.21
usb_subr.c: revision 1.65
usbdi.h: revision 1.40
Split the attach/detach events up into device, driver and controller
attach and detach events.
The commit message from NetBSD was:
date: 2000/02/02 07:34:00; author: augustss; state: Exp;
Change the USB event mechanism to include more information
about devices and drivers. Partly from FreeBSD.
Also rework usbd to take these new event types into account.
strlen.
This one only occurs if there is exactly one element on the line without any
whitespace. This is however never a valid line, so not a big chance that
this would ever cause any problems.
original \0 on the terminating string, however I changed my mind to
make it more obvious that the termination was being taken care of and
explicitly added the nul terminator. I forgot to reset the bcopy length.
was being made one byte too short, and the string assembled in it was not
null terminated. The string was passed to regcomp() so it never matched
anything in /etc/usbd.conf. This is the cause of usbd not working for the
last few days.. The new malloc.conf default of AJ triggered this.
and has not been loaded via a kldload,
running usbd(8) will autoload the "usb.ko" kld.
thanks to Peter Wemm for enlightening me on the
differences between kldfind(2) and modfind(2).
devices. For example, starting 'usbd -e' would give a 'No USB
controllers found' message instead of a '/dev/usb0: Permission denied'.
Submitted-By: Dirk-Willem van Gulik <dirkx@webweaving.org>
/dev/usb. The actions are specified in the file /etc/usbd.conf.
usbd.c:
- Add event queue (/dev/usb) handling.
- Add comments
- Clean up code some more
usbd.8:
- Update manpage for the new command line flags
- Remove a duplicate FreeBSD tag from it).
usbd.conf, usbd.conf.5, Makefile:
- Add the usbd.conf configuration file and the man page for it.
NOTE: MAKEDEV already creates the /dev/usb device tree node, no change
needed there anymore.
- remove the use of NDEV. It is confusing. MAXUSBDEV should do.
- add some comments.
- add more explanation in usage()
- change the timeout value for undetected USB devices from 300 to 30
seconds. I don't think anyone wants to wait 5 minutes for broken
devices to show up. The overhead CPU wise is very little.
- print 'no controllers found' as a fatal error.
- remove inclusion of malloc.h. It's unused.