通過(guò)TX2440A移植文檔總結(jié)出移植驅(qū)動(dòng)的方法
第一種情況:(內(nèi)核已存在要移植的驅(qū)動(dòng))
假如要移植A驅(qū)動(dòng),而且源碼中已存在該驅(qū)動(dòng)源碼,那么移植的一般方法如下:
1、在arch/arm/mach-s3c2440/mach-smdk2440.c的Platform_device結(jié)構(gòu)體中加上A這項(xiàng),如果存在就不用添加。
2、然后做相應(yīng)的修改,如在arch/arm/plat-s3c24xx/devs.c添加相應(yīng)的結(jié)構(gòu)體、修改源碼,有些不用做出相應(yīng)的修改,如RTC就不用修改。
3、最后配置內(nèi)核(make menuconfig)。
第二種情況:(內(nèi)核不存在要移植的驅(qū)動(dòng))
假如要移植B驅(qū)動(dòng),而且源碼中不存在該驅(qū)動(dòng)源碼,那么移植的通用方法如下:
將寫好的B驅(qū)動(dòng)源代碼拷貝到相應(yīng)的源代碼目錄,然后修改所拷貝到目錄中Kconfig文件(即添加一些項(xiàng)使得可以通過(guò)make menuconfig來(lái)添加對(duì)該設(shè)備驅(qū)動(dòng)的支持),然后修改所拷貝到目錄中Makefile文件(添加一些項(xiàng)來(lái)編譯該源碼),最后make menuconfig來(lái)配置。