hubd - USB hub driver
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 sup-
ports hubs with individual port power, ganged power and no
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.
*Hubd for the original USBA framework supports USB 1.0 and
1.1 hubs only. Hubd for the USBA 1.0 framework supports USB
2.0 hubs as well. Please see
www.sun.com/desktop/whitepapers.html for more information
regarding USBA 1.0, USB dual framework, and USB 2.0.
32 bit ELF kernel module for original USBA framework.*
64 bit ELF kernel module for original USBA framework.*
32 bit ELF kernel module for USBA 1.0 framework.*
64 bit ELF kernel module for USBA 1.0 framework.*
usba10_hubd configuration file.
* Please see www.sun.com/desktop/whitepapers.html for
more information regarding USB dual framework imple-
mentation, USBA 1.0, and USB 2.0.
See attributes(5) for a description of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Architecture | PCI-based systems |
| Availability | SUNWusb (All architectures)|
| | SUNWusbx (SPARC only) |
cfgadm_usb(1M), attributes(5), usba(7D)
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. All messages are formatted in
the following manner:
WARNING: <device path> (usb<instance number>): Error 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 con-
Use of a USB1.0 hub behind a high speed port may cause unexpected
Devices connected to a USB 1.0 hub, which is 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.
Connecting device on port <number> failed.
The driver failed to enumerate the device connected on
port <number> of hub. If enumeration fails, disconnect
Global over current condition. Please disconnect hub.
The driver detected an over current condition. This
means that the aggregate current being drawn by the
devices on the downstream port exceeds a preset
value. Refer to section 220.127.116.11 and 11.13 of the
Universal Serial Bus Specification 2.0. You must
remove and insert this hub to render it and its down
stream devices functional again. If this message con-
tinues to display for a particular hub, you may need
to remove downstream devices to eliminate the problem.
Cannot access device. Please reconnect <device name>.
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
disconnect and reconnect.
Devices not identical to the previous one on this port. Please
Same condition as described above; however in this
case, the driver is unable to identify the original
device with a name string.
Local power has been lost, please disconnect hub.
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.
first of ports available.
Hub driver supports max of <n> ports on hub. Hence, using the
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.
Man(1) output converted with