1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- #ifndef _SIS_IR_H
- #define _SIS_IR_H
- #include <drv_types.h>
- #define CONTINUE_KEY_HEAD 0
- #define CONTINUE_KEY_START_END 1
- #define CONTINUE_KEY_START 2
- #define CONTINUE_KEY_END 3
- #define CONTINUE_KEY_REPEAT 4
- #define SINGLE_KEY_END 5
- typedef enum {
- Phillips = 0,
- Nec,
- Sony,
- JVC,
- Sharp,
- Sampo,
- Phillips_RC6,
- RCA,
- Toshiba,
- X_SAT,
- Toshiba2,
- NEC_SAMSUNG,
- Konka,
- Panasonic,
- Sharp2,
- Phillips_RC6_6A,
- TC9012,
- Others
- } IR_CODING;
- typedef struct _Message
- {
- UINT8 Protocol;
- UINT8 Address;
- UINT8 Address_;
- UINT8 Command;
- UINT8 ContinueKey;
- }Message, *PMessage;
- typedef struct _IR_NODE
- {
- UINT8 Address;
- UINT8 Address_;
- INT8 Name[20];
- UINT8 Command;
- //UINT8 ContinueKey;
- struct _IR_NODE *next;
- }IR_NODE;
- typedef struct _IR_IOC_IOData
- {
- UINT8 Length;
- Message Databuf[30];
- } IR_IOC_IOData, *IR_IOC_IODataPtr;
- typedef struct _IR_IOC_IORecData
- {
- ULONG msg;
- ULONG tick_ms;
- }IR_IOC_IORecData, *IR_IOC_IORecDataPtr;
- #define SISIR_DEV_FILE "/dev/sisir"
- #define SISIR_DEV_NUM 1 // Max number of device
- #define IR_Auto_Test 1
- // SiS Defined I/O Control Signal
- #define IR_IOC_MAGIC 'z'
- #define IR_IOC_BASE 196
- #define IR_IOC_Get_Data _IOR(IR_IOC_MAGIC, IR_IOC_BASE+0x01, IR_IOC_IOData)
- #define IR_IOC_Get_Protocol _IOR(IR_IOC_MAGIC, IR_IOC_BASE+0x02, IR_CODING)
- #define IR_IOC_ClsAndroid _IOWR(IR_IOC_MAGIC, IR_IOC_BASE+0x03, unsigned int)
- #if IR_Auto_Test
- #define IR_IOC_Set_Data _IOW(IR_IOC_MAGIC, IR_IOC_BASE+0x04, Message)
- #define IR_IOC_EnableIR _IO(IR_IOC_MAGIC, IR_IOC_BASE+0x05)
- #define IR_IOC_DisableIR _IO(IR_IOC_MAGIC, IR_IOC_BASE+0x06)
- #endif
- #define IR_IOC_Get_AndroidData _IOR(IR_IOC_MAGIC, IR_IOC_BASE+0x07, IR_IOC_IOData)
- #define IR_IOC_Get_RecData _IOR(IR_IOC_MAGIC, IR_IOC_BASE+0x07, IR_IOC_IORecData)
- #endif // end of #ifndef _SIS_IR_H
|