In case of erased or corrupted NAND, the only output from Beagleboard you will see in your Terminal is some garbage. The bootrom does not reach the MMC bootstage anymore, or is not even able to bootload into the first or second stage (x-loader, u-boot). Pushing the User button to change the boot order to USB -> UART -> MMC -> NAND won't help either in this case.
The Beagleboard recovery wikipage suggests three methods of which UART recovery proved to be successful.
Tools required
Recovery
1) Preparing the boot tools and SD card
Unpacking boot_omap3_serial.tar.bz2. The package contains an x-loader and u-boot binary that will be uploaded to the beagleboard for the rescue. Both will be replaced later by the versions from the SD card and permanently written to NAND.
tar -xjvf boot_omap3_serial.tar.bz2
cd boot_omap3_serial
Copy x-loader and u-boot to the FAT partition of the SD card
cp x-load_revc_v3.bin.ift /media/boot/x-load.bin.ift
cp u-boot-revc4.bin /media/boot/u-boot.bin
2) Upload x-loader and u-boot
First power off the beagleboard and connect the serial cable. Enter the following command to upload the temporary x-loader:
./pserial -p /dev/ttyUSB0 -f x-load.bin
Power-on the beagleboard. If there is already an x-loader in NAND push the user button so that NAND boot is tried after the UART boot.
Terminal output:
Waiting For Device ASIC ID: Press Ctrl+C to stop
ASIC ID Detected.
Sending 2ndFile:
Downloading file: 100.000% completed(12700/12700 bytes)
Upload the temporary u-boot.bin
./ukermit -p /dev/ttyUSB0 -f u-boot.bin
Terminal output:
Downloading file: 100.000% completed(162656/162656 bytes)
File Download completed
3) Connect to the temporary u-boot console
Don't reset the beagleboard, x-loader and u-boot are only in memory. Connect with the Terminal program to the beagleboard. It should display the following:
OMAP3 beagleboard.org # AT S7=45 S0=0 L1 V1 X4 E1 Q0
syntax error
OMAP3 beagleboard.org #
4) Writing x-loader and u-boot to NAND
The x-loader and u-boot from the SD card need to be flashed to NAND.
Flashing the x-loader:
mmcinit
fatload mmc 0:1 80000000 x-load.bin.ift
nand unlock
nandecc hw
nand erase 0 80000
nand write 80000000 0 80000
Flashing u-boot:
mmcinit
fatload mmc 0:1 80000000 u-boot.bin
nand unlock
nandecc sw
nand erase 80000 160000
nand write 80000000 80000 160000
5) Restart
After restart, the Beagleboard is supposed to be revitalized!
References and Links