Forum: Mikrocontroller und Digitale Elektronik ADB4000 + openembeeded + opie-image = boot Probleme


von Gregor (Gast)


Lesenswert?

Hallo.

Ich habe ein ADB4000 Board mit einem AT91SAM9G45 Prozessor von 
in-circuit.de

Nun hab ich mich in den letzen Tagen mit OpenEmbedded gespielt und auch 
schon erfolgreich images mit bitbake gebaut. Da das ADB4000 schon als 
board in OpenEmbedded aufgenommen ist, war der build des opie-images bis 
auf ein paar kleinere Probleme relativ einfach.

Nach dem Build hab ich das Filesystem in das NFS root entpackt, zusammen 
mit dem uImage.

Hab den NFS Server eingerichtet und der funktioniert auch.

Jedoch komme ich nur bis zu: Uncompressing Linux...
ab da geht es nicht mehr weiter und ich kann den vorgang auch nicht mit 
Strg+C abbrechen.
1
U-Boot 2009.11-dirty (Mai 30 2011 - 16:48:23)
2
3
DRAM:  128 MB
4
Flash:  1 MB
5
NAND:  256 MiB
6
In:    serial
7
Out:   serial
8
Err:   serial
9
MMC:   Atmel MCI: 0
10
Net:   macb0
11
Hit any key to stop autoboot:  0
12
macb0: PHY present at 1
13
macb0: Starting autonegotiation...
14
macb0: Autonegotiation complete
15
macb0: link up, 100Mbps full-duplex (lpa: 0x45e1)
16
Using macb0 device
17
File transfer via NFS from server 10.0.0.10; our IP address is 10.0.0.15
18
Filename '/media/data/oetmp/deploy/eglibc/images/adb4000/uImage'.
19
Load address: 0x70400000
20
Loading: #################################################################
21
         #################################################################
22
         #################################################################
23
         #################################################################
24
         #################################################################
25
         ################################################################
26
done
27
Bytes transferred = 1990648 (1e5ff8 hex)
28
## Booting kernel from Legacy Image at 70400000 ...
29
   Image Name:   Angstrom/2.6.33/adb4000
30
   Image Type:   ARM Linux Kernel Image (uncompressed)
31
   Data Size:    1990584 Bytes =  1.9 MB
32
   Load Address: 70008000
33
   Entry Point:  70008000
34
   Verifying Checksum ... OK
35
   Loading Kernel Image ... OK
36
OK
37
38
Starting kernel ...
39
40
Uncompressing Linux...

Meine Bootvariablen sehen so aus:
1
ICnova> printenv
2
serial#=138000307
3
ethact=macb0
4
filesize=1DFAC0
5
fileaddr=70400000
6
mask=255.255.255.0
7
gw=10.0.0.138
8
bootdelay=0
9
 bootargs=nfsroot=/media/data/oetmp/deploy/eglibc/images/adb4000 ip=10.0.0.15:10.0.0.2::::eth0:none
10
serverip=10.0.0.10
11
ipaddr=10.0.0.15
12
bootargs=nfsroot=/media/data/oetmp/deploy/eglibc/images/adb4000 ip=10.0.0.15:10.0.0.10::::eth0:none
13
bootcmd=nfs 0x70400000 /media/data/oetmp/deploy/eglibc/images/adb4000/uImage; bootm
14
stdin=serial
15
stdout=serial
16
stderr=serial
17
18
Environment size: 514/131068 bytes
19
ICnova>
Den primären und sekundären Bootloader hab ich nicht verändert d.h. es 
ist noch immer der originale Bootloader darauf, der von in-circuit 
aufgespielt wurde.

Ich frage mich nun ob ich diese Bootloader durch die Bootloader- Dateien 
ersetzen muss die OE generiert hat. Sollten die nicht die Gleichen sein, 
wie jene die Original schon auf dem Modul installiert sind? Ich 
kompiliere OE ja für das ADB4000 board. Möglicherweise kann da jemand 
Licht ins Dunkel bringen.

Das neue Aufspielen der Bootloader will ich wenn es geht vermeiden, weil 
ich derzeit noch kein JTAG Programmiertool besitze, was mich gleich zu 
meiner zweiten Frage bringt: Gibt es eigentlich eine Möglichkeit die 
Bootloader, also U-Boot.bin und AT91-bootstrap.bin über den NFS Server 
zu installieren? Das wäre nämlich die komfortabelste Methode, da ich 
keine neue Hardware brauche.
Jedenfalls hab ich in der U-Boot Dokumentation 
ftp://ftp1.digi.com/support/documentation/90000852_c.pdf auf Seite 27 
eine Anleitung dazu gefunden. Dennoch werde ich jetzt nicht besonders 
schlau daraus. Vielleicht kann mir das jemand genauer erklären.

Danke schon einmal für eure Hilfe!

Gregor

von Gregor (Gast)


Lesenswert?

Keiner eine Idee?

Ich hab auch das helloworld-image (das kleinstmögliche Image das nur 
hello world auf der Konsole ausgeben sollte) zu booten versucht und es 
funktioniert auch nicht.

bitbake erzeugt ein u-boot-adb4000-2009.11-r2.bin während des Builds.

der Version Befehl im u-boot auf dem Board gibt aus:

ICnova> version

U-Boot 2009.11-dirty (Mai 30 2011 - 16:48:23)

Also beides die 2009.11 Version, wobei bitbake offensichtlich eine 
neuere -r2 Version erzeugt. Könnte also die offensichtlich ältere, auf 
dem Board installierte u-boot Version das Problem sein? Eigentlich 
sollte der Bootvorgang bei "Uncompressing Linux..." ja schon 
abgeschlossen sein?

Möglicherweise passt auch etwas bei meinen Umgebungsvariablen nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.