首页 > 基于OHCI的USB主机 —— USB设备常量定义

基于OHCI的USB主机 —— USB设备常量定义

USB设备枚举过程中使用到的常量定义如下:
/*-------------------------------------------------------------------------

 * Standard Chapter 9 definition

 *-------------------------------------------------------------------------

 */

#define GET_STATUS      0x00                                                       

#define CLEAR_FEATURE   0x01

#define SET_FEATURE     0x03

#define SET_ADDRESS     0x05

#define GET_DESCRIPTOR  0x06

#define SET_DESCRIPTOR  0x07

#define GET_CONFIG      0x08

#define SET_CONFIG      0x09

#define GET_INTERFACE   0x0a

#define SET_INTERFACE   0x0b

#define SYNCH_FRAME     0x0c

 

#define DESC_DEVICE          0x0100

#define DESC_CONFIGURATION   0x0200

#define DESC_STRING          0x0300

#define DESC_INTERFACE       0x0400

#define DESC_ENDPOINT        0x0500

 

#define USB_BUF_SIZE 512

 

#define ENUM_DEV_IDLE              0

#define ENUM_DEV_SEND_DEV_DESC_0   1

#define ENUM_DEV_SET_ADDRESS       2

#define ENUM_DEV_GET_DESC_CFG      3

#define ENUM_DEV_FILL_DESC_DEV     4

#define ENUM_DEV_SEND_DEV_DESC_1   5

#define ENUM_DEV_FILL_DESC_SET     6

#define ENUM_DEV_SET_INTERFACE     7

#define ENUM_DEV_SET_CONFIGURATION 8

#define ENUM_DEV_GET_CONFIGURATION 9

#define ENUM_DEV_CHECK_CONFIG      10

#define ENUM_DEV_CHECK_INTERFACE   11

#define ENUM_DEV_WAIT_CMD_OVER     12

#define ENUM_DEV_WAIT_RESET_OVER   13

#define ENUM_DEV_GET_MAX_LUN       14

#define ENUM_DEV_CHECK_MAX_LUN     15

#define ENUM_DEV_RESET_ING         16

#define ENUM_DEV_IDLE_DALAY        17

#define ENUM_DEV_OVER              100

 

#define USB_CMD_OVER            100

 

#define DEV_ERROR_TD            1

#define DEV_ERROR_CONFIGURATION    2

#define DEV_ERROR_RESET_TIME_OUT   3

 

#define USB_DEV_ENUM_OK            1

#define USB_DEV_NOT_CONNECTED      2

 

#define CC_STALL                4

 

#define DESC_TYPE_DEVICE        1

#define DESC_TYPE_CONFIG        2

#define DESC_TYPE_INTERFACE        3

#define DESC_TYPE_END_POINT        4

 

typedef struct _ENUM_USB_DEV

{

    unsigned char state;

    unsigned char newState;

    unsigned char oldState;

    //unsigned char count;

    unsigned char errReason;

    //unsigned int delay;

}ENUM_USB_DEV;

更多相关:

  • 下面是以道友问的问题,这里简单做分析,仅供交流学习用,有什么不对之处还请各位大虾指正。鄙人邮箱为:[email protected]. 欢迎交流!!1: 最主要的就是路由问题。我用06协议栈自带的例子程序sampleapp修改了一下,另协调器以网络地址的形式向终端发送数据,中间加入路由转发数据。拿 到室外试验了一下,结果路由根本不起...

  • 题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=2819 题意:给一张n*n的01矩阵,可以任意交换其中的行或者列,问是否可以交换出来一个对角线上都是1的矩阵。 按行列号建图,如果(i,j)为1的话,则i和j就有一条边。匹配出的结果可以认为如何交换使得行列相等,输出结果要注意不...

  • U-Boot 实验指导书 一、获得U-Boot 源码 我们的光盘中提供了直接从U-Boot的官方网站下载的源代码,版本是1.3.2,放在src目录下。将u-boot-1.3.2.tar.bz2拷贝了工作目录下,解压源码包: [root@localhost root]# mkdir 2410-s [root@localhost roo...

  •   在config/index.js找到dev:{}里面的autoOpenBrowser: 设置为true,重新npm run dev一次就自动弹出浏览器页面啦!  ...

  • 工作中需要用到批量修改文件用户和组的情况,特记录以下便捷用法。 1.批量修改多个文件的user和group chown ats:ats /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh /dev/sdi /dev/sdj /dev/sdk /dev/sdl /dev/sdm...

  • ceph环境:12.2.1 使用古老的ceph-disk工具部署osd,仅仅prepare过程中就出现如上所示问题 Device is in use by a device-mapper mapping md127 解决方法如下: 由于device-mapper为系统自己的磁盘映射器,此时检查系统是否有逻辑卷 pvs lvs v...

  • 环境: ceph L版本12.2.1升级到12.2.12 这个问题是由于升级后进行12.2.12环境中的使用ceph-disk 进行osd部署时出现如下问题,执行命令 ceph-disk -v prepare /dev/sdb;ceph-disk -v activate /dev/sdb1 出现如下问题,出现这个问题之前我的磁盘用作...

  • 划分磁盘分区 sgdisk -n 1:+2G:+50G /dev/sda 划分磁盘分区,一号分区划分为50G,同时预留2G的空间 磁盘格式化 sgdisk -z -og /dev/sda 查看分区详情 sgdisk -i 1 /dev/hda查看hda第一分区的详情信息 [root@node3 ~]# sgdisk...