【原创】linux内核移植的相关文件

转帖请注明出处:http://hi.csdn.net/lanmanck

 

//做配置文件之前,先找个类似的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

   注:新的版本内核已经不用了,比如2.6.29,在"arch/arm/mach-xxx/Kconfig"直接select即可
4、arch/arm/Kconfig,配置ARCH_XXXX
    添加自己的板子,并且加上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/Kconfig、makefile
  需要配置CONFIG_SERIAL_S3C2410 和 CONFIG_SERIAL_S3C2410_CONSOLE,其中,CONFIG_SERIAL_S3C2410在drivers/serial/makefile 会用到


7、drivers/serial/serial_xxxx.c
    并需要包含头文件:
    include/linux/serial_core.h,这个也要改,改成对应的PORT_XXX


8、添加include/asm/arch-xxx/uncompress.h,提供putc(),供解压打印


9、添加include/asm/arch-xxx/debug-macro.S,提供printascii(),供启动时调试用。

//===========

剩下的就是include/asm-arm/arch-xxxx和arch/arm/mach-xxxx的东西,

总结起来就是定时器、中断、dma、device.c、io,gpio,等,这个可以仿照别的目录做。

 

这是另一个大虾写的移植相关文档:

 

linux移植流水帐

http://blog.chinaunix.net/u1/35351/showart_1869160.html

你可能感兴趣的:(linux,IO,文档,makefile,linux内核,Types)