Skip to content

Quartz64 - Was geht?

Angeheftet Verschoben Quartz64 - A
  • Funktionen

    Diese Tabelle bezieht sich nur auf die Releases des Manjaro ARM Teams.

    Seit DEV 20211117 haben wir eine funktionierende HDMI-Ausgabe. Seitdem hat Dan vom Manjaro Team auch Desktop-Versionen im Angebot 😉

    Es gibt folgende Desktops zum Ausprobieren

    • Gnome
    • KDE Plasma
    • Mate
    • Sway
    • XFCE
    • und eine Minimal-Version

    Bei allen Varianten kann man zwischen folgenden Kernel-Versionen umschalten

    • linux-quartz64
    • linux-rc

    linux-quartz64 ist ein Kernelzweig, der auf der Arbeit von Peter Geis basiert.

    linux-rc basiert auf dem Mainline-Kernel von kernel.org

    Das Entwicklerteam ist anders als z.B. zu ROCKPro64 Zeiten, darauf bedacht alle Änderungen upstream zu senden, damit man in Zukunft alles direkt im Kernel hat. Eine gute Entwicklung!

    Laden kann man die Kernel mit

    pacman -S linux-quartz64
    pacman -S linux-rc
    

    Aktuell teste ich immer mit der aktuellsten Version. Wenn es Unterschiede, vom Kernel her gibt, werde ich das vermerken.

    Funktion MANJARO ARM Bemerkungen Kernel Version
    CPU
    Cores 4 * Cortex-A55
    cpufreq Min. 408 MHz, Max. 1800 MHz seit 5.14.0-rc1-0.4
    NPU
    --- --- --- ---
    Boot
    Boot from SD-Card Ja
    Boot from eMMC ---
    Boot from USB2 --- u-boot im SPI
    Boot from USB3 --- u-boot im SPI
    Boot from PCIe SATA u-boot im SPI
    Boot from PCIe NVMe --- u-boot im SPI
    u-boot im SPI --- Meinem Board fehlt der SPI *3
    Netzwerk
    LAN Ja 939 / 934 Mbits/sec / zu viele Retr
    WLAN Ja ap6398s-firmware (Modell A) ap6256-firmware (Modell B) *2 Nur mit linux-quartz64
    Bluetooth Nein
    Storage
    USB2 Schreibgeschwindigkeit = XX MB/s
    USB3 Schreibgeschwindigkeit = 26,3 MB/s Nur USB2 Geschwindigkeit Nur mit linux-quartz64
    SATA 3.0 6Gb/s Port Schreibgeschwindigkeit = XX MB/s 2,5 Zoll HDD 1TB
    PCIe
    SATA Schreibgeschwindigkeit = 102 MB/s MB/s Mit Pine64 PCIe -> SATA-Adapter Nur mit linux-quartz64
    NVMe SSD Ja - Schreibgeschwindigkeit = 353 MB/s Samsung 970 PRO 512GB Nur mit linux-quartz64
    LAN Ja *1 Nur mit linux-quartz64
    HDMI
    Ausgabe Ja Ohne VPU-Beschleunigung (nur CPU)
    u-boot über HDMI Ja
    Sound
    Sound über HDMI Ja seit 5.16.0-rc2-4-MANJARO-ARM Nur linux-rc
    Sound über Analog Buchse Ja seit Kernel 5.14.0-rc1-0.6-MANJARO *5
    Sound über SPDIF Ja mit optionalem SPDIF-Modul (Kernel 5.15.0-rc1-0.3-MANJARO) *4 Denke geht, muss noch getestet werden! Nur linux-rc

    *1 > 01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)

    *2 https://forum.frank-mankel.org/topic/1035/wlan-auf-der-konsole-einrichten

    *3 https://forum.frank-mankel.org/topic/1042/quartz64-missing-spi

    *4 https://forum.frank-mankel.org/topic/1073/quartz64-spdif-modul

    *5 Kernel Modul muss manuell geladen werden modprobe snd-soc-rk817 (nur rc1-5, seit rc1-6 gefixt)

  • Auch, wenn's noch viel zu früh ist... könntest Du bitte mal einen Versuch mit sbc-bench wagen?

  • @tkaiser Hallo Thomas, so bald ich ein Armbian habe, was nicht ständig kaputt gemacht wird teste ich gerne 😁

    Ok, Spaß beiseite. Aktuell habe ich ja nur zwei Images zum Testen. Das Manjaro, da kenne ich mich kaum aus, muss ich fast alles googeln..... Das andere kann ein Debian installieren, muss ich noch mal ausprobieren.

    Manjaro ist vom Kernel her sehr aktuell.

    [frank@quartz64 ~]$ uname -a
    Linux quartz64 5.13.0-rc4-0.4-next-20210603-MANJARO-ARM #1 SMP PREEMPT Fri Jun 18 13:55:03 UTC 2021 aarch64 GNU/Linux
    

    Das andere basiert auf Debian Buster(?) und benutzt 4.19.0.7.

    So bald ich was habe, wo es sich lohnt, werde ich es testen und hier veröffentlichen.

  • sbc-bench sollte auch unter Manjaro laufen (zumindest habe ich Ergebnisse mit der Distro eingereicht bekommen, siehe bspw. http://ix.io/1lBy). Könnte nur sein, dass die Dependencies fehlen, also all die Packages, die unter Debian/Ubuntu automatisch installiert werden, unter Manjaro händisch per pacman installiert werden müsste.

    Vergleich 4.19/BSP und Mainline ist übrigens extrem interessant (auch und vor allem für die Leute, die am Mainline-Kernel arbeiten, weil Kernel-Entwickler üblicherweise nie benchmarken und daher sbc-bench-Nummern, die stark differieren, einen Hinweis auf zu beackernde Gebiete geben könnten).

  • @tkaiser Installiert, hoffentlich alle Abhängigkeiten installiert.

    System too busy for benchmarking: 22:03:37 up 6 min,  1 user,  load average: 0,11, 0,22, 0,12
    System too busy for benchmarking: 22:03:42 up 6 min,  1 user,  load average: 0,10, 0,21, 0,12
    
    ./sbc-bench.sh: Zeile 65: /sys/devices/system/cpu/cpufreq/policy0/scaling_governor: Datei oder Verzeichnis nicht gefunden
    sbc-bench v0.7.7
    
    Installing needed tools. This may take some time..../sbc-bench.sh: Zeile 520: iostat: Kommando nicht gefunden.
     Done.
    Checking cpufreq OPP... Done.
    Executing tinymembench. This will take a long time...
    
  • d05c55cf-1829-4081-90d8-0fe66a28984b-grafik.png

  • Moin,

    iostat ist auch in Arch/Manjaro im sysstat Package zu finden – Installation ist supersimpel: https://discover.manjaro.org/packages/sysstat

  • FrankMF FrankM hat dieses Thema am angepinnt
  • Seit heute LAN

    [root@quartz64 modules-load.d]# iperf3 -c 192.168.3.213
    Connecting to host 192.168.3.213, port 5201
    [  5] local 192.168.3.245 port 52246 connected to 192.168.3.213 port 5201
    [ ID] Interval           Transfer     Bitrate         Retr  Cwnd
    [  5]   0.00-1.00   sec   114 MBytes   953 Mbits/sec    0    411 KBytes       
    [  5]   1.00-2.00   sec   113 MBytes   944 Mbits/sec    0    411 KBytes       
    [  5]   2.00-3.00   sec   112 MBytes   940 Mbits/sec    0    433 KBytes       
    [  5]   3.00-4.00   sec   113 MBytes   947 Mbits/sec    0    502 KBytes       
    [  5]   4.00-5.00   sec   112 MBytes   942 Mbits/sec    0    527 KBytes       
    [  5]   5.00-6.00   sec   112 MBytes   940 Mbits/sec    0    527 KBytes       
    [  5]   6.00-7.00   sec   112 MBytes   940 Mbits/sec    0    527 KBytes       
    [  5]   7.00-8.00   sec   112 MBytes   936 Mbits/sec    0    527 KBytes       
    [  5]   8.00-9.00   sec   113 MBytes   948 Mbits/sec    0    527 KBytes       
    [  5]   9.00-10.00  sec   112 MBytes   937 Mbits/sec    0    527 KBytes       
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Retr
    [  5]   0.00-10.00  sec  1.10 GBytes   943 Mbits/sec    0             sender
    [  5]   0.00-10.00  sec  1.10 GBytes   941 Mbits/sec                  receiver
    
    iperf Done.
    [root@quartz64 modules-load.d]# iperf3 -R -c 192.168.3.213
    Connecting to host 192.168.3.213, port 5201
    Reverse mode, remote host 192.168.3.213 is sending
    [  5] local 192.168.3.245 port 52250 connected to 192.168.3.213 port 5201
    [ ID] Interval           Transfer     Bitrate
    [  5]   0.00-1.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   1.00-2.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   2.00-3.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   3.00-4.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   4.00-5.00   sec   112 MBytes   942 Mbits/sec                  
    [  5]   5.00-6.00   sec   112 MBytes   942 Mbits/sec                  
    [  5]   6.00-7.00   sec   112 MBytes   942 Mbits/sec                  
    [  5]   7.00-8.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   8.00-9.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   9.00-10.00  sec   112 MBytes   941 Mbits/sec                  
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Retr
    [  5]   0.00-10.00  sec  1.10 GBytes   943 Mbits/sec    0             sender
    [  5]   0.00-10.00  sec  1.10 GBytes   941 Mbits/sec                  receiver
    
    iperf Done.
    
  • Hier ein Test mit dem letzten Image vom Peter

  • Die Tabelle habe ich überarbeitet.

  • FrankMF FrankM verschob dieses Thema von Quartz64 am
  • FrankMF FrankM verschob dieses Thema von Quartz64 - A am
  • FrankMF FrankM verschob dieses Thema von Quartz64 am

  • 0 Stimmen
    3 Beiträge
    127 Aufrufe
    FrankMF

    Das Ergebnis

    Screenshot_20211128_090851.png

    Peters Image benutzt ein Debian Buster 10

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

    Kernel

    root@quartz64:~# uname -a Linux quartz64 5.16.0-rc2 #1 SMP PREEMPT Sat Nov 27 03:43:14 UTC 2021 aarch64 GNU/Linux

    Gut an diesem Image vom Peter ist der funktionierende PCIe Port 🙂 Nicht so gut ist das Image, wenn man längerfristig damit arbeiten möchte. Der Aufbau ist dafür nicht wirklich gut geeignet. Wenn man das möchte, dann benutzt man lieber das Manjaro Image. Das wird gepflegt und man bekommt alle Änderungen und Patches auch geliefert.

    Ich hoffe, das die PCIe Patches auch bald im Manjaro Image ankommen, doch dafür müssen diese Upstream sein weil das Manjaro diesen Kernel nutzt (linux-rc). Und wie ich heute Morgen gelesen habe, es besteht Hoffnung für einen funktionierenden USB3-Port 🤗

  • Quartz64 - working HDMI output

    Verschoben Quartz64
    5
    0 Stimmen
    5 Beiträge
    206 Aufrufe
    FrankMF

    Das Problem mit dem Sound ist mit folgendem Kernel behoben

    [root@quartz64 ~]# uname -a Linux quartz64 5.16.0-rc1-6-MANJARO-ARM #1 SMP PREEMPT Sun Nov 21 15:42:16 UTC 2021 aarch64 GNU/Linux
  • Quartz64 - Manjaro Image Aktuell!

    Images
    8
    0 Stimmen
    8 Beiträge
    319 Aufrufe
    FrankMF

    Gestern hatte ich nach langer Zeit mal wieder das Bedürfnis zu schauen, was Manjaro so macht 😉

    Dieses Image habe ich ausgewählt. Manjaro-ARM-kde-plasma-quartz64-a-20220418.img.xz

    Nach der Installation bemerkt, das jetzt beim Login steht, das man eine Wayland Session startet 😍

    20220421_205322.jpg

    Man merkt dem KDE Plasma direkt an, das er wesentlich weniger Latenzen hat, als das olle X11. Ich musste dann dem Dan wieder auf die Nerven gehen, weil ich doch von dem Thema Grafik, 3D-Beschleunigung usw. NULL Ahnung habe. Er meinte dann zu mir, das Panfrost mittlerweile aktiv ist. Panfrost?

    Schauen wir mal nach. https://docs.mesa3d.org/drivers/panfrost.html

    The Panfrost driver stack includes an OpenGL ES implementation for Arm Mali GPUs based on the Midgard and Bifrost microarchitectures.

    Im Quartz64 ist folgende GPU verbaut

    Mali-G52 2EE Bifrost GPU@800MHz

    Diese wird von Panfrost unterstützt.

    Jetzt stand da noch OpenGLS ES, was ist das?

    OpenGL for Embedded Systems (OpenGL ES or GLES) is a subset[2] of the OpenGL computer graphics rendering application programming interface (API) for rendering 2D and 3D computer graphics such as those used by video games, typically hardware-accelerated using a graphics processing unit (GPU).
    Quelle: https://en.wikipedia.org/wiki/OpenGL_ES

    Ich habe dann mal geschaut, wie man Panfrost testen kann. Hier bin ich gelandet.

    Ich habe zwei Test gemacht, einmal mit X11 und das andere Mal mit Wayland. Von dem X11 Test habe ich ein kleines Video angefertigt.

    Am Ende könnt ihr den glmark Score erkennen 112

    Und hier mal das Ergebnis mit Wayland 365 Ich würde jetzt als Noob sagen, Wayland ist 3,3 mal schneller. Da ich aber eingangs schon erwähnte, das ich von dem Thema keine Ahnung habe, überlasse ich den Menschen mit Fachkenntnissen die Einschätzung.

    2022-04-21_20-49.png

    Mein subjektiver Eindruck ist, Wayland läuft wesentlich besser. Das habe ich auch auf meinem Haupt-PC schon festgestellt. Vor allen Dingen die Latenz ist um ein vielfaches besser. Aber wir dürfen auch nicht verschweigen, bei Wayland geht vieles noch immer nicht. Zum Beispiel konnte ich das Video nur auf X11 mit SimpleScreenRecorder machen.

    Leider sind wir immer noch nicht an dem Punkt, wo z.B. Youtube Videos im FF einwandfrei laufen. Von der HArdware Unterstützung brauchen wir auch nicht zu sprechen, da geht immer noch nicht so richtig viel. Die PCIe Schnittstelle habe ich noch kurz mit einer NVMe getestet.

    [frank@frank-pc e5f97e94-0e45-4fa6-b8fb-373e35c708f8]$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Iozone: Performance Test of File I/O Version $Revision: 3.489 $ Compiled for 64 bit mode. Build: linux Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins Al Slater, Scott Rhine, Mike Wisner, Ken Goss Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR, Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner, Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone, Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root, Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer, Vangel Bojaxhi, Ben England, Vikentsi Lapa, Alexey Skidanov, Sudhir Kumar. Run began: Thu Apr 21 21:49:06 2022 Include fsync in write timing O_DIRECT feature enabled Auto Mode File size set to 102400 kB Record Size 4 kB Record Size 16 kB Record Size 512 kB Record Size 1024 kB Record Size 16384 kB Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 102400 4 53221 74745 76900 77656 46983 73982 102400 16 135113 181063 182235 183108 131535 180494 102400 512 354092 361813 357888 362080 351316 361385 102400 1024 368909 373104 374076 378286 372179 372881 102400 16384 384251 378963 376150 377334 376874 377929 iozone test complete.
  • Quartz64 - Image von Peter Geis

    Images
    4
    0 Stimmen
    4 Beiträge
    314 Aufrufe
    FrankMF

    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.

  • Quartz64 - sbc-bench

    Verschoben Quartz64
    7
    0 Stimmen
    7 Beiträge
    339 Aufrufe
    FrankMF

    @tkaiser Nein, kein Kühler und kein Lüfter. Nacktes Board 😁

  • Quartz64 - Modell A lieferbar

    Verschoben Quartz64
    4
    0 Stimmen
    4 Beiträge
    273 Aufrufe
    FrankMF

    Durch den Zoll ist es auch...

    aa906c24-2e67-404d-aad2-69fe1832229b-grafik.png

  • Wichtige Links zum Quartz64

    Angeheftet Verschoben Quartz64
    1
    0 Stimmen
    1 Beiträge
    214 Aufrufe
    Niemand hat geantwortet
  • Quartz64

    Verschoben Quartz64
    3
    0 Stimmen
    3 Beiträge
    476 Aufrufe
    FrankMF

    Es gibt Neuigkeiten!

    We are currently planning on making Quartz64 available next month. However, given the unpredictability of the manufacturing situation, please consider this a tentative time-frame. Once the production is underway, I’ll publish a dedicated post with additional information and an exact availability date.

    Although the hardware will soon see the light of day, the software is still not ready for primetime. Indeed, despite a truly monumental effort from various parties and lightning fast development progress, Quartz64 is still in early stages of development. This is understandable given how young the SoC is and how few Quartz64 (and other RK3566 boards) are currently available to developers. We will therefore target this initial production-run at developers and technically inclined enthusiasts able to help in the bring-up process. The soon-to-be scheduled batch will be large enough to cover all developers interested in picking up a unit (and then some), but end-users will specifically be asked to wait a little longer. After all, it is in everyone’s best interest that these early boards end up in the right hands at this early stage of development.

    Quelle: https://www.pine64.org/2021/05/15/may-update-connection-established/