• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
主题 : tiny4412开发板,烧写uboot后,从SD卡启动不正常 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 107848
精华: 0
发帖: 29
金钱: 145 两
威望: 29 点
贡献值: 0 点
综合积分: 58 分
注册时间: 2014-09-07
最后登录: 2015-04-18
楼主  发表于: 2014-10-08 21:43

 tiny4412开发板,烧写uboot后,从SD卡启动不正常

你好:

我按照Readme-uboot.txt的操作说明一步一步做,最后提示是SD烧写uboot成功了,
然后将SD卡放进tiny4412开发板,从SD卡启动开发板,
但是,串口助手只显示“OK”之后,就再也没有反应了,

请问这是哪里出问题了??
级别: 论坛版主
UID: 103400
精华: 0
发帖: 434
金钱: 2235 两
威望: 447 点
贡献值: 0 点
综合积分: 868 分
注册时间: 2014-04-24
最后登录: 2016-10-10
1楼  发表于: 2014-10-09 10:16
出现了OK证明成功了一半,我烧写的时候一次就成功了,你是怎么烧写的?是不是哪个步骤出了问题?
级别: 新手上路
UID: 107848
精华: 0
发帖: 29
金钱: 145 两
威望: 29 点
贡献值: 0 点
综合积分: 58 分
注册时间: 2014-09-07
最后登录: 2015-04-18
2楼  发表于: 2014-10-09 22:03
一、 为了方便大家查看我的问题,我把详细过程记录一下,希望大家能看出问题所在。

二、 uboot 编译环境 :32位window7 的虚拟机Vmware9中的Ubuntu14.04,交叉编译工具arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz;

开发板:tiny4412增强版

三、 先贴出友善的Readme-uboot.txt内容,方便大家查看;


README for FriendlyARM Tiny4412

说明:本u-boot源代码由三星原厂提供,并由友善之臂修改移植,以适用于Tiny4412开发板平台。
仅供嵌入式爱好者学习研究之用,友善之臂不对此提供任何技术支持和维护。

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

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

b) 解压 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即可。

四、 操作如下:1. 编译uboot:
~/Desktop/uboot_tiny4412$ arm-linux-gcc -v
Using built-in specs.
COLLECT_GCC=arm-linux-gcc
COLLECT_LTO_WRAPPER=/opt/FriendlyARM/toolschain/4.5.1/libexec/gcc/arm-none-linux-gnueabi/4.5.1/lto-wrapper
Target: arm-none-linux-gnueabi
Configured with: /work/toolchain/build/src/gcc-4.5.1/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.5.1 --with-sysroot=/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root --enable-languages=c,c++ --disable-multilib --with-cpu=arm1176jzf-s --with-tune=arm1176jzf-s --with-fpu=vfp --with-float=softfp --with-pkgversion=ctng-1.8.1-FA --with-bugurl=http://www.arm9.net/ --disable-sjlj-exceptions --enable-__cxa_atexit --disable-libmudflap --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-gmp=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-mpfr=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-ppl=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-cloog=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-mpc=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-libelf=/work/toolchain/build/arm-none-linux-gnueabi/build/static --enable-threads=posix --with-local-prefix=/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root --disable-nls --enable-symvers=gnu --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.5.1 (ctng-1.8.1-FA)
~/Desktop/uboot_tiny4412$ make tiny4412_config
awk '(NF && $1 !~ /^#/) { print $1 ": " $1 "_config; $(MAKE)" }' boards.cfg > .boards.depend
Configuring for tiny4412 board...
~/Desktop/uboot_tiny4412$ make
Generating include/autoconf.mk
Generating include/autoconf.mk.dep
……(此处省略编译信息)
arm-linux-ld: warning: creating a DT_TEXTREL in object.
arm-linux-objcopy -O srec u-boot u-boot.srec
arm-linux-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin
~/Desktop/uboot_tiny4412$ make -C sd_fuse
make: Entering directory `/home/how/Desktop/uboot_tiny4412/sd_fuse'
gcc -o mkbl2 V310-EVT1-mkbl2.c
gcc -o sd_fdisk sd_fdisk.c
make: Leaving directory `/home/how/Desktop/uboot_tiny4412/sd_fuse'

2.此时,我在PC下插入一张4G的SD卡,虚拟机Vmware中Ubuntu识别到我的SD卡,是/dev/sdc
~/Desktop/uboot_tiny4412$ cd sd_fuse/tiny4412
~/Desktop/uboot_tiny4412/sd_fuse/tiny4412$ sudo ./sd_fusing.sh /dev/sdc
[sudo] password for how:

/dev/sdc reader is identified.
---------------------------------------
BL1 fusing
16+0 records in
16+0 records out
8192 bytes (8.2 kB) copied, 0.844842 s, 9.7 kB/s
---------------------------------------
BL2 fusing
28+0 records in
28+0 records out
14336 bytes (14 kB) copied, 1.64115 s, 8.7 kB/s
---------------------------------------
u-boot fusing
540+1 records in
540+1 records out
276932 bytes (277 kB) copied, 26.0561 s, 10.6 kB/s
---------------------------------------
TrustZone S/W fusing
184+0 records in
184+0 records out
94208 bytes (94 kB) copied, 9.32676 s, 10.1 kB/s
---------------------------------------
U-boot image is fused successfully.
Eject SD card and insert it again.
3.我在windows7中打开SecureCRT,串口配置如下:
波特率115200,数据位8位,停止位1,无奇偶校验

将SD卡从PC中拔出,插入开发板中,开发板只连接着电源线和串口线,启动拨动开关至于SD档处,然后启动开发板电源开关,
串口输出如下:

OK

然后就没有了……
等待一段时间(至少5分钟),依然无反应…………
我往里面输入任何按键,也没有反应……

…………

五、 各位大侠,请问问题出在哪里???
 
级别: 新手上路
UID: 108710
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
贡献值: 0 点
综合积分: 20 分
注册时间: 2014-10-04
最后登录: 2019-08-04
3楼  发表于: 2014-10-10 21:50
我遇到跟你一样的问题,不过我用这个(http://www.aiothome.net/read.php?tid-83639.html)U-boot的源码make、烧录就可以正常启动,你可以试试看。
级别: 论坛版主
UID: 103400
精华: 0
发帖: 434
金钱: 2235 两
威望: 447 点
贡献值: 0 点
综合积分: 868 分
注册时间: 2014-04-24
最后登录: 2016-10-10
4楼  发表于: 2014-10-11 14:18
友善提供的u-boot只能在4412的标准板使用,增强版使用不了
级别: 新手上路
UID: 107848
精华: 0
发帖: 29
金钱: 145 两
威望: 29 点
贡献值: 0 点
综合积分: 58 分
注册时间: 2014-09-07
最后登录: 2015-04-18
5楼  发表于: 2014-10-11 22:18

 回 4楼(嘉jjm) 的帖子

级别: 新手上路
UID: 61806
精华: 0
发帖: 14
金钱: 70 两
威望: 14 点
贡献值: 0 点
综合积分: 28 分
注册时间: 2012-01-07
最后登录: 2017-01-10
6楼  发表于: 2015-12-19 00:09

 回 4楼(嘉jjm) 的帖子

我用的是1506的tiny4412
把光盘里的uboot编译后,写进sd卡,还是不能启动uboot~!

什么原因呢?
级别: 新手上路
UID: 122759
精华: 0
发帖: 7
金钱: 35 两
威望: 7 点
贡献值: 0 点
综合积分: 14 分
注册时间: 2016-02-13
最后登录: 2016-02-22
7楼  发表于: 2016-02-14 16:59

 回 6楼(老子晕了) 的帖子

亲,你是怎么解决的啊
级别: 新手上路
UID: 126642
精华: 0
发帖: 5
金钱: 25 两
威望: 5 点
贡献值: 0 点
综合积分: 10 分
注册时间: 2016-07-14
最后登录: 2017-07-10
8楼  发表于: 2016-08-31 22:07
同样的问题 ,楼主解决了 求分享
级别: 新手上路
UID: 126642
精华: 0
发帖: 5
金钱: 25 两
威望: 5 点
贡献值: 0 点
综合积分: 10 分
注册时间: 2016-07-14
最后登录: 2017-07-10
9楼  发表于: 2016-09-05 09:48
把./uboot_tiny4412/sd_fuse/tinny4412/的sd_fusing.sh脚本中的tzsw_position=705改为1105,就能启动uboot,但是后面emmc驱动又加载失败,好无奈
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go