12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #ifndef __F_CCID_H
- #define __F_CCID_H
- #define PROTOCOL_TO 0x01
- #define PROTOCOL_T1 0x02
- #define ABDATA_SIZE 512
- #define CCID_FEATURES_NADA 0x00000000
- #define CCID_FEATURES_AUTO_PCONF 0x00000002
- #define CCID_FEATURES_AUTO_ACTIV 0x00000004
- #define CCID_FEATURES_AUTO_VOLT 0x00000008
- #define CCID_FEATURES_AUTO_CLOCK 0x00000010
- #define CCID_FEATURES_AUTO_BAUD 0x00000020
- #define CCID_FEATURES_AUTO_PNEGO 0x00000040
- #define CCID_FEATURES_AUTO_PPS 0x00000080
- #define CCID_FEATURES_ICCSTOP 0x00000100
- #define CCID_FEATURES_NAD 0x00000200
- #define CCID_FEATURES_AUTO_IFSD 0x00000400
- #define CCID_FEATURES_EXC_TPDU 0x00010000
- #define CCID_FEATURES_EXC_SAPDU 0x00020000
- #define CCID_FEATURES_EXC_APDU 0x00040000
- #define CCID_FEATURES_WAKEUP 0x00100000
- #define CCID_NOTIFY_CARD _IOW('C', 1, struct usb_ccid_notification)
- #define CCID_NOTIFY_HWERROR _IOW('C', 2, struct usb_ccid_notification)
- #define CCID_READ_DTR _IOR('C', 3, int)
- struct usb_ccid_notification {
- __u8 buf[4];
- } __packed;
- struct ccid_bulk_in_header {
- __u8 bMessageType;
- __u32 wLength;
- __u8 bSlot;
- __u8 bSeq;
- __u8 bStatus;
- __u8 bError;
- __u8 bSpecific;
- __u8 abData[ABDATA_SIZE];
- __u8 bSizeToSend;
- } __packed;
- struct ccid_bulk_out_header {
- __u8 bMessageType;
- __u32 wLength;
- __u8 bSlot;
- __u8 bSeq;
- __u8 bSpecific_0;
- __u8 bSpecific_1;
- __u8 bSpecific_2;
- __u8 APDU[ABDATA_SIZE];
- } __packed;
- #endif
|