USB设备的驱动状态
2012-10-30 15:10
851 查看
C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include\cfg.h
//
// Device Instance status flags, returned by call to CM_Get_DevInst_Status
//
#define DN_ROOT_ENUMERATED (0x00000001) // Was enumerated by ROOT
#define DN_DRIVER_LOADED (0x00000002) // Has Register_Device_Driver
#define DN_ENUM_LOADED (0x00000004) // Has Register_Enumerator
#define DN_STARTED (0x00000008) // Is currently configured
#define DN_MANUAL (0x00000010) // Manually installed
#define DN_NEED_TO_ENUM (0x00000020) // May need reenumeration
#define DN_NOT_FIRST_TIME (0x00000040) // Has received a config
#define DN_HARDWARE_ENUM (0x00000080) // Enum generates hardware ID
#define DN_LIAR (0x00000100) // Lied about can reconfig once
#define DN_HAS_MARK (0x00000200) // Not CM_Create_DevInst lately
#define DN_HAS_PROBLEM (0x00000400) // Need device installer
#define DN_FILTERED (0x00000800) // Is filtered
#define DN_MOVED (0x00001000) // Has been moved
#define DN_DISABLEABLE (0x00002000) // Can be disabled
#define DN_REMOVABLE (0x00004000) // Can be removed
#define DN_PRIVATE_PROBLEM (0x00008000) // Has a private problem
#define DN_MF_PARENT (0x00010000) // Multi function parent
#define DN_MF_CHILD (0x00020000) // Multi function child
#define DN_WILL_BE_REMOVED (0x00040000) // DevInst is being removed
//
// Windows 4 OPK2 Flags
//
#define DN_NOT_FIRST_TIMEE 0x00080000 // S: Has received a config enumerate
#define DN_STOP_FREE_RES 0x00100000 // S: When child is stopped, free resources
#define DN_REBAL_CANDIDATE 0x00200000 // S: Don't skip during rebalance
#define DN_BAD_PARTIAL 0x00400000 // S: This devnode's log_confs do not have same resources
#define DN_NT_ENUMERATOR 0x00800000 // S: This devnode's is an NT enumerator
#define DN_NT_DRIVER 0x01000000 // S: This devnode's is an NT driver
//
// Windows 4.1 Flags
//
#define DN_NEEDS_LOCKING 0x02000000 // S: Devnode need lock resume processing
#define DN_ARM_WAKEUP 0x04000000 // S: Devnode can be the wakeup device
#define DN_APM_ENUMERATOR 0x08000000 // S: APM aware enumerator
#define DN_APM_DRIVER 0x10000000 // S: APM aware driver
#define DN_SILENT_INSTALL 0x20000000 // S: Silent install
#define DN_NO_SHOW_IN_DM 0x40000000 // S: No show in device manager
#define DN_BOOT_LOG_PROB 0x80000000 // S: Had a problem during preassignment of boot log conf
0x180600A=1 1000 0000 0110 0000 0000 1010b
DN_DRIVER_LOADED
DN_STARTED
DN_DISABLEABLE
DN_REMOVABLE
DN_NT_ENUMERATOR
DN_NT_DRIVER
海信T92(Android2.2.2)主设备
设备范例ID:USB\VID_18D1&PID_D00D\0123456789ABCDEF
硬件ID:USB\Vid_18d1&Pid_d00d&Rev_0226
兼容ID:USB\Class_ff&SubClass_42&Prot_01
D:\pcsuite\bin\Adb>adb devices
List of devices attached
0123456789ABCDEF device
三星GT-I9088(Android2.1-update1)多接口
设备范例ID:USB\VID_04E8&PID_681C&MI_03\1000FC03F9A4_03
硬件ID:USB\Vid_04e8&Pid_681c&Rev_0223&Mi_03&Os_NT
兼容ID:USB\Class_ff&SubClass_42&Prot_01
D:\pcsuite\bin\Adb>adb devices
List of devices attached
1000fc03f9a4 device
华为C8500(Android2.1-update1)多接口(CD盘)
设备范例ID:USB\VID_12D1&PID_1035&MI_03\7&334F04E&1&0003
硬件ID:USB\Vid_12d1&Pid_1035&Rev_0100&MI_03
兼容ID:USB\Class_ff&SubClass_42&Prot_01
D:\pcsuite\bin\Adb>adb devices
List of devices attached
? device
它们的DevNode标识:
DN_DRIVER_LOADED
DN_STARTED
DN_DISABLEABLE
DN_REMOVABLE
DN_NT_ENUMERATOR
DN_NT_DRIVER
设备状态可以通过函数CM_Get_DevNode_Status()获得!
//
// Device Instance status flags, returned by call to CM_Get_DevInst_Status
//
#define DN_ROOT_ENUMERATED (0x00000001) // Was enumerated by ROOT
#define DN_DRIVER_LOADED (0x00000002) // Has Register_Device_Driver
#define DN_ENUM_LOADED (0x00000004) // Has Register_Enumerator
#define DN_STARTED (0x00000008) // Is currently configured
#define DN_MANUAL (0x00000010) // Manually installed
#define DN_NEED_TO_ENUM (0x00000020) // May need reenumeration
#define DN_NOT_FIRST_TIME (0x00000040) // Has received a config
#define DN_HARDWARE_ENUM (0x00000080) // Enum generates hardware ID
#define DN_LIAR (0x00000100) // Lied about can reconfig once
#define DN_HAS_MARK (0x00000200) // Not CM_Create_DevInst lately
#define DN_HAS_PROBLEM (0x00000400) // Need device installer
#define DN_FILTERED (0x00000800) // Is filtered
#define DN_MOVED (0x00001000) // Has been moved
#define DN_DISABLEABLE (0x00002000) // Can be disabled
#define DN_REMOVABLE (0x00004000) // Can be removed
#define DN_PRIVATE_PROBLEM (0x00008000) // Has a private problem
#define DN_MF_PARENT (0x00010000) // Multi function parent
#define DN_MF_CHILD (0x00020000) // Multi function child
#define DN_WILL_BE_REMOVED (0x00040000) // DevInst is being removed
//
// Windows 4 OPK2 Flags
//
#define DN_NOT_FIRST_TIMEE 0x00080000 // S: Has received a config enumerate
#define DN_STOP_FREE_RES 0x00100000 // S: When child is stopped, free resources
#define DN_REBAL_CANDIDATE 0x00200000 // S: Don't skip during rebalance
#define DN_BAD_PARTIAL 0x00400000 // S: This devnode's log_confs do not have same resources
#define DN_NT_ENUMERATOR 0x00800000 // S: This devnode's is an NT enumerator
#define DN_NT_DRIVER 0x01000000 // S: This devnode's is an NT driver
//
// Windows 4.1 Flags
//
#define DN_NEEDS_LOCKING 0x02000000 // S: Devnode need lock resume processing
#define DN_ARM_WAKEUP 0x04000000 // S: Devnode can be the wakeup device
#define DN_APM_ENUMERATOR 0x08000000 // S: APM aware enumerator
#define DN_APM_DRIVER 0x10000000 // S: APM aware driver
#define DN_SILENT_INSTALL 0x20000000 // S: Silent install
#define DN_NO_SHOW_IN_DM 0x40000000 // S: No show in device manager
#define DN_BOOT_LOG_PROB 0x80000000 // S: Had a problem during preassignment of boot log conf
0x180600A=1 1000 0000 0110 0000 0000 1010b
DN_DRIVER_LOADED
DN_STARTED
DN_DISABLEABLE
DN_REMOVABLE
DN_NT_ENUMERATOR
DN_NT_DRIVER
海信T92(Android2.2.2)主设备
设备范例ID:USB\VID_18D1&PID_D00D\0123456789ABCDEF
硬件ID:USB\Vid_18d1&Pid_d00d&Rev_0226
兼容ID:USB\Class_ff&SubClass_42&Prot_01
D:\pcsuite\bin\Adb>adb devices
List of devices attached
0123456789ABCDEF device
三星GT-I9088(Android2.1-update1)多接口
设备范例ID:USB\VID_04E8&PID_681C&MI_03\1000FC03F9A4_03
硬件ID:USB\Vid_04e8&Pid_681c&Rev_0223&Mi_03&Os_NT
兼容ID:USB\Class_ff&SubClass_42&Prot_01
D:\pcsuite\bin\Adb>adb devices
List of devices attached
1000fc03f9a4 device
华为C8500(Android2.1-update1)多接口(CD盘)
设备范例ID:USB\VID_12D1&PID_1035&MI_03\7&334F04E&1&0003
硬件ID:USB\Vid_12d1&Pid_1035&Rev_0100&MI_03
兼容ID:USB\Class_ff&SubClass_42&Prot_01
D:\pcsuite\bin\Adb>adb devices
List of devices attached
? device
它们的DevNode标识:
DN_DRIVER_LOADED
DN_STARTED
DN_DISABLEABLE
DN_REMOVABLE
DN_NT_ENUMERATOR
DN_NT_DRIVER
设备状态可以通过函数CM_Get_DevNode_Status()获得!
相关文章推荐
- Linux下的硬件驱动——USB设备(转)…
- USB gadget设备驱动解析
- Linux下的硬件驱动——USB设备(上)
- Windows CE下USB设备驱动开发的一些基础知识
- Linux 下 usb 设备驱动模型
- USB gadget设备驱动解析(3)
- linux ------ USB设备驱动
- [USB] USB 设备驱动的移植
- linux设备驱动之USB主机控制器驱动分析
- Linux下的硬件驱动——USB设备(下)&& Linux下PCI设备驱动程序开发
- 《Linux总线、设备与驱动》USB设备发现机制
- iphone4s连接电脑无法识别iphone设备:Apple Mobile Device USB Driver驱动安装失败显示黄色叹号解决办法
- USB设备驱动开发之远程访问USB设备( 三 虚拟USB控制器和根集线器)
- USB gadget设备驱动解析(1)
- Linux下的硬件驱动——USB设备(下)(驱动开发部分)
- USB设备驱动之鼠标
- 通用USB设备驱动源码分析
- usb设备驱动描述,王明学learn
- 基于视窗系统 CE的USB设备驱动程式设计
- Usb设备驱动2:root hub守护进程1