表 11-8. 集线器描述符

    偏移量 字段 大小 描述
    0 bDescLength 1 此描述符的总字节数(包含本字节)
    1 bDescriptorType 1 描述符类型,值:29H 表示集线器描述符
    2 bNbrPorts 1 本集线器支持的下行端口数量
    3 wHubCharacteristics 2 D1…D0: 逻辑电源切换模式
    00:群控电源切换(所有端口电源同时开关)
    01:独立端口电源切换
    1X:保留。仅用于符合 1.0 规范且未实现电源切换的集线器。

    D2: 标识复合设备
    0:集线器不是复合设备的一部分
    1:集线器是复合设备的一部分

    D4…D3: 过流保护模式
    00:全局过流保护。集线器将所有端口的电流消耗总和报告为过流状态,不提供单个端口的过流状态。
    01:独立端口过流保护。集线器按端口报告过流状态。每个端口都有一个过流指示器。
    1X:无过流保护。此选项仅允许用于未实现过流保护的总线供电集线器。

    D15…D5: 保留
    5 bPwrOn2PwrGood 1 从端口上电序列开始到端口电源稳定所需的时间(以 2ms 为单位)。USB 系统软件使用此值来确定访问已上电端口前需等待的时间。
    6 bHubContrCurrent 1 集线器控制器电子元件的最大电流需求(单位:mA)
    7 DeviceRemovable 可变(取决于集线器端口数) 指示端口是否连接了可移动设备。此字段按字节粒度报告。在一个字节内,如果指定位置不存在端口,则代表该端口特性的字段返回 0。

    位值定义:
    0B - 设备可移动
    1B - 设备不可移动

    这是一个与集线器上各个端口对应的位图:
    位 0:保留供未来使用
    位 1:端口 1
    位 2:端口 2

    位 n:端口 n(取决于实现,最多 255 个端口)。
    可变 PortPwrCtrlMask 可变(取决于集线器端口数) 此字段的存在是为了与为符合 1.0 规范的设备编写的软件保持兼容。此字段中的所有位都应设置为 1B。该字段对集线器上的每个端口都有一个位,如果需要,还会有填充位,以使字段中的总位数是 8 的整数倍。