CS8900移植到此版本的内核时,需要修改多处源码。
1、加入头文件#include ,不然在cs8900_cleanup()函数中使用unregister_chrdev时,会提示未声明;
2、在include/asm-arm/arch-s3c2410/下新建smdk2410.h,并且在cs8900.c中包含。内容如下:
[root@Sure linux-2.6.27.3]# vim include/asm-arm/plat-s3c24xx/smdk2410.h
1 //++++>
2 #define pSMDK2410_ETH_IO __phys_to_pfn(0x19000000) 3 #define vSMDK2410_ETH_IO 0xe0000000 4 #define SMDK2410_ETH_IRQ __IRQ_EINT9 //以上和之前老版本移植时一样
5 //以下新加的内容,此版本内核没有定义的一些宏,我是从老版本内核的irq.h文件中弄过来的
6 #define __IRQT_FALEDGE IRQ_TYPE_EDGE_FALLING 7 #define __IRQT_RISEDGE IRQ_TYPE_EDGE_RISING 8 #define __IRQT_LOWLVL IRQ_TYPE_LEVEL_LOW 9 #define __IRQT_HIGHLVL IRQ_TYPE_LEVEL_HIGH 10 #define IRQT_NOEDGE (0) 11 #define IRQT_RISING (__IRQT_RISEDGE) 12 #define IRQT_FALLING (__IRQT_FALEDGE) 13 #define IRQT_BOTHEDGE (__IRQT_RISEDGE|__IRQT_FALEDGE) 14 #define IRQT_LOW (__IRQT_LOWLVL) 15 #define IRQT_HIGH (__IRQT_HIGHLVL) 16 #define IRQT_PROBE IRQ_TYPE_PROBE 17 //<++++ Jacky_Xu @ 2008.10.25
18
|
3、添加或修改一些头文件的路径名,如下:
70 //#include "asm/arch-s3c2410/regs-irq.h"
71 #include <mach/regs-irq.h> 72 //#include "asm/arch/regs-mem.h"
73 #include <mach/regs-mem.h>
|
阅读(397) | 评论(0) | 转发(0) |