Forum: PC-Programmierung U-Boot Start-Adresse bestimmen


von olpo (Gast)


Lesenswert?

Hallo,

ich möchte einmal grundsätzlich verstehen, wie die Startadresse für 
U-Boot Apps bestimmt wird.

Ich habe ein UImage, das ich bisher so gestartet habe:
1
uboot> fatload mmc 0 0x00ffffc0 bootstrap.uimage
2
uboot> go 0x01000000

Mit Objdump sehe ich 0x01000000 als Startadresse.

Das selbe Image moechte ich jetzt auf einer anderen, aber sehr ähnlichen 
Plattform starten.
Die Befehle wie oben auszufuehren geht aber nicht.
1
uboot> go 0x01000000
2
## Starting application at 0x01000000 ...
3
undefined instruction
4
pc : [<010000f4>]     lr : [<3ff74bc0>]

Wie kommt das?
Wer bestimmt die Startadresse?
U-Boot, oder die HW, oder das Image?

Wie kriege ich die richtige Startadresse für diese U-Boot - HW 
Kombination raus? Und muss ich mein Image für die neue Adresse dann neu 
bauen?

von ... (Gast)


Lesenswert?

> ich möchte einmal grundsätzlich verstehen, wie die Startadresse für
> U-Boot Apps bestimmt wird.

Beim Linken durch Angabe der Adresse.

von olpo (Gast)


Lesenswert?

... schrieb:
> Beim Linken durch Angabe der Adresse.

Aja...
Wie passt das aber zu meinem Problem, wie oben beschrieben?

Ich benutze das selbe UImage, das laut Objdump die Startadresse 
0x1000000 hat.
Warum funktioniert's auf der einen Plattform und auf der anderen nicht?
(Beides Zynq-Plattformen)

Die Fehlermeldung sieht für mich aus, als wäre die Lade- und/oder 
Einsprungadresse falsch.

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.