The usbd utility handles USB device attachment and detachment. It does two things. Through opening the /dev/usb0, /dev/usb1, etc. devices, it enables the kernel to handle change requests from attached hubs. This functionality will be removed when the kernel has kernel threads. The (multiple) -f device command line options specify which controllers it should handle. Normally this option is not needed.
If the "usb", "ohci" and "uhci" modules are not loaded, usbd will load them automatically.
The second part is the handling of the attachment and detachment of USB devices. The device /dev/usb is opened and events are read from it. Whenever a device is attached or detached the list of actions read from /etc/usbd.conf is searched for a matching entry. If found, the corresponding action is executed.
The command line options are as follows: