转帖请注明出处:
//做配置文件之前,先找个类似的cpu,然后make xxx_defconfig
//把驱动全部关掉,内核起来后再慢慢添加自己的驱动。
1、arch/arm/tools/mach_types 定义自己的machtype
2、arch/arm/kernel/irq.c,entry_armv.S 这几个跟中断控制器有关
3、arch/arm/mm/Kconfig
定义我们的芯片对应的cpu类型,使用ARCH_XXX
# ARM926T
config CPU_ARM926T
4、arch/arm/Kconfig
添加自己的板子,并且加上source "arch/arm/mach-xxx/Kconfig"
arch/arm/makefile
#添加我们的板子
machine-$(CONFIG_ARCH_XXXX) := xxxx ,这样系统会在make的时候做连接,比如arch/arm/mach ->arch/arm/mach-xxxx
5、arch/arm/mach-xxx/Kconfig
配置MACH,config后就是CONFIG_MACH_XXXX
config MACH_XXXX
6、drivers/serial/makefile ,需要配置_defconfig的CONFIG_SERIAL_S3C2410之类的CONFIG_SERIAL_S3C2410_CONSOLE
7、drivers/serial/serial_xxxx.c
并需要包含头文件:
include/linux/serial_core.h,这个也要改,改成对应的PORT_XXX
8、drivers/serial/Kconfig
写上config SERIAL_S3C会产生CONFIG_SERIAL_S3C,在drivers/serial/makefile 会用到
//===========
剩下的就是include/asm-arm/arch-xxxx和arch/arm/mach-xxxx的东西,
总结起来就是定时器、中断、dma、device.c、io,gpio,等,这个可以仿照别的目录做。
这是另一个大虾写的移植相关文档:
linux移植流水帐
阅读(1562) | 评论(0) | 转发(1) |