hysc 发表于 2007-10-16 15:08:01

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

在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 编辑 ]
页: [1]
查看完整版本: Linux的USB驱动中关于transfer_flags的问题