Skip to content

Quartz64 - Image von Peter Geis

Images
  • Es gibt noch ein Test Image. Peter ist sehr aktiv darin, Kerneländerungen upstream zu melden, so weit ich das richtig überblicke. Ich hatte so ein wenig Probleme zu verstehen, wie Peter sein Image aufgebaut hat. Heute habe ich mir als erstes mal die Struktur angesehen.

    Boot-Menü

    So sieht das Boot-Menü aus, wenn man das Image startet.

    Quartz64 Installer
    1:      Buildroot-recovery Quartz64 Model A
    2:      Buildroot-recovery Quartz64 Model A
    3:      Debian-Installer Quartz64 Model A
    4:      Debian-Installer Quartz64 Model B
    5:      Boot Root SDMMC Quartz64 Model A
    6:      Boot Root SDMMC Quartz64 Model B
    7:      Boot Root eMMC Quartz64 Model A
    8:      Boot Root eMMC Quartz64 Model B
    

    SD-Karte

    e9951ad4-34fb-4dce-a01d-a003958d14c7-grafik.png

    Dabei fiel mir auf, das die Partition 7 nur ein leeres Laufwerk ist. Aha, dann weiß ich auch wohin das Debian installiert werden muss.

    Den Debian Installer mit der Option Nummer 3 gestartet und den Installationsvorgang gestartet. Bei der Partitionierung auf Manuell gehen und nur die Partition7 für Root auswählen. Dann weiter machen. Er meckert über nicht vorhandene swap Partition - geschenkt 😉

    Nach Abschluss der Installation neustarten und nun die Option Nummer 5 auswählen. Dann startet er das installierte Debian.

    root@quartz64:/etc# lsb_release -a
    No LSB modules are available.
    Distributor ID:	Debian
    Description:	Debian GNU/Linux 10 (buster)
    Release:	10
    Codename:	buster
    

    Kernel-Version

    root@quartz64:~# uname -a
    Linux quartz64 5.13.0-rc4-next-20210603 #1 SMP PREEMPT Sat Jun 26 13:03:43 UTC 2021 aarch64 GNU/Linux
    
  • Beim Image vom Peter geht die PCIe-Schnittstelle nicht. Wird wohl kein Kernel-Modul geladen, ist auch nicht vorhanden.

  • Ich muss hier mal kurz was parken. Ich komme später darauf zurück.

    Partition 7 vergrößern

    apt install cloud-guest-utils
    growpart -N /dev/sde 7 ##dry-rum
    growpart /dev/sde 7
    resize2fs /dev/sde7
    fdisk -l
    
  • Nach langer Zeit habe ich mich mal wieder mit diesem Image beschäftigt. Peter hat da mittlerweile viel dran gearbeitet und jetzt schau ich mal, was so wie funktioniert. Also, das Image wie gewohnt auf eine SD-Karte und starten. Gewählt habe ich dieses Image -> rk3566-quartz64-a.dtb.img

    Wenn man das Image startet, wird man hiermit begrüßt

    screen01.png

    • Punkt 1Buildroot-recovery startet ein Minimalsystem, womit man verschiedene Dinge auf der Konsole durchführen kann. Das brauchen wir gleich noch.
    • Punkt 2 startet den Debian Installer
    • Punkt 3 startet ein installiertes Debian von der SD-Karte
    • Punkt 4 startet ein installiertes Debian vom eMMC-Modul

    Ich möchte heute mal schauen, ob man ein Minimal-System auf die PCIe-NVMe-Karte installieren kann. Peter hat nämlich den PCIe-Treiber mittlerweile im Kernel mit eingebaut.

    Dazu starte ich den Debian-Installer und führe die Installation durch. Für mich nichts besonderes, das mache ich ja sehr oft. Nach erfolgreicher Installation startet die Installation nicht, weil Peter in seinem Image das so nicht vorgesehen hat.

    Es gibt mehrere Möglichkeiten, das jetzt zu ändern. Wir machen das über UART direkt auf dem Quartz64.

    Die Struktur von Peters Image sieht so aus.

    e50bf2fe-723c-41f8-acba-227e148374ed-image.png

    Ich gehe nicht auf alles ein, die wichtigsten Partitionen haben einen Namen. Uns interessiert hier die Partition Nummer 5 mit dem Namen efi. (Auf der SD-Karte!!) Der Inhalt

    3c5cbf5f-811d-4c1f-95e9-cd007a37155c-image.png

    Im Ordner extlinux liegt die Konfigurationsdatei, die wir bearbeiten müssen. extlinux.config

    default l0
    menu title Quartz64 Installer
    prompt 0
    timeout 50
    
    label l0
    menu label Buildroot-recovery
    linux /vmlinuz
    initrd /rootfs.cpio.zst
    fdt /dtbs/rockchip/rk3566-quartz64-a.dtb
    append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8
    
    label l1
    menu label Debian-Installer
    linux /vmlinuz
    initrd /initrd.gz
    fdt /dtbs/rockchip/rk3566-quartz64-a.dtb
    append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8
    
    label l6
    menu label Boot Root SDMMC
    linux /vmlinuz
    fdt /dtbs/rockchip/rk3566-quartz64-a.dtb
    append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 root=/dev/mmcblk0p7 rootwait
    
    label l9
    menu label Boot Root eMMC
    linux /vmlinuz
    fdt /dtbs/rockchip/rk3566-quartz64-a.dtb
    append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 root=/dev/mmcblk1p7 rootwait
    

    Ich nehme den Eintrag label l9 und passe ihn ein wenig an.

    label l9
    menu label Boot Root NVMe
    linux /dev/nvme0n1p1/vmlinuz
    fdt /dtbs/rockchip/rk3566-quartz64-a.dtb
    append earlycon=uart8250,mmio32,0xfe660000 console=ttyS2,1500000n8 root=/dev/nvme0n1p2 rootwait
    

    Das wird abgespeichert, danach kann man den Quartz64 neustarten und mit Eingabe der Taste 4 startet man dann das Debian von der NVMe SSD.

    root@debian:~# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/root       457G  926M  432G   1% /
    devtmpfs        1.9G     0  1.9G   0% /dev
    tmpfs           2.0G     0  2.0G   0% /dev/shm
    tmpfs           2.0G   17M  1.9G   1% /run
    tmpfs           5.0M     0  5.0M   0% /run/lock
    tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
    /dev/nvme0n1p1  472M   49M  400M  11% /boot
    tmpfs           391M     0  391M   0% /run/user/1000
    

    PCIe

    root@debian:~# lspci
    00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3566 (rev 01)
    01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981
    

    Es handelt sich um ein Debian Buster 10

    VERSION="10 (buster)"
    

    Wollen wir das? Nö

    # deb http://deb.debian.org/debian/ buster main
    
    deb http://deb.debian.org/debian/ bullseye main
    deb-src http://deb.debian.org/debian/ bullseye main
    
    deb http://security.debian.org/debian-security bullseye-security main
    deb-src http://security.debian.org/debian-security bullseye-security main
    
    # buster-updates, previously known as 'volatile'
    deb http://deb.debian.org/debian/ bullseye-updates main
    deb-src http://deb.debian.org/debian/ bullseye-updates main
    

    Danach ein

    apt update && apt upgrade
    

    Neustarten und wir haben ein Debian Bullseye 11 🙂 Dieses Debian nutzt so jetzt nicht den Kernel von Debian, sondern Peters

    root@debian:/etc# uname -a
    Linux debian 5.17.0-rc3 #1 SMP PREEMPT Wed Feb 16 00:41:25 UTC 2022 aarch64 GNU/Linux
    

    Die Entscheidung überlasse ich Euch, ob ihr das Ändern wollt. Ich lasse das jetzt mal so. Wenn ihr wollt, das die Installation von alleine startet, dann müsst ihr Label 0 anpassen, das startet nach einem Timeout automatisch.

  • [V] Quartz64B V1.3

    Frank's Resterampe
    1
    0 Stimmen
    1 Beiträge
    107 Aufrufe
    Niemand hat geantwortet
  • Quartz64 - Plebian

    Quartz64
    2
    0 Stimmen
    2 Beiträge
    144 Aufrufe
    FrankMF

    Mal beim Kaffee eben ausprobieren.

    Die Releases findet man hier -> https://github.com/Plebian-Linux/quartz64-images/releases

    Und ein paar Anmerkungen zum Image -> https://github.com/Plebian-Linux/quartz64-images/blob/main/RUNNING.md

    User:pleb PW: pleb

    Passwort muss wie gewohnt beim ersten Start geändert werden.

    Danach habe ich das Debian aktualisiert

    apt update && apt upgrade

    Danach haben wir dann einen

    root@plebian-quartz64b:~# uname -a Linux plebian-quartz64b 6.1.0-1-arm64 #1 SMP Debian 6.1.4-1 (2023-01-07) aarch64 GNU/Linux

    recht aktuellen Kernel. Die Debian Version ist

    root@plebian-quartz64b:/etc# cat debian_version bookworm/sid

    Bookworm ist das kommende Debian 12, das soll so ca. im März(?) released werden.

    Mit blkid werden alle angeschlossenen Laufwerke angezeigt.

    root@plebian-quartz64b:/etc# blkid /dev/nvme0n1p1: UUID="497aa9d6-2e0c-4927-bb8f-9927970b1abe" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="bd856e70-94c0-3345-a9d6-7ff080b5a2e0" /dev/mmcblk0p3: LABEL="root" UUID="da21d2fe-1093-46d2-bd96-5fb6b11e07eb" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="root" PARTUUID="3fbd2cf5-e08d-4f39-8ca4-9fb5cff746df" /dev/mmcblk0p1: PARTLABEL="idbloader" PARTUUID="3eac6306-dee4-4c0c-9cfa-2d610b74b61b" /dev/mmcblk0p2: PARTLABEL="uboot" PARTUUID="7129c8a9-86f4-4807-be66-7d12398c6e9a" /dev/sda4: LABEL="linux-root" UUID="b1612f09-7ae0-4217-be0e-bdc2e51248d1" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="cdc03a35-d726-48f6-8bef-918981debbf6" /dev/sda2: SEC_TYPE="msdos" LABEL_FATBOOT="boot-efi" LABEL="boot-efi" UUID="6891-ACCB" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="boot_efi" PARTUUID="0af3de6b-3b38-42f3-ae0c-336c5d39c874" /dev/sda3: LABEL="linux-boot" UUID="e64ed73c-b603-43af-851c-d5eef81a1aa9" BLOCK_SIZE="1024" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="b3b30dbb-4dcb-4652-aef1-ebc720eb0e59" /dev/sda1: PARTLABEL="loader1" PARTUUID="86d433a9-c91b-48aa-9867-36ef588a600f"

    Man sieht meine angeschlossene NVMe SSD und die Platte am USB3.

    Man hat eine HDMI Ausgabe, Netzwerk ist klar, der WiFi-Chip geht nicht. Dazu steht im Readme

    Plebian (or Debian, for that matter) does not yet properly package the wireless firmware needed for the Model B or SOQuartz's Wi-Fi chip. Therefore, Wi-Fi won't work out of the box.

    Müsste man sich also mit beschäftigen....

    Ansonsten macht das für mich auf den ersten Blick einen soliden Eindruck.

  • Quartz64 - Modell B - Was geht? (Peter Geis Image)

    Quartz64 - B
    1
    0 Stimmen
    1 Beiträge
    113 Aufrufe
    Niemand hat geantwortet
  • Kernel 5.19-rc1

    Quartz64
    2
    0 Stimmen
    2 Beiträge
    141 Aufrufe
    FrankMF

    Man kann dann den aktuell Kernel

    [root@frank-pc ~]# uname -a Linux frank-pc 5.17.0-3-MANJARO-ARM-Q64 #1 SMP PREEMPT Sat Jun 4 14:34:03 UTC 2022 aarch64 GNU/Linux

    mit diesem Befehl aktualisieren

    sudo pacman -S linux-rc linux-rc-headers

    Man wechselt dann vom Zweig linux-quartz64 auf linux-rc. Der Zweig linux-rc entspricht dem Mainline Kernel.

    Achtung! Zum Zeitpunkt der Erstellung des Beitrages crasht das Eure Installation!!

    Ursache ist, das es aktuell diesen Kernel

    linux-rc-5.18.rc7-7-aarch64

    installiert, dieser enthält aber keine Unterstützung für das Modell B.

    Und zum Nachschauen, ob schon was Neues da ist 😉

    [root@frank-pc ~]# pacman -Ss linux-rc linux-rc-headers core/linux-rc-headers 5.18.rc7-7 Header files and scripts for building modules for linux kernel - AArch64 multi-platform (release candidate)
  • Quart64 - Modell B - Was geht? (Manjaro Image)

    Angeheftet Quartz64 - B
    1
    0 Stimmen
    1 Beiträge
    144 Aufrufe
    Niemand hat geantwortet
  • Quartz64 - Kühler

    Verschoben Quartz64 - A
    3
    0 Stimmen
    3 Beiträge
    275 Aufrufe
    FrankMF

    @thc013 I use an thermal pad. So i think it isn't an problem.

  • Quartz64 - PCIe Schnittstelle

    Verschoben Quartz64 - A
    1
    0 Stimmen
    1 Beiträge
    207 Aufrufe
    Niemand hat geantwortet
  • Quartz64 - Images

    Angeheftet Verschoben Archiv
    2
    0 Stimmen
    2 Beiträge
    226 Aufrufe
    FrankMF

    Manjaro Images -> https://github.com/manjaro-arm/quartz64-bsp-images/releases

    Ab Dev 20211117 mit HDMI-Ausgabe!