"Marvell Armada 370" in QEMU emulieren

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Benutzeravatar
Livingston
Beiträge: 344
Registriert: 04.02.2007 22:52:25
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

"Marvell Armada 370" in QEMU emulieren

Beitrag von Livingston » 28.06.2020 16:56:46

Moinmoin,

ich bin auf der Suche nach einer machine-/cpu-Kombination innerhalb von QEMU, die halbwegs mit meinem debianisierten Buffalo-NAS LS441D übereinstimmt. Das NAS hat einen "Marvell Armada 370"-Prozessor, der einen 32-bittigen armhf-Kernel verträgt, eine funktionierende devicetable habe ich auch bereits ergattert.

Für die Emulation brauche ich keinen 100%-Treffer, da ich nur eine emulierte Umgebung benötige, auf der ich ein paar Sachen kompilieren kann (Kernel-Module, u.U. aber auch einen kompletten Kernel). Auf dem Originalgerät, dauert das einfach zu lange.

Nach längerer Suche sieht es danach aus, als wären Cortex9 oder Cortex15 geeignete Kandidaten für die QEMU-Einstellungen, um darin ein Debian-armhf laufen zu lassen. Als Host für QEMU dient übrigens ein Intel i6700.

Crosscompilieren ginge natürlich auch, aber eine halbwegs nahekommende Emulation hätte schon was.

Passt das oder gibt es entsprechende Erfahrungen?

Benutzeravatar
TRex
Moderator
Beiträge: 6559
Registriert: 23.11.2006 12:23:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: KA

Re: "Marvell Armada 370" in QEMU emulieren

Beitrag von TRex » 29.06.2020 19:42:21

Weder Ahnung noch Erfahrung, aber Interesse am weiteren Fortschritt.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!

Benutzeravatar
hikaru
Beiträge: 11052
Registriert: 09.04.2008 12:48:59

Re: "Marvell Armada 370" in QEMU emulieren

Beitrag von hikaru » 06.07.2020 15:56:30

Ich hatte vor rund 7 Jahren ein ähnliches Anliegen um Software für mein Nokia N900 (OMAP 3430) auf meinem Desktop-PC (mäßig übertakteter i7-2700k) zu compilieren. Als emulierte Maschine hatte ich sowohl "versatile[ap]b"*, als auch "N900"** probiert. Das Ergebnis war ernüchternd. Den damaligen Chromium auf dem N900 selbst zu compilieren dauerte knapp einen Tag***. In qemu dauerte es etwa zwei Tage.
Ich habe dann auch mit dem Gedanken gespielt, mal ordentliches Cross-Compiling zu lernen, aber am Ende siegte Faulheit über Geldbeutel und ich legte mir ein Cubieboard 2 (Allwinner A20, damals mit das Schnellste was armhf für kleines Geld hergab) zu, welches Chromium in etwa 6 Stunden compilierte. Das reichte mir.

Was ich sagen will:
Mit qemu eine andere Architektur zu emulieren bringt meiner betagten Erfahrung nach keine Geschwindigkeitsvorteile. Setz dich auf den Hosenboden und lerne Cross-Compilieren! :THX:
(Oder sei faul und besorg dir eine schnelle native Compilierkiste! :oops: )


*) Ich weiß nicht mehr, welche Variante es war.
**) Galt damals wohl noch als experimentell und war schlecht dokumentiert.
***) Wenn nicht zwischendurch der Watchdog zubiss.

Benutzeravatar
Livingston
Beiträge: 344
Registriert: 04.02.2007 22:52:25
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: "Marvell Armada 370" in QEMU emulieren

Beitrag von Livingston » 10.07.2020 13:49:00

Zwischenstandsmeldung

Leider rennt mir ein wenig die Zeit davon, aber ich komme langsam vorwärts.
Was dem Marvell Armada 370 am nächsten kommt ist wohl Cortex-A9. Da ich ich ohnehin nicht erwarte, meine Linkstation vollständig emulieren zu können, wähle ich eines der Debian-Images aus, das halbwegs passt. Dann werde ich 3 Zeitmessungen für komplette Kernel-Compile-Durchläufe durchziehen.
1. Native auf der Linkstation
2. In der noch rauszupickenden Emulation
3. Crosscompiled unter voller Ausnutzung meines i6700-Prozessors.

Ein anschließender Vergleich mit md5sum/shasum sollte Gewissheit bringen, ob und wie schnell das Gewünschte herauskommt.
Bis demnächst

Antworten