Tools - Panda/OMAP4 USB downloader

1,324 views
Skip to first unread message

Anand Gadiyar

unread,
Jan 21, 2011, 1:43:38 PM1/21/11
to panda...@googlegroups.com
Hi all,

I recently came across this nice tool written by Brian Swetland, for
loading u-boot.bin (or other loaders) to the OMAP over USB.
(Hat tip: Vikram Pandita).

Usage: ./usbboot ./aboot.bin u-boot.bin
where: usbboot is the PC side utility listening on USB bus for asic-id from omap
aboot.bin is the second-stage loader getting loaded to internal sram of omap
The second-stage loader loads u-boot.bin to external ddr
(u-boot.bin can be replaced by any binary that one wishes to execute from ddr).

I hope someone finds it useful.

Link to code:
git://github.com/swetland/omap4boot.git

- Anand

(@Brian, Thanks for writing this! @Vikram, Thanks for the pointer!)

Anand Gadiyar

unread,
Jan 21, 2011, 1:50:52 PM1/21/11
to panda...@googlegroups.com, Brian Swetland, vikram....@ti.com
(Resending with Brian and Vikram in CC. Hit send too soon :( )

Brian Swetland

unread,
Jan 21, 2011, 2:25:45 PM1/21/11
to Anand Gadiyar, panda...@googlegroups.com, vikram....@ti.com
First, let me say thanks to Vikram, who helped me sort out some fun
issues with the usb services in the boot rom.

The readme is a little out of date -- yesterday I updated it to build
the 2ndstage loader into the tool, so you can just do this:
% usbboot u-boot.bin

It'll sit around until it sees an omap4 enumerate, and then shoot the
built-in second-stage down to init sdram, then send the binary passed
on the commandline down. It really should be updated to download to
an arbitrary address, etc, but it's useful in its current form.
I've also used it to just directly download a kernel zImage to run out
of ram, etc.

Brian

Brian Swetland

unread,
Feb 2, 2011, 7:48:04 AM2/2/11
to Loïc Minier, panda...@googlegroups.com, vikram....@ti.com


On Feb 2, 2011 3:32 AM, "Loïc Minier" <lo...@dooz.org> wrote:
>
> On Sat, Jan 22, 2011, Anand Gadiyar wrote:
> > git://github.com/swetland/omap4boot.git
>
>  Would this work on OMAP3 as well?  The name suggests not, but ISTR
>  OMAP3 supports this as well

The USB download protocol is similar (possibly identical), but the 2ndstage loader (aboot.bin) would need to be adjusted for omap3.  I'm not sure if the rom API (used by the 2ndstage to continue to download the target binary from usb) is compatible.  Perhaps somebody from TI could confirm or deny...

Brian

Pandita, Vikram

unread,
Feb 2, 2011, 2:15:38 PM2/2/11
to Brian Swetland, Nicolas Caron, Loïc Minier, panda...@googlegroups.com

+ Nicolas who would know the answer about USB ROM code
[in-]compatibility between omap3 and omap4.

>
> Brian

Loïc Minier

unread,
Feb 2, 2011, 6:32:20 AM2/2/11
to panda...@googlegroups.com, Brian Swetland, vikram....@ti.com
On Sat, Jan 22, 2011, Anand Gadiyar wrote:
> git://github.com/swetland/omap4boot.git

Would this work on OMAP3 as well? The name suggests not, but ISTR
OMAP3 supports this as well

--
Lo�c Minier

Caron, Nicolas

unread,
Feb 3, 2011, 4:08:10 AM2/3/11
to Pandita, Vikram, Brian Swetland, Loïc Minier, panda...@googlegroups.com
Vikram,

There are some significant changes regarding USB peripheral booting between OMAP3 and OMAP4.

For example, on OMAP3, the ASIC ID is always sent, whereas on OMAP4 the ROM Code waits for a "Send ASIC ID" command before sending it.

Also, the addresses of the API functions are different, and the parameters passed to the USB functions have some additional information in OMAP4.

So in short, it is very probably NOT compatible and the 2nd loader must indeed be adjusted for OMAP3.

Nicolas.

Texas Instruments France SA, 821 Avenue Jack Kilby, 06270 Villeneuve Loubet. 036 420 040 R.C.S Antibes. Capital de EUR 753.920

-----Original Message-----

Menon, Nishanth

unread,
Feb 3, 2011, 5:27:43 AM2/3/11
to panda...@googlegroups.com, Pandita, Vikram, Brian Swetland, Loïc Minier
you mgiht be interested in:
https://github.com/nmenon/omap-u-boot-utils/commit/d086cb5c0393306d35177b1c024a8fa7568e1329
Alexander's patch for pusb.

Regards,
Nishanth Menon

modyrater

unread,
Feb 3, 2011, 5:09:03 PM2/3/11
to panda...@googlegroups.com
Whats wrong with using OMAPFlash (-:

Anand Gadiyar

unread,
Feb 7, 2011, 12:32:29 PM2/7/11
to panda...@googlegroups.com
On Fri, Feb 4, 2011 at 3:39 AM, modyrater <mark.la...@gmail.com> wrote:
> Whats wrong with using OMAPFlash (-:

Well, it's currently only available on Windows for one.

But it does the job quite well.

- Anand

rockefeller

unread,
Feb 24, 2011, 10:28:34 PM2/24/11
to pandaboard
I re-post again due to the mail yesterday might be lost

I have modified some code in omap4boot to support omap3
, too. You could find the code as following link.
https://docs.google.com/leaf?id=0B4dF89PJf919ZjFlY2MyMzYtNDQ3My00Y2M4LTg3YzMtODhhOWY3MDUyMGE5&hl=en&authkey=CLG3n5YH

The differences between omap4 and omap3 could be figure
out by using difference tool.

rockefeller

unread,
Feb 24, 2011, 12:36:55 AM2/24/11
to pandaboard
I just modified the omap4boot to be compatible with omap3
and share at
https://docs.google.com/leaf?id=0B4dF89PJf919ZjFlY2MyMzYtNDQ3My00Y2M4LTg3YzMtODhhOWY3MDUyMGE5&hl=en&authkey=CLG3n5YH

It is verified on Beagleboard.

The omap3 USB APIs related information comes from OMAPFlash and
you could compare files of omap4 with omap3 to find out the
differences.

On Feb 2, 7:32 pm, Loïc Minier <l...@dooz.org> wrote:

Anonymous Coward

unread,
May 20, 2011, 1:56:51 AM5/20/11
to panda...@googlegroups.com
Thank you so much for this tool. Any hope of getting it to work on Blaze
boards with 4430? Porting the pinmux from x-loader was not sufficient - any
guidance would be appreciated. Does the clocking need to change?


Cullen Logan

unread,
May 24, 2011, 1:57:12 AM5/24/11
to pandaboard
Wow support for Blaze! Somehow it does not work with EMU chips though
- even with using TI signing util.
Reply all
Reply to author
Forward
0 new messages