Openrd 烧录uboot步骤

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

原文地址:https://www.cnblogs.com/openusb/p/2827658.html