Bricked board recovery?

316 views
Skip to first unread message

Ian R

unread,
Aug 3, 2008, 1:09:34 PM8/3/08
to Beagle Board
Hi everyone,

Unfortunately managed to brick my B4 board, and I'm not making any
progress trying to recover it.

Basically I was trying to update the u-boot with Mans' 600MHz one.
This is the sequence I followed, believing I could boot from MMC
afterwards

Texas Instruments X-Loader 1.41
Skipped bad block at 0x80000
Starting OS Bootloader...


U-Boot 1.3.3-00035-gab55ae5-dirty (Jun 16 2008 - 17:35:22)

OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
OMAP3 Beagle Board + LPDDR/NAND
DRAM: 128 MB
NAND: 256 MiB
In: serial
Out: serial
Err: serial
Audio Tone on Speakers ... complete
OMAP3 beagleboard.org # nand unlock
device 0 whole chip
nand_unlock: start: 00000000, length: 268435456!
NAND flash successfully unlocked
OMAP3 beagleboard.org # nand erase 0 80000

NAND erase: device 0 offset 0x0, size 0x80000
Erasing at 0x60000 -- 100% complete.
OK
OMAP3 beagleboard.org #

NAND erase: device 0 offset 0x0, size 0x80000
Erasing at 0x60000 -- 100% complete.
OK
OMAP3 beagleboard.org #

<then reset>

The above was following the sequence on MMU recovery on
http://elinux.org/BeagleBoardRecovery which says "If you now re-power
your board without pressing the user board it should work as before.
Happily unbricked! "

I used an MMC card containing the usual MLO , u-boot.bin etc. But
nothing at all from now on. No X-loader message... nothing :-(

Basically I'm not clear on what is on the OMAP and what's on the
flash. With the above erase command I have erased everything out of
flash including X-loader?

Am I just left with the small TI boot loader on the OMAP? This surely
doesn't have the capability of reading vfat off the MMC ?

Serial download of the LED flasher does still work so the board is
fine, but I am not clear what I need to download. There is mention of
u-boot_v2.bin but the sources don't immediately appear to support
beagle, config is complicated, and I can't find a binary version.

Also, the instructions suggest omap3_usbload but that doesn't find
anything on my Linux PC (anyone else seen that?)

./omap3_usbload /scratchbox/users/ian/home/ian/beagle/target/
omap3_serial_test.bin

(just loads of dots... also I don't get any messages in /var/log/
messages when plugging in the beagle)

Has anyone recovered a board from this situation and what did you do?

Also, I'm wondering what TI do during production?

Thanks for any hints!

Måns Rullgård

unread,
Aug 3, 2008, 1:41:57 PM8/3/08
to beagl...@googlegroups.com
Ian R <ian.ri...@btinternet.com> writes:

> Hi everyone,
>
> Unfortunately managed to brick my B4 board, and I'm not making any
> progress trying to recover it.
>
> Basically I was trying to update the u-boot with Mans' 600MHz one.
> This is the sequence I followed, believing I could boot from MMC
> afterwards
>
> Texas Instruments X-Loader 1.41
> Skipped bad block at 0x80000
> Starting OS Bootloader...
>
> U-Boot 1.3.3-00035-gab55ae5-dirty (Jun 16 2008 - 17:35:22)
>
> OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
> OMAP3 Beagle Board + LPDDR/NAND
> DRAM: 128 MB
> NAND: 256 MiB
> In: serial
> Out: serial
> Err: serial
> Audio Tone on Speakers ... complete
> OMAP3 beagleboard.org # nand unlock
> device 0 whole chip
> nand_unlock: start: 00000000, length: 268435456!
> NAND flash successfully unlocked
> OMAP3 beagleboard.org # nand erase 0 80000

This is the x-loader section. You shouldn't need to touch that, if
you have a working x-loader flashed (well, now you don't).

> NAND erase: device 0 offset 0x0, size 0x80000
> Erasing at 0x60000 -- 100% complete.
> OK
> OMAP3 beagleboard.org #
>
> NAND erase: device 0 offset 0x0, size 0x80000
> Erasing at 0x60000 -- 100% complete.
> OK
> OMAP3 beagleboard.org #
>
> <then reset>

I don't see any commands to write new data to flash there. Did
something go wrong with your copy and paste, or did you forget the
write commands?

> The above was following the sequence on MMU recovery on
> http://elinux.org/BeagleBoardRecovery which says "If you now re-power
> your board without pressing the user board it should work as before.
> Happily unbricked! "
>
> I used an MMC card containing the usual MLO , u-boot.bin etc. But
> nothing at all from now on. No X-loader message... nothing :-(

That means you don't have a valid x-loader in flash, or any other
place the ROM loader looks for one.

> Basically I'm not clear on what is on the OMAP and what's on the
> flash. With the above erase command I have erased everything out of
> flash including X-loader?

The OMAP contains the ROM loader. The flash contains any combination
of x-loader, u-boot, kernel, and filesystem. Most people around here
seem to keep x-loader and u-boot in flash, with kernel and filesystem
on SD/MMC cards.

> Am I just left with the small TI boot loader on the OMAP? This surely
> doesn't have the capability of reading vfat off the MMC ?

You're in luck. It does, be it with some limitations.

> Has anyone recovered a board from this situation and what did you do?

I have, several times. Follow the instruction at
http://wiki.omap.com/index.php?title=MMC_Boot_Format to format an MMC
card, and copy MLO and u-boot.bin to the card. Insert the card, and
reset the board while holding the user button. When you (hopefully)
get a u-boot prompt, follow the flashing instructions at
http://elinux.org/BeagleBoardNAND.

--
Måns Rullgård
ma...@mansr.com

Dirk Behme

unread,
Aug 3, 2008, 1:46:21 PM8/3/08
to beagl...@googlegroups.com
Ian R wrote:
> Hi everyone,
>
> Unfortunately managed to brick my B4 board, and I'm not making any
> progress trying to recover it.
>
> Basically I was trying to update the u-boot with Mans' 600MHz one.
> This is the sequence I followed, believing I could boot from MMC
> afterwards
>
> Texas Instruments X-Loader 1.41
> Skipped bad block at 0x80000

Here you use NAND to ...

> Starting OS Bootloader...
>
>
> U-Boot 1.3.3-00035-gab55ae5-dirty (Jun 16 2008 - 17:35:22)
>
> OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
> OMAP3 Beagle Board + LPDDR/NAND
> DRAM: 128 MB
> NAND: 256 MiB
> In: serial
> Out: serial
> Err: serial
> Audio Tone on Speakers ... complete
> OMAP3 beagleboard.org #

... successfully boot U-Boot from it so I'm not sure why ...

> # nand unlock
> device 0 whole chip
> nand_unlock: start: 00000000, length: 268435456!
> NAND flash successfully unlocked
> OMAP3 beagleboard.org # nand erase 0 80000

... here you erase your U-Boot version in NAND.

> NAND erase: device 0 offset 0x0, size 0x80000
> Erasing at 0x60000 -- 100% complete.
> OK
> OMAP3 beagleboard.org #
>
> NAND erase: device 0 offset 0x0, size 0x80000
> Erasing at 0x60000 -- 100% complete.
> OK
> OMAP3 beagleboard.org #
>
> <then reset>
>
> The above was following the sequence on MMU

You mean MMC here?

> recovery on
> http://elinux.org/BeagleBoardRecovery which says "If you now re-power
> your board without pressing the user board it should work as before.
> Happily unbricked! "

Yes, if you don't have anything in NAND any more, you should be able
to boot using MMC.

> I used an MMC card containing the usual MLO , u-boot.bin etc. But
> nothing at all from now on. No X-loader message... nothing :-(

What does happen if you don't have MMC card inserted? You should see
something like "40T" in terminal program if no MMC card is inserted
(and NAND is really empty). Then, inserting the MMC card with MLO and
U-Boot on it should give you the 40T, too, and then boot from MMC.

What happens if you press the user button while powering the board?

> Basically I'm not clear on what is on the OMAP and what's on the
> flash. With the above erase command I have erased everything out of
> flash including X-loader?

Not everything, only NAND boot section where X-loader is located
(adresses 0x0 - 0x80000).

> Am I just left with the small TI boot loader on the OMAP? This surely
> doesn't have the capability of reading vfat off the MMC ?
>
> Serial download of the LED flasher does still work so the board is
> fine, but I am not clear what I need to download. There is mention of
> u-boot_v2.bin but the sources don't immediately appear to support
> beagle,

The EVM config is fine for beagle, too.

> config is complicated,
> and I can't find a binary version.

Do you like to test uboot.bin (V2) in attachment?

> Also, the instructions suggest omap3_usbload but that doesn't find
> anything on my Linux PC (anyone else seen that?)

You have to download omap3_usbload, it isn't installed by default by
anything.

http://elinux.org/BeagleBoard#USB_boot

-> Linux C utility

Anyway, maybe you like to try attachment, too. If this doesn't work on
your PC, you have to compile it yourself downloading source from above
link.

> ./omap3_usbload /scratchbox/users/ian/home/ian/beagle/target/
> omap3_serial_test.bin
>
> (just loads of dots... also I don't get any messages in /var/log/
> messages when plugging in the beagle)
>
> Has anyone recovered a board from this situation and what did you do?

Yes. I wrote the wiki article while doing this.

> Also, I'm wondering what TI do during production?

I think they use a special U-Boot version booting from MMC that then
writes NAND.

http://code.google.com/p/beagleboard/wiki/BeagleSourceCode

u-boot.bin u-boot Image that automatically flashes u-boot Image to
NAND from MMC

http://code.google.com/p/beagleboard/wiki/BeagleBoardDiagnostics

> Thanks for any hints!

Dirk

uboot.bin
omap3_usbload

Ian R

unread,
Aug 3, 2008, 2:37:22 PM8/3/08
to Beagle Board
Hmmm. still very strange.

I can download the ubootv2.bin over serial perfectly.... However I
then can't see a u-boot command line when I start up a terminal
program (I'm using minicom /dev/ttypS0 which has worked before). Can
anyone recommend a better linux terminal program as minicom seems a
bit weird, e.g. it always wants to send modem initialization commands
on startup.

My MMC boot isn't working either... this was the same card that worked
before to boot linux (but then X-load and u-boot were coming out of
flash, I believe)

Dirk - thanks for the usbload - but it also does not recognise the
OMAP has been plugged in.

I will continue to investigate, need to try more options on MMC card I
think.

Ian R

unread,
Aug 3, 2008, 4:44:10 PM8/3/08
to Beagle Board
OK - sorted. I believe it was a combination of the filenames of the
boot files on the MMC card and the fact that the bootable flag wasn't
set by the HP format utility.

Just to confirm the files need to be called precisely:
"MLO"
"u-boot.bin"

(if so, its a little confusing with the downloads page having
"MLO_revb")

It might be worth having an official boot MMC as a .tar.gz file

Thanks everyone.

shankar

unread,
Aug 3, 2008, 10:01:04 PM8/3/08
to beagl...@googlegroups.com
Hi,

kermit/gkermit/ckermit (linux terminal emulator) works well with my board

Here are my port params
****************************************************************************************
shankar @ Pothigai 08:49 PM ~/Beagle/U-BOOT_V2 $ kermit -l /dev/ttyUSB0
C-Kermit 8.0.212 Dev.26, 20 Dec 2006, for Linux
Copyright (C) 1985, 2006,
Trustees of Columbia University in the City of New York.
Type ? or HELP for help.
(/home/shankar/Beagle/U-BOOT_V2/) C-Kermit>set speed 115200
/dev/ttyUSB0, 115200 bps
(/home/shankar/Beagle/U-BOOT_V2/) C-Kermit>set modem type none
(/home/shankar/Beagle/U-BOOT_V2/) C-Kermit>set carrier-watch off
(/home/shankar/Beagle/U-BOOT_V2/) C-Kermit>set parity none
(/home/shankar/Beagle/U-BOOT_V2/) C-Kermit>set flow-control none
(/home/shankar/Beagle/U-BOOT_V2/) C-Kermit>robust
(/home/shankar/Beagle/U-BOOT_V2/) C-Kermit>connect
Connecting to /dev/ttyUSB0, speed 115200
Escape character: Ctrl-\ (ASCII 28, FS): enabled
Type the escape character followed by C to get back,
or followed by ? to see other options.
----------------------------------------------------

OMAP3 beagleboard.org #
****************************************************************************************

Bill Gatliff

unread,
Aug 3, 2008, 8:06:17 PM8/3/08
to beagl...@googlegroups.com
Ian R wrote:
> Hi everyone,
>
> Unfortunately managed to brick my B4 board, and I'm not making any
> progress trying to recover it.

On this note, does anyone have any firsthand experience with any of the
available JTAG adapters for this board?

I have a BDI2000 and a couple of others, but haven't spent any time with
them on this board. Given the apparent plethora of OpenOCD-based units
that look like options, I'd be curious to hear about them too.

In addition to flash programming capabilities, I'd also love to know if
anyone has attempted any JTAG-based debugging with Beagle, i.e. stepping
instructions, etc. My BDI2000 and Arium devices just eat that stuff up
on other platforms, but they're in a different budget league. I'd love
to know if there are any proven alternatives.

Hate to hear your board isn't working for you at the moment, Ian. :(

Thanks!


b.g.
--
Bill Gatliff
bg...@billgatliff.com

Dirk Behme

unread,
Aug 4, 2008, 10:59:55 AM8/4/08
to beagl...@googlegroups.com
Bill Gatliff wrote:
> Ian R wrote:
>
>>Hi everyone,
>>
>>Unfortunately managed to brick my B4 board, and I'm not making any
>>progress trying to recover it.
>
>
> On this note, does anyone have any firsthand experience with any of the
> available JTAG adapters for this board?
>
> I have a BDI2000 and a couple of others, but haven't spent any time with
> them on this board. Given the apparent plethora of OpenOCD-based units
> that look like options, I'd be curious to hear about them too.

Some people reported interest to work at OpenOCD-based units but it
seems they haven't found time for this. Status:

http://elinux.org/BeagleBoardJTAG

http://www.beagleboard.org/irclogs/index.php?date=2008-08-01#T21:02:11

> In addition to flash programming capabilities, I'd also love to know if
> anyone has attempted any JTAG-based debugging with Beagle, i.e. stepping
> instructions, etc. My BDI2000 and Arium devices just eat that stuff up
> on other platforms, but they're in a different budget league. I'd love
> to know if there are any proven alternatives.

Unfortunately, I don't have one, but Lauterbach does work.

Dirk

Dirk Behme

unread,
Aug 4, 2008, 11:01:09 AM8/4/08
to beagl...@googlegroups.com
Ian R wrote:
> Hmmm. still very strange.
>
> I can download the ubootv2.bin over serial perfectly.... However I
> then can't see a u-boot command line when I start up a terminal
> program (I'm using minicom /dev/ttypS0 which has worked before). Can
> anyone recommend a better linux terminal program as minicom seems a
> bit weird, e.g. it always wants to send modem initialization commands
> on startup.

You can disable these commands in configuration. I use minicom.

Dirk

Hans Henry von Tresckow

unread,
Aug 4, 2008, 11:11:40 AM8/4/08
to beagl...@googlegroups.com
On Sun, Aug 3, 2008 at 11:37 AM, Ian R <ian.ri...@btinternet.com> wrote:
>
> Hmmm. still very strange.
>
> I can download the ubootv2.bin over serial perfectly.... However I
> then can't see a u-boot command line when I start up a terminal
> program (I'm using minicom /dev/ttypS0 which has worked before). Can
> anyone recommend a better linux terminal program as minicom seems a
> bit weird, e.g. it always wants to send modem initialization commands
> on startup.
>
I have found that picocom makes for a good, light serial console

--
Henry von Tresckow (hvontres)

max

unread,
Aug 4, 2008, 11:19:40 AM8/4/08
to Beagle Board
If you want an example on how to configure minicom without modem
initialization commands, have a look on this tutorial at pages 8 and
9 :
http://youtiyou.com/Documents/User%20Manual%20for%20YC2410%20YC2440%20UTU2440%20Linux.pdf

Regards

Maxime

Kees Jongenburger

unread,
Aug 4, 2008, 3:02:37 PM8/4/08
to beagl...@googlegroups.com
On Mon, Aug 4, 2008 at 4:59 PM, Dirk Behme <dirk....@googlemail.com> wrote:
>
> Bill Gatliff wrote:
>> Ian R wrote:
>>
>>>Hi everyone,
>>>
>>>Unfortunately managed to brick my B4 board, and I'm not making any
>>>progress trying to recover it.
>>
>>
>> On this note, does anyone have any firsthand experience with any of the
>> available JTAG adapters for this board?
>>
>> I have a BDI2000 and a couple of others, but haven't spent any time with
>> them on this board. Given the apparent plethora of OpenOCD-based units
>> that look like options, I'd be curious to hear about them too.
>
> Some people reported interest to work at OpenOCD-based units but it
> seems they haven't found time for this. Status:

Indeed I was on holiday but I plan to continue getting it all to work.
I did not get very fat yet. I know that booth the flyswatter and the
JTagkey (using openocd) need an adapter in order to work
and booth are able to get the vendor id from the core. That is as far
as it goes.
The next step as described on the elinux Wiki is to get more
information about the JTAG scan chain of the OMAP3530.

greetings

Chuck Fleming

unread,
Aug 9, 2008, 6:39:01 PM8/9/08
to beagl...@googlegroups.com
Hi Bill,

The BDI2000 appears to work with the omap35xx.cfg and regOMAP3500.def
files that come with the BDI hardware. I had to modify the 10-pin
cable so that the beagleboard JTAG header matched the BDI target A
connector.

beagle>reset
- TARGET: processing reset request
- TARGET: BDI executes scan chain init string
- TARGET: Bypass check 0x00000001 => 0x00000002
- TARGET: JTAG exists check passed
- Core#0: ID code is 0x0B6D602F
- Core#0: DP-CSW is 0xF0000000
- Core#0: DBG-AP at 0xD4011000
- Core#0: DIDR is 0x15141012
- TARGET: BDI removes RESET
- TARGET: BDI waits for RESET inactive
- TARGET: Reset sequence passed
- TARGET: resetting target passed
- TARGET: processing target startup ....
- TARGET: processing target startup passed
beagle>halt
Core number : 0
Core state : debug mode (ARM)
Debug entry cause : Debug Request
Current PC : 0x40200000
Current CPSR : 0x000001d3 (Supervisor)
beagle>rdall
User FIQ Superv Abort IRQ Undef
GPR00: 480029fc 480029fc 480029fc 480029fc 480029fc 480029fc
GPR01: 00000000 00000000 00000000 00000000 00000000 00000000
GPR02: 00000001 00000001 00000001 00000001 00000001 00000001
GPR03: 00000060 00000060 00000060 00000060 00000060 00000060
GPR04: 00000000 00000000 00000000 00000000 00000000 00000000
GPR05: 80f2f2f4 80f2f2f4 80f2f2f4 80f2f2f4 80f2f2f4 80f2f2f4
GPR06: 80f2f2f4 80f2f2f4 80f2f2f4 80f2f2f4 80f2f2f4 80f2f2f4
GPR07: 80e9ee88 80e9ee88 80e9ee88 80e9ee88 80e9ee88 80e9ee88
GPR08: 80e3ffdc 34484608 80e3ffdc 80e3ffdc 80e3ffdc 80e3ffdc
GPR09: 80e3fec8 26a1c132 80e3fec8 80e3fec8 80e3fec8 80e3fec8
GPR10: 00000018 08040f16 00000018 00000018 00000018 00000018
GPR11: 80e3fecc 3c278260 80e3fecc 80e3fecc 80e3fecc 80e3fecc
GPR12: 0000006e 24200625 0000006e 0000006e 0000006e 0000006e
GPR13: 00000000 00000000 80e3feb0 00000000 00000000 d1868045
GPR14: 00000000 00000000 80e84f44 00000000 00000000 d55a4cc8
PC : 40200000
CPSR : 000001d3
SPSR : 00000000 00000000 00000000 00000000 00000000
beagle>md 0x40200000
40200000 : e320f000 e320f000 e320f000 e320f000 .. ... ... ... .
40200010 : e320f000 e320f000 e320f000 eafffffc .. ... ... .....
40200020 : b6273502 e7aa052b 047694c8 91ca77d8 .5'.+.....v..w..
40200030 : 12b9579e ef2eef1b 00543892 494f9bc1 .W.......8T...OI
40200040 : 3f63013d 82eee656 b7adfe8d 993f1368 =.c?V.......h.?.
40200050 : 51f1cf9b 0464a23e bea76e3c 3d275f5c ...Q>.d.<n..\_'=
40200060 : 76554290 6776c892 a6cd088f 6dd4529a .BUv..vg.....R.m
40200070 : 067261b8 e5f80e9e cb4ea075 25a9dd95 .ar.....u.N....%
40200080 : 779db8c6 0496597b 7d5f8d5a 24f44cd6 ...w{Y..Z._}.L.$
40200090 : 99ab46f9 9ddc06d9 fd34567a 2035bab8 .F......zV4...5
402000a0 : a16b6760 fe863cf7 29046202 39fb0d49 `gk..<...b.)I..9
402000b0 : dc9fd18c e50f536c 09ae66dd cad9ff91 ....lS...f......
402000c0 : c46bdbdb be791808 89ff83fa 2d3bc71e ..k...y.......;-
402000d0 : 43f5a3b6 0aed1747 ba3c4752 6af0573a ...CG...RG<.:W.j
402000e0 : 3570da77 9a1dc961 324b876c 5d592060 w.p5a...l.K2` Y]
402000f0 : b870f487 1277c035 4609dcf4 53b534c4 ..p.5.w....F.4.S
beagle>ti
Core number : 0
Core state : debug mode (ARM)
Debug entry cause : Single Step
Current PC : 0x40200004
Current CPSR : 0x000001d3 (Supervisor)
beagle>ti
Core number : 0
Core state : debug mode (ARM)
Debug entry cause : Single Step
Current PC : 0x40200008
Current CPSR : 0x000001d3 (Supervisor)
beagle>

Chuck

suraj...@gmail.com

unread,
Aug 14, 2008, 3:15:04 AM8/14/08
to Beagle Board
Hi all,

I have BDI2000 and Beagle Board. I would like to know what changes I
have to make to the 10 pin cable to connect to TARGET A connector for
the Beagle Board. Also I don't have the omap35xx.cfg and
regOMAP3500.def fles for BDI2000 since it was purchsed 2 years back
for some other hardware. Can anyone please share these?

regards
Suraj
> > b...@billgatliff.com

Dirk Behme

unread,
Aug 14, 2008, 10:24:08 AM8/14/08
to beagl...@googlegroups.com
suraj...@gmail.com wrote:
> Hi all,
>
> I have BDI2000 and Beagle Board. I would like to know what changes I
> have to make to the 10 pin cable to connect to TARGET A connector for
> the Beagle Board.

Does

http://elinux.org/BeagleBoardJTAG#Creating_an_adapter

help you?

> Also I don't have the omap35xx.cfg and
> regOMAP3500.def fles for BDI2000 since it was purchsed 2 years back
> for some other hardware. Can anyone please share these?

Sorry, can't help with this.

Regards

Dirk

Chuck Fleming

unread,
Aug 16, 2008, 12:52:09 AM8/16/08
to beagl...@googlegroups.com
Hi Suraj,

If your BDI was purchased two years ago, then you'll most likely need
to update it with firmware that supports Cortex-A8. The cfg and def
files will come with the firmware. In the US, you can contact
Ultimate Solutions, Inc. (www.ultsol.com). I believe they also now
carry a cable that supports the beagle board.

Chuck

Reply all
Reply to author
Forward
0 new messages