The hubd is a USBA (Solaris USB Architecture) compliant client driver that supports USB hubs conforming to the Universal Serial Bus Specification 2.0. The hubd driver supports bus–powered and self–powered hubs. The driver supports hubs with individual port power, ganged power and no power switching.
When a device is attached to a hub port, the hubd driver enumerates the device by determining its type and assigning an address to it. For multi-configuration devices, hubd sets the preferred configuration (refer to cfgadm_usb(1M) to select a configuration). The hubd driver attaches a driver to the device if one is available for the default or selected configuration. When the device is disconnected from the hub port, the hubd driver offlines any driver instance attached to the device.
32– bit x86 ELF kernel module
64– bit x86 ELF kernel module
64–bit SPARC ELF kernel module
See attributes(5) for a description of the following attributes:
SPARC, x86, PCI-based systems
Writing Device Drivers
Universal Serial Bus Specification 2.0
System Administration Guide: Basic Administration
In addition to being logged, the following messages may also appear on the system console. Messages are formatted in the following manner:
WARNING: <device path> <hubd<instance number>): Message...
where <instance number> is the instance number of hubd and <device path> is the physical path to the device in /devices directory. Messages from the root hub are displayed with a usb<instance number> prefix instead of hub<instance number> as the root hub is an integrated part of the host controller.
The driver failed to enumerate the device connected on port <number> of hub. If enumeration fails, disconnect and re-connect.
Devices connected to a USB 1.0 hub which are in turn connected to an external USB 2.0 hub, may misbehave unexpectedly or suddenly go offline. This is due to a documented incompatibility between USB 1.0 hubs and USB 2.0 hub Transaction Translators. Please use only USB 2.0 or USB 1.1 hubs behind high-speed ports.
USB 2.0 devices connected to USB 1.0 or 1.1 hubs cannot run at their highest speed, even when the hub is in turn connected to a high-speed port. For best performance, reconnect without going through a USB 1.0 or 1.1 hub.
This hub has been disconnected because a device other than the original one has been inserted. The driver informs you of this fact by displaying the name of the original device.
An overcurrent condition was detected. Please remove the device on this port.
Same condition as described above; however in this case, the driver is unable to identify the original device with a name string.
The current hub driver supports hubs that have <n> ports or less. A hub with more than <n> ports has been plugged in. Only the first <n> out of the total <number of physical ports> ports are usable.
An overcurrent condition was detected on the hub. This means that the aggregate current being drawn by the devices on the downstream ports exceeds a preset value. Refer to section 18.104.22.168 and 11.13 of the Universal Serial Bus Specification 2.0. If this message continues to display, you may need to remove downstream devices to eliminate the problem. If any port does not work after the overcurrent condition is cleared, re-connect the hub to re-enable the ports.
An overcurrent condition was detected on the root hub, indicating that malfunctioning devices on the downstream ports are drawing too much current. Please disconnect the problematic downstream devices to eliminate the problem. If the root hub doesn't work after the overcurrent condition is cleared, you may need to reboot the system.
The following messages may be logged into the system log. They are formatted in the following manner:
<device path><hubd<instance number>): message...
A USB self-powered hub has lost external power. All USB devices connected down-stream from this hub will cease to function. Disconnect the hub, plug in the external power-supply and then plug in the hub again.
A USB self/bus-powered hub has lost external power. Some USB devices connected down-stream from this hub may cease to function. Disconnect the external power-supply and then plug in the hub again.
A bus-powered hub was connected to a bus powered hub port. Please remove this bus-powered hub and connect it to a self-powered hub or a root hub port.
The device requires more power than is available on this port.
An overcurrent condition was detected on port <n>. This means the device connected to the port is drawing more current than the hub can supply. If this message continues to display, please disconnect the device to eliminate the problem. If the port doesn't work after the overcurrent condition is cleared, please re-connect the hub or reboot the system to enable the port again.