tiny4412学习笔记-将uboot、zImage、文件系统烧到emmc中 (转)
http://blog.chinaunix.net/uid-30025978-id-4788683.html
1、首先还是要将u-boot写入SD卡中从SD卡启动。
- 使用读卡器将SD插入电脑中,使用umount卸载u盘, fdisk -l显示其挂载点为 /dev/sdb1
- 切换到/home/bunfly/images/uboot_tiny4412/sd_fuse/tiny4412目录下,执行./sd_fusing.sh /dev/sdb
- 拨动最右边开关选择从SD卡启动。
附加编译过程:
1.进入开发板提供的源码文件包,解压uboot源码包。
cd /home/bunfly/source_code/
tar xf uboot_tiny4412-20130729.tgz
2.进入uboot文件夹,更改uboot中tiny4412的配置文件。将225 中的Tiny4412更改为bunfly。
cd uboot_tiny4412
vim include/configs/tiny4412.h
更改255行为#define CONFIG_SYS_PROMPT "bunfly # "
3. 回到u-boot文件夹,编译u-boot
make tiny4412_config
make
4.进入sd_fuse文件夹 编译
cd sd_fuse
make
5.此时目录/home/bunfly/images/uboot_tiny4412/sd_fuse/tiny4412
再执行./sd_fusing.sh /dev/sdb
OK!
2、将uboot写入emmc,并通过EMMC驱动,不再只用SD卡启动
0: 前奏
mmcinfo 0 : 查看mmc卡信息。0 表示SD卡; 1表示emmc卡,如下图
fdisk -p 0 : 查看mmc卡分区信息

1: 格式化emmc卡 (一般分四个区)
fdisk -c 1 320 809 524 :可以参考前面查看的信息格式化
fatformat mmc 1:1
ext3format mmc 1:2
ext3format mmc 1:3
ext3format mmc 1:4
2: 将bl1.bin, bl2.bin, u-boot.bin, tzsw.bin烧录到eMMC中
emmc open 1 :打开emmc文件
dnw 0x40000000 <--------------> dnw E4412_N.bl1.bin
mmc write 1 0x40000000 0 0x10
dnw 0x40000000 <--------------> dnw bl2.bin
mmc write 1 0x40000000 0x10 0x1C
dnw 0x40000000 <--------------> dnw u-boot.bin
mmc write 1 0x40000000 0x30 0x21D
dnw 0x40000000 <--------------> dnw E4412_tzsw.bin
mmc write 1 0x40000000 0x2c0 0xB8
emmc close 1
bin文件路径 /home/bunfly/images/uboot_tiny4412/sd_fuse/tiny4412
和 /home/bunfly/images/uboot_tiny4412
3: 启动方式拨到emmc启动Uboot就成功
4: 写入Linux镜像
4412开发板端先搭好NFS网络文件系统保证能正常启动:
#set bootargs console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.10:/home/kernel ip=192.168.1.20
#save
开发板: PC端:
fastboot <--------------> fastboot -w (注意:fastboot这个命令是我主机上的命令,如果不能运行要先安装再用 ./fastboot)
fastboot flash kernel zImage (先进入zImage目录/home/bunfly/source_code/linux-3.5/arch/arm/boot)
fastboot reboot
movi read kernel 0 40008000
bootm 40008000
启动linux成功!(此时还是网络文件系统)
5: 写入文件系统

通过nfs挂载网络文件系统后
mount /dev/mmcblk0p3 /mnt
将文件系统拷贝进去,然后解压
cp /rootfs_qtopia_qt4-20131130.tar.gz /mnt
进入mnt目录并解压,将里面的文件mv出来。

设置权限:
chmod 777 /mnt -R
vi etc/init.d/rcS
最后加入:
/sbin/getty -L ttySAC0 115200 vt100
进入uboot设置环境变量
set bootargs console=ttySAC0 root=/dev/mmcblk0p3 rootfstype=ext4 init=linuxrc uhost0=y ctp=2
save
然后重启OK!---到此SD卡和网线都可以拔掉啦。
tiny4412学习笔记-将uboot、zImage、文件系统烧到emmc中 (转)的更多相关文章
- tiny4412学习笔记-将uboot、zImage、文件系统烧到emmc中
1.首先还是要将u-boot写入SD卡中从SD卡启动. 使用读卡器将SD插入电脑中,使用umount卸载u盘, fdisk -l显示其挂载点为 /dev/sdb1 切换到/home/bunfly/im ...
- C#数字图像处理算法学习笔记(一)--C#图像处理的3中方法
C#数字图像处理算法学习笔记(一)--C#图像处理的3中方法 Bitmap类:此类封装了GDI+中的一个位图,次位图有图形图像及其属性的像素数据组成.因此此类是用于处理像素数据定义的图形的对象.该类的 ...
- MVC学习笔记(三)—用EF向数据库中添加数据
1.在EFDemo文件夹中添加Controllers文件夹(用的是上一篇MVC学习笔记(二)—用EF创建数据库中的项目) 2.在Controllers文件夹下添加一个空的控制器(StudentsCon ...
- Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第七章:在Direct3D中绘制(二)
原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第七章:在Direct3D中绘制(二) 代码工程地址: https:/ ...
- Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第六章:在Direct3D中绘制
原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第六章:在Direct3D中绘制 代码工程地址: https://gi ...
- 【Ext.Net学习笔记】01:在ASP.NET WebForm中使用Ext.Net
Ext.NET是基于跨浏览器的ExtJS库和.NET Framework的一套支持ASP.NET AJAX的开源Web控件,包含有丰富的Ajax运用,其前身是Coolite. 下载地址:http:// ...
- 驱动开发学习笔记. 0.02 基于EASYARM-IMX283 烧写uboot和linux系统
驱动开发读书笔记. 0.02 基于EASYARM-IMX283 怎么烧写自己裁剪的linux内核?(非所有arm9通用) 手上有一块tq2440,但是不知道什么原因,没有办法烧boot进norflas ...
- s3c6410学习笔记-将内核zImage、文件系统写到nandflash、屏幕校准
1.之前已经将uboot写到nandflash里面了,接下来将内核zImage.文件系统写到nandflash. 2.编译内核 cd linux-2.6.28_smdk6410 make clean ...
- I.MX6Q(TQIMX6Q/TQE9)学习笔记——内核启动与文件系统挂载
经过前面的移植,u-boot已经有能力启动内核了,本文主要来看下如何通过之前移植的u-boot来启动内核.如果按照前面的文章完成了LTIB 的编译,那么,Linux的内核应该就会出现rpm/BUILD ...
随机推荐
- net 上传视频
[HttpPost] public ActionResult MultiUpload() { System.Web.HttpFileCollectio ...
- Lucas+中国剩余定理 HDOJ 5446 Unknown Treasure
题目传送门 题意:很裸,就是求C (n, m) % (p1 * p2 * p3 * .... * pk) 分析:首先n,m<= 1e18, 要用到Lucas定理求大组合数取模,当然p[]的乘积& ...
- datapatch meet ORA-01422
[现象] datapatch ORA-01422: e [解决方法]sample 1: --step 1:sqlplus /nologconn /as sysdbacreate table regis ...
- 01_C++学习笔记_入门
1.float类型只能表示数字里面的前6位或者前7位.也就是说c++只能保证float类型的数字的前6位是正确的.如果要求的精度更高的话,请使用double和long double. float精度是 ...
- 动手实现 Redux(二):抽离 store 和监控数据变化
上一节 的我们有了 appState 和 dispatch: let appState = { title: { text: 'React.js 小书', color: 'red', }, conte ...
- JAVA Map的使用
学JAVA那么多天了,所以就不写那啥了,哈哈 Map 是一个很实用的东西,它查询的速度也是飞快的.还有很多好的地方, 至于好在哪里,我也说不清. 还是用代码来说吧: import java.util. ...
- [ POI 2017 ] Sabota?
Description 题目链接 Solution 因为一个节点染黑了子树就都被染黑了,所以最后染黑的点集必然是一棵子树. 可以得出的结论是,如果被染黑的节点在节点 \(a\) 的子树中,而 \(a\ ...
- Quartz使用一 通过getJobDataMap传递数据
Quartz定时器使用比较广泛,介绍一点简单的使用 上代码:定义一个Job,执行具体的任务 package org.tonny.quartz; import java.text.SimpleDateF ...
- js数组遍历的常用的几种方法以及差异和性能优化
<script type="text/javascript"> /*对比: 1.map速度比foreach快 2.map会返回一个新数组,不对原数组产生影响,forea ...
- 洛谷 P1216 [USACO1.5]数字三角形 Number Triangles(水题日常)
题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 ...