背景:
阅读新闻
嵌入式系统搭建之二内核移植
[日期:2012-02-12] 来源:Linux社区 作者:timkyle_zhang [字体:]
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
相关阅读:
相关资讯 嵌入式
本文评论 查看全部评论 (0)
尊重网上道德,遵守中华人民共和国的各项有关法律法规 承担一切因您的行为而直接或间接导致的民事或刑事法律责任 本站管理人员有权保留或删除其管辖留言中的任意内容 本站有权在网站内转载或引用您的评论 参与本评论即表明您已经阅读并接受上述条款
评论声明
最新资讯