-// #define init_MUTEX(sem) (*sem=MUTEX)
-// #define DECLARE_MUTEX(name) struct semaphore name=MUTEX
-// #endif /* 2.2.19 */
-
-// #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,0)) && !defined(DECLARE_TASKLET)
-// #define tasklet_struct tq_struct
-/* #define DECLARE_TASKLET(_name, _func, _data) \
- struct tq_struct _name = { sync: 0, routine: _func, data: (void*)_data }*/
-//
-// /* void tasklet_init(struct tasklet_struct *t, void (*func)(unsigned long), unsigned long data); */
-/* #define tasklet_init(_tasklet, _func, _data) \
- do{ \
- (_tasklet)->sync=0; \
- (_tasklet)->routine=_func; \
- (_tasklet)->data=(void*)_data; \
- }while(0)*/
-//
-// /* void tasklet_schedule(struct tasklet_struct *t) */
-/* #define tasklet_schedule(_tasklet) \
- do{ \
- queue_task(_tasklet,&tq_immediate); \
- mark_bh(IMMEDIATE_BH); \
- }while(0)*/
-//
-// /* void tasklet_kill(struct tasklet_struct *t); */
-/* #define tasklet_kill(_tasklet) \
- synchronize_irq()*/
-//
-// #endif /* 2.4.0 */
-
-
-// #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,7)) || (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
-
-#define MINOR_NR \
- (MINOR(file->f_dentry->d_inode->i_rdev))
-
-// #else /* Linux kernel < 2.5.7 or >= 2.6.0 */
-//
-/*#define MINOR_NR \
- (minor(file->f_dentry->d_inode->i_rdev))*/
-//
-// #endif /* Linux kernel < 2.5.7 or >= 2.6.0 */
-
-// #ifndef CAN_WITH_RTL
-// #if ((LINUX_VERSION_CODE < KERNEL_VERSION(2,5,68)) && !defined(IRQ_RETVAL))
- typedef void can_irqreturn_t;
- #define CAN_IRQ_NONE
- #define CAN_IRQ_HANDLED
- #define CAN_IRQ_RETVAL(x)
-// #else /* <=2.5.67 */
-// typedef irqreturn_t can_irqreturn_t;
-// #define CAN_IRQ_NONE IRQ_NONE
-// #define CAN_IRQ_HANDLED IRQ_HANDLED
-// #define CAN_IRQ_RETVAL IRQ_RETVAL
-// #endif /* <=2.5.67 */
-// #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19))
-/* #define CAN_IRQ_HANDLER_ARGS(irq_number, dev_id) \
- int irq_number, void *dev_id, struct pt_regs *regs*/
-// #else /* < 2.6.19 */
- #define CAN_IRQ_HANDLER_ARGS(irq_number, dev_id) \