本站的1位用户
加入于2021-05-27
B站搜索 站长漫谈 看视频。
pnpon内核开发网,USB中文网
站长
    本文严格遵循USB 2.0规范,结合驱动实操逻辑,梳理IRP_MN_WAIT_WAKE下发、挂起、完成全流程,补充USB高速设备唤醒细节,明确各环节角色与关键操作,为驱动调试提供精准参考。一、核心概念铺垫IRP_MN_WAIT_WAKE:设备级电源管理IRP。作用是“布防”单设备的远程唤醒能力,仅......
    阅读数:0点赞数:02026-05-12 14:49:52
    状态位ack:ClearFeatureIoInvalidateDevice Relations其他动作PORT_STATUS_CONNECTFEATURE_C_PORT_CONNECT✓删除/更新 PDOPORT_STATUS_RESETFEATURE_C_POR......
    阅读数:0点赞数:02026-05-11 12:20:34
    一、流程概述USB 集线器驱动通过中断传输机制监控 Hub 和端口状态变化。当检测到状态变化时,驱动会根据变化类型执行相应的处理逻辑,包括清除状态位、触发 PnP 设备重新枚举等操作。USB 集线器状态信息上报 https://www.usbzh.com/article/detail-1631.......
    阅读数:0点赞数:02026-05-11 11:25:27
    实际在抓包中有3次的上报,因为前2次都有PORT_RESETGetHubPort:https://www.usbzh.com/article/detail-1162.html第一次中断请求返回的值是0x08,根据USB集线器类请求,0x08指示端口3有变化。GetPortStatus返回的值为 0......
    阅读数:0点赞数:02026-05-09 15:45:41
    usbflags简介usbflags 是一个注册表路径前缀,用于存储特定 USB 设备的配置标志。其注册表路径为:计算机HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlusbflags在该路径下,可以创建如下的键值 swprintf(b......
    阅读数:0点赞数:02026-05-09 10:31:10
    只要是USB设备,都会使用09请求实现SetConfiguration配置句柄当URB_FUNCTION_SELECT_CONFIGURATION的URB执行完成后,需要保存配置句柄 DeviceExtension->ConfigurationHandle = Urb->UrbSel......
    阅读数:0点赞数:02026-05-08 16:26:21
    Windows驱动中,设备的初始化或者启动是由IRP_MN_START_DEVICE的回调实现的。USB根集线器的初始化过程如下:1.获取根集线器设备描述符USBH_GetDeviceDescriptor2.获取根集线器配置描述符USBH_GetConfigurationDescriptor3.获......
    阅读数:0点赞数:02026-05-08 14:44:05
    设备描述符USB集线器也是USB类设备,所是具有USB描述符的。USB集线器的描述符在USBtreeviewe中并未显示,但并不代表不存在。USB集线器的设备描述符由USB主机控制器提供,但USB根集线器FDO需要通过下发标准的URB请求到EHCI提供的PDO上来获取USB设备描述符,所以这个URB......
    阅读数:0点赞数:02026-05-08 12:03:03
    IOCTL 名称功能描述是否必须说明IOCTL_USB_GET_NODE_INFORMATION获取 Hub 节点的基本信息,包括 Hub 类型和描述符数据必须返回 USB_NODE_INFORMATION 结构,标识设备为 Hub 类型并包含 Hub 描述符IOC......
    阅读数:0点赞数:02026-05-08 10:56:34
    USB2.0 集线器驱动是 Windows XP 操作系统中负责管理 USB 集线器设备的核心组件,基于 Windows Driver Model (WDM) 架构实现。该驱动为 USB 设备提供即插即用支持、电源管理、复合设备处理等关键功能,是 USB 子系统的重要组成部分。一、多层次设备管理架......
    阅读数:0点赞数:02026-05-08 10:12:15
    usbport.sys 将USB主机控制器和根集线器硬件抽象出来,提供统一的软件接口,是类驱动.usbehci.sys 是USB主机控制器的硬件部分,是mini小端口驱动usbechci.sys和usbehci.sys组成完整的usbechi 功能FDO驱动usbport.sys 是USB根集线器的......
    阅读数:0点赞数:02026-05-07 22:02:35
    在 USB 主机控制器架构中,根集线器(Root Hub)作为主机控制器内部集成的虚拟集线器,其硬件标识符(HW ID)的生成机制与主机控制器的 PCI 配置空间直接关联。本文档详细阐述根集线器 VID、PID 及 REV 的来源及其对应的硬件 ID 生成规则。USB根集线器无兼容IDS(Bus......
    阅读数:0点赞数:02026-05-07 21:38:37
    USB有四种传输,所以有四种类型的端点。传输类型NEVERHALTForceFastIso/ForceDoubleBuffer控制传输控制传输使用端点0,用于设备枚举和控制命令,必须始终可用,所以NEVERHALT同步传输实时传输,不允许暂停(暂停会导致数据丢失),所......
    阅读数:0点赞数:02026-05-07 12:11:39
    在USB主机控制器中,需要计算端点的开销。USB传输分为四种类型,其中控制传输是按需传输,而Bulk传输是有空闲时传输,所以在统计带宽开销时,不统计它们,只统计同步传输和中断传输。USB低速为1.5Mbps,全速为12Mbps,全速是低速的8倍,所以对于支持USB1.1设备来说,是以全速的角度来统......
    阅读数:0点赞数:02026-05-06 17:52:44
    IPG = Inter-Packet Gap(包间间隔),是USB协议里两个数据包之间必须保留的空闲时间/间隔字节,属于总线传输的强制开销,不是数据 payload。1. 作用(为什么必须有IPG)信号恢复:让收发器在两个包之间稳定电平、避免码间干扰(高速/全速都需要)。总线反转:双向传输时(如......
    阅读数:0点赞数:02026-05-06 17:40:57