1. 安装libusb-win32-filter-bin-0.1.12.1.exe, 否则Openrd找不到ftdi device
2. 使用Openocd-0.5.0
3. 连接openocd,打开命令行进入Openocd-0.5.0 bin目录,输入openocd-0.5.0 -f board/openrd.cfg
4. 新开一个命令行窗口进入Telnet: telnet localhost 4444
5. 以下命令一个一个的输入,重要的是看看能不能找到Flash,能找到烧录就能成功.试了好几次才能找到
有时会出现如下错误信息,解决办法是,在输入Openrd_init命令时,按下板上的Reset按键(靠近USBDebug口那个)就正常的.如按一次不行,多试几次.这也是搞了一个多星期才发现的.
Open On-Chip Debugger
> openrd_init
Halt timed out, wake up GDB.
timed out while waiting for target halted
Runtime Error: Y:\Data\DaneNas\Open-RD\openocd-0.5.0\openocd-0.5.0\bin\../board/
openrd.cfg:30:
in procedure 'openrd_init'
in procedure 'wait_halt' called at file "Y:\Data\DaneNas\Open-RD\openocd-0.5.0\o
penocd-0.5.0\bin\../board/openrd.cfg", line 30
步骤记录:
> openrd_init
target state: halted
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0x000000d3 pc: 0xffff0000
MMU: disabled, D-Cache: disabled, I-Cache: disabled
> nand probe 0
NAND flash device 'NAND 1GiB 3.3V 8-bit (Samsung)' found
> nand erase 0 0x0 0xa0000
erased blocks 0 to 5 on NAND flash device #0 'NAND 1GiB 3.3V 8-bit'
> nand write 0 uboot.bin
nand write bank_id filename offset
['oob_raw'|'oob_only'|'oob_softecc'|'oob_softecc_kw']
in procedure 'nand'
> nand write 0 uboot.bin oob_softecc_kw
Invalid command argument
state->address option value ('oob_softecc_kw') is not valid
in procedure 'nand'> nand write 0 uboot.bin 0 oob_softecc_kw
> resume
能完成以上命令,就能看到U-boot启动了
__ __ _ _
| \/ | __ _ _ ____ _____| | |
| |\/| |/ _` | '__\ \ / / _ \ | |
| | | | (_| | | \ V / __/ | |
|_| |_|\__,_|_| \_/ \___|_|_|
_ _ ____ _
| | | | | __ ) ___ ___ | |_
| | | |___| _ \ / _ \ / _ \| __|
| |_| |___| |_) | (_) | (_) | |_
\___/ |____/ \___/ \___/ \__|
** MARVELL BOARD: OpenRD-Base LE
U-Boot 1.1.4 (Apr 22 2009 - 20:18:28) Marvell version: 3.4.16
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CEE80
Soc: 88F6281 A0 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000 size 256MB
DRAM CS[1] base 0x10000000 size 256MB
DRAM Total size 512MB 16bit width
Flash: 0 kB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:1024 MB
*** Warning - bad CRC or NAND, using default environment
Checking for BootROM Routine Errors
No. of BootROM routine retries: 0
No error found
Running diagnostics ...
DDR2 data bus test PASSED
DDR2 address bus test PASSED
DDR2 device test PASSED
UART 1 internal loopback test on baudrate 9600 PASSED
UART 1 internal loopback test on baudrate 19200 PASSED
UART 1 internal loopback test on baudrate 115200 PASSED
UART 1 external loopback test on baudrate 9600 TIMEOUT
Diag FAILED
CPU : Marvell Feroceon (Rev 1)
Streaming disabled
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net: egiga0 [PRIME]
Hit any key to stop autoboot: 3 2 1 0
egiga0 no link
Using egiga0 device
TFTP from server 10.4.50.5; our IP address is 10.4.50.165
Filename 'uImage'.
Load address: 0x2000000
Loading: *T T T T T T T