One nice thing with the EVM is that it has an ethernet plug, so it is fairly feasible to install a Debian Lenny on an OMAP3 EVM from the network.
You can use mkcard.sh.
Copy all boot files after.
At u-boot prompt, enter:
OMAP3_EVM # setenv bootargs console=ttyS0,115200 OMAP3_EVM # mmc init; fatload mmc 0 0x80300000 uImage; fatload mmc 0 0x81600000 uInitrd; bootm 0x80300000 0x81600000Then proceed with Debian installer.
A typical installation will take ~465M.
# fdisk /dev/xxx Command (m for help): a Command (m for help): 1 Command (m for help): wYou can reboot on your installed system:
OMAP3_EVM # setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait OMAP3_EVM # mmc init; fatload mmc 0 0x80300000 uImage; bootm 0x80300000(Note that you may need to adapt mmcblk0p2 to your partition layout.)
I captured those commands into a boot.scr that you can now add to your boot partition to avoid typing those each time.
You now have a freshly installed Debian system on your OMAP3 EVM.
Just in case, here is the tarball of the installed root filesystem. The root password is root. There is a user with login user and password user.
What next? I recommend you install openssh-server and connect to the board through the network rather than serial port, as the terminal is more comfortable.
$ mkimage -A arm -O linux -T ramdisk -C gzip -d ./initrd.gz ./uInitrd
$ export ARCH=arm $ export CROSS_COMPILE=arm-linux-gnueabi-
MLO (x-loader) can be recompiled from git://gitorious.org/x-load-omap3/mainline.git:
$ make omap3evm_config $ makeYou need to "sign" it for the OMAP3 romcode to load it properly. (In fact, you only need to prepend load address + size.) This can be done with signGP.c
$ gcc -o signGP signGP.c $ ./signGP x-load.binYou will obtain a signed x-load.bin.ift file, to be copied as MLO on the SD card.
u-boot can be recompiled from git://gitorious.org/u-boot-omap3/mainline.git:
$ make omap3_evm_config $ make
The kernel above has been compiled from commit 3e6dce76d99b328716b43929b9195adfee1de00c:
$ make omap3_defconfig $ make uImagePreparing some boot.scr is done with:
$ mkimage -A arm -O linux -T script -C none -d boot boot.scrEnjoy!
I am too lazy to do a network installation over USB, so for now the filesystem obtained on the EVM and the OMAP Linux kernel can be used on the Overo.
The boot files are specific to the Overo:
Overo # setenv bootargs console=ttyS2,115200 root=/dev/mmcblk0p2 rw rootwait Overo # mmc init; fatload mmc 0 0x80300000 uImage; bootm 0x80300000This is captured in this boot.scr.
$ make overo_config(Signing is necessary. See above.)
U-Boot is configured with:
$ make omap3_overo_config
You can easily boot an Ubuntu Maverick preinstalled image on the OMAP3 EVM. It even supports the LCD now :)
Download an omap preinstalled image on the Ubuntu website. (The OMAP3 image is maverick-preinstalled-netbook-armel+omap.img.gz) If you intend to download frequently, zsync is a good tool.
Uncompress and flash violently to your SD card, overwriting the partition table and everything:
$ zcat maverick-preinstalled-netbook-armel+omap.img.gz >/dev/sdX(Where X better be the correct letter :)
Replace mlo on the boot partition with an MLO for OMAP3 EVM, and do the same with this u-boot.bin. (There are two partitions in the image.) And voilà !
At first boot the root partition is resized to fit in your SD card completely (and the first partition becomes hidden). The image then reboots and goes to the "usual" Ubuntu installer.
If you want a serial console from there, you can drop the following into /etc/init/ttyS0.conf on the SD card:
start on stopped rc RUNLEVEL=[2345] stop on runlevel [!2345] respawn exec /sbin/getty -L 115200 ttyS0 vt102(See Ubuntu help for details.)
You may also need to enable root login by removing the '*' from /etc/shadow on the SD card:
root::14874:0:99999:7:::From there, you can login and install synergy to continue with the installer for example, or install ssh and log in remotely.
Enjoy!
Copyright © 2010 Vincent Stehlé ( vincent.stehle@free.fr). |
![]() |