Wiederbelebung
Aus Wiki Beagleboard Deutschland
→Nächstältere Version | Nächstjüngere Version←
Inhaltsverzeichnis |
Anzeichen
Ein Anzeichen ist z.B. das euer Beagleboard nicht mehr bootet und nur noch das über die serielle Schnitstelle angezeigt wird:
.............40V.............
oder ihr bekommt einen NAND-Error, wie der:
...40T......... Texas Instruments X-Loader 1.41 Starting on with MMC Reading boot sector 150832 Bytes Read from MMC Starting OS Bootloader from MMC... U-Boot 1.3.3 (Jun 20 2008 - 17:06:22) OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz OMAP3 Beagle Board + LPDDR/NAND RAM Configuration: Bank #0: 80000000 128 MB Bank #1: 88000000 0 kB NAND: NAND device: Manufacturer ID: 0x2c, Chip ID: 0x01 ( AND 128MiB 3,3V 8-bit) NAND bus width 16 instead 8 bit 0 MiB <geht nicht weiter>
Dann seit ihr hier richtig!
Was wollen wir erreichen?
Im besten Fall wollen wir folgendes Bild beim booten auf der seriellen Konsole sehen:
Texas Instruments X-Loader 1.4.2 (Aug 8 2008 - 16:59:05)
Reading boot sector
Booting from mmc
U-Boot 2009.03-rc2-00013-gefb4734 (M�är 18 2009 - 10:55:33)
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
Board revision Ax/Bx
Die ID #5ac400030000000004013f8901001001
Hit any key to stop autoboot: 0
OMAP3 beagleboard.org #
Das Wiederbeleben
Wiederbelebung mit UART über die serielle Schnittstelle
Was ihr braucht
- diese Datei mit Software die ihr benötigt
- x-loader
- eine serielle Verbindung zum Beaglebord über die URAT Buchse (ist die Stiftleiste auf der immer euer Serieller-Adapter gesteckt ist)
- SD-Karte mit FAT-Partition
- Linux
- Terminel-Programm z.B. minicom
Los geht es
Als erstes entpackt ihr die Datei:
tar xfvz boot_omap3_serial.tar.bz2
Dann wechselt ihr in das eben entpackte Verzeichnis:
cd boot_omap3_serial
Nun kopiert ihr die folgenden Dateien auf eure SD-Karte in die FAT-Partition:
cp u-boot.bin /media/disk-1 cp ../files/x-load_revc_v3.bin.ift /media/disk-1
Dann kommt die SD-Karte in das Beagleboard
Als nächstes gebt ihr folgendes ein und drückt Enter, erst danach versorgt ihr das Beagleboard mit Strom(falls ihr bereits einen X-Loader im Nand habt, haltet einfach die User-Taste bei Stromeinschalten gedrückt):
./pserial -p /dev/ttyUSB0 -f x-load.bin
Zu sehen sein sollte folgendes:
Waiting For Device ASIC ID: Press Ctrl+C to stop ASIC ID Detected. Sending 2ndFile: Downloading file: 100.000% completed(12700/12700 bytes)
Dann gebt ihr folgendes ein:
./ukermit -p /dev/ttyUSB0 -f u-boot.bin
Das Ergebniss ist folgendes:
Downloading file: 100.000% completed(162656/162656 bytes) File Download completed
Jetzt ist es an der Zeit das Terminelprogramm zu starten um eine serielle Verbindung mit eurem beaglebor aufzubauen. Ihr solltet dann folgendes sehen (wenn nicht im Terminall, einmal Enter):
OMAP3 beagleboard.org # AT S7=45 S0=0 L1 V1 X4 &c1 E1 Q0 syntax error OMAP3 beagleboard.org #
Die so eben vorgenommenen Einstellungen liegen jetzt nur im RAM des Beagleboards jetzt schreiben wir den X-Loader und U-Boot noch in den NAND.
X-Loader in den NAND schreiben
Dazu gebt für den X-Loader folgendes ein:
mmcinit fatload mmc 0:1 80000000 x-load_revc_v3.bin.ift nand unlock nandecc hw nand erase 0 80000 nand write 80000000 0 80000
Im ganzen sollte das wie folgt von statten gehen:
OMAP3 beagleboard.org # mmcinit
OMAP3 beagleboard.org # fatload mmc 0:1 80000000 x-load.bin.ift_for_NAND
reading x-load.bin.ift_for_NAND
9808 bytes read
OMAP3 beagleboard.org # nand unlock
(Note - if you are using a more recent version of U-Boot, nand unlock is missing
simply skip this step. i.e. U-boot 2009.08)
device 0 whole chip
nand_unlock: start: 00000000, length: 268435456!
NAND flash successfully unlocked
OMAP3 beagleboard.org # nandecc hw
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 write 80000000 0 80000
NAND write: device 0 offset 0x0, size 0x80000
524288 bytes written: OK
U-Boot in den NAND schreiben
Jetzt gebt für den u-boot folgendes ein:
mmcinit fatload mmc 0:1 80000000 u-boot.bin nand unlock nandecc sw nand erase 80000 160000 nand write 80000000 80000 160000
Das sollte jetzt im ganzen so ausgegangen sein:
OMAP3 beagleboard.org # mmcinit
OMAP3 beagleboard.org # fatload mmc 0:1 80000000 u-boot.bin
reading u-boot.bin
147424 bytes read
OMAP3 beagleboard.org # nand unlock
(Note - if you are using a more recent version of U-Boot, nand unlock is missing
simply skip this step. i.e. U-boot 2009.08)
device 0 whole chip
nand_unlock: start: 00000000, length: 268435456!
NAND flash successfully unlocked
OMAP3 beagleboard.org # nandecc sw
OMAP3 beagleboard.org # nand erase 80000 160000
NAND erase: device 0 offset 0x80000, size 0x160000
Erasing at 0x1c0000 -- 100% complete.
OK
OMAP3 beagleboard.org # nand write 80000000 80000 160000
NAND write: device 0 offset 0x80000, size 0x160000
1441792 bytes written: OK
Wenn ihr jetzt das Beagleboard neu startet solltet ihr wieder dieses angezeigt bekommen:
Texas Instruments X-Loader 1.4.2 (Aug 8 2008 - 16:59:05)
Reading boot sector
Booting from mmc
U-Boot 2009.03-rc2-00013-gefb4734 (M�är 18 2009 - 10:55:33)
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
Board revision Ax/Bx
Die ID #5ac400030000000004013f8901001001
Hit any key to stop autoboot: 0
OMAP3 beagleboard.org #
Zum Abschluss könnt ihr noch ganz laut rufen "Es lebt... es lebt... haaahaa Es leeeebt!!!".
