Abo
  • Services:
Anzeige
Die CPU des Raspberry Pi 3 unterstützt Aarch64.
Die CPU des Raspberry Pi 3 unterstützt Aarch64. (Bild: Martin Wolf/Golem.de)

Profis konfigurieren U-Boot

Die professionellere und elegantere Installation sieht vor, den Kernel unter einem eigenen Namen auf die Micro-SD-Karte zu kopieren, den richtigen Device Tree zu verwenden und vor allem die Kernelmodule auf der Rootpartition zu platzieren. Durch die neuen Namen für Kernel und Device Tree muss außerdem die Bootloader-Konfiguration von U-Boot angepasst werden. Die U-Boot-Skriptdatei dafür folgt:

Anzeige

U-Boot-Skript boot.txt

  1. fatload mmc 0:1 ${fdt_addr_r} bcm2710-rpi-3-b.dtb
  2. fatload mmc 0:1 ${kernel_addr_r} Image.4.8
  3. setenv bootargs console=ttyS0,115200 \
  4. root=/dev/mmcblk0p2 rootfstype=ext4 rootwait rw
  5. booti ${kernel_addr_r} - ${fdt_addr_r}

Diese erhält mit Hilfe des Programms mkimage einen U-Boot-Header. Das Tool mkimage ist übrigens im Paket u-boot-utils enthalten.

  1. cd arm/linux
  2.  
  3. # Installation von Kernel und Device Tree
  4. #
  5. cp arch/arm64/boot/Image /media/$Username/$Bootpartition/Image.4.8
  6. cp arch/arm64/boot/dts/broadcom/bcm2710-rpi-3-b.dtb \
  7. /media/$Username/$Bootpartition/
  8.  
  9. # Installation der Kernelmodule
  10. #
  11. make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 \
  12. INSTALL_MOD_PATH=/media/$Username/$Rootpartition/ \
  13. modules_install
  14.  
  15. # Anlegen des U-Boot-Skripts boot.txt
  16. #
  17. cd /media/$Username/$Bootpartition
  18. vim boot.txt
  19.  
  20. # Bootloader-Skript generieren
  21. #
  22. sudo apt install u-boot-tools
  23. mkimage -A arm64 -O linux -T script -C none -d boot.txt boot.scr.uimg

Der U-Boot-Bootloader ist letztlich ähnlich leicht als 64-Bit-Variante zu generieren wie der Kernel. Dazu holt man per Git den Quellcode auf die heimische Maschine und setzt die Cross-Generierungsvariablen ARCH und CROSS_COMPILE, konfiguriert U-Boot für den Raspberry Pi 3 und lässt das U-Boot schließlich per make vom Stapel.

  1. export CROSS_COMPILE=aarch64-linux-gnu-
  2. export ARCH=arm64
  3. git clone git://git.denx.de/u-boot.git
  4. cd u-boot
  5. make rpi_3_defconfig
  6. make
  7. cp u-boot.bin /media/$Username/$Bootpartition/

Nach der Generierung findet sich unter anderem die Datei u-boot.bin im Quellcodeverzeichnis des Bootloaders, die das fertige 64-Bit-Executable darstellt. Zur Installation muss die Datei auf die Bootpartition der Micro-SD-Karte kopiert werden. Außerdem muss die Datei config.txt angepasst werden, die statt u-boot-stubbed.bin natürlich den selbst kompilierten Bootloader nutzen soll.

config.txt

  1. enable_uart=1
  2. # CPU in den 64-Bit-Modus schalten:
  3. arm_control=0x200
  4. kernel_old=1
  5. #kernel=uboot-stubbed.bin
  6. #Selbst generierter Bootloader:
  7. kernel=u-boot.bin
  8. disable_commandline_tags=1
  9.  
  10. # set display Mode to 1920x1080
  11. #hdmi_group=2
  12. #hdmi_mode=82

Wer seinen Raspberry Pi dauerhaft mit dem 64 Bit laufen lassen will, muss sich Gedanken machen, wie er den ab und zu anfallenden Kernelpatches Geltung verschafft. Steht die hier beschriebene Build-Chain, geht das zum Glück einigermaßen simpel, indem der Raspi-Besitzer bei einem anstehenden Update das erwähnte Repository mit »git pull« anzapft und den Kernel neu cross-kompiliert.

Der Raspberry Pi 3 im nicht vorgesehenen 64-Bit-Modus fühlt sich im ersten Testbetrieb gut und auf der Kommandozeile sehr responsiv an. Abseits des guten Gefühls zeigen aber einige (ebenso einfache wie nicht repräsentative und ohne Optimierung durchgeführte) Benchmarks keine nennenswerte Geschwindigkeitsvorteile. Das ist natürlich einerseits bedauerlich, entspricht aber andererseits der ursprünglichen Annahme.

Dennoch erscheint der 64-Bit-Betrieb des Raspberry Pi 3 sinnvoll, und zwar nicht nur für Admins, die sich an falschen Meldungen (ARMv7 anstelle von ARMv8) stören, sondern auch für Software-Entwickler, die die Funktionstüchtigkeit einer Minicomputer-Anwendung auf 64 Bit testen wollen. Denn Rückwärtskompatibilität hin, wenig Speicher her: Irgendwann wird auch die Foundation ein eigenes 64-Bit-System präsentieren.

Eva-Katharina Kunst ist seit den Anfängen von Linux Fan von Open Source. Jürgen Quade, Professor an der Hochschule Niederrhein, hat mit "Embedded Linux lernen mit dem Raspberry Pi" 2014 sein drittes Linux-Buch veröffentlicht. Das gemeinsame Buch "Linux-Treiber entwickeln" ist jüngst in vierter Auflage erschienen. Dieser Artikel erschien in der Ausgabe 12/2016 des Linux Magazins.

 Quellen finden und selber einen Kernel bauen

eye home zur Startseite
tom321 28. Dez 2016

Guten Abend, das Ergebnis von : export CROSS_COMPILE=aarch64-linux-gnu- export ARCH...

sg-1 20. Dez 2016

dem direkt verlinkten image? Beim Klick darauf wird direkt de download gestartet. dabei...

The Troll 23. Nov 2016

Man kann auch einfach SUSE Linux Enterprise for Pi3 nehmen https://www.suse.com...

FreiGeistler 23. Nov 2016

Erinnert mich an die Probleme mit Android. Könnte Android (theoretisch) auch Device Tree...

pi314 23. Nov 2016

Es gibt auch ein "richtiges" 64-Bit-System für den pi: Den SUSE Linux Enterprise Server...



Anzeige

Stellenmarkt
  1. HighTech communications GmbH, München
  2. Robert Bosch GmbH, Eisenach
  3. SYNLAB Holding Deutschland GmbH, Leverkusen
  4. GLOBALG.A.P. c/o FoodPLUS GmbH, Köln


Anzeige
Spiele-Angebote
  1. (-13%) 34,99€
  2. (-80%) 4,99€
  3. (-80%) 3,99€

Folgen Sie uns
       


  1. Raumfahrt

    Falsch abgebogen wegen Eingabefehler

  2. Cloud

    AWS bringt den Appstore für Serverless-Software

  3. Free-to-Play-Strategie

    Total War Arena beginnt den Betabetrieb

  4. Funkchip

    US-Grenzbeamte können Pass-Signaturen nicht prüfen

  5. Telekom-Chef

    "Sorry! Da ist mir der Gaul durchgegangen"

  6. WD20SPZX

    Auch Western Digital bringt flache 2-TByte-HDD

  7. Metal Gear Survive im Test

    Himmelfahrtskommando ohne Solid Snake

  8. Cloud IoT Core

    Googles Cloud verwaltet weltweit IoT-Anlagen

  9. Schweden

    Netzbetreiber bietet 10 GBit/s für 45 Euro

  10. Reverse Engineering

    Das Xiaomi-Ökosystem vom Hersteller befreien



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Sam's Journey im Test: Ein Kaufgrund für den C64
Sam's Journey im Test
Ein Kaufgrund für den C64
  1. THEC64 Mini C64-Emulator erscheint am 29. März in Deutschland
  2. Sam's Journey Neues Kaufspiel für C64 veröffentlicht

Age of Empires Definitive Edition Test: Trotz neuem Look zu rückständig
Age of Empires Definitive Edition Test
Trotz neuem Look zu rückständig
  1. Echtzeit-Strategie Definitive Edition von Age of Empires hat neuen Termin
  2. Matt Booty Mr. Minecraft wird neuer Spiele-Chef bei Microsoft
  3. Vorschau Spielejahr 2018 Zwischen Kuhstall und knallrümpfigen Krötern

Samsung C27HG70 im Test: Der 144-Hz-HDR-Quantum-Dot-Monitor
Samsung C27HG70 im Test
Der 144-Hz-HDR-Quantum-Dot-Monitor
  1. Volumendisplay US-Forscher lassen Projektion schweben wie in Star Wars
  2. Sieben Touchscreens Nissan Xmotion verwendet Koi als virtuellen Assistenten
  3. CJ791 Samsung stellt gekrümmten Thunderbolt-3-Monitor vor

  1. Re: Die Xiaomi-App übermittelt den Standort

    logged_in | 19:46

  2. Re: Geht heute schon Ohne CLoud

    Neuro-Chef | 19:46

  3. Re: Das sagt eine Schlange auch

    bombinho | 19:39

  4. Re: Sauerei

    keldana | 19:37

  5. Re: Wozu überhaupt Cloud?

    WalterWhite | 19:34


  1. 17:17

  2. 16:50

  3. 16:05

  4. 15:45

  5. 15:24

  6. 14:47

  7. 14:10

  8. 13:49


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel