HcControl 寄存器详解(OHCI 规范)

1. 功能概述

HcControl 是 USB OHCI 主机控制器(HC)的核心控制寄存器,用于配置主机控制器的全局操作模式,包括 USB 总线状态控制、传输调度使能、电源管理等关键功能。


2. 寄存器字段定义

《Open Host Controller Interface Specification for USB》Rev 1.0a

HcControl 是一个 32 位(Dword) 寄存器,主要字段如下:

位域 名称 功能描述
31:11 保留位 必须保持写入时的原始值(Read-Modify-Write)。
10 RWE (Remote Wakeup Enable) 远程唤醒使能
1:允许设备触发远程唤醒。
9 RWC (Remote Wakeup Connected) 远程唤醒连接状态(只读):
1:检测到远程唤醒信号。
8 IR (Interrupt Routing) 中断路由控制
0:标准主机中断(如 PCI INTx#)
1:系统管理中断(SMI)
7:6 HCFS (Host Controller Functional State) 主机控制器状态机
00b:USBRESET(总线复位)
01b:USBRESUME(总线恢复)
10b:USBOPERATIONAL(正常运行)
11b:USBSUSPEND(总线挂起)
5 BLE (Bulk List Enable) 批量传输列表使能
1:启用批量传输调度。
4 CLE (Control List Enable) 控制传输列表使能
1:启用控制传输调度。
3 IE (IsochronousEnable)
2 PLE (Periodic List Enable) 周期性传输列表使能
1:启用中断/等时传输调度。
1:0 CBSR (Control/Bulk Service Ratio) 控制传输与批量传输的调度比例(通常保留默认值)。

3. 核心功能

  1. USB 总线状态控制(HCFS)

    • 通过 HCFS 字段控制 USB 总线的电气状态(复位、挂起、恢复等),直接影响设备枚举和电源管理。
  2. 传输调度使能

    • PLECLEBLE 分别控制三类传输的调度开关:
      • 周期性传输(中断/等时)
      • 控制传输(设备枚举、配置)
      • 批量传输(大容量数据传输)
  3. 中断与唤醒管理

    • IR 选择中断路由路径(SMI 或标准中断),RWE 允许设备唤醒挂起的主机。

中文译名建议

在技术文档中,HcControl 可译为:

主机控制器控制寄存器

或简化为:

控制寄存器


总结

HcControl 是 OHCI 主机控制器的全局控制中枢,驱动开发者通过配置其字段实现 USB 协议栈的基础控制。
正确设置该寄存器是确保 USB 主机功能正常工作的关键步骤。
某些芯片厂商(如 Broadcom、NXP)可能修改寄存器定义以适应特定硬件需求。