Skip to content
  • Kategorien
  • World
  • Aktuell
  • Tags
  • Beliebt
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
linux-nerds.org

linux-nerds.org

  1. Übersicht
  2. Pine64
  3. Quartz64
  4. Quartz64 - dts File bearbeiten

Quartz64 - dts File bearbeiten

Geplant Angeheftet Gesperrt Verschoben Quartz64
quartz64linux
3 Beiträge 1 Kommentatoren 387 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • FrankMF Offline
    FrankMF Offline
    FrankM
    schrieb am zuletzt editiert von FrankM
    #1

    ACHTUNG, nur was für erfahrene Nutzer. Beschädigungen der Hardware nicht ausgeschlossen!! Also, Hirn einschalten!!

    Was ist das dts File?

    Wenn ich das alles richtig verstanden habe, wird in diesem File das SBC hardwaremäßig definiert.

    Beispiel

            cpus {
                    #address-cells = <0x02>;
                    #size-cells = <0x00>;
    
                    cpu@0 {
                            device_type = "cpu";
                            compatible = "arm,cortex-a55";
                            reg = <0x00 0x00>;
                            clocks = <0x02 0x00>;
                            #cooling-cells = <0x02>;
                            enable-method = "psci";
                            operating-points-v2 = <0x03>;
                            cpu-supply = <0x04>;
                            phandle = <0x06>;
                    };
    
                    cpu@100 {
                            device_type = "cpu";
                            compatible = "arm,cortex-a55";
                            reg = <0x00 0x100>;
                            #cooling-cells = <0x02>;
                            enable-method = "psci";
                            operating-points-v2 = <0x03>;
                            cpu-supply = <0x04>;
                            phandle = <0x07>;
                    };
    
                    cpu@200 {
                            device_type = "cpu";
                            compatible = "arm,cortex-a55";
                            reg = <0x00 0x200>;
                            #cooling-cells = <0x02>;
                            enable-method = "psci";
                            operating-points-v2 = <0x03>;
                            cpu-supply = <0x04>;
                            phandle = <0x08>;
                    };
    
                    cpu@300 {
                            device_type = "cpu";
                            compatible = "arm,cortex-a55";
                            reg = <0x00 0x300>;
                            #cooling-cells = <0x02>;
                            enable-method = "psci";
                            operating-points-v2 = <0x03>;
                            cpu-supply = <0x04>;
                            phandle = <0x09>;
                    };
    

    Das File liegt bei der Benutzung des Manjaro Images unter /boot/dtbs/rockchip/ und hat folgenden Namen

    rk3566-quartz64-a.dtb
    

    oder

      rk3566-quartz64-b.dtb
    

    Ok, diese Files sind Binärfiles, das heißt wir können sie nicht einfach lesen, ändern und speichern. Dazu braucht man ein Tool mit dem Namen Device-Tree-Compiler - oder auch dtc

    Installiert man unter Manjaro mit

    pacman -S dtc
    

    Dann kopiert man sich das .dtb mal irgendwo hin, sicher ist sicher 😉

    cp /boot/dtbs/rockchip/rk3566-quartz64-b.dtb /root
    

    Nun wandeln wir das File in ein lesbares Format um.

    dtc -I dtb -O dts -o /root/testfile.dts /root/rk3566-quartz64-b.dtb
    
    • -I dtb - Input format
    • -O dts - Output format
    • -o - Output file
    • und am Ende das Sourcefile

    Für mich etwas seltsamer Aufbau, so das ich immer durcheinander komme. Für mich wäre Quelle -> Ziel logischer. Aber gut, so schreibe ich das mal wieder hier hin, damit ich es beim nächsten Mal nachlesen kann.

    Wir bekommen ein File mit dem Namen testfile.dts

    .dts steht für Source File
    .dtb steht für Binär File

    Dieses File ist ein ganz normales Textfile, was wir nun lesen, ändern und speichern können.

            pmu {
                    compatible = "arm,cortex-a55-pmu";
                    interrupts = <0x00 0xe4 0x04 0x00 0xe5 0x04 0x00 0xe6 0x04 0x00 0xe7 0x04>;
                    interrupt-affinity = <0x06 0x07 0x08 0x09>;
            };
    
            psci {
                    compatible = "arm,psci-1.0";
                    method = "smc";
            };
    
            timer {
                    compatible = "arm,armv8-timer";
                    interrupts = <0x01 0x0d 0x04 0x01 0x0e 0x04 0x01 0x0b 0x04 0x01 0x0a 0x04>;
                    arm,no-tick-in-suspend;
            };
    
            xin24m {
                    compatible = "fixed-clock";
                    clock-frequency = <0x16e3600>;
                    clock-output-names = "xin24m";
                    #clock-cells = <0x00>;
                    phandle = <0xa8>;
            };
    
            xin32k {
                    compatible = "fixed-clock";
                    clock-frequency = <0x8000>;
                    clock-output-names = "xin32k";
                    pinctrl-0 = <0x0a>;
                    pinctrl-names = "default";
                    #clock-cells = <0x00>;
                    phandle = <0xa9>;
            };
    
            sram@10f000 {
                    compatible = "mmio-sram";
                    reg = <0x00 0x10f000 0x00 0x100>;
                    #address-cells = <0x01>;
                    #size-cells = <0x01>;
                    ranges = <0x00 0x00 0x10f000 0x100>;
    
                    sram@0 {
                            compatible = "arm,scmi-shmem";
                            reg = <0x00 0x100>;
                            phandle = <0x05>;
                    };
            };
    
            sata@fc400000 {
                    compatible = "snps,dwc-ahci";
                    reg = <0x00 0xfc400000 0x00 0x1000>;
                    clocks = <0x0b 0x9b 0x0b 0x9c 0x0b 0x9d>;
                    clock-names = "sata\0pmalive\0rxoob";
                    interrupts = <0x00 0x5f 0x04>;
                    interrupt-names = "hostc";
                    phys = <0x0c 0x01>;
                    phy-names = "sata-phy";
                    ports-implemented = <0x01>;
                    power-domains = <0x0d 0x0f>;
                    status = "okay";
                    phandle = <0xaa>;
            };
    

    wird fortgesetzt....

    Im Fediverse -> @FrankM@nrw.social

    1. NanoPi R5S
    2. Quartz64 Model B, 4GB RAM
    3. Quartz64 Model A, 4GB RAM
    4. RockPro64 v2.1
    1 Antwort Letzte Antwort
    0
    • FrankMF Offline
      FrankMF Offline
      FrankM
      schrieb am zuletzt editiert von FrankM
      #2

      Teil 2

      Wir wollen aus dem Souce-File wieder ein .dtb machen.

       dtc -I dts -O dtb -o /root/rk3566-quartz64-b.dtb /root/testfile.dts
      
      • -I dts - Input format
      • -O dtb - Output format
      • -o - Output file
      • und am Ende das Sourcefile

      Wir drehen die beiden Parameter -I und -O um und passen die Files an. Danach kommen ganz viele Warnungen, so was hier

      /root/testfile.dts:1119.3-56: Warning (clocks_property): /mmc@fe2b0000:clocks: cell 0 is not a phandle reference
      /root/testfile.dts:1119.3-56: Warning (clocks_property): /mmc@fe2b0000:clocks: cell 2 is not a phandle reference
      

      Aber, da fehlen mir die Kenntnisse um beurteilen zu können, ob das funktioniert.

      Zum Schluss kopiert man das fertig geändert .dtb wieder in den /boot Ordner.

      cp /root/rk3566-quartz64-b.dtb /boot/dtbs/rockchip/
      

      Das Bord neustarten und hoffen 🙂

      Im Fediverse -> @FrankM@nrw.social

      1. NanoPi R5S
      2. Quartz64 Model B, 4GB RAM
      3. Quartz64 Model A, 4GB RAM
      4. RockPro64 v2.1
      1 Antwort Letzte Antwort
      0
      • FrankMF Offline
        FrankMF Offline
        FrankM
        schrieb am zuletzt editiert von
        #3

        Ich weiß nicht, wonach ich gesucht habe, vermutlich nach

        apt install device-tree-compiler
        

        das gibt es im Manjaro Image nicht, es heißt ganz einfach dtc 😎 Also, ganz einfach mit

        pacman -S dtc
        

        installieren. Dann kann man sich diesen Umweg mit snapd sparen.

        Im Fediverse -> @FrankM@nrw.social

        1. NanoPi R5S
        2. Quartz64 Model B, 4GB RAM
        3. Quartz64 Model A, 4GB RAM
        4. RockPro64 v2.1
        1 Antwort Letzte Antwort
        0
        • FrankMF FrankM verschob dieses Thema von Quartz64 am
        • FrankMF FrankM verschob dieses Thema von Quartz64 - A am
        • FrankMF FrankM hat dieses Thema am angepinnt
        Antworten
        • In einem neuen Thema antworten
        Anmelden zum Antworten
        • Älteste zuerst
        • Neuste zuerst
        • Meiste Stimmen


        • FrankMF

          RockPro64 - Mainline Kernel 6.13.0-1197-ayufan

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben ROCKPro64 rockpro64 linux
          1
          0 Stimmen
          1 Beiträge
          71 Aufrufe
          Niemand hat geantwortet
        • FrankMF

          Debian Bug auf Arm64

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben Linux linux arm64
          1
          0 Stimmen
          1 Beiträge
          187 Aufrufe
          Niemand hat geantwortet
        • FrankMF

          OpenSource - Donations 2024

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben Allgemeine Diskussionen opensource linux donations
          1
          0 Stimmen
          1 Beiträge
          363 Aufrufe
          Niemand hat geantwortet
        • FrankMF

          Debian Bookworm 12.2 released

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben Linux linux debian kde
          1
          0 Stimmen
          1 Beiträge
          152 Aufrufe
          Niemand hat geantwortet
        • FrankMF

          Quartz64 - Jumper BAT ON/OFF

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben Quartz64 - A quartz64 pine64
          1
          2
          0 Stimmen
          1 Beiträge
          227 Aufrufe
          Niemand hat geantwortet
        • FrankMF

          OpenWRT - Firmware Selektor

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben OpenWRT & Ubiquiti ER-X openwrt linux
          1
          1
          0 Stimmen
          1 Beiträge
          273 Aufrufe
          Niemand hat geantwortet
        • FrankMF

          Ubiquiti ER-X - Switch

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben OpenWRT & Ubiquiti ER-X openwrt linux er-x
          1
          1
          0 Stimmen
          1 Beiträge
          302 Aufrufe
          Niemand hat geantwortet
        • FrankMF

          Kopia - Mounten einer Sicherung

          Beobachtet Ignoriert Geplant Angeheftet Gesperrt Verschoben Kopia kopia linux
          1
          1
          0 Stimmen
          1 Beiträge
          239 Aufrufe
          Niemand hat geantwortet
        Powered by NodeBB | Contributors
        © 2022 frank-mankel.de
        Fediverse
        • Anmelden

        • Du hast noch kein Konto? Registrieren

        • Anmelden oder registrieren, um zu suchen
        • Erster Beitrag
          Letzter Beitrag
        0
        • Kategorien
        • World
        • Aktuell
        • Tags
        • Beliebt