The hubd is a USBA (Solaris USB Architecture)
compliant client driver that supports USB hubs conforming to the Universal Serial Bus Specification 1.0 and 1.1.
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 ELF kernel module
- 64 bit ELF kernel module
for a description of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE
|Availability ||SUNWusb, SUNWusbx
cfgadm_usb(1M), attributes(5), usba(7D)
Writing Device Drivers
Universal Serial Bus Specification 1.0 and 1.1
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 controller.
- Connecting device on port <number>
- The driver failed to enumerate the device connected
on port <number> of hub. If enumeration fails,
disconnect and re-connect.
- Global over current condition. Please disconnect.
- 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 188.8.131.52.1 and 11.13.5 of the Universal Serial Bus Specification 1.1. You must remove and insert
this hub to render it and its downstream devices functional again. If this
message continues 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 original device.
- Devices not identical to the previous one on this port.
Please disconnect and reconnect.
- 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.
- Hub driver supports max of <n>
ports on hub. Hence, using the first <number of physical ports> of <n> ports available.
- 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.