2007-09-13 15:23 用Jflash烧写u-boot到Nand Flash

SBC2410/Linux/sbc2410v6_linux-2.4.18_sdk.tgz(友善之臂的开发光盘)
安装烧写工具: Jflash-s3c2410
# tar zxvf sbc2410v6_linux-2.4.18_sdk.tgz
# cd opt/FriendlyARM/SBC2410/Jflash/
# cp Jflash-s3c2410 /usr/bin
# cd u-boot-1.1.6/
# ls -l u-boot.bin
-rwxr-xr-x 1 root root 112644 2007-09-22 15:02 u-boot.bin
注意: 要root身份执行Jflash-s3c2410
# Jflash-s3c2410 u-boot.bin /t=5

+------------------------------------+
|     SEC JTAG FLASH(SJF) v 0.11     +
|     modified by MIZI 2002.7.13     +
+------------------------------------+
> flashType=5
> S3C2410X(ID=0x0032409d) is detected.
> K9S1208 is detected. ID=0xec76

K9S1208 NAND Flash JTAG Programmer Ver 0.0
0:K9S1208 Program      1:K9S1208 Pr BlkPage   2: Exit               

Select the function to test : 0

[SMC(K9S1208) NAND Flash Writing Program]

Source size: 0x 1b803            <==> 112643 byte

Available target block number: 0~4095
Input target block number: 0
STATUS:Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp
Epppppppppppppppppppppppppppppppp

K9S1208 NAND Flash JTAG Programmer Ver 0.0
0:K9S1208 Program      1:K9S1208 Pr BlkPage   2: Exit               

Select the function to test : 2

注:
(1) 将u-boot.bin烧写到Nand Flash的前 111K
(2) 从u-boot源码获知"环境变量"的存放位置及其大小
vi u-boot-1.1.6/include/configs/smdk2410.h
---------------------------------------------
#define CFG_ENV_OFFSET      0x0F0000
#define CFG_ENV_SIZE        0x010000
    环境变量的存放位置:960KB;大小:64KB(Nand Flash第1M的最后64KB中存放环境变量)。这样uImage就应该存放于0x 10 0000 <==> 1MB(从这个位置开始存放内核)




新开发的电路板没有任何程序可以执行,也就不能启动,需要先将u-boot烧写到Flash中。如果主板上的EPROM或者Flash能够取下来,就可以通过编程器烧写。例如:计算机BIOS就存储在一块256KB的Flash上,通过插座与主板连接。但是多数嵌入式单板使用贴片的Flash,不能取下来烧写。这种情况可以通过处理器的调试接口,直接对板上的Flash编程。处理器调试接口是为处理器芯片设计的标准调试接口,包含BDM、JTAG和EJTAG3种接口标准。BDM(Background Debug Mode)主要应用在PowerPC8xx系列处理器上;EJTAG主要应用在MIPS处理器上。这3种硬件接口标准定义有所不同,但是功能基本相同,下面都统称为JTAG接口。
最简单方式就是通过JTAG电缆,转接到计算机并口连接。这需要在主机端开发烧写程序,还需要有并口设备驱动程序。开发板上电或者复位的时候,烧写程序探测到处理器并且开始通信,然后把Bootloader下载并烧写到Flash中。这种方式速率很慢,可是价格非常便宜。一般来说,平均每秒钟可以烧写100~200个字节。
烧写完成后,复位实验板,串口终端应该显示u-boot的启动信息。


 

使用minicom接入单板
--------------------------------------------
# minicom
OPTIONS: I18n
Compiled on Dec 10 2007, 10:36:19.
Port /dev/ttyUSB0

                 Press CTRL-A Z for help on special keys
                                                     
                                                     
                                                     
U-Boot 1.1.4 (Apr 13 2010 - 21:51:22)                

U-Boot code: 31F80000 -> 31F98AA4  BSS: -> 31FA1B44
RAM Configuration:
Bank #0: 30000000 32 MB
Flash: 64 MB
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
SMDK2410 #
SMDK2410 #      

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值