设为首页 加入收藏

TOP

Linux2.6.34.2在TQ6410上的移植详解
2014-11-24 03:03:26 来源: 作者: 【 】 浏览:2
Tags:Linux2.6.34.2 TQ6410 移植 详解

由于Linux2.6.34.2S3C64xx有了一定的支持,所以采用Linux2.6.34.2版本的内核。



一、 移植环境


开发板:天嵌TQ6410—256M nandflash,Kernel:2.6.34.2


编译器:EABI-4.3.2_V0.1


u-bootu-boot-2010.08


二、 源码获得


内核源码到http://www.all.kernel.org/下载;


三、 移植步骤


1.Linux2.6.34.2内核源码放到工作目录文件夹下,并解压。


#tar xzvf linux2.6.34.2.tar.gz –c /
#pwd
/
# cd linux2.6.34.2


2. 修改内核源码根目录下的Makefile文件(CROSS_COMPILE =的值因个人情况而定,其他可以照做,蓝色部分为修改部分。)


#gedit Makefile


......
#SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
# -e s/arm.*/arm/ -e s/sa110/arm/ \
# -e s/s390x/s390/ -e s/parisc64/parisc/ \
# -e s/ppc.*/powerpc/ -e s/mips.*/mips/ )
......


#ARCH = $(SUBARCH)
#CROSS_COMPILE =


ARCH = arm
CROSS_COMPILE = /usr/local/arm/usr/local/arm/4.3.2/bin/arm-none-linux-
gnueabi-


3. 对于平台时钟的修改,可以查看内核顶层目录下的arch/arm/mach-s3c64xx/mach-smdk6410.csmdk6410_mapio()函数中有声明为12000000,而开发板上的外部时钟也是12M所以不用修改。


4. 修改机器码,可以看到在arch/arm/mach-s3c64xx/mach-smdk6410.cMACHINE_START(SMDK6410,”SMDK6410”)是在uboot引导内核时需要对应的机器码。所以在arch/arm/tools/mach-types文件中找到这个SMDK6410对应的机器码并改为888(uboot中是这样设置的)


4. 配置内核,由于开始对s3c6410的内核支持结构不是很了解,所以可以采用默认配置内核。(arch/arm/configs/目录下是一般内核的默认配置)


#pwd


#/linux2.6.34.2


#cp –f arch/arm/configs/s3c6400_defconfig .config


可以使用make menuconfig对刚刚配置的内核根据具体的情况进行修改,开始我没有进行修改直接make zImage,最后在arch/arm/boot/目录下生成zImage镜像文件。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux对ARM的支持(头文件的支持) 下一篇Mini2440串口下载U-Bboot和Kinux ..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Announcing October (2025-12-24 15:18:16)
·MySQL有什么推荐的学 (2025-12-24 15:18:13)
·到底应该用MySQL还是 (2025-12-24 15:18:11)
·进入Linux世界大门的 (2025-12-24 14:51:47)
·Download Linux | Li (2025-12-24 14:51:44)