QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2083|回复: 0

Linux的USB驱动中关于transfer_flags的问题

[复制链接]
发表于 2007-10-16 15:08:01 | 显示全部楼层 |阅读模式
在2.4的kernel里有tx_urb.transfer_flags |= USB_QUEUE_BULK;
2.4的USB-transfer_flags定义:
/*
* urb->transfer_flags:
*/
#define USB_DISABLE_SPD         0x0001
#define URB_SHORT_NOT_OK        USB_DISABLE_SPD
#define USB_ISO_ASAP            0x0002
#define USB_ASYNC_UNLINK        0x0008
#define USB_QUEUE_BULK          0x0010
#define USB_NO_FSBR             0x0020
#define USB_ZERO_PACKET         0x0040  // Finish bulk OUTs always with zero length packet
#define URB_NO_INTERRUPT        0x0080  /* HINT: no non-error interrupt needed */
                                        /* ... less overhead for QUEUE_BULK */
#define USB_TIMEOUT_KILLED      0x1000  // only set by HCD!

但在2.6里的kernel没有这个东东了,要实现相同的功能,用什么宏,或者要做什么修改?
2.6的USB-transfer_flags定义:
/*
* urb->transfer_flags:
*/
#define URB_SHORT_NOT_OK        0x0001  /* report short reads as errors */
#define URB_ISO_ASAP            0x0002  /* iso-only, urb->start_frame ignored */
#define URB_NO_TRANSFER_DMA_MAP 0x0004  /* urb->transfer_dma valid on submit */
#define URB_NO_SETUP_DMA_MAP    0x0008  /* urb->setup_dma valid on submit */
#define URB_ASYNC_UNLINK        0x0010  /* usb_unlink_urb() returns asap */
#define URB_NO_FSBR             0x0020  /* UHCI-specific */
#define URB_ZERO_PACKET         0x0040  /* Finish bulk OUTs with short packet */
#define URB_NO_INTERRUPT        0x0080  /* HINT: no non-error interrupt needed */

[ 本帖最后由 hysc 于 2007-10-16 15:09 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-4-19 11:05 , Processed in 0.115686 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表