主题 : (更新)U-boot for Tiny4412源代码,友善之臂提供 复制链接 | 浏览器收藏 | 打印
级别: 总版主
UID: 45585
精华: 3
发帖: 628
金钱: 3375 两
威望: 675 点
贡献值: 3 点
综合积分: 1316 分
注册时间: 2011-05-06
最后登录: 2018-10-18
楼主  发表于: 2013-07-30 17:44

 (更新)U-boot for Tiny4412源代码,友善之臂提供

管理提醒: 本帖被 xoom 设置为精华(2013-07-30)
说明:本u-boot源代码由三星原厂提供,并由友善之臂修改移植,以适用于Tiny4412、Super4412和NanoPC-T1等开发板平台。
仅供嵌入式爱好者学习研究之用,友善之臂不对此提供任何技术支持和维护。


-----------------------------------------------------
1. Build uboot

a) 安装好toolchain (arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz)并设置好
   环境变量PATH,保证可以正常使用。

b) 使用git从github clone源代码,或解压 uboot_tiny4412-20130729.tgz
   tar xzf uboot_tiny4412-20130729.tgz

c) 配置 uboot 并编译
   cd uboot_tiny4412
   make tiny4412_config
   make

d) 编译 用于生成bl2 的工具
   make -C sd_fuse
   或者
   cd sd_fuse; make


-----------------------------------------------------
2. 制作启动 Tiny4412 的SD卡

a) 先准备一张4G或以上的SDHC卡
   注意:该卡的已有数据将会被破坏,因此请先对SD卡上的数据进行备份。

b) fusing SD card
   假设SD卡已被PC Linux识别为/dev/sdb, 以root用户运行以下命令即可:
   cd sd_fuse/tiny4412
   ./sd_fusing.sh /dev/sdb


-----------------------------------------------------
3. 使用SD卡启动 Tiny4412 并烧写Android

a) 将已经制作好的SD卡插到 Tiny4412 板上,拨动S2切换到SDBOOT,同时连接
   串口线到PC且假设已经准备好。

b) 开发板加电,然后在串口控制台(如minicom),按任意键进入uboot 命令行模式

c) 对SD卡进行分区
   输入以下uboot命令即可对SD卡进行分区:
   fdisk -c 0 320 806 518
   重新分区后,可重新格式化FAT分区
   fatformat mmc 0:1

d) 进入fastboot模式以烧写Android
   使用USB线连接Tiny4412的MICRO_USB口到PC,然后输入以下uboot命令:
   fastboot

e) 烧写 Android 到SD卡
   首先请准备好Android image,包括: zImage, ramdisk-u.img, system.img
   在PC端输入以下命令进行烧写:
   fastboot flash kernel zImage              (烧写kernel)
  
fastboot -w                               (格式化userdata和cache)
  
fastboot flash ramdisk ramdisk-u.img      (烧写ramdisk)
  
fastboot flash system system.img          (烧写system)

f) 也可以在PC端通过fastboot烧写uboot到SD卡
   先手动生成bl2.bin
   cd sd_fuse/tiny4412
   ../mkbl2 ../../u-boot.bin bl2.bin 14336

   然后输入以下命令:  
   fastboot flash fwbl1 E4412_N.bl1.bin
  
fastboot flash bl2 bl2.bin
  
fastboot flash bootloader ../../u-boot.bin

   fastboot flash tzsw E4412_tzsw.bin


-----------------------------------------------------
4. 使用SD卡启动 Android

a) 如果是使用HD700,则烧写完成后直接重启Tiny4412 即可自动启动 Android

b) 如果是使用S700,则需要在uboot上设置kernel命令行参数:
   setenv bootargs console=ttySAC0,115200n8 androidboot.console=ttySAC0 lcd=S700
   saveenv
   然后重启Tiny4412即可。

下载地址:(为了增加本论坛的人气,请回复下载)
本部分内容设定了隐藏,需要回复后才能看到
[ 此帖被qq2440在2015-10-31 15:37重新编辑 ]
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2013-07-30 18:39
这个一定要支持,谢谢!
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
2楼  发表于: 2013-10-04 06:26

 回 123楼(minamo) 的帖子

我试过,你遇到什么问题了吗?
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
3楼  发表于: 2013-10-04 17:57

 回 125楼(minamo) 的帖子

内核无法引导有很多原因,建议你动手之前先搞清楚以免做无用功。另外,从

## Transferring control to NetBSD stage-2 loader (at address 40008000) ...

看,似乎解析uImage中的OS栏位出了问题,走到了common/cmd_bootm.c里的do_bootm_netbsd()函数里。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
4楼  发表于: 2013-12-04 14:24

 回 210楼(eshing) 的帖子


b) fusing SD card
   假设SD卡已被PC Linux识别为/dev/sdb, 以root用户运行以下命令即可:
   cd sd_fuse/tiny4412
   ./sd_fusing.sh /dev/sdb

执行过上面的步骤后,你会在sd_fuse/tiny4412看到生成的bl2.bin
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."