Jump to content

Recommended Posts

Posted

Hi all.

I understand, maybe my board Nanopi Neo CORE is not supported on the forum, but maybe someone will tell me how to write dts correctly

# uname -a
Linux NanoPi-NEO-Core 4.14.111 #126 SMP Mon Feb 22 17:04:18 CST 2021 armv7l armv7l armv7l GNU/Linux

 

I compiled and installed ffmpeg with Cedrus H264 and cedar_ve.ko

After that I see

# dmesg | grep cedar
[    4.982170] cedar_ve: loading out-of-tree module taints kernel.
[    4.988972] sunxi cedar version 0.1

 

I'm trying to edit and compile /boot/sun8i-h3-nanopi-neo-core.dts using sun8i-h3-nanopi-neo-air.dts

 

First I change before soc

        reserved-memory {
                #address-cells = <0x01>;
                #size-cells = <0x01>;
                ranges;

                cma@43c00000 {
                        compatible = "shared-dma-pool";
                        reusable;
                        reg = < 0x57c00000 0x6000000 >;
                        linux,cma-default;
                        phandle = < 0x84 >;
                };
        };

 

and change in soc

                video-engine@01c0e000 {
                        compatible = "allwinner,sunxi-cedar-ve";
                        reg = < 0x1c0e000 0x1000 0x1c00000 0x10 0x1c20000 0x800 >;
                        memory-region = < 0x84 >;
                        syscon = < 0x15 >;
                        clocks = < 0x03 0x29 0x03 0x6c 0x03 0x61 >;
                        clock-names = "ahb", "mod", "ram";
                        resets = < 0x03 0x1a >;
                        interrupts = < 0x00 0x3a 0x04 >;
                        status = "okay";
                };

 

after that I get

# dmesg | grep cedar
[    4.944911] cedar_ve: loading out-of-tree module taints kernel.
[    4.951697] sunxi cedar version 0.1
[    4.955629] [cedar]: install start!!!
[    4.959521] cedar_ve: cedar-ve the get irq is 55
[    4.964193] sunxi-cedar 1c0e000.video-engine: assigned reserved memory node cma@43c00000
[    4.972512] sunxi-cedar 1c0e000.video-engine: syscon failed...
[    4.998164] sunxi-cedar 1c0e000.video-engine: failed to get ahb clock

 

then I change and the board is no longer loaded

                syscon@1c00000 {
                        compatible = "allwinner,sun8i-h3-system-controller", "syscon";
                        reg = < 0x1c00000 0x1000 >;
                        #address-cells = < 0x01 >;
                        #size-cells = < 0x01 >;
                        ranges;

                        sram@1d00000 {
                            compatible = "mmio-sram";
                            reg = < 0x1d00000 0x80000 >;
                            #address-cells = < 0x01 >;
                            #size-cells = < 0x01 >;
                            ranges = < 0x00 0x1d00000 0x80000 >;

                            sram-section@0 {
                                compatible = "allwinner,sun8i-h3-sram-c1", "allwinner,sun4i-a10-sram-c1";
                                reg = < 0x00 0x80000 >;
                            };
                        };
                };

 

Orig sun8i-h3-nanopi-neo-core.dts

Скрытый текст

/dts-v1/;

/ {
        interrupt-parent = <0x1>;
        #address-cells = <0x1>;
        #size-cells = <0x1>;
        model = "FriendlyElec NanoPi-NEO-Core";
        compatible = "friendlyelec,nanopi-neo-core", "allwinner,sun8i-h3";

        clocks {
                #address-cells = <0x1>;
                #size-cells = <0x1>;
                ranges;

                osc24M_clk {
                        #clock-cells = <0x0>;
                        compatible = "fixed-clock";
                        clock-frequency = <0x16e3600>;
                        clock-output-names = "osc24M";
                        linux,phandle = <0x1b>;
                        phandle = <0x1b>;
                };

                osc32k_clk {
                        #clock-cells = <0x0>;
                        compatible = "fixed-clock";
                        clock-frequency = <0x8000>;
                        clock-output-names = "osc32k";
                        linux,phandle = <0x1c>;
                        phandle = <0x1c>;
                };

                internal-osc-clk {
                        #clock-cells = <0x0>;
                        compatible = "fixed-clock";
                        clock-frequency = <0xf42400>;
                        clock-accuracy = <0x11e1a300>;
                        clock-output-names = "iosc";
                        linux,phandle = <0x2f>;
                        phandle = <0x2f>;
                };
        };

        display-engine {
                compatible = "allwinner,sun8i-h3-display-engine";
                allwinner,pipelines = <0x2 0x3>;
                status = "okay";
                linux,phandle = <0x41>;
                phandle = <0x41>;
        };

        soc {
                compatible = "simple-bus";
                #address-cells = <0x1>;
                #size-cells = <0x1>;
                ranges;

                clock@1000000 {
                        compatible = "allwinner,sun8i-a83t-de2-clk";
                        reg = <0x1000000 0x100000>;
                        clocks = <0x4 0x30 0x4 0x65>;
                        clock-names = "bus", "mod";
                        resets = <0x4 0x22>;
                        #clock-cells = <0x1>;
                        #reset-cells = <0x1>;
                        assigned-clocks = <0x4 0x65>;
                        assigned-clock-parents = <0x4 0xd>;
                        assigned-clock-rates = <0x19bfcc00>;
                        linux,phandle = <0x8>;
                        phandle = <0x8>;
                };

                hdmi@1ee0000 {
                        #sound-dai-cells = <0x0>;
                        compatible = "allwinner,sun8i-h3-dw-hdmi";
                        reg = <0x1ee0000 0x10000 0x1ef0000 0x10000>;
                        reg-io-width = <0x1>;
                        interrupts = <0x0 0x58 0x4>;
                        clocks = <0x4 0x2f 0x4 0x6f 0x4 0x70>;
                        clock-names = "iahb", "isfr", "ddc";
                        resets = <0x4 0x20 0x4 0x21>;
                        reset-names = "hdmi", "ddc";
                        status = "okay";
                        linux,phandle = <0xd>;
                        phandle = <0xd>;

                        ports {
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;

                                port@0 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x0>;
                                        linux,phandle = <0x42>;
                                        phandle = <0x42>;

                                        endpoint@0 {
                                                reg = <0x0>;
                                                remote-endpoint = <0x5>;
                                                linux,phandle = <0x11>;
                                                phandle = <0x11>;
                                        };
                                };

                                port@1 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x1>;
                                        linux,phandle = <0x43>;
                                        phandle = <0x43>;

                                        endpoint {
                                                remote-endpoint = <0x6>;
                                                linux,phandle = <0x3b>;
                                                phandle = <0x3b>;
                                        };
                                };
                        };
                };

                i2s@1c22800 {
                        #sound-dai-cells = <0x0>;
                        compatible = "allwinner,sun8i-h3-i2s";
                        reg = <0x1c22800 0x400>;
                        interrupts = <0x0 0xf 0x4>;
                        clocks = <0x4 0x3a 0x4 0x56>;
                        clock-names = "apb", "mod";
                        dmas = <0x7 0x1b>;
                        resets = <0x4 0x2d>;
                        dma-names = "tx";
                        status = "okay";
                        linux,phandle = <0xe>;
                        phandle = <0xe>;
                };

                mixer@1100000 {
                        compatible = "allwinner,sun8i-h3-de2-mixer0";
                        reg = <0x1100000 0x100000>;
                        clocks = <0x8 0x0 0x8 0x6>;
                        clock-names = "bus", "mod";
                        resets = <0x8 0x0>;
                        status = "okay";
                        linux,phandle = <0x2>;
                        phandle = <0x2>;

                        ports {
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;

                                port@1 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x1>;
                                        linux,phandle = <0x44>;
                                        phandle = <0x44>;

                                        endpoint@0 {
                                                reg = <0x0>;
                                                remote-endpoint = <0x9>;
                                                linux,phandle = <0xf>;
                                                phandle = <0xf>;
                                        };

                                        endpoint@1 {
                                                reg = <0x1>;
                                                remote-endpoint = <0xa>;
                                                linux,phandle = <0x12>;
                                                phandle = <0x12>;
                                        };
                                };
                        };
                };

                mixer@1200000 {
                        compatible = "allwinner,sun8i-h3-de2-mixer1";
                        reg = <0x1200000 0x100000>;
                        clocks = <0x8 0x1 0x8 0x7>;
                        clock-names = "bus", "mod";
                        resets = <0x8 0x2>;
                        status = "disabled";
                        linux,phandle = <0x3>;
                        phandle = <0x3>;

                        ports {
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;

                                port@1 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x1>;
                                        linux,phandle = <0x45>;
                                        phandle = <0x45>;

                                        endpoint@0 {
                                                reg = <0x0>;
                                                remote-endpoint = <0xb>;
                                                linux,phandle = <0x10>;
                                                phandle = <0x10>;
                                        };

                                        endpoint@1 {
                                                reg = <0x1>;
                                                remote-endpoint = <0xc>;
                                                linux,phandle = <0x13>;
                                                phandle = <0x13>;
                                        };
                                };
                        };
                };

                sound {
                        compatible = "simple-audio-card";
                        simple-audio-card,format = "i2s";
                        simple-audio-card,name = "allwinner,hdmi";
                        simple-audio-card,mclk-fs = <0x100>;
                        status = "okay";
                        linux,phandle = <0x46>;
                        phandle = <0x46>;

                        simple-audio-card,codec {
                                sound-dai = <0xd>;
                        };

                        simple-audio-card,cpu {
                                sound-dai = <0xe>;
                        };
                };

                lcd-controller@1c0c000 {
                        compatible = "allwinner,sun8i-h3-tcon";
                        reg = <0x1c0c000 0x1000>;
                        interrupts = <0x0 0x56 0x4>;
                        clocks = <0x4 0x2a 0x4 0x66>;
                        clock-names = "ahb", "tcon-ch1";
                        resets = <0x4 0x1b>;
                        reset-names = "lcd";
                        status = "okay";
                        linux,phandle = <0x47>;
                        phandle = <0x47>;

                        ports {
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;

                                port@0 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x0>;
                                        linux,phandle = <0x48>;
                                        phandle = <0x48>;

                                        endpoint@0 {
                                                reg = <0x0>;
                                                remote-endpoint = <0xf>;
                                                linux,phandle = <0x9>;
                                                phandle = <0x9>;
                                        };

                                        endpoint@1 {
                                                reg = <0x1>;
                                                remote-endpoint = <0x10>;
                                                linux,phandle = <0xb>;
                                                phandle = <0xb>;
                                        };
                                };

                                port@1 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x1>;
                                        linux,phandle = <0x49>;
                                        phandle = <0x49>;

                                        endpoint@1 {
                                                reg = <0x1>;
                                                remote-endpoint = <0x11>;
                                                linux,phandle = <0x5>;
                                                phandle = <0x5>;
                                        };
                                };
                        };
                };

                lcd-controller@1c0d000 {
                        compatible = "allwinner,sun8i-h3-tcon";
                        reg = <0x1c0d000 0x1000>;
                        interrupts = <0x0 0x57 0x4>;
                        clocks = <0x4 0x2b 0x4 0x67>;
                        clock-names = "ahb", "tcon-ch1";
                        resets = <0x4 0x1c>;
                        reset-names = "lcd";
                        status = "disabled";
                        linux,phandle = <0x4a>;
                        phandle = <0x4a>;

                        ports {
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;

                                port@0 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x0>;
                                        linux,phandle = <0x4b>;
                                        phandle = <0x4b>;

                                        endpoint@0 {
                                                reg = <0x0>;
                                                remote-endpoint = <0x12>;
                                                linux,phandle = <0xa>;
                                                phandle = <0xa>;
                                        };

                                        endpoint@1 {
                                                reg = <0x1>;
                                                remote-endpoint = <0x13>;
                                                linux,phandle = <0xc>;
                                                phandle = <0xc>;
                                        };
                                };

                                port@1 {
                                        #address-cells = <0x1>;
                                        #size-cells = <0x0>;
                                        reg = <0x1>;
                                        linux,phandle = <0x4c>;
                                        phandle = <0x4c>;
                                };
                        };
                };

                syscon@1c00000 {
                        compatible = "allwinner,sun8i-h3-system-controller", "syscon";
                        reg = <0x1c00000 0x1000>;
                        linux,phandle = <0x1d>;
                        phandle = <0x1d>;
                };

                dma-controller@01c02000 {
                        compatible = "allwinner,sun8i-h3-dma";
                        reg = <0x1c02000 0x1000>;
                        interrupts = <0x0 0x32 0x4>;
                        clocks = <0x4 0x15>;
                        resets = <0x4 0x6>;
                        #dma-cells = <0x1>;
                        linux,phandle = <0x7>;
                        phandle = <0x7>;
                };

                mmc@01c0f000 {
                        reg = <0x1c0f000 0x1000>;
                        resets = <0x4 0x7>;
                        reset-names = "ahb";
                        interrupts = <0x0 0x3c 0x4>;
                        status = "okay";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        compatible = "allwinner,sun7i-a20-mmc";
                        clocks = <0x4 0x16 0x4 0x47 0x4 0x49 0x4 0x48>;
                        clock-names = "ahb", "mmc", "output", "sample";
                        bus-width = <0x4>;
                        non-removable;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x14 0x15>;
                        boot_device = <0x0>;
                        vmmc-supply = <0x16>;
                        linux,phandle = <0x4d>;
                        phandle = <0x4d>;
                };

                mmc@01c10000 {
                        reg = <0x1c10000 0x1000>;
                        resets = <0x4 0x8>;
                        reset-names = "ahb";
                        interrupts = <0x0 0x3d 0x4>;
                        status = "disabled";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        compatible = "allwinner,sun7i-a20-mmc";
                        clocks = <0x4 0x17 0x4 0x4a 0x4 0x4c 0x4 0x4b>;
                        clock-names = "ahb", "mmc", "output", "sample";
                        linux,phandle = <0x4e>;
                        phandle = <0x4e>;
                };

                mmc@01c11000 {
                        reg = <0x1c11000 0x1000>;
                        resets = <0x4 0x9>;
                        reset-names = "ahb";
                        interrupts = <0x0 0x3e 0x4>;
                        status = "okay";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        compatible = "allwinner,sun7i-a20-mmc";
                        clocks = <0x4 0x18 0x4 0x4d 0x4 0x4f 0x4 0x4e>;
                        clock-names = "ahb", "mmc", "output", "sample";
                        boot_device = <0x0>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x17>;
                        vmmc-supply = <0x16>;
                        bus-width = <0x8>;
                        non-removable;
                        cap-mmc-hw-reset;
                        linux,phandle = <0x4f>;
                        phandle = <0x4f>;
                };

                usb@01c19000 {
                        compatible = "allwinner,sun8i-h3-musb";
                        reg = <0x1c19000 0x400>;
                        clocks = <0x4 0x20>;
                        resets = <0x4 0x11>;
                        interrupts = <0x0 0x47 0x4>;
                        interrupt-names = "mc";
                        phys = <0x18 0x0>;
                        phy-names = "usb";
                        extcon = <0x18 0x0>;
                        status = "okay";
                        dr_mode = "otg";
                        linux,phandle = <0x50>;
                        phandle = <0x50>;
                };

                eeprom@01c14000 {
                        compatible = "allwinner,sun8i-h3-sid";
                        reg = <0x1c14000 0x400>;
                        linux,phandle = <0x51>;
                        phandle = <0x51>;
                };

                phy@01c19400 {
                        compatible = "allwinner,sun8i-h3-usb-phy";
                        reg = <0x1c19400 0x2c 0x1c1a800 0x4 0x1c1b800 0x4 0x1c1c800 0x4 0x1c1d800 0x4>;
                        reg-names = "phy_ctrl", "pmu0", "pmu1", "pmu2", "pmu3";
                        clocks = <0x4 0x58 0x4 0x59 0x4 0x5a 0x4 0x5b>;
                        clock-names = "usb0_phy", "usb1_phy", "usb2_phy", "usb3_phy";
                        resets = <0x4 0x0 0x4 0x1 0x4 0x2 0x4 0x3>;
                        reset-names = "usb0_reset", "usb1_reset", "usb2_reset", "usb3_reset";
                        status = "okay";
                        #phy-cells = <0x1>;
                        usb0_id_det-gpios = <0x19 0x6 0xc 0x0>;
                        usb0_vbus-supply = <0x1a>;
                        linux,phandle = <0x18>;
                        phandle = <0x18>;
                };

                usb@01c1a000 {
                        compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
                        reg = <0x1c1a000 0x100>;
                        interrupts = <0x0 0x48 0x4>;
                        clocks = <0x4 0x21 0x4 0x25>;
                        resets = <0x4 0x12 0x4 0x16>;
                        status = "okay";
                        linux,phandle = <0x52>;
                        phandle = <0x52>;
                };

                usb@01c1a400 {
                        compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
                        reg = <0x1c1a400 0x100>;
                        interrupts = <0x0 0x49 0x4>;
                        clocks = <0x4 0x21 0x4 0x25 0x4 0x5c>;
                        resets = <0x4 0x12 0x4 0x16>;
                        status = "okay";
                        linux,phandle = <0x53>;
                        phandle = <0x53>;
                };

                usb@01c1b000 {
                        compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
                        reg = <0x1c1b000 0x100>;
                        interrupts = <0x0 0x4a 0x4>;
                        clocks = <0x4 0x22 0x4 0x26>;
                        resets = <0x4 0x13 0x4 0x17>;
                        phys = <0x18 0x1>;
                        phy-names = "usb";
                        status = "okay";
                        linux,phandle = <0x54>;
                        phandle = <0x54>;
                };

                usb@01c1b400 {
                        compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
                        reg = <0x1c1b400 0x100>;
                        interrupts = <0x0 0x4b 0x4>;
                        clocks = <0x4 0x22 0x4 0x26 0x4 0x5d>;
                        resets = <0x4 0x13 0x4 0x17>;
                        phys = <0x18 0x1>;
                        phy-names = "usb";
                        status = "okay";
                        linux,phandle = <0x55>;
                        phandle = <0x55>;
                };

                usb@01c1c000 {
                        compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
                        reg = <0x1c1c000 0x100>;
                        interrupts = <0x0 0x4c 0x4>;
                        clocks = <0x4 0x23 0x4 0x27>;
                        resets = <0x4 0x14 0x4 0x18>;
                        phys = <0x18 0x2>;
                        phy-names = "usb";
                        status = "okay";
                        linux,phandle = <0x56>;
                        phandle = <0x56>;
                };

                usb@01c1c400 {
                        compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
                        reg = <0x1c1c400 0x100>;
                        interrupts = <0x0 0x4d 0x4>;
                        clocks = <0x4 0x23 0x4 0x27 0x4 0x5e>;
                        resets = <0x4 0x14 0x4 0x18>;
                        phys = <0x18 0x2>;
                        phy-names = "usb";
                        status = "okay";
                        linux,phandle = <0x57>;
                        phandle = <0x57>;
                };

                usb@01c1d000 {
                        compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
                        reg = <0x1c1d000 0x100>;
                        interrupts = <0x0 0x4e 0x4>;
                        clocks = <0x4 0x24 0x4 0x28>;
                        resets = <0x4 0x15 0x4 0x19>;
                        phys = <0x18 0x3>;
                        phy-names = "usb";
                        status = "okay";
                        linux,phandle = <0x58>;
                        phandle = <0x58>;
                };

                usb@01c1d400 {
                        compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
                        reg = <0x1c1d400 0x100>;
                        interrupts = <0x0 0x4f 0x4>;
                        clocks = <0x4 0x24 0x4 0x28 0x4 0x5f>;
                        resets = <0x4 0x15 0x4 0x19>;
                        phys = <0x18 0x3>;
                        phy-names = "usb";
                        status = "okay";
                        linux,phandle = <0x59>;
                        phandle = <0x59>;
                };

                clock@01c20000 {
                        reg = <0x1c20000 0x400>;
                        clocks = <0x1b 0x1c>;
                        clock-names = "hosc", "losc";
                        #clock-cells = <0x1>;
                        #reset-cells = <0x1>;
                        compatible = "allwinner,sun8i-h3-ccu";
                        linux,phandle = <0x4>;
                        phandle = <0x4>;
                };

                pinctrl@01c20800 {
                        reg = <0x1c20800 0x400>;
                        interrupts = <0x0 0xb 0x4 0x0 0x11 0x4>;
                        clocks = <0x4 0x36 0x1b 0x1c>;
                        clock-names = "apb", "hosc", "losc";
                        gpio-controller;
                        #gpio-cells = <0x3>;
                        interrupt-controller;
                        #interrupt-cells = <0x3>;
                        compatible = "allwinner,sun8i-h3-pinctrl";
                        linux,phandle = <0x19>;
                        phandle = <0x19>;

                        csi {
                                pins = "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11";
                                function = "csi";
                                linux,phandle = <0x2e>;
                                phandle = <0x2e>;
                        };

                        emac0 {
                                pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD7", "PD8", "PD9", "PD10", "PD12", "PD13", "PD15", "PD16", "PD17";
                                function = "emac";
                                drive-strength = <0x28>;
                                linux,phandle = <0x5a>;
                                phandle = <0x5a>;
                        };

                        i2s0 {
                                pins = "PA18", "PA19", "PA20", "PA21";
                                function = "i2s0";
                                linux,phandle = <0x24>;
                                phandle = <0x24>;
                        };

                        i2c0 {
                                pins = "PA11", "PA12";
                                function = "i2c0";
                                linux,phandle = <0x2b>;
                                phandle = <0x2b>;
                        };

                        i2c1 {
                                pins = "PA18", "PA19";
                                function = "i2c1";
                                linux,phandle = <0x2c>;
                                phandle = <0x2c>;
                        };

                        i2c2 {
                                pins = "PE12", "PE13";
                                function = "i2c2";
                                linux,phandle = <0x2d>;
                                phandle = <0x2d>;
                        };

                        mmc0@0 {
                                pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
                                function = "mmc0";
                                drive-strength = <0x1e>;
                                bias-pull-up;
                                linux,phandle = <0x14>;
                                phandle = <0x14>;
                        };

                        mmc0_cd_pin@0 {
                                pins = "PF6";
                                function = "gpio_in";
                                bias-pull-up;
                                linux,phandle = <0x15>;
                                phandle = <0x15>;
                        };

                        mmc1@0 {
                                pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
                                function = "mmc1";
                                drive-strength = <0x1e>;
                                bias-pull-up;
                                linux,phandle = <0x5b>;
                                phandle = <0x5b>;
                        };

                        mmc2_8bit {
                                pins = "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
                                function = "mmc2";
                                drive-strength = <0x28>;
                                bias-pull-up;
                                linux,phandle = <0x17>;
                                phandle = <0x17>;
                        };

                        spdif@0 {
                                pins = "PA17";
                                function = "spdif";
                                linux,phandle = <0x5c>;
                                phandle = <0x5c>;
                        };

                        spi0 {
                                pins = "PC0", "PC1", "PC2", "PC3";
                                function = "spi0";
                                linux,phandle = <0x1f>;
                                phandle = <0x1f>;
                        };

                        spi1 {
                                pins = "PA15", "PA16", "PA14", "PA13";
                                function = "spi1";
                                linux,phandle = <0x21>;
                                phandle = <0x21>;
                        };

                        uart0@0 {
                                pins = "PA4", "PA5";
                                function = "uart0";
                                linux,phandle = <0x26>;
                                phandle = <0x26>;
                        };

                        uart1 {
                                pins = "PG6", "PG7";
                                function = "uart1";
                                linux,phandle = <0x27>;
                                phandle = <0x27>;
                        };

                        uart1_rts_cts {
                                pins = "PG8", "PG9";
                                function = "uart1";
                                linux,phandle = <0x5d>;
                                phandle = <0x5d>;
                        };

                        uart2 {
                                pins = "PA0", "PA1";
                                function = "uart2";
                                linux,phandle = <0x28>;
                                phandle = <0x28>;
                        };

                        uart2_rts_cts {
                                pins = "PA2", "PA3";
                                function = "uart2";
                                linux,phandle = <0x5e>;
                                phandle = <0x5e>;
                        };

                        uart3 {
                                pins = "PA13", "PA14";
                                function = "uart3";
                                linux,phandle = <0x29>;
                                phandle = <0x29>;
                        };

                        uart3_rts_cts {
                                pins = "PA15", "PA16";
                                function = "uart3";
                                linux,phandle = <0x2a>;
                                phandle = <0x2a>;
                        };

                        pwm0 {
                                pins = "PA5";
                                function = "pwm0";
                                linux,phandle = <0x22>;
                                phandle = <0x22>;
                        };

                        led_pins {
                                pins = "PA10";
                                function = "gpio_out";
                                linux,phandle = <0x3c>;
                                phandle = <0x3c>;
                        };

                        spi0_cs_pins {
                                pins = "PC3", "PA6";
                                function = "gpio_out";
                                linux,phandle = <0x20>;
                                phandle = <0x20>;
                        };
                };

                ths@01c25000 {
                        #thermal-sensor-cells = <0x0>;
                        compatible = "allwinner,sun8i-h3-ths";
                        reg = <0x1c25000 0x400 0x1c14234 0x4>;
                        interrupts = <0x0 0x1f 0x4>;
                        resets = <0x4 0x2a>;
                        reset-names = "ahb";
                        clocks = <0x4 0x37 0x4 0x45>;
                        clock-names = "ahb", "ths";
                        linux,phandle = <0x34>;
                        phandle = <0x34>;
                };

                timer@01c20c00 {
                        compatible = "allwinner,sun4i-a10-timer";
                        reg = <0x1c20c00 0xa0>;
                        interrupts = <0x0 0x12 0x4 0x0 0x13 0x4>;
                        clocks = <0x1b>;
                };

                ethernet@1c30000 {
                        compatible = "allwinner,sun8i-h3-emac";
                        syscon = <0x1d>;
                        reg = <0x1c30000 0x10000>;
                        interrupts = <0x0 0x52 0x4>;
                        interrupt-names = "macirq";
                        resets = <0x4 0xc>;
                        reset-names = "stmmaceth";
                        clocks = <0x4 0x1b>;
                        clock-names = "stmmaceth";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "okay";
                        local-mac-address = [00 00 00 00 00 00];
                        phy-handle = <0x1e>;
                        phy-mode = "mii";
                        allwinner,leds-active-low;
                        linux,phandle = <0x5f>;
                        phandle = <0x5f>;

                        mdio {
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;
                                linux,phandle = <0x60>;
                                phandle = <0x60>;

                                ethernet-phy@1 {
                                        compatible = "ethernet-phy-ieee802.3-c22";
                                        reg = <0x1>;
                                        clocks = <0x4 0x43>;
                                        resets = <0x4 0x27>;
                                        linux,phandle = <0x1e>;
                                        phandle = <0x1e>;
                                };
                        };
                };

                spi@01c68000 {
                        compatible = "allwinner,sun8i-h3-spi";
                        reg = <0x1c68000 0x1000>;
                        interrupts = <0x0 0x41 0x4>;
                        clocks = <0x4 0x1e 0x4 0x52>;
                        clock-names = "ahb", "mod";
                        dmas = <0x7 0x17 0x7 0x17>;
                        dma-names = "rx", "tx";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x1f 0x20>;
                        resets = <0x4 0xf>;
                        status = "okay";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        cs-gpios = <0x19 0x2 0x3 0x0 0x19 0x0 0x6 0x0>;
                        linux,phandle = <0x61>;
                        phandle = <0x61>;

                        spi@0 {
                                compatible = "nanopi,spidev";
                                reg = <0x0>;
                                status = "okay";
                                spi-max-frequency = <0x989680>;
                                linux,phandle = <0x62>;
                                phandle = <0x62>;
                        };

                        spiflash@0 {
                                #address-cells = <0x1>;
                                #size-cells = <0x1>;
                                compatible = "mxicy,mx25l12805d";
                                reg = <0x0>;
                                status = "disabled";
                                spi-max-frequency = <0x2faf080>;
                                mode = <0x0>;
                                linux,phandle = <0x63>;
                                phandle = <0x63>;

                                partition@0 {
                                        reg = <0x0 0x1000000>;
                                        label = "spi-flash";
                                };
                        };

                        pitft@0 {
                                compatible = "sitronix,st7789v";
                                reg = <0x0>;
                                status = "disabled";
                                spi-max-frequency = <0x2faf080>;
                                rotate = <0x5a>;
                                fps = <0x21>;
                                buswidth = <0x8>;
                                dc-gpios = <0x19 0x0 0x1 0x0>;
                                reset-gpios = <0x19 0x6 0xb 0x0>;
                                led-gpios = <0x19 0x0 0x0 0x1>;
                                debug = <0x0>;
                                linux,phandle = <0x64>;
                                phandle = <0x64>;
                        };

                        pitft-ts@1 {
                                compatible = "ti,ads7846";
                                reg = <0x1>;
                                status = "disabled";
                                spi-max-frequency = <0x1e8480>;
                                interrupt-parent = <0x19>;
                                interrupts = <0x6 0x9 0x2>;
                                pendown-gpio = <0x19 0x6 0x9 0x1>;
                                ti,swap-xy;
                                ti,vref-delay-usecs = <0x3e8>;
                                ti,x-min = [00 64];
                                ti,x-max = [0f ff];
                                ti,y-min = [00 64];
                                ti,y-max = [0f ff];
                                ti,vref-mv = <0xce4>;
                                ti,x-plate-ohms = [01 00];
                                ti,penirq-recheck-delay-usecs = <0xa>;
                                ti,settle-delay-usec = [00 64];
                                ti,keep-vref-on = <0x1>;
                                ti,pressure-max = [0f ff];
                                ti,debounce-max = <0xa>;
                                ti,debounce-tol = <0x1e>;
                                ti,debounce-rep = <0x1>;
                                linux,phandle = <0x65>;
                                phandle = <0x65>;
                        };
                };

                spi@01c69000 {
                        compatible = "allwinner,sun8i-h3-spi";
                        reg = <0x1c69000 0x1000>;
                        interrupts = <0x0 0x42 0x4>;
                        clocks = <0x4 0x1f 0x4 0x53>;
                        clock-names = "ahb", "mod";
                        dmas = <0x7 0x18 0x7 0x18>;
                        dma-names = "rx", "tx";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x21>;
                        resets = <0x4 0x10>;
                        status = "disable";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        linux,phandle = <0x66>;
                        phandle = <0x66>;

                        spi@1 {
                                compatible = "nanopi,spidev";
                                reg = <0x0>;
                                spi-max-frequency = <0x989680>;
                                linux,phandle = <0x67>;
                                phandle = <0x67>;
                        };
                };

                watchdog@01c20ca0 {
                        compatible = "allwinner,sun6i-a31-wdt";
                        reg = <0x1c20ca0 0x20>;
                        interrupts = <0x0 0x19 0x4>;
                        linux,phandle = <0x68>;
                        phandle = <0x68>;
                };

                spdif@01c21000 {
                        #sound-dai-cells = <0x0>;
                        compatible = "allwinner,sun8i-h3-spdif";
                        reg = <0x1c21000 0x400>;
                        interrupts = <0x0 0xc 0x4>;
                        clocks = <0x4 0x35 0x4 0x57>;
                        resets = <0x4 0x29>;
                        clock-names = "apb", "spdif";
                        dmas = <0x7 0x2>;
                        dma-names = "tx";
                        status = "disabled";
                        linux,phandle = <0x69>;
                        phandle = <0x69>;
                };

                pwm@01c21400 {
                        compatible = "allwinner,sun8i-h3-pwm";
                        reg = <0x1c21400 0x8>;
                        clocks = <0x1b>;
                        #pwm-cells = <0x3>;
                        status = "disabled";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x22>;
                        linux,phandle = <0x6a>;
                        phandle = <0x6a>;
                };

                codec@01c22c00 {
                        #sound-dai-cells = <0x0>;
                        compatible = "allwinner,sun8i-h3-codec";
                        reg = <0x1c22c00 0x400>;
                        interrupts = <0x0 0x1d 0x4>;
                        clocks = <0x4 0x34 0x4 0x6d>;
                        clock-names = "apb", "codec";
                        resets = <0x4 0x28>;
                        dmas = <0x7 0xf 0x7 0xf>;
                        dma-names = "rx", "tx";
                        allwinner,codec-analog-controls = <0x23>;
                        status = "okay";
                        allwinner,audio-routing = "Line Out", "LINEOUT", "MIC1", "Mic", "Mic", "MBIAS";
                        linux,phandle = <0x6b>;
                        phandle = <0x6b>;
                };

                i2s@01c22000 {
                        #sound-dai-cells = <0x0>;
                        compatible = "allwinner,sun8i-h3-i2s";
                        reg = <0x1c22000 0x400>;
                        interrupts = <0x0 0xd 0x4>;
                        clocks = <0x4 0x38 0x4 0x54>;
                        clock-names = "apb", "mod";
                        resets = <0x4 0x2b>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x24>;
                        dmas = <0x7 0x3 0x7 0x3>;
                        dma-names = "rx", "tx";
                        status = "disabled";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        sound-dai = <0x25>;
                        linux,phandle = <0x3f>;
                        phandle = <0x3f>;
                };

                serial@01c28000 {
                        compatible = "snps,dw-apb-uart";
                        reg = <0x1c28000 0x400>;
                        interrupts = <0x0 0x0 0x4>;
                        reg-shift = <0x2>;
                        reg-io-width = <0x4>;
                        clocks = <0x4 0x3e>;
                        resets = <0x4 0x31>;
                        dmas = <0x7 0x6 0x7 0x6>;
                        dma-names = "rx", "tx";
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x26>;
                        linux,phandle = <0x6c>;
                        phandle = <0x6c>;
                };

                serial@01c28400 {
                        compatible = "snps,dw-apb-uart";
                        reg = <0x1c28400 0x400>;
                        interrupts = <0x0 0x1 0x4>;
                        reg-shift = <0x2>;
                        reg-io-width = <0x4>;
                        clocks = <0x4 0x3f>;
                        resets = <0x4 0x32>;
                        dmas = <0x7 0x7 0x7 0x7>;
                        dma-names = "rx", "tx";
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x27>;
                        linux,phandle = <0x6d>;
                        phandle = <0x6d>;
                };

                serial@01c28800 {
                        compatible = "snps,dw-apb-uart";
                        reg = <0x1c28800 0x400>;
                        interrupts = <0x0 0x2 0x4>;
                        reg-shift = <0x2>;
                        reg-io-width = <0x4>;
                        clocks = <0x4 0x40>;
                        resets = <0x4 0x33>;
                        dmas = <0x7 0x8 0x7 0x8>;
                        dma-names = "rx", "tx";
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x28>;
                        linux,phandle = <0x6e>;
                        phandle = <0x6e>;
                };

                serial@01c28c00 {
                        compatible = "snps,dw-apb-uart";
                        reg = <0x1c28c00 0x400>;
                        interrupts = <0x0 0x3 0x4>;
                        reg-shift = <0x2>;
                        reg-io-width = <0x4>;
                        clocks = <0x4 0x41>;
                        resets = <0x4 0x34>;
                        dmas = <0x7 0x9 0x7 0x9>;
                        dma-names = "rx", "tx";
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x29 0x2a>;
                        linux,phandle = <0x6f>;
                        phandle = <0x6f>;
                };

                i2c@01c2ac00 {
                        compatible = "allwinner,sun6i-a31-i2c";
                        reg = <0x1c2ac00 0x400>;
                        interrupts = <0x0 0x6 0x4>;
                        clocks = <0x4 0x3b>;
                        resets = <0x4 0x2e>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x2b>;
                        status = "okay";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        linux,phandle = <0x70>;
                        phandle = <0x70>;

                        rtc@68 {
                                compatible = "dallas,ds1307";
                                reg = <0x68>;
                        };
                };

                i2c@01c2b000 {
                        compatible = "allwinner,sun6i-a31-i2c";
                        reg = <0x1c2b000 0x400>;
                        interrupts = <0x0 0x7 0x4>;
                        clocks = <0x4 0x3c>;
                        resets = <0x4 0x2f>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x2c>;
                        status = "okay";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        linux,phandle = <0x71>;
                        phandle = <0x71>;
                };

                i2c@01c2b400 {
                        compatible = "allwinner,sun6i-a31-i2c";
                        reg = <0x1c2b400 0x400>;
                        interrupts = <0x0 0x8 0x4>;
                        clocks = <0x4 0x3d>;
                        resets = <0x4 0x30>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x2d>;
                        status = "okay";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        linux,phandle = <0x72>;
                        phandle = <0x72>;
                };

                interrupt-controller@01c81000 {
                        compatible = "arm,gic-400";
                        reg = <0x1c81000 0x1000 0x1c82000 0x2000 0x1c84000 0x2000 0x1c86000 0x2000>;
                        interrupt-controller;
                        #interrupt-cells = <0x3>;
                        interrupts = <0x1 0x9 0xf04>;
                        linux,phandle = <0x1>;
                        phandle = <0x1>;
                };

                camera@01cb0000 {
                        compatible = "allwinner,sun8i-h3-csi", "allwinner,sun6i-a31-csi";
                        reg = <0x1cb0000 0x1000>;
                        interrupts = <0x0 0x54 0x4>;
                        clocks = <0x4 0x2d 0x4 0x6a 0x4 0x62>;
                        clock-names = "bus", "mod", "ram";
                        resets = <0x4 0x1e>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x2e>;
                        status = "disabled";
                        linux,phandle = <0x73>;
                        phandle = <0x73>;
                };

                rtc@01f00000 {
                        compatible = "allwinner,sun6i-a31-rtc";
                        reg = <0x1f00000 0x54>;
                        interrupts = <0x0 0x28 0x4 0x0 0x29 0x4>;
                        linux,phandle = <0x74>;
                        phandle = <0x74>;
                };

                clock@1f01400 {
                        compatible = "allwinner,sun8i-h3-r-ccu";
                        reg = <0x1f01400 0x100>;
                        clocks = <0x1b 0x1c 0x2f 0x4 0x9>;
                        clock-names = "hosc", "losc", "iosc", "pll-periph";
                        #clock-cells = <0x1>;
                        #reset-cells = <0x1>;
                        linux,phandle = <0x30>;
                        phandle = <0x30>;
                };

                codec-analog@01f015c0 {
                        compatible = "allwinner,sun8i-h3-codec-analog";
                        reg = <0x1f015c0 0x4>;
                        linux,phandle = <0x23>;
                        phandle = <0x23>;
                };

                ir@01f02000 {
                        compatible = "allwinner,sun5i-a13-ir";
                        clocks = <0x30 0x4 0x30 0xb>;
                        clock-names = "apb", "ir";
                        resets = <0x30 0x0>;
                        interrupts = <0x0 0x25 0x4>;
                        reg = <0x1f02000 0x40>;
                        status = "disabled";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x31>;
                        linux,phandle = <0x75>;
                        phandle = <0x75>;
                };

                i2c@01f02400 {
                        compatible = "allwinner,sun6i-a31-i2c";
                        reg = <0x1f02400 0x400>;
                        interrupts = <0x0 0x2c 0x4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x32>;
                        clocks = <0x30 0x9>;
                        clock-frequency = <0x186a0>;
                        resets = <0x30 0x5>;
                        status = "disabled";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        linux,phandle = <0x76>;
                        phandle = <0x76>;
                };

                pinctrl@01f02c00 {
                        compatible = "allwinner,sun8i-h3-r-pinctrl";
                        reg = <0x1f02c00 0x400>;
                        interrupts = <0x0 0x2d 0x4>;
                        clocks = <0x30 0x3 0x1b 0x1c>;
                        clock-names = "apb", "hosc", "losc";
                        gpio-controller;
                        #gpio-cells = <0x3>;
                        interrupt-controller;
                        #interrupt-cells = <0x3>;
                        linux,phandle = <0x3a>;
                        phandle = <0x3a>;

                        ir@0 {
                                pins = "PL11";
                                function = "s_cir_rx";
                                linux,phandle = <0x31>;
                                phandle = <0x31>;
                        };

                        r_i2c@0 {
                                pins = "PL0", "PL1";
                                function = "s_i2c";
                                linux,phandle = <0x32>;
                                phandle = <0x32>;
                        };

                        led_pins {
                                pins = "PL10";
                                function = "gpio_out";
                                linux,phandle = <0x3d>;
                                phandle = <0x3d>;
                        };

                        key_pins {
                                pins = "PL3";
                                function = "gpio_in";
                                linux,phandle = <0x3e>;
                                phandle = <0x3e>;
                        };
                };

                gpu@1c40000 {
                        compatible = "allwinner,sun8i-h3-mali", "allwinner,sun7i-a20-mali", "arm,mali-400";
                        reg = <0x1c40000 0x10000>;
                        interrupts = <0x0 0x61 0x4 0x0 0x62 0x4 0x0 0x63 0x4 0x0 0x64 0x4 0x0 0x66 0x4 0x0 0x67 0x4 0x0 0x65 0x4>;
                        interrupt-names = "gp", "gpmmu", "pp0", "ppmmu0", "pp1", "ppmmu1", "pmu";
                        clocks = <0x4 0x31 0x4 0x72>;
                        clock-names = "bus", "core";
                        resets = <0x4 0x23>;
                        memory-region = <0x33>;
                        assigned-clocks = <0x4 0x72>;
                        assigned-clock-rates = <0x16e36000>;
                        linux,phandle = <0x77>;
                        phandle = <0x77>;
                };
        };

        thermal-zones {

                cpu_thermal {
                        polling-delay-passive = <0x14a>;
                        polling-delay = <0x3e8>;
                        thermal-sensors = <0x34 0x0>;
                        linux,phandle = <0x78>;
                        phandle = <0x78>;

                        trips {

                                cpu_warm {
                                        temperature = <0xea60>;
                                        hysteresis = <0x7d0>;
                                        type = "passive";
                                        linux,phandle = <0x35>;
                                        phandle = <0x35>;
                                };

                                cpu_hot {
                                        temperature = <0x11170>;
                                        hysteresis = <0x7d0>;
                                        type = "passive";
                                        linux,phandle = <0x37>;
                                        phandle = <0x37>;
                                };

                                cpu_very_hot {
                                        temperature = <0x13880>;
                                        hysteresis = <0x7d0>;
                                        type = "passive";
                                        linux,phandle = <0x38>;
                                        phandle = <0x38>;
                                };

                                cpu_crit {
                                        temperature = <0x186a0>;
                                        hysteresis = <0x7d0>;
                                        type = "critical";
                                        linux,phandle = <0x79>;
                                        phandle = <0x79>;
                                };
                        };

                        cooling-maps {

                                cpu_warm_limit_cpu {
                                        trip = <0x35>;
                                        cooling-device = <0x36 0xffffffff 0x1>;
                                };

                                cpu_hot_limit_cpu {
                                        trip = <0x37>;
                                        cooling-device = <0x36 0xffffffff 0x2>;
                                };

                                cpu_very_hot_limit_cpu {
                                        trip = <0x38>;
                                        cooling-device = <0x36 0x3 0xffffffff>;
                                };
                        };
                };
        };

        cpus {
                #address-cells = <0x1>;
                #size-cells = <0x0>;

                cpu@0 {
                        compatible = "arm,cortex-a7";
                        device_type = "cpu";
                        reg = <0x0>;
                        clocks = <0x4 0xe>;
                        clock-latency = <0x3b9b0>;
                        clock-frequency = <0x47868c00>;
                        operating-points = <0x124f80 0x13d620 0xc7380 0x10c8e0 0x98580 0x10c8e0 0x75300 0x10c8e0 0x4c2c0 0x10c8e0 0x3a980 0x10c8e0 0x1d4c0 0x10c8e0>;
                        #cooling-cells = <0x2>;
                        cooling-min-level = <0x0>;
                        cooling-max-level = <0x3>;
                        cpu0-supply = <0x39>;
                        linux,phandle = <0x36>;
                        phandle = <0x36>;
                };

                cpu@1 {
                        compatible = "arm,cortex-a7";
                        device_type = "cpu";
                        reg = <0x1>;
                        clock-frequency = <0x47868c00>;
                };

                cpu@2 {
                        compatible = "arm,cortex-a7";
                        device_type = "cpu";
                        reg = <0x2>;
                        clock-frequency = <0x47868c00>;
                };

                cpu@3 {
                        compatible = "arm,cortex-a7";
                        device_type = "cpu";
                        reg = <0x3>;
                        clock-frequency = <0x47868c00>;
                };
        };

        reserved-memory {
                #address-cells = <0x1>;
                #size-cells = <0x1>;
                ranges;

                linux,cma {
                        compatible = "shared-dma-pool";
                        reusable;
                        size = <0x4000000>;
                        alignment = <0x2000>;
                        linux,cma-default;
                        linux,phandle = <0x33>;
                        phandle = <0x33>;
                };
        };

        timer {
                compatible = "arm,armv7-timer";
                interrupts = <0x1 0xd 0xf08 0x1 0xe 0xf08 0x1 0xb 0xf08 0x1 0xa 0xf08>;
        };

        ahci-5v {
                compatible = "regulator-fixed";
                regulator-name = "ahci-5v";
                regulator-min-microvolt = <0x4c4b40>;
                regulator-max-microvolt = <0x4c4b40>;
                regulator-boot-on;
                enable-active-high;
                gpio = <0x19 0x1 0x8 0x0>;
                status = "disabled";
                linux,phandle = <0x7a>;
                phandle = <0x7a>;
        };

        usb0-vbus {
                compatible = "regulator-fixed";
                regulator-name = "usb0-vbus";
                regulator-min-microvolt = <0x4c4b40>;
                regulator-max-microvolt = <0x4c4b40>;
                enable-active-high;
                gpio = <0x3a 0x0 0x2 0x0>;
                status = "okay";
                linux,phandle = <0x1a>;
                phandle = <0x1a>;
        };

        usb1-vbus {
                compatible = "regulator-fixed";
                regulator-name = "usb1-vbus";
                regulator-min-microvolt = <0x4c4b40>;
                regulator-max-microvolt = <0x4c4b40>;
                regulator-boot-on;
                enable-active-high;
                gpio = <0x19 0x7 0x6 0x0>;
                status = "disabled";
                linux,phandle = <0x7b>;
                phandle = <0x7b>;
        };

        usb2-vbus {
                compatible = "regulator-fixed";
                regulator-name = "usb2-vbus";
                regulator-min-microvolt = <0x4c4b40>;
                regulator-max-microvolt = <0x4c4b40>;
                regulator-boot-on;
                enable-active-high;
                gpio = <0x19 0x7 0x3 0x0>;
                status = "disabled";
                linux,phandle = <0x7c>;
                phandle = <0x7c>;
        };

        vcc3v0 {
                compatible = "regulator-fixed";
                regulator-name = "vcc3v0";
                regulator-min-microvolt = <0x2dc6c0>;
                regulator-max-microvolt = <0x2dc6c0>;
                linux,phandle = <0x7d>;
                phandle = <0x7d>;
        };

        vcc3v3 {
                compatible = "regulator-fixed";
                regulator-name = "vcc3v3";
                regulator-min-microvolt = <0x325aa0>;
                regulator-max-microvolt = <0x325aa0>;
                linux,phandle = <0x16>;
                phandle = <0x16>;
        };

        vcc5v0 {
                compatible = "regulator-fixed";
                regulator-name = "vcc5v0";
                regulator-min-microvolt = <0x4c4b40>;
                regulator-max-microvolt = <0x4c4b40>;
                linux,phandle = <0x40>;
                phandle = <0x40>;
        };

        aliases {
                serial0 = "/soc/serial@01c28000";
                serial1 = "/soc/serial@01c28400";
                serial2 = "/soc/serial@01c28800";
                serial3 = "/soc/serial@01c28c00";
                i2c0 = "/soc/i2c@01c2ac00";
                i2c1 = "/soc/i2c@01c2b000";
                i2c2 = "/soc/i2c@01c2b400";
                spi0 = "/soc/spi@01c68000";
                spi1 = "/soc/spi@01c69000";
                pwm0 = "/soc/pwm@01c21400";
                mmc0 = "/soc/mmc@01c0f000";
                mmc2 = "/soc/mmc@01c11000";
                ethernet0 = "/soc/ethernet@1c30000";
                i2s0 = "/soc/i2s@01c22000";
                pcm5102a = "/pcm5102a-codec";
                spidev0 = "/soc/spi@01c68000/spi@0";
                spiflash = "/soc/spi@01c68000/spiflash@0";
                pitft = "/soc/spi@01c68000/pitft@0";
                pitft_ts = "/soc/spi@01c68000/pitft-ts@1";
                ir = "/soc/ir@01f02000";
        };

        chosen {
                stdout-path = "serial0:115200n8";
        };

        connector {
                compatible = "hdmi-connector";
                type = [61 00];

                port {

                        endpoint {
                                remote-endpoint = <0x3b>;
                                linux,phandle = <0x6>;
                                phandle = <0x6>;
                        };
                };
        };

        leds {
                compatible = "gpio-leds";
                pinctrl-names = "default";
                pinctrl-0 = <0x3c 0x3d>;

                status {
                        label = "status_led";
                        gpios = <0x19 0x0 0xa 0x0>;
                        linux,default-trigger = "heartbeat";
                };

                pwr {
                        label = "LED2";
                        gpios = <0x3a 0x0 0xa 0x0>;
                        default-state = "on";
                };
        };

        r_gpio_keys {
                compatible = "gpio-keys";
                input-name = "k1";
                pinctrl-names = "default";
                pinctrl-0 = <0x3e>;

                k1 {
                        label = "k1";
                        linux,code = <0x74>;
                        gpios = <0x3a 0x0 0x3 0x1>;
                };
        };

        gpio-regulator {
                compatible = "regulator-gpio";
                regulator-name = "vdd-cpux";
                regulator-type = "voltage";
                regulator-boot-on;
                regulator-always-on;
                regulator-min-microvolt = <0x10c8e0>;
                regulator-max-microvolt = <0x13d620>;
                regulator-ramp-delay = <0x32>;
                gpios = <0x3a 0x0 0x6 0x0>;
                gpios-states = <0x1>;
                states = <0x10c8e0 0x0 0x13d620 0x1>;
                linux,phandle = <0x39>;
                phandle = <0x39>;
        };

        pcm5102a-codec {
                #sound-dai-cells = <0x0>;
                compatible = "ti,pcm5102a";
                status = "disabled";
                linux,phandle = <0x25>;
                phandle = <0x25>;
        };

        sound_i2s {
                compatible = "simple-audio-card";
                simple-audio-card,name = "I2S-master";
                simple-audio-card,mclk-fs = <0x100>;
                simple-audio-card,format = "i2s";
                status = "okay";

                simple-audio-card,cpu {
                        sound-dai = <0x3f>;
                };

                simple-audio-card,codec {
                        sound-dai = <0x25>;
                };
        };

        vcc1v2 {
                compatible = "regulator-fixed";
                regulator-name = "vcc1v2";
                regulator-min-microvolt = <0x124f80>;
                regulator-max-microvolt = <0x124f80>;
                regulator-always-on;
                regulator-boot-on;
                vin-supply = <0x40>;
                gpio = <0x3a 0x0 0x8 0x0>;
                enable-active-high;
                linux,phandle = <0x7e>;
                phandle = <0x7e>;
        };

        vcc-dram {
                compatible = "regulator-fixed";
                regulator-name = "vcc-dram";
                regulator-min-microvolt = <0x16e360>;
                regulator-max-microvolt = <0x16e360>;
                regulator-always-on;
                regulator-boot-on;
                vin-supply = <0x40>;
                gpio = <0x3a 0x0 0x9 0x0>;
                enable-active-high;
                linux,phandle = <0x7f>;
                phandle = <0x7f>;
        };

        vdd-cpux {
                compatible = "regulator-fixed";
                regulator-name = "vdd-cpux-en";
                regulator-min-microvolt = <0x124f80>;
                regulator-max-microvolt = <0x124f80>;
                regulator-always-on;
                regulator-boot-on;
                vin-supply = <0x40>;
                gpio = <0x3a 0x0 0x8 0x0>;
                enable-active-high;
                linux,phandle = <0x80>;
                phandle = <0x80>;
        };

        __symbols__ {
                osc24M = "/clocks/osc24M_clk";
                osc32k = "/clocks/osc32k_clk";
                iosc = "/clocks/internal-osc-clk";
                de = "/display-engine";
                display_clocks = "/soc/clock@1000000";
                hdmi = "/soc/hdmi@1ee0000";
                hdmi_in = "/soc/hdmi@1ee0000/ports/port@0";
                hdmi_in_tcon0 = "/soc/hdmi@1ee0000/ports/port@0/endpoint@0";
                hdmi_out = "/soc/hdmi@1ee0000/ports/port@1";
                hdmi_out_con = "/soc/hdmi@1ee0000/ports/port@1/endpoint";
                i2s2 = "/soc/i2s@1c22800";
                mixer0 = "/soc/mixer@1100000";
                mixer0_out = "/soc/mixer@1100000/ports/port@1";
                mixer0_out_tcon0 = "/soc/mixer@1100000/ports/port@1/endpoint@0";
                mixer0_out_tcon1 = "/soc/mixer@1100000/ports/port@1/endpoint@1";
                mixer1 = "/soc/mixer@1200000";
                mixer1_out = "/soc/mixer@1200000/ports/port@1";
                mixer1_out_tcon0 = "/soc/mixer@1200000/ports/port@1/endpoint@0";
                mixer1_out_tcon1 = "/soc/mixer@1200000/ports/port@1/endpoint@1";
                sound_hdmi = "/soc/sound";
                tcon0 = "/soc/lcd-controller@1c0c000";
                tcon0_in = "/soc/lcd-controller@1c0c000/ports/port@0";
                tcon0_in_mixer0 = "/soc/lcd-controller@1c0c000/ports/port@0/endpoint@0";
                tcon0_in_mixer1 = "/soc/lcd-controller@1c0c000/ports/port@0/endpoint@1";
                tcon0_out = "/soc/lcd-controller@1c0c000/ports/port@1";
                tcon0_out_hdmi = "/soc/lcd-controller@1c0c000/ports/port@1/endpoint@1";
                tcon1 = "/soc/lcd-controller@1c0d000";
                tcon1_in = "/soc/lcd-controller@1c0d000/ports/port@0";
                tcon1_in_mixer0 = "/soc/lcd-controller@1c0d000/ports/port@0/endpoint@0";
                tcon1_in_mixer1 = "/soc/lcd-controller@1c0d000/ports/port@0/endpoint@1";
                tcon1_out = "/soc/lcd-controller@1c0d000/ports/port@1";
                syscon = "/soc/syscon@1c00000";
                dma = "/soc/dma-controller@01c02000";
                mmc0 = "/soc/mmc@01c0f000";
                mmc1 = "/soc/mmc@01c10000";
                mmc2 = "/soc/mmc@01c11000";
                usb_otg = "/soc/usb@01c19000";
                sid = "/soc/eeprom@01c14000";
                usbphy = "/soc/phy@01c19400";
                ehci0 = "/soc/usb@01c1a000";
                ohci0 = "/soc/usb@01c1a400";
                ehci1 = "/soc/usb@01c1b000";
                ohci1 = "/soc/usb@01c1b400";
                ehci2 = "/soc/usb@01c1c000";
                ohci2 = "/soc/usb@01c1c400";
                ehci3 = "/soc/usb@01c1d000";
                ohci3 = "/soc/usb@01c1d400";
                ccu = "/soc/clock@01c20000";
                pio = "/soc/pinctrl@01c20800";
                csi_pins = "/soc/pinctrl@01c20800/csi";
                emac_rgmii_pins = "/soc/pinctrl@01c20800/emac0";
                i2s0_pins = "/soc/pinctrl@01c20800/i2s0";
                i2c0_pins = "/soc/pinctrl@01c20800/i2c0";
                i2c1_pins = "/soc/pinctrl@01c20800/i2c1";
                i2c2_pins = "/soc/pinctrl@01c20800/i2c2";
                mmc0_pins_a = "/soc/pinctrl@01c20800/mmc0@0";
                mmc0_cd_pin = "/soc/pinctrl@01c20800/mmc0_cd_pin@0";
                mmc1_pins_a = "/soc/pinctrl@01c20800/mmc1@0";
                mmc2_8bit_pins = "/soc/pinctrl@01c20800/mmc2_8bit";
                spdif_tx_pins_a = "/soc/pinctrl@01c20800/spdif@0";
                spi0_pins = "/soc/pinctrl@01c20800/spi0";
                spi1_pins = "/soc/pinctrl@01c20800/spi1";
                uart0_pins_a = "/soc/pinctrl@01c20800/uart0@0";
                uart1_pins = "/soc/pinctrl@01c20800/uart1";
                uart1_rts_cts_pins = "/soc/pinctrl@01c20800/uart1_rts_cts";
                uart2_pins = "/soc/pinctrl@01c20800/uart2";
                uart2_rts_cts_pins = "/soc/pinctrl@01c20800/uart2_rts_cts";
                uart3_pins = "/soc/pinctrl@01c20800/uart3";
                uart3_rts_cts_pins = "/soc/pinctrl@01c20800/uart3_rts_cts";
                pwm0_pins = "/soc/pinctrl@01c20800/pwm0";
                leds_npi = "/soc/pinctrl@01c20800/led_pins";
                spi0_cs_pins = "/soc/pinctrl@01c20800/spi0_cs_pins";
                ths = "/soc/ths@01c25000";
                emac = "/soc/ethernet@1c30000";
                mdio = "/soc/ethernet@1c30000/mdio";
                int_mii_phy = "/soc/ethernet@1c30000/mdio/ethernet-phy@1";
                spi0 = "/soc/spi@01c68000";
                spidev0 = "/soc/spi@01c68000/spi@0";
                spiflash = "/soc/spi@01c68000/spiflash@0";
                pitft = "/soc/spi@01c68000/pitft@0";
                pitft_ts = "/soc/spi@01c68000/pitft-ts@1";
                spi1 = "/soc/spi@01c69000";
                spidev1 = "/soc/spi@01c69000/spi@1";
                wdt0 = "/soc/watchdog@01c20ca0";
                spdif = "/soc/spdif@01c21000";
                pwm = "/soc/pwm@01c21400";
                codec = "/soc/codec@01c22c00";
                i2s0 = "/soc/i2s@01c22000";
                uart0 = "/soc/serial@01c28000";
                uart1 = "/soc/serial@01c28400";
                uart2 = "/soc/serial@01c28800";
                uart3 = "/soc/serial@01c28c00";
                i2c0 = "/soc/i2c@01c2ac00";
                i2c1 = "/soc/i2c@01c2b000";
                i2c2 = "/soc/i2c@01c2b400";
                gic = "/soc/interrupt-controller@01c81000";
                csi = "/soc/camera@01cb0000";
                rtc = "/soc/rtc@01f00000";
                r_ccu = "/soc/clock@1f01400";
                codec_analog = "/soc/codec-analog@01f015c0";
                ir = "/soc/ir@01f02000";
                r_i2c = "/soc/i2c@01f02400";
                r_pio = "/soc/pinctrl@01f02c00";
                ir_pins_a = "/soc/pinctrl@01f02c00/ir@0";
                r_i2c_pins_a = "/soc/pinctrl@01f02c00/r_i2c@0";
                leds_r_npi = "/soc/pinctrl@01f02c00/led_pins";
                sw_r_npi = "/soc/pinctrl@01f02c00/key_pins";
                mali = "/soc/gpu@1c40000";
                cpu_thermal = "/thermal-zones/cpu_thermal";
                cpu_warm = "/thermal-zones/cpu_thermal/trips/cpu_warm";
                cpu_hot = "/thermal-zones/cpu_thermal/trips/cpu_hot";
                cpu_very_hot = "/thermal-zones/cpu_thermal/trips/cpu_very_hot";
                cpu_crit = "/thermal-zones/cpu_thermal/trips/cpu_crit";
                cpu0 = "/cpus/cpu@0";
                cma = "/reserved-memory/linux,cma";
                reg_ahci_5v = "/ahci-5v";
                reg_usb0_vbus = "/usb0-vbus";
                reg_usb1_vbus = "/usb1-vbus";
                reg_usb2_vbus = "/usb2-vbus";
                reg_vcc3v0 = "/vcc3v0";
                reg_vcc3v3 = "/vcc3v3";
                reg_vcc5v0 = "/vcc5v0";
                hdmi_con_in = "/connector/port/endpoint";
                vdd_cpux = "/gpio-regulator";
                pcm5102a = "/pcm5102a-codec";
                reg_vcc1v2 = "/vcc1v2";
                reg_vcc_dram = "/vcc-dram";
                reg_vdd_cpux = "/vdd-cpux";
        };
};

 

Posted (edited)

moving to unsupported

oops, they share the same image since hardware is nearly identical. So it is supported.

However your firmware is very outdated. Armbian can only support the most recent version due to lack of resources.

 

Anyway maybe a member of the community has some clue.

Edited by Werner
correction

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines