Difference between revisions of "U-boot musb gadget support"

From eLinux.org
Jump to: navigation, search
(Getting started)
(Next steps)
Line 11: Line 11:
 
=== Next steps ===
 
=== Next steps ===
 
* Merge in mainstream?
 
* Merge in mainstream?
 +
* Prepare inf driver for Windows
  
 
=== Getting the source code ===
 
=== Getting the source code ===

Revision as of 11:28, 22 January 2009

The code for musb gadget support is currently available on the omap3-dev-usb branch of the Beagle U-Boot git repository.

Current Status

  • Currently the code enables the Beagleboard to be recognized as a USB ACM modem, and provides a u-boot console over it. It keeps the console over serial as well.

Known bugs

  • None

Next steps

  • Merge in mainstream?
  • Prepare inf driver for Windows

Getting the source code

Checkout the git source for the musb gadget support from the Beagle U-Boot git repository. Get it by:

git clone git://www.sakoman.net/git/u-boot-omap3.git
cd u-boot-omap3
git checkout --track -b omap3-dev-usb origin/omap3-dev-usb

Build (assuming Code Sourcery GCC 2007q3):

make CROSS_COMPILE=arm-none-linux-gnueabi- mrproper
make CROSS_COMPILE=arm-none-linux-gnueabi- omap3_beagle_config
make CROSS_COMPILE=arm-none-linux-gnueabi-

Getting started

  • Load your new u-boot.bin image into the board using any of the existing methods. If you have a beagle running already a working u-boot, you can load it by serial using the 'loady' command and minicom or 'sb' (be sure to have lszrz installed in your distro). Then erasing the u-boot in flash and reflashing the new image with the following commands:
nand unlock
nand erase 80000 160000
nand write.i 80000000 80000 160000
  • Reboot your board and keep the user button pressed while applying power (see Known bugs).
  • Attach a mini-b USB cable to the beagle. Your host should recognize an ACM CDC device (works out of the box on Linux and OS X).
  • If you want to have the u-boot console over USB use the following command:
setenv stdout usbtty,serial; setenv stdin usbtty,serial; setenv stderr usbtty,serial

Now when you plug the device into your Linux host machine you should be able to talk over serial using minicom,putty,etc over /dev/ttyACM0.