linux 内核移植arm11,嵌入式系统搭建之二内核移植

1. 制作内核

假设 pwd 得到 /timkyle-dev/techer/arm11-resources/

a.解压内核包

#tar xf linux-2.6.28.tar.bz2

得到linux-2.6.28_smdk6410文件夹

b.更改配置文件

#cd linux-2.6.28_smdk6410

#cp smdk6410_config .config

c.配置内核

#make menuconfig

/device drivers

/Graphics support

/Support for frame buffer devices

/ S3C Framebuffer Support

/Multimedia devices

/Video capture adapters

d.修改Makefile

第193行架构改为 ARCH            := arm

第198行交叉编译工具改为 CROSS_COMPILE   := arm-none-linux-gnueabi

e.编译内核

#make

编译完后内核镜像在arch/arm/boot/zImage

f.把u-boot/tools/mkimage 复制到/usr/local/bin

#cp ../u-boot-1.1.6_smdk6410/tools/mkimage /usr/local/bin/

g.进内核的arch/arm/boot/目录

#cd arch/arm/boot/

h.制作内核镜像并放到tftpboot目录

#mkimage -A arm -O linux -T kernel -C none -a 0x50008000 -e 0x50008040 -n "timkyle" -d zImage /tftpboot/uImage

显示信息如下

Image Name:   timkyle

Created:      Thu Feb  9 21:32:55 2012

Image Type:   ARM Linux Kernel Image (uncompressed)

Data Size:    2067316 Bytes = 2018.86 kB = 1.97 MB

Load Address: 0x50008000

Entry Point:  0x50008040

2. 通过tftp下载内核镜像

a.下载内核镜像

$tftp 0x50008000 uImage

b.试启动内核

$bootm 0x50008000

3. 把内核镜像烧写到nand上

a.复位开发板,进入u-boot的命令状态运行

b.下载内核镜像

$tftp 0x50008000 uImage

c.烧写内核镜像到nandflash上

先擦除nandflash从地址0x100000开始的0x200000大小空间

$nand erase 0x100000 0x200000

把内存地址0x50008000处的内容写到nandflash地址0x100000处,写0x200000大小

$nand write 0x50008000 0x100000 0x200000

d.设置开机从tftp下载内核启动,并保存配置

$setenv boottftp "tftp 0x50008000 uImage;bootm 0x50008000"

$saveenv

e.设置开机从nandflash读取内核启动,并保存配置

setenv bootnand "nand read 0x50008000 0x100000 0x200000;bootm 0x50008000"

配置u-boot启动后自动执行的命令bootcmd

$setenv bootcmd $bootnand

$saveenv

相关阅读:

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值