Jump to content

OPUser

Members
  • Posts

    17
  • Joined

  • Last visited

Posts posted by OPUser

  1. Is it more correct to build Armbian from the official branch v21.02 (if talking about the self build). Does a particular kernel and u-boot snapshots are linked to the official releases?

     

    11 hours ago, Igor said:

    you will need to edit DT by hand

    I tried to merge dtb of BananaPi and OrangePi, enabled some devices, but, unfortunately, I didn't get the desired result yet - not enough knowledge on this subject. Perhaps, v5.4 will be a good choice for now

    Spoiler

     

    /dts-v1/;

    / {
        interrupt-parent = <0x01>;
        #address-cells = <0x01>;
        #size-cells = <0x01>;
        model = "Orange Pi";
        compatible = "xunlong,orangepi\0allwinner,sun7i-a20";

        aliases {
            ethernet0 = "/soc/ethernet@1c50000";
            serial0 = "/soc/serial@1c28000";
        };

        chosen {
            #address-cells = <0x01>;
            #size-cells = <0x01>;
            ranges;
            stdout-path = "serial0:115200n8";

            framebuffer-lcd0-hdmi {
                compatible = "allwinner,simple-framebuffer\0simple-framebuffer";
                allwinner,pipeline = "de_be0-lcd0-hdmi";
                clocks = <0x02 0x38 0x02 0x3c 0x02 0x3e 0x02 0x90 0x02 0x9b 0x02 0x8c 0x02 0xa4>;
                status = "disabled";
            };

            framebuffer-lcd0 {
                compatible = "allwinner,simple-framebuffer\0simple-framebuffer";
                allwinner,pipeline = "de_be0-lcd0";
                clocks = <0x02 0x38 0x02 0x3e 0x02 0x90 0x02 0x95 0x02 0x8c>;
                status = "disabled";
            };

            framebuffer-lcd0-tve0 {
                compatible = "allwinner,simple-framebuffer\0simple-framebuffer";
                allwinner,pipeline = "de_be0-lcd0-tve0";
                clocks = <0x02 0x36 0x02 0x38 0x02 0x3e 0x02 0x90 0x02 0x9b 0x02 0x87 0x02 0x8c>;
                status = "disabled";
            };
        };

        cpus {
            #address-cells = <0x01>;
            #size-cells = <0x00>;

            cpu@0 {
                compatible = "arm,cortex-a7";
                device_type = "cpu";
                reg = <0x00>;
                clocks = <0x02 0x14>;
                clock-latency = <0x3b9b0>;
                operating-points = <0xea600 0x155cc0 0xdea80 0x155cc0 0xd2f00 0x13d620 0xafc80 0x124f80 0x80e80 0x10c8e0 0x4c2c0 0xf4240 0x23280 0xf4240>;
                #cooling-cells = <0x02>;
                phandle = <0x05>;
            };

            cpu@1 {
                compatible = "arm,cortex-a7";
                device_type = "cpu";
                reg = <0x01>;
                clocks = <0x02 0x14>;
                clock-latency = <0x3b9b0>;
                operating-points = <0xea600 0x155cc0 0xdea80 0x155cc0 0xd2f00 0x13d620 0xafc80 0x124f80 0x80e80 0x10c8e0 0x4c2c0 0xf4240 0x23280 0xf4240>;
                #cooling-cells = <0x02>;
                phandle = <0x06>;
            };
        };

        thermal-zones {

            cpu_thermal {
                polling-delay-passive = <0xfa>;
                polling-delay = <0x3e8>;
                thermal-sensors = <0x03>;

                cooling-maps {

                    map0 {
                        trip = <0x04>;
                        cooling-device = <0x05 0xffffffff 0xffffffff 0x06 0xffffffff 0xffffffff>;
                    };
                };

                trips {

                    cpu_alert0 {
                        temperature = <0x124f8>;
                        hysteresis = <0x7d0>;
                        type = "passive";
                        phandle = <0x04>;
                    };

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

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

            default-pool {
                compatible = "shared-dma-pool";
                size = <0x6000000>;
                alloc-ranges = <0x40000000 0x10000000>;
                reusable;
                linux,cma-default;
            };
        };

        timer {
            compatible = "arm,armv7-timer";
            interrupts = <0x01 0x0d 0xf08 0x01 0x0e 0xf08 0x01 0x0b 0xf08 0x01 0x0a 0xf08>;
        };

        pmu {
            compatible = "arm,cortex-a7-pmu";
            interrupts = <0x00 0x78 0x04 0x00 0x79 0x04>;
        };

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

            clk-24M {
                #clock-cells = <0x00>;
                compatible = "fixed-clock";
                clock-frequency = <0x16e3600>;
                clock-output-names = "osc24M";
                phandle = <0x21>;
            };

            clk-32k {
                #clock-cells = <0x00>;
                compatible = "fixed-clock";
                clock-frequency = <0x8000>;
                clock-output-names = "osc32k";
                phandle = <0x22>;
            };

            clk-mii-phy-tx {
                #clock-cells = <0x00>;
                compatible = "fixed-clock";
                clock-frequency = <0x17d7840>;
                clock-output-names = "mii_phy_tx";
                phandle = <0x07>;
            };

            clk-gmac-int-tx {
                #clock-cells = <0x00>;
                compatible = "fixed-clock";
                clock-frequency = <0x7735940>;
                clock-output-names = "gmac_int_tx";
                phandle = <0x08>;
            };

            clk@1c20164 {
                #clock-cells = <0x00>;
                compatible = "allwinner,sun7i-a20-gmac-clk";
                reg = <0x1c20164 0x04>;
                clocks = <0x07 0x08>;
                clock-output-names = "gmac_tx";
                phandle = <0x2a>;
            };
        };

        display-engine {
            compatible = "allwinner,sun7i-a20-display-engine";
            allwinner,pipelines = <0x09 0x0a>;
            status = "okay";
            phandle = <0x3b>;
        };

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

            system-control@1c00000 {
                compatible = "allwinner,sun7i-a20-system-control\0allwinner,sun4i-a10-system-control";
                reg = <0x1c00000 0x30>;
                #address-cells = <0x01>;
                #size-cells = <0x01>;
                ranges;

                sram@0 {
                    compatible = "mmio-sram";
                    reg = <0x00 0xc000>;
                    #address-cells = <0x01>;
                    #size-cells = <0x01>;
                    ranges = <0x00 0x00 0xc000>;
                    phandle = <0x3c>;

                    sram-section@8000 {
                        compatible = "allwinner,sun7i-a20-sram-a3-a4\0allwinner,sun4i-a10-sram-a3-a4";
                        reg = <0x8000 0x4000>;
                        status = "disabled";
                        phandle = <0x0c>;
                    };
                };

                sram@10000 {
                    compatible = "mmio-sram";
                    reg = <0x10000 0x1000>;
                    #address-cells = <0x01>;
                    #size-cells = <0x01>;
                    ranges = <0x00 0x10000 0x1000>;
                    phandle = <0x3d>;

                    sram-section@0 {
                        compatible = "allwinner,sun7i-a20-sram-d\0allwinner,sun4i-a10-sram-d";
                        reg = <0x00 0x1000>;
                        status = "okay";
                        phandle = <0x1a>;
                    };
                };

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

                    sram-section@0 {
                        compatible = "allwinner,sun7i-a20-sram-c1\0allwinner,sun4i-a10-sram-c1";
                        reg = <0x00 0x80000>;
                        phandle = <0x13>;
                    };
                };
            };

            interrupt-controller@1c00030 {
                compatible = "allwinner,sun7i-a20-sc-nmi";
                interrupt-controller;
                #interrupt-cells = <0x02>;
                reg = <0x1c00030 0x0c>;
                interrupts = <0x00 0x00 0x04>;
                phandle = <0x26>;
            };

            dma-controller@1c02000 {
                compatible = "allwinner,sun4i-a10-dma";
                reg = <0x1c02000 0x1000>;
                interrupts = <0x00 0x1b 0x04>;
                clocks = <0x02 0x20>;
                #dma-cells = <0x02>;
                phandle = <0x0b>;
            };

            nand-controller@1c03000 {
                compatible = "allwinner,sun4i-a10-nand";
                reg = <0x1c03000 0x1000>;
                interrupts = <0x00 0x25 0x04>;
                clocks = <0x02 0x27 0x02 0x60>;
                clock-names = "ahb\0mod";
                dmas = <0x0b 0x01 0x03>;
                dma-names = "rxtx";
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0x3f>;
            };

            spi@1c05000 {
                compatible = "allwinner,sun4i-a10-spi";
                reg = <0x1c05000 0x1000>;
                interrupts = <0x00 0x0a 0x04>;
                clocks = <0x02 0x2c 0x02 0x70>;
                clock-names = "ahb\0mod";
                dmas = <0x0b 0x01 0x1b 0x0b 0x01 0x1a>;
                dma-names = "rx\0tx";
                status = "okay";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                num-cs = <0x04>;
                phandle = <0x40>;
            };

            spi@1c06000 {
                compatible = "allwinner,sun4i-a10-spi";
                reg = <0x1c06000 0x1000>;
                interrupts = <0x00 0x0b 0x04>;
                clocks = <0x02 0x2d 0x02 0x71>;
                clock-names = "ahb\0mod";
                dmas = <0x0b 0x01 0x09 0x0b 0x01 0x08>;
                dma-names = "rx\0tx";
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                num-cs = <0x01>;
                phandle = <0x41>;
            };

            csi@1c09000 {
                compatible = "allwinner,sun7i-a20-csi0";
                reg = <0x1c09000 0x1000>;
                interrupts = <0x00 0x2a 0x04>;
                clocks = <0x02 0x3a 0x02 0x97 0x02 0x83>;
                clock-names = "bus\0isp\0ram";
                resets = <0x02 0x0e>;
                status = "disabled";
                phandle = <0x42>;
            };

            ethernet@1c0b000 {
                compatible = "allwinner,sun4i-a10-emac";
                reg = <0x1c0b000 0x1000>;
                interrupts = <0x00 0x37 0x04>;
                clocks = <0x02 0x2a>;
                allwinner,sram = <0x0c 0x01>;
                status = "disabled";
                phandle = <0x43>;
            };

            mdio@1c0b080 {
                compatible = "allwinner,sun4i-a10-mdio";
                reg = <0x1c0b080 0x14>;
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0x44>;
            };

            lcd-controller@1c0c000 {
                compatible = "allwinner,sun7i-a20-tcon0\0allwinner,sun7i-a20-tcon";
                reg = <0x1c0c000 0x1000>;
                interrupts = <0x00 0x2c 0x04>;
                resets = <0x02 0x0b 0x02 0x12>;
                reset-names = "lcd\0lvds";
                clocks = <0x02 0x38 0x02 0x95 0x02 0x9b>;
                clock-names = "ahb\0tcon-ch0\0tcon-ch1";
                clock-output-names = "tcon0-pixel-clock";
                #clock-cells = <0x00>;
                dmas = <0x0b 0x01 0x0e>;
                phandle = <0x45>;

                ports {
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;

                    port@0 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x00>;
                        phandle = <0x46>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x0d>;
                            phandle = <0x38>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x0e>;
                            phandle = <0x34>;
                        };
                    };

                    port@1 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x01>;
                        phandle = <0x47>;

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x0f>;
                            allwinner,tcon-channel = <0x01>;
                            phandle = <0x1f>;
                        };
                    };
                };
            };

            lcd-controller@1c0d000 {
                compatible = "allwinner,sun7i-a20-tcon1\0allwinner,sun7i-a20-tcon";
                reg = <0x1c0d000 0x1000>;
                interrupts = <0x00 0x2d 0x04>;
                resets = <0x02 0x0d>;
                reset-names = "lcd";
                clocks = <0x02 0x39 0x02 0x96 0x02 0x9d>;
                clock-names = "ahb\0tcon-ch0\0tcon-ch1";
                clock-output-names = "tcon1-pixel-clock";
                #clock-cells = <0x00>;
                dmas = <0x0b 0x01 0x0f>;
                phandle = <0x48>;

                ports {
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;

                    port@0 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x00>;
                        phandle = <0x49>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x10>;
                            phandle = <0x39>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x11>;
                            phandle = <0x35>;
                        };
                    };

                    port@1 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x01>;
                        phandle = <0x4a>;

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x12>;
                            allwinner,tcon-channel = <0x01>;
                            phandle = <0x20>;
                        };
                    };
                };
            };

            video-codec@1c0e000 {
                compatible = "allwinner,sun7i-a20-video-engine";
                reg = <0x1c0e000 0x1000>;
                clocks = <0x02 0x34 0x02 0xa1 0x02 0x82>;
                clock-names = "ahb\0mod\0ram";
                resets = <0x02 0x10>;
                interrupts = <0x00 0x35 0x04>;
                allwinner,sram = <0x13 0x01>;
            };

            mmc@1c0f000 {
                compatible = "allwinner,sun7i-a20-mmc";
                reg = <0x1c0f000 0x1000>;
                clocks = <0x02 0x22 0x02 0x62 0x02 0x63 0x02 0x64>;
                clock-names = "ahb\0mmc\0output\0sample";
                interrupts = <0x00 0x20 0x04>;
                pinctrl-names = "default";
                pinctrl-0 = <0x14>;
                status = "okay";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                vmmc-supply = <0x15>;
                bus-width = <0x04>;
                cd-gpios = <0x16 0x07 0x0a 0x01>;
                phandle = <0x4b>;
            };

            mmc@1c10000 {
                compatible = "allwinner,sun7i-a20-mmc";
                reg = <0x1c10000 0x1000>;
                clocks = <0x02 0x23 0x02 0x65 0x02 0x66 0x02 0x67>;
                clock-names = "ahb\0mmc\0output\0sample";
                interrupts = <0x00 0x21 0x04>;
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0x4c>;
            };

            mmc@1c11000 {
                compatible = "allwinner,sun7i-a20-mmc";
                reg = <0x1c11000 0x1000>;
                clocks = <0x02 0x24 0x02 0x68 0x02 0x69 0x02 0x6a>;
                clock-names = "ahb\0mmc\0output\0sample";
                interrupts = <0x00 0x22 0x04>;
                pinctrl-names = "default";
                pinctrl-0 = <0x17>;
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0x4d>;
            };

            mmc@1c12000 {
                compatible = "allwinner,sun7i-a20-mmc";
                reg = <0x1c12000 0x1000>;
                clocks = <0x02 0x25 0x02 0x6b 0x02 0x6c 0x02 0x6d>;
                clock-names = "ahb\0mmc\0output\0sample";
                interrupts = <0x00 0x23 0x04>;
                pinctrl-names = "default";
                pinctrl-0 = <0x18>;
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0x4e>;
            };

            usb@1c13000 {
                compatible = "allwinner,sun4i-a10-musb";
                reg = <0x1c13000 0x400>;
                clocks = <0x02 0x1a>;
                interrupts = <0x00 0x26 0x04>;
                interrupt-names = "mc";
                phys = <0x19 0x00>;
                phy-names = "usb";
                extcon = <0x19 0x00>;
                allwinner,sram = <0x1a 0x01>;
                dr_mode = "otg";
                status = "okay";
                phandle = <0x4f>;
            };

            phy@1c13400 {
                #phy-cells = <0x01>;
                compatible = "allwinner,sun7i-a20-usb-phy";
                reg = <0x1c13400 0x10 0x1c14800 0x04 0x1c1c800 0x04>;
                reg-names = "phy_ctrl\0pmu1\0pmu2";
                clocks = <0x02 0x7d>;
                clock-names = "usb_phy";
                resets = <0x02 0x01 0x02 0x02 0x02 0x03>;
                reset-names = "usb0_reset\0usb1_reset\0usb2_reset";
                status = "okay";
                usb0_id_det-gpios = <0x16 0x07 0x04 0x10>;
                usb0_vbus_power-supply = <0x1b>;
                usb0_vbus-supply = <0x1c>;
                usb1_vbus-supply = <0x1d>;
                usb2_vbus-supply = <0x1e>;
                phandle = <0x19>;
            };

            usb@1c14000 {
                compatible = "allwinner,sun7i-a20-ehci\0generic-ehci";
                reg = <0x1c14000 0x100>;
                interrupts = <0x00 0x27 0x04>;
                clocks = <0x02 0x1b>;
                phys = <0x19 0x01>;
                phy-names = "usb";
                status = "okay";
                phandle = <0x50>;
            };

            usb@1c14400 {
                compatible = "allwinner,sun7i-a20-ohci\0generic-ohci";
                reg = <0x1c14400 0x100>;
                interrupts = <0x00 0x40 0x04>;
                clocks = <0x02 0x7b 0x02 0x1c>;
                phys = <0x19 0x01>;
                phy-names = "usb";
                status = "disabled";
                phandle = <0x51>;
            };

            crypto-engine@1c15000 {
                compatible = "allwinner,sun7i-a20-crypto\0allwinner,sun4i-a10-crypto";
                reg = <0x1c15000 0x1000>;
                interrupts = <0x00 0x56 0x04>;
                clocks = <0x02 0x1f 0x02 0x6f>;
                clock-names = "ahb\0mod";
                phandle = <0x52>;
            };

            hdmi@1c16000 {
                compatible = "allwinner,sun7i-a20-hdmi\0allwinner,sun5i-a10s-hdmi";
                reg = <0x1c16000 0x1000>;
                interrupts = <0x00 0x3a 0x04>;
                clocks = <0x02 0x3c 0x02 0xa4 0x02 0x09 0x02 0x12>;
                clock-names = "ahb\0mod\0pll-0\0pll-1";
                dmas = <0x0b 0x00 0x10 0x0b 0x00 0x10 0x0b 0x01 0x18>;
                dma-names = "ddc-tx\0ddc-rx\0audio-tx";
                status = "okay";
                phandle = <0x53>;

                ports {
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;

                    port@0 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x00>;
                        phandle = <0x54>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x1f>;
                            phandle = <0x0f>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x20>;
                            phandle = <0x12>;
                        };
                    };

                    port@1 {
                        reg = <0x01>;
                        phandle = <0x55>;
                    };
                };
            };

            spi@1c17000 {
                compatible = "allwinner,sun4i-a10-spi";
                reg = <0x1c17000 0x1000>;
                interrupts = <0x00 0x0c 0x04>;
                clocks = <0x02 0x2e 0x02 0x72>;
                clock-names = "ahb\0mod";
                dmas = <0x0b 0x01 0x1d 0x0b 0x01 0x1c>;
                dma-names = "rx\0tx";
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                num-cs = <0x01>;
                phandle = <0x56>;
            };

            sata@1c18000 {
                compatible = "allwinner,sun4i-a10-ahci";
                reg = <0x1c18000 0x1000>;
                interrupts = <0x00 0x38 0x04>;
                clocks = <0x02 0x31 0x02 0x7a>;
                status = "okay";
                phandle = <0x57>;
            };

            usb@1c1c000 {
                compatible = "allwinner,sun7i-a20-ehci\0generic-ehci";
                reg = <0x1c1c000 0x100>;
                interrupts = <0x00 0x28 0x04>;
                clocks = <0x02 0x1d>;
                phys = <0x19 0x02>;
                phy-names = "usb";
                status = "okay";
                phandle = <0x58>;
            };

            usb@1c1c400 {
                compatible = "allwinner,sun7i-a20-ohci\0generic-ohci";
                reg = <0x1c1c400 0x100>;
                interrupts = <0x00 0x41 0x04>;
                clocks = <0x02 0x7c 0x02 0x1e>;
                phys = <0x19 0x02>;
                phy-names = "usb";
                status = "okay";
                phandle = <0x59>;
            };

            csi@1c1d000 {
                compatible = "allwinner,sun7i-a20-csi1\0allwinner,sun4i-a10-csi1";
                reg = <0x1c1d000 0x1000>;
                interrupts = <0x00 0x2b 0x04>;
                clocks = <0x02 0x3b 0x02 0x84>;
                clock-names = "bus\0ram";
                resets = <0x02 0x0f>;
                status = "disabled";
                phandle = <0x5a>;
            };

            spi@1c1f000 {
                compatible = "allwinner,sun4i-a10-spi";
                reg = <0x1c1f000 0x1000>;
                interrupts = <0x00 0x32 0x04>;
                clocks = <0x02 0x2f 0x02 0x7f>;
                clock-names = "ahb\0mod";
                dmas = <0x0b 0x01 0x1f 0x0b 0x01 0x1e>;
                dma-names = "rx\0tx";
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                num-cs = <0x01>;
                phandle = <0x5b>;
            };

            clock@1c20000 {
                compatible = "allwinner,sun7i-a20-ccu";
                reg = <0x1c20000 0x400>;
                clocks = <0x21 0x22>;
                clock-names = "hosc\0losc";
                #clock-cells = <0x01>;
                #reset-cells = <0x01>;
                phandle = <0x02>;
            };

            pinctrl@1c20800 {
                compatible = "allwinner,sun7i-a20-pinctrl";
                reg = <0x1c20800 0x400>;
                interrupts = <0x00 0x1c 0x04>;
                clocks = <0x02 0x4a 0x21 0x22>;
                clock-names = "apb\0hosc\0losc";
                gpio-controller;
                interrupt-controller;
                #interrupt-cells = <0x03>;
                #gpio-cells = <0x03>;
                phandle = <0x16>;

                can-pa-pins {
                    pins = "PA16\0PA17";
                    function = "can";
                    phandle = <0x5c>;
                };

                can-ph-pins {
                    pins = "PH20\0PH21";
                    function = "can";
                    phandle = <0x5d>;
                };

                clk-out-a-pin {
                    pins = "PI12";
                    function = "clk_out_a";
                    phandle = <0x5e>;
                };

                clk-out-b-pin {
                    pins = "PI13";
                    function = "clk_out_b";
                    phandle = <0x5f>;
                };

                csi-8bits-pins {
                    pins = "PE0\0PE2\0PE3\0PE4\0PE5\0PE6\0PE7\0PE8\0PE9\0PE10\0PE11";
                    function = "csi0";
                    phandle = <0x60>;
                };

                csi-clk-pin {
                    pins = "PE1";
                    function = "csi0";
                    phandle = <0x61>;
                };

                csi1-8bits-pg-pins {
                    pins = "PG0\0PG2\0PG3\0PG4\0PG5\0PG6\0PG7\0PG8\0PG9\0PG10\0PG11";
                    function = "csi1";
                    phandle = <0x62>;
                };

                csi1-24bits-ph-pins {
                    pins = "PH0\0PH1\0PH2\0PH3\0PH4\0PH5\0PH6\0PH7\0PH8\0PH9\0PH10\0PH11\0PH12\0PH13\0PH14\0PH15\0PH16\0PH17\0PH18\0PH19\0PH20\0PH21\0PH22\0PH23\0PH24\0PH25\0PH26\0PH27";
                    function = "csi1";
                    phandle = <0x63>;
                };

                csi1-clk-pg-pin {
                    pins = "PG1";
                    function = "csi1";
                    phandle = <0x64>;
                };

                emac-pa-pins {
                    pins = "PA0\0PA1\0PA2\0PA3\0PA4\0PA5\0PA6\0PA7\0PA8\0PA9\0PA10\0PA11\0PA12\0PA13\0PA14\0PA15\0PA16";
                    function = "emac";
                    phandle = <0x65>;
                };

                emac-ph-pins {
                    pins = "PH8\0PH9\0PH10\0PH11\0PH14\0PH15\0PH16\0PH17\0PH18\0PH19\0PH20\0PH21\0PH22\0PH23\0PH24\0PH25\0PH26";
                    function = "emac";
                    phandle = <0x66>;
                };

                gmac-mii-pins {
                    pins = "PA0\0PA1\0PA2\0PA3\0PA4\0PA5\0PA6\0PA7\0PA8\0PA9\0PA10\0PA11\0PA12\0PA13\0PA14\0PA15\0PA16";
                    function = "gmac";
                    phandle = <0x67>;
                };

                gmac-rgmii-pins {
                    pins = "PA0\0PA1\0PA2\0PA3\0PA4\0PA5\0PA6\0PA7\0PA8\0PA10\0PA11\0PA12\0PA13\0PA15\0PA16";
                    function = "gmac";
                    drive-strength = <0x28>;
                    phandle = <0x2b>;
                };

                i2c0-pins {
                    pins = "PB0\0PB1";
                    function = "i2c0";
                    phandle = <0x25>;
                };

                i2c1-pins {
                    pins = "PB18\0PB19";
                    function = "i2c1";
                    phandle = <0x27>;
                };

                i2c2-pins {
                    pins = "PB20\0PB21";
                    function = "i2c2";
                    phandle = <0x28>;
                };

                i2c3-pins {
                    pins = "PI0\0PI1";
                    function = "i2c3";
                    phandle = <0x29>;
                };

                ir0-rx-pin {
                    pins = "PB4";
                    function = "ir0";
                    phandle = <0x23>;
                };

                ir0-tx-pin {
                    pins = "PB3";
                    function = "ir0";
                    phandle = <0x68>;
                };

                ir1-rx-pin {
                    pins = "PB23";
                    function = "ir1";
                    phandle = <0x69>;
                };

                ir1-tx-pin {
                    pins = "PB22";
                    function = "ir1";
                    phandle = <0x6a>;
                };

                lcd-lvds0-pins {
                    pins = "PD0\0PD1\0PD2\0PD3\0PD4\0PD5\0PD6\0PD7\0PD8\0PD9";
                    function = "lvds0";
                    phandle = <0x6b>;
                };

                lcd-lvds1-pins {
                    pins = "PD10\0PD11\0PD12\0PD13\0PD14\0PD15\0PD16\0PD17\0PD18\0PD19";
                    function = "lvds1";
                    phandle = <0x6c>;
                };

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

                mmc2-pins {
                    pins = "PC6\0PC7\0PC8\0PC9\0PC10\0PC11";
                    function = "mmc2";
                    drive-strength = <0x1e>;
                    bias-pull-up;
                    phandle = <0x17>;
                };

                mmc3-pins {
                    pins = "PI4\0PI5\0PI6\0PI7\0PI8\0PI9";
                    function = "mmc3";
                    drive-strength = <0x1e>;
                    bias-pull-up;
                    phandle = <0x18>;
                };

                ps2-0-pins {
                    pins = "PI20\0PI21";
                    function = "ps2";
                    phandle = <0x6d>;
                };

                ps2-1-ph-pins {
                    pins = "PH12\0PH13";
                    function = "ps2";
                    phandle = <0x6e>;
                };

                pwm0-pin {
                    pins = "PB2";
                    function = "pwm";
                    phandle = <0x6f>;
                };

                pwm1-pin {
                    pins = "PI3";
                    function = "pwm";
                    phandle = <0x70>;
                };

                spdif-tx-pin {
                    pins = "PB13";
                    function = "spdif";
                    bias-pull-up;
                    phandle = <0x71>;
                };

                spi0-pi-pins {
                    pins = "PI11\0PI12\0PI13";
                    function = "spi0";
                    phandle = <0x72>;
                };

                spi0-cs0-pi-pin {
                    pins = "PI10";
                    function = "spi0";
                    phandle = <0x73>;
                };

                spi0-cs1-pi-pin {
                    pins = "PI14";
                    function = "spi0";
                    phandle = <0x74>;
                };

                spi1-pi-pins {
                    pins = "PI17\0PI18\0PI19";
                    function = "spi1";
                    phandle = <0x75>;
                };

                spi1-cs0-pi-pin {
                    pins = "PI16";
                    function = "spi1";
                    phandle = <0x76>;
                };

                spi2-pb-pins {
                    pins = "PB15\0PB16\0PB17";
                    function = "spi2";
                    phandle = <0x77>;
                };

                spi2-cs0-pb-pin {
                    pins = "PB14";
                    function = "spi2";
                    phandle = <0x78>;
                };

                spi2-pc-pins {
                    pins = "PC20\0PC21\0PC22";
                    function = "spi2";
                    phandle = <0x79>;
                };

                spi2-cs0-pc-pin {
                    pins = "PC19";
                    function = "spi2";
                    phandle = <0x7a>;
                };

                uart0-pb-pins {
                    pins = "PB22\0PB23";
                    function = "uart0";
                    phandle = <0x24>;
                };

                uart0-pf-pins {
                    pins = "PF2\0PF4";
                    function = "uart0";
                    phandle = <0x7b>;
                };

                uart1-pa-pins {
                    pins = "PA10\0PA11";
                    function = "uart1";
                    phandle = <0x7c>;
                };

                uart1-cts-rts-pa-pins {
                    pins = "PA12\0PA13";
                    function = "uart1";
                    phandle = <0x7d>;
                };

                uart2-pa-pins {
                    pins = "PA2\0PA3";
                    function = "uart2";
                    phandle = <0x7e>;
                };

                uart2-cts-rts-pa-pins {
                    pins = "PA0\0PA1";
                    function = "uart2";
                    phandle = <0x7f>;
                };

                uart2-pi-pins {
                    pins = "PI18\0PI19";
                    function = "uart2";
                    phandle = <0x80>;
                };

                uart2-cts-rts-pi-pins {
                    pins = "PI16\0PI17";
                    function = "uart2";
                    phandle = <0x81>;
                };

                uart3-pg-pins {
                    pins = "PG6\0PG7";
                    function = "uart3";
                    phandle = <0x82>;
                };

                uart3-cts-rts-pg-pins {
                    pins = "PG8\0PG9";
                    function = "uart3";
                    phandle = <0x83>;
                };

                uart3-ph-pins {
                    pins = "PH0\0PH1";
                    function = "uart3";
                    phandle = <0x84>;
                };

                uart3-cts-rts-ph-pins {
                    pins = "PH2\0PH3";
                    function = "uart3";
                    phandle = <0x85>;
                };

                uart4-pg-pins {
                    pins = "PG10\0PG11";
                    function = "uart4";
                    phandle = <0x86>;
                };

                uart4-ph-pins {
                    pins = "PH4\0PH5";
                    function = "uart4";
                    phandle = <0x87>;
                };

                uart5-ph-pins {
                    pins = "PH6\0PH7";
                    function = "uart5";
                    phandle = <0x88>;
                };

                uart5-pi-pins {
                    pins = "PI10\0PI11";
                    function = "uart5";
                    phandle = <0x89>;
                };

                uart6-pa-pins {
                    pins = "PA12\0PA13";
                    function = "uart6";
                    phandle = <0x8a>;
                };

                uart6-pi-pins {
                    pins = "PI12\0PI13";
                    function = "uart6";
                    phandle = <0x8b>;
                };

                uart7-pa-pins {
                    pins = "PA14\0PA15";
                    function = "uart7";
                    phandle = <0x8c>;
                };

                uart7-pi-pins {
                    pins = "PI20\0PI21";
                    function = "uart7";
                    phandle = <0x8d>;
                };
            };

            timer@1c20c00 {
                compatible = "allwinner,sun4i-a10-timer";
                reg = <0x1c20c00 0x90>;
                interrupts = <0x00 0x16 0x04 0x00 0x17 0x04 0x00 0x18 0x04 0x00 0x19 0x04 0x00 0x43 0x04 0x00 0x44 0x04>;
                clocks = <0x21>;
            };

            watchdog@1c20c90 {
                compatible = "allwinner,sun4i-a10-wdt";
                reg = <0x1c20c90 0x10>;
                interrupts = <0x00 0x18 0x04>;
                clocks = <0x21>;
                phandle = <0x8e>;
            };

            rtc@1c20d00 {
                compatible = "allwinner,sun7i-a20-rtc";
                reg = <0x1c20d00 0x20>;
                interrupts = <0x00 0x18 0x04>;
                phandle = <0x8f>;
            };

            pwm@1c20e00 {
                compatible = "allwinner,sun7i-a20-pwm";
                reg = <0x1c20e00 0x0c>;
                clocks = <0x21>;
                #pwm-cells = <0x03>;
                status = "disabled";
                phandle = <0x90>;
            };

            spdif@1c21000 {
                #sound-dai-cells = <0x00>;
                compatible = "allwinner,sun4i-a10-spdif";
                reg = <0x1c21000 0x400>;
                interrupts = <0x00 0x0d 0x04>;
                clocks = <0x02 0x46 0x02 0x78>;
                clock-names = "apb\0spdif";
                dmas = <0x0b 0x00 0x02 0x0b 0x00 0x02>;
                dma-names = "rx\0tx";
                status = "disabled";
                phandle = <0x91>;
            };

            ir@1c21800 {
                compatible = "allwinner,sun4i-a10-ir";
                clocks = <0x02 0x4b 0x02 0x74>;
                clock-names = "apb\0ir";
                interrupts = <0x00 0x05 0x04>;
                reg = <0x1c21800 0x40>;
                status = "okay";
                pinctrl-names = "default";
                pinctrl-0 = <0x23>;
                phandle = <0x92>;
            };

            ir@1c21c00 {
                compatible = "allwinner,sun4i-a10-ir";
                clocks = <0x02 0x4c 0x02 0x75>;
                clock-names = "apb\0ir";
                interrupts = <0x00 0x06 0x04>;
                reg = <0x1c21c00 0x40>;
                status = "disabled";
                phandle = <0x93>;
            };

            i2s@1c22000 {
                #sound-dai-cells = <0x00>;
                compatible = "allwinner,sun4i-a10-i2s";
                reg = <0x1c22000 0x400>;
                interrupts = <0x00 0x57 0x04>;
                clocks = <0x02 0x49 0x02 0x80>;
                clock-names = "apb\0mod";
                dmas = <0x0b 0x00 0x04 0x0b 0x00 0x04>;
                dma-names = "rx\0tx";
                status = "disabled";
                phandle = <0x94>;
            };

            i2s@1c22400 {
                #sound-dai-cells = <0x00>;
                compatible = "allwinner,sun4i-a10-i2s";
                reg = <0x1c22400 0x400>;
                interrupts = <0x00 0x10 0x04>;
                clocks = <0x02 0x47 0x02 0x76>;
                clock-names = "apb\0mod";
                dmas = <0x0b 0x00 0x03 0x0b 0x00 0x03>;
                dma-names = "rx\0tx";
                status = "disabled";
                phandle = <0x95>;
            };

            lradc@1c22800 {
                compatible = "allwinner,sun4i-a10-lradc-keys";
                reg = <0x1c22800 0x100>;
                interrupts = <0x00 0x1f 0x04>;
                status = "disabled";
                phandle = <0x96>;
            };

            codec@1c22c00 {
                #sound-dai-cells = <0x00>;
                compatible = "allwinner,sun7i-a20-codec";
                reg = <0x1c22c00 0x40>;
                interrupts = <0x00 0x1e 0x04>;
                clocks = <0x02 0x45 0x02 0xa0>;
                clock-names = "apb\0codec";
                dmas = <0x0b 0x00 0x13 0x0b 0x00 0x13>;
                dma-names = "rx\0tx";
                status = "okay";
                phandle = <0x97>;
            };

            eeprom@1c23800 {
                compatible = "allwinner,sun7i-a20-sid";
                reg = <0x1c23800 0x200>;
                phandle = <0x98>;
            };

            i2s@1c24400 {
                #sound-dai-cells = <0x00>;
                compatible = "allwinner,sun4i-a10-i2s";
                reg = <0x1c24400 0x400>;
                interrupts = <0x00 0x5a 0x04>;
                clocks = <0x02 0x4d 0x02 0x81>;
                clock-names = "apb\0mod";
                dmas = <0x0b 0x00 0x06 0x0b 0x00 0x06>;
                dma-names = "rx\0tx";
                status = "disabled";
                phandle = <0x99>;
            };

            rtp@1c25000 {
                compatible = "allwinner,sun5i-a13-ts";
                reg = <0x1c25000 0x100>;
                interrupts = <0x00 0x1d 0x04>;
                #thermal-sensor-cells = <0x00>;
                phandle = <0x03>;
            };

            serial@1c28000 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c28000 0x400>;
                interrupts = <0x00 0x01 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x58>;
                status = "okay";
                pinctrl-names = "default";
                pinctrl-0 = <0x24>;
                phandle = <0x9a>;
            };

            serial@1c28400 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c28400 0x400>;
                interrupts = <0x00 0x02 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x59>;
                status = "disabled";
                phandle = <0x9b>;
            };

            serial@1c28800 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c28800 0x400>;
                interrupts = <0x00 0x03 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x5a>;
                status = "disabled";
                phandle = <0x9c>;
            };

            serial@1c28c00 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c28c00 0x400>;
                interrupts = <0x00 0x04 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x5b>;
                status = "disabled";
                phandle = <0x9d>;
            };

            serial@1c29000 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c29000 0x400>;
                interrupts = <0x00 0x11 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x5c>;
                status = "disabled";
                phandle = <0x9e>;
            };

            serial@1c29400 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c29400 0x400>;
                interrupts = <0x00 0x12 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x5d>;
                status = "disabled";
                phandle = <0x9f>;
            };

            serial@1c29800 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c29800 0x400>;
                interrupts = <0x00 0x13 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x5e>;
                status = "disabled";
                phandle = <0xa0>;
            };

            serial@1c29c00 {
                compatible = "snps,dw-apb-uart";
                reg = <0x1c29c00 0x400>;
                interrupts = <0x00 0x14 0x04>;
                reg-shift = <0x02>;
                reg-io-width = <0x04>;
                clocks = <0x02 0x5f>;
                status = "disabled";
                phandle = <0xa1>;
            };

            ps2@1c2a000 {
                compatible = "allwinner,sun4i-a10-ps2";
                reg = <0x1c2a000 0x400>;
                interrupts = <0x00 0x3e 0x04>;
                clocks = <0x02 0x55>;
                status = "disabled";
                phandle = <0xa2>;
            };

            ps2@1c2a400 {
                compatible = "allwinner,sun4i-a10-ps2";
                reg = <0x1c2a400 0x400>;
                interrupts = <0x00 0x3f 0x04>;
                clocks = <0x02 0x56>;
                status = "disabled";
                phandle = <0xa3>;
            };

            i2c@1c2ac00 {
                compatible = "allwinner,sun7i-a20-i2c\0allwinner,sun4i-a10-i2c";
                reg = <0x1c2ac00 0x400>;
                interrupts = <0x00 0x07 0x04>;
                clocks = <0x02 0x4f>;
                pinctrl-names = "default";
                pinctrl-0 = <0x25>;
                status = "okay";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0xa4>;

                pmic@34 {
                    reg = <0x34>;
                    interrupt-parent = <0x26>;
                    interrupts = <0x00 0x08>;
                    compatible = "x-powers,axp209";
                    interrupt-controller;
                    #interrupt-cells = <0x01>;
                    phandle = <0xa5>;

                    ac-power-supply {
                        compatible = "x-powers,axp202-ac-power-supply";
                        status = "disabled";
                        phandle = <0xa6>;
                    };

                    adc {
                        compatible = "x-powers,axp209-adc";
                        #io-channel-cells = <0x01>;
                        phandle = <0xa7>;
                    };

                    gpio {
                        compatible = "x-powers,axp209-gpio";
                        gpio-controller;
                        #gpio-cells = <0x02>;
                        phandle = <0xa8>;
                    };

                    led {
                        compatible = "x-powers,axp20x-led";
                        status = "disabled";
                        phandle = <0xa9>;
                    };

                    battery-power-supply {
                        compatible = "x-powers,axp209-battery-power-supply";
                        status = "disabled";
                        phandle = <0xaa>;
                    };

                    regulators {
                        x-powers,dcdc-freq = <0x5dc>;

                        dcdc2 {
                            regulator-name = "vdd-cpu";
                            regulator-always-on;
                            regulator-min-microvolt = <0xf4240>;
                            regulator-max-microvolt = <0x16e360>;
                            phandle = <0xab>;
                        };

                        dcdc3 {
                            regulator-name = "vdd-int-pll";
                            regulator-always-on;
                            regulator-min-microvolt = <0xf4240>;
                            regulator-max-microvolt = <0x155cc0>;
                            phandle = <0xac>;
                        };

                        ldo1 {
                            regulator-always-on;
                            regulator-min-microvolt = <0x13d620>;
                            regulator-max-microvolt = <0x13d620>;
                            regulator-name = "vdd-rtc";
                            phandle = <0xad>;
                        };

                        ldo2 {
                            regulator-name = "avcc";
                            regulator-always-on;
                            regulator-min-microvolt = <0x2dc6c0>;
                            regulator-max-microvolt = <0x2dc6c0>;
                            phandle = <0xae>;
                        };

                        ldo3 {
                            regulator-name = "ldo3";
                            phandle = <0xaf>;
                        };

                        ldo4 {
                            regulator-name = "ldo4";
                            phandle = <0xb0>;
                        };

                        ldo5 {
                            regulator-name = "ldo5";
                            status = "disabled";
                            phandle = <0xb1>;
                        };
                    };

                    usb-power-supply {
                        compatible = "x-powers,axp202-usb-power-supply";
                        status = "okay";
                        phandle = <0x1b>;
                    };
                };
            };

            i2c@1c2b000 {
                compatible = "allwinner,sun7i-a20-i2c\0allwinner,sun4i-a10-i2c";
                reg = <0x1c2b000 0x400>;
                interrupts = <0x00 0x08 0x04>;
                clocks = <0x02 0x50>;
                pinctrl-names = "default";
                pinctrl-0 = <0x27>;
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0xb2>;
            };

            i2c@1c2b400 {
                compatible = "allwinner,sun7i-a20-i2c\0allwinner,sun4i-a10-i2c";
                reg = <0x1c2b400 0x400>;
                interrupts = <0x00 0x09 0x04>;
                clocks = <0x02 0x51>;
                pinctrl-names = "default";
                pinctrl-0 = <0x28>;
                status = "okay";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0xb3>;
            };

            i2c@1c2b800 {
                compatible = "allwinner,sun7i-a20-i2c\0allwinner,sun4i-a10-i2c";
                reg = <0x1c2b800 0x400>;
                interrupts = <0x00 0x58 0x04>;
                clocks = <0x02 0x52>;
                pinctrl-names = "default";
                pinctrl-0 = <0x29>;
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0xb4>;
            };

            can@1c2bc00 {
                compatible = "allwinner,sun7i-a20-can\0allwinner,sun4i-a10-can";
                reg = <0x1c2bc00 0x400>;
                interrupts = <0x00 0x1a 0x04>;
                clocks = <0x02 0x53>;
                status = "disabled";
                phandle = <0xb5>;
            };

            i2c@1c2c000 {
                compatible = "allwinner,sun7i-a20-i2c\0allwinner,sun4i-a10-i2c";
                reg = <0x1c2c000 0x400>;
                interrupts = <0x00 0x59 0x04>;
                clocks = <0x02 0x57>;
                status = "disabled";
                #address-cells = <0x01>;
                #size-cells = <0x00>;
                phandle = <0xb6>;
            };

            gpu@1c40000 {
                compatible = "allwinner,sun7i-a20-mali\0arm,mali-400";
                reg = <0x1c40000 0x10000>;
                interrupts = <0x00 0x45 0x04 0x00 0x46 0x04 0x00 0x47 0x04 0x00 0x48 0x04 0x00 0x4a 0x04 0x00 0x4b 0x04 0x00 0x49 0x04>;
                interrupt-names = "gp\0gpmmu\0pp0\0ppmmu0\0pp1\0ppmmu1\0pmu";
                clocks = <0x02 0x44 0x02 0xa5>;
                clock-names = "bus\0core";
                resets = <0x02 0x13>;
                assigned-clocks = <0x02 0xa5>;
                assigned-clock-rates = <0x16e36000>;
                phandle = <0xb7>;
            };

            ethernet@1c50000 {
                compatible = "allwinner,sun7i-a20-gmac";
                reg = <0x1c50000 0x10000>;
                interrupts = <0x00 0x55 0x04>;
                interrupt-names = "macirq";
                clocks = <0x02 0x42 0x2a>;
                clock-names = "stmmaceth\0allwinner_gmac_tx";
                snps,pbl = <0x02>;
                snps,fixed-burst;
                snps,force_sf_dma_mode;
                status = "okay";
                pinctrl-names = "default";
                pinctrl-0 = <0x2b>;
                phy-handle = <0x2c>;
                phy-mode = "rgmii";
                phy-supply = <0x2d>;
                phandle = <0xb8>;

                mdio {
                    compatible = "snps,dwmac-mdio";
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;
                    phandle = <0xb9>;

                    ethernet-phy@1 {
                        reg = <0x01>;
                        phandle = <0x2c>;
                    };
                };
            };

            hstimer@1c60000 {
                compatible = "allwinner,sun7i-a20-hstimer";
                reg = <0x1c60000 0x1000>;
                interrupts = <0x00 0x51 0x04 0x00 0x52 0x04 0x00 0x53 0x04 0x00 0x54 0x04>;
                clocks = <0x02 0x33>;
            };

            interrupt-controller@1c81000 {
                compatible = "arm,gic-400";
                reg = <0x1c81000 0x1000 0x1c82000 0x2000 0x1c84000 0x2000 0x1c86000 0x2000>;
                interrupt-controller;
                #interrupt-cells = <0x03>;
                interrupts = <0x01 0x09 0xf04>;
                phandle = <0x01>;
            };

            display-frontend@1e00000 {
                compatible = "allwinner,sun7i-a20-display-frontend";
                reg = <0x1e00000 0x20000>;
                interrupts = <0x00 0x2f 0x04>;
                clocks = <0x02 0x40 0x02 0x92 0x02 0x8b>;
                clock-names = "ahb\0mod\0ram";
                resets = <0x02 0x07>;
                phandle = <0x09>;

                ports {
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;

                    port@1 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x01>;
                        phandle = <0xba>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x2e>;
                            phandle = <0x36>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x2f>;
                            phandle = <0x32>;
                        };
                    };
                };
            };

            display-frontend@1e20000 {
                compatible = "allwinner,sun7i-a20-display-frontend";
                reg = <0x1e20000 0x20000>;
                interrupts = <0x00 0x30 0x04>;
                clocks = <0x02 0x41 0x02 0x93 0x02 0x8a>;
                clock-names = "ahb\0mod\0ram";
                resets = <0x02 0x08>;
                phandle = <0x0a>;

                ports {
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;

                    port@1 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x01>;
                        phandle = <0xbb>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x30>;
                            phandle = <0x37>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x31>;
                            phandle = <0x33>;
                        };
                    };
                };
            };

            display-backend@1e40000 {
                compatible = "allwinner,sun7i-a20-display-backend";
                reg = <0x1e40000 0x10000>;
                interrupts = <0x00 0x30 0x04>;
                clocks = <0x02 0x3f 0x02 0x91 0x02 0x8d>;
                clock-names = "ahb\0mod\0ram";
                resets = <0x02 0x06>;
                phandle = <0xbc>;

                ports {
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;

                    port@0 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x00>;
                        phandle = <0xbd>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x32>;
                            phandle = <0x2f>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x33>;
                            phandle = <0x31>;
                        };
                    };

                    port@1 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x01>;
                        phandle = <0xbe>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x34>;
                            phandle = <0x0e>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x35>;
                            phandle = <0x11>;
                        };
                    };
                };
            };

            display-backend@1e60000 {
                compatible = "allwinner,sun7i-a20-display-backend";
                reg = <0x1e60000 0x10000>;
                interrupts = <0x00 0x2f 0x04>;
                clocks = <0x02 0x3e 0x02 0x90 0x02 0x8c>;
                clock-names = "ahb\0mod\0ram";
                resets = <0x02 0x05>;
                phandle = <0xbf>;

                ports {
                    #address-cells = <0x01>;
                    #size-cells = <0x00>;

                    port@0 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x00>;
                        phandle = <0xc0>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x36>;
                            phandle = <0x2e>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x37>;
                            phandle = <0x30>;
                        };
                    };

                    port@1 {
                        #address-cells = <0x01>;
                        #size-cells = <0x00>;
                        reg = <0x01>;
                        phandle = <0xc1>;

                        endpoint@0 {
                            reg = <0x00>;
                            remote-endpoint = <0x38>;
                            phandle = <0x0d>;
                        };

                        endpoint@1 {
                            reg = <0x01>;
                            remote-endpoint = <0x39>;
                            phandle = <0x10>;
                        };
                    };
                };
            };
        };

        ahci-5v {
            compatible = "regulator-fixed";
            regulator-name = "ahci-5v";
            regulator-min-microvolt = <0x4c4b40>;
            regulator-max-microvolt = <0x4c4b40>;
            regulator-boot-on;
            enable-active-high;
            gpio = <0x16 0x01 0x08 0x00>;
            status = "disabled";
            phandle = <0xc2>;
        };

        usb0-vbus {
            compatible = "regulator-fixed";
            regulator-name = "usb0-vbus";
            regulator-min-microvolt = <0x4c4b40>;
            regulator-max-microvolt = <0x4c4b40>;
            enable-active-high;
            gpio = <0x16 0x01 0x09 0x00>;
            status = "okay";
            phandle = <0x1c>;
        };

        usb1-vbus {
            compatible = "regulator-fixed";
            regulator-name = "usb1-vbus";
            regulator-min-microvolt = <0x4c4b40>;
            regulator-max-microvolt = <0x4c4b40>;
            regulator-boot-on;
            enable-active-high;
            gpio = <0x16 0x07 0x1a 0x00>;
            status = "okay";
            phandle = <0x1d>;
        };

        usb2-vbus {
            compatible = "regulator-fixed";
            regulator-name = "usb2-vbus";
            regulator-min-microvolt = <0x4c4b40>;
            regulator-max-microvolt = <0x4c4b40>;
            regulator-boot-on;
            enable-active-high;
            gpio = <0x16 0x07 0x16 0x00>;
            status = "okay";
            phandle = <0x1e>;
        };

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

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

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

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

            port {

                endpoint {
                    remote-endpoint = <0x41>;
                    phandle = <0xc5>;
                };
            };
        };

        leds {
            compatible = "gpio-leds";

            green {
                label = "orangepi:green:usr";
                gpios = <0x16 0x07 0x18 0x00>;
            };
        };

        gmac-3v3 {
            compatible = "regulator-fixed";
            regulator-name = "gmac-3v3";
            regulator-min-microvolt = <0x325aa0>;
            regulator-max-microvolt = <0x325aa0>;
            startup-delay-us = <0x186a0>;
            enable-active-high;
            gpio = <0x16 0x07 0x17 0x00>;
            phandle = <0x2d>;
        };

        __symbols__ {
            cpu0 = "/cpus/cpu@0";
            cpu1 = "/cpus/cpu@1";
            cpu_alert0 = "/thermal-zones/cpu_thermal/trips/cpu_alert0";
            cpu_crit = "/thermal-zones/cpu_thermal/trips/cpu_crit";
            osc24M = "/clocks/clk-24M";
            osc32k = "/clocks/clk-32k";
            mii_phy_tx_clk = "/clocks/clk-mii-phy-tx";
            gmac_int_tx_clk = "/clocks/clk-gmac-int-tx";
            gmac_tx_clk = "/clocks/clk@1c20164";
            de = "/display-engine";
            sram_a = "/soc/system-control@1c00000/sram@0";
            emac_sram = "/soc/system-control@1c00000/sram@0/sram-section@8000";
            sram_d = "/soc/system-control@1c00000/sram@10000";
            otg_sram = "/soc/system-control@1c00000/sram@10000/sram-section@0";
            sram_c = "/soc/system-control@1c00000/sram@1d00000";
            ve_sram = "/soc/system-control@1c00000/sram@1d00000/sram-section@0";
            nmi_intc = "/soc/interrupt-controller@1c00030";
            dma = "/soc/dma-controller@1c02000";
            nfc = "/soc/nand-controller@1c03000";
            spi0 = "/soc/spi@1c05000";
            spi1 = "/soc/spi@1c06000";
            csi0 = "/soc/csi@1c09000";
            emac = "/soc/ethernet@1c0b000";
            mdio = "/soc/mdio@1c0b080";
            tcon0 = "/soc/lcd-controller@1c0c000";
            tcon0_in = "/soc/lcd-controller@1c0c000/ports/port@0";
            tcon0_in_be0 = "/soc/lcd-controller@1c0c000/ports/port@0/endpoint@0";
            tcon0_in_be1 = "/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_be0 = "/soc/lcd-controller@1c0d000/ports/port@0/endpoint@0";
            tcon1_in_be1 = "/soc/lcd-controller@1c0d000/ports/port@0/endpoint@1";
            tcon1_out = "/soc/lcd-controller@1c0d000/ports/port@1";
            tcon1_out_hdmi = "/soc/lcd-controller@1c0d000/ports/port@1/endpoint@1";
            mmc0 = "/soc/mmc@1c0f000";
            mmc1 = "/soc/mmc@1c10000";
            mmc2 = "/soc/mmc@1c11000";
            mmc3 = "/soc/mmc@1c12000";
            usb_otg = "/soc/usb@1c13000";
            usbphy = "/soc/phy@1c13400";
            ehci0 = "/soc/usb@1c14000";
            ohci0 = "/soc/usb@1c14400";
            crypto = "/soc/crypto-engine@1c15000";
            hdmi = "/soc/hdmi@1c16000";
            hdmi_in = "/soc/hdmi@1c16000/ports/port@0";
            hdmi_in_tcon0 = "/soc/hdmi@1c16000/ports/port@0/endpoint@0";
            hdmi_in_tcon1 = "/soc/hdmi@1c16000/ports/port@0/endpoint@1";
            hdmi_out = "/soc/hdmi@1c16000/ports/port@1";
            spi2 = "/soc/spi@1c17000";
            ahci = "/soc/sata@1c18000";
            ehci1 = "/soc/usb@1c1c000";
            ohci1 = "/soc/usb@1c1c400";
            csi1 = "/soc/csi@1c1d000";
            spi3 = "/soc/spi@1c1f000";
            ccu = "/soc/clock@1c20000";
            pio = "/soc/pinctrl@1c20800";
            can_pa_pins = "/soc/pinctrl@1c20800/can-pa-pins";
            can_ph_pins = "/soc/pinctrl@1c20800/can-ph-pins";
            clk_out_a_pin = "/soc/pinctrl@1c20800/clk-out-a-pin";
            clk_out_b_pin = "/soc/pinctrl@1c20800/clk-out-b-pin";
            csi0_8bits_pins = "/soc/pinctrl@1c20800/csi-8bits-pins";
            csi0_clk_pin = "/soc/pinctrl@1c20800/csi-clk-pin";
            csi1_8bits_pg_pins = "/soc/pinctrl@1c20800/csi1-8bits-pg-pins";
            csi1_24bits_ph_pins = "/soc/pinctrl@1c20800/csi1-24bits-ph-pins";
            csi1_clk_pg_pin = "/soc/pinctrl@1c20800/csi1-clk-pg-pin";
            emac_pa_pins = "/soc/pinctrl@1c20800/emac-pa-pins";
            emac_ph_pins = "/soc/pinctrl@1c20800/emac-ph-pins";
            gmac_mii_pins = "/soc/pinctrl@1c20800/gmac-mii-pins";
            gmac_rgmii_pins = "/soc/pinctrl@1c20800/gmac-rgmii-pins";
            i2c0_pins = "/soc/pinctrl@1c20800/i2c0-pins";
            i2c1_pins = "/soc/pinctrl@1c20800/i2c1-pins";
            i2c2_pins = "/soc/pinctrl@1c20800/i2c2-pins";
            i2c3_pins = "/soc/pinctrl@1c20800/i2c3-pins";
            ir0_rx_pin = "/soc/pinctrl@1c20800/ir0-rx-pin";
            ir0_tx_pin = "/soc/pinctrl@1c20800/ir0-tx-pin";
            ir1_rx_pin = "/soc/pinctrl@1c20800/ir1-rx-pin";
            ir1_tx_pin = "/soc/pinctrl@1c20800/ir1-tx-pin";
            lcd_lvds0_pins = "/soc/pinctrl@1c20800/lcd-lvds0-pins";
            lcd_lvds1_pins = "/soc/pinctrl@1c20800/lcd-lvds1-pins";
            mmc0_pins = "/soc/pinctrl@1c20800/mmc0-pins";
            mmc2_pins = "/soc/pinctrl@1c20800/mmc2-pins";
            mmc3_pins = "/soc/pinctrl@1c20800/mmc3-pins";
            ps2_0_pins = "/soc/pinctrl@1c20800/ps2-0-pins";
            ps2_1_ph_pins = "/soc/pinctrl@1c20800/ps2-1-ph-pins";
            pwm0_pin = "/soc/pinctrl@1c20800/pwm0-pin";
            pwm1_pin = "/soc/pinctrl@1c20800/pwm1-pin";
            spdif_tx_pin = "/soc/pinctrl@1c20800/spdif-tx-pin";
            spi0_pi_pins = "/soc/pinctrl@1c20800/spi0-pi-pins";
            spi0_cs0_pi_pin = "/soc/pinctrl@1c20800/spi0-cs0-pi-pin";
            spi0_cs1_pi_pin = "/soc/pinctrl@1c20800/spi0-cs1-pi-pin";
            spi1_pi_pins = "/soc/pinctrl@1c20800/spi1-pi-pins";
            spi1_cs0_pi_pin = "/soc/pinctrl@1c20800/spi1-cs0-pi-pin";
            spi2_pb_pins = "/soc/pinctrl@1c20800/spi2-pb-pins";
            spi2_cs0_pb_pin = "/soc/pinctrl@1c20800/spi2-cs0-pb-pin";
            spi2_pc_pins = "/soc/pinctrl@1c20800/spi2-pc-pins";
            spi2_cs0_pc_pin = "/soc/pinctrl@1c20800/spi2-cs0-pc-pin";
            uart0_pb_pins = "/soc/pinctrl@1c20800/uart0-pb-pins";
            uart0_pf_pins = "/soc/pinctrl@1c20800/uart0-pf-pins";
            uart1_pa_pins = "/soc/pinctrl@1c20800/uart1-pa-pins";
            uart1_cts_rts_pa_pins = "/soc/pinctrl@1c20800/uart1-cts-rts-pa-pins";
            uart2_pa_pins = "/soc/pinctrl@1c20800/uart2-pa-pins";
            uart2_cts_rts_pa_pins = "/soc/pinctrl@1c20800/uart2-cts-rts-pa-pins";
            uart2_pi_pins = "/soc/pinctrl@1c20800/uart2-pi-pins";
            uart2_cts_rts_pi_pins = "/soc/pinctrl@1c20800/uart2-cts-rts-pi-pins";
            uart3_pg_pins = "/soc/pinctrl@1c20800/uart3-pg-pins";
            uart3_cts_rts_pg_pins = "/soc/pinctrl@1c20800/uart3-cts-rts-pg-pins";
            uart3_ph_pins = "/soc/pinctrl@1c20800/uart3-ph-pins";
            uart3_cts_rts_ph_pins = "/soc/pinctrl@1c20800/uart3-cts-rts-ph-pins";
            uart4_pg_pins = "/soc/pinctrl@1c20800/uart4-pg-pins";
            uart4_ph_pins = "/soc/pinctrl@1c20800/uart4-ph-pins";
            uart5_ph_pins = "/soc/pinctrl@1c20800/uart5-ph-pins";
            uart5_pi_pins = "/soc/pinctrl@1c20800/uart5-pi-pins";
            uart6_pa_pins = "/soc/pinctrl@1c20800/uart6-pa-pins";
            uart6_pi_pins = "/soc/pinctrl@1c20800/uart6-pi-pins";
            uart7_pa_pins = "/soc/pinctrl@1c20800/uart7-pa-pins";
            uart7_pi_pins = "/soc/pinctrl@1c20800/uart7-pi-pins";
            wdt = "/soc/watchdog@1c20c90";
            rtc = "/soc/rtc@1c20d00";
            pwm = "/soc/pwm@1c20e00";
            spdif = "/soc/spdif@1c21000";
            ir0 = "/soc/ir@1c21800";
            ir1 = "/soc/ir@1c21c00";
            i2s1 = "/soc/i2s@1c22000";
            i2s0 = "/soc/i2s@1c22400";
            lradc = "/soc/lradc@1c22800";
            codec = "/soc/codec@1c22c00";
            sid = "/soc/eeprom@1c23800";
            i2s2 = "/soc/i2s@1c24400";
            rtp = "/soc/rtp@1c25000";
            uart0 = "/soc/serial@1c28000";
            uart1 = "/soc/serial@1c28400";
            uart2 = "/soc/serial@1c28800";
            uart3 = "/soc/serial@1c28c00";
            uart4 = "/soc/serial@1c29000";
            uart5 = "/soc/serial@1c29400";
            uart6 = "/soc/serial@1c29800";
            uart7 = "/soc/serial@1c29c00";
            ps20 = "/soc/ps2@1c2a000";
            ps21 = "/soc/ps2@1c2a400";
            i2c0 = "/soc/i2c@1c2ac00";
            axp209 = "/soc/i2c@1c2ac00/pmic@34";
            ac_power_supply = "/soc/i2c@1c2ac00/pmic@34/ac-power-supply";
            axp_adc = "/soc/i2c@1c2ac00/pmic@34/adc";
            axp_gpio = "/soc/i2c@1c2ac00/pmic@34/gpio";
            axp_led = "/soc/i2c@1c2ac00/pmic@34/led";
            battery_power_supply = "/soc/i2c@1c2ac00/pmic@34/battery-power-supply";
            reg_dcdc2 = "/soc/i2c@1c2ac00/pmic@34/regulators/dcdc2";
            reg_dcdc3 = "/soc/i2c@1c2ac00/pmic@34/regulators/dcdc3";
            reg_ldo1 = "/soc/i2c@1c2ac00/pmic@34/regulators/ldo1";
            reg_ldo2 = "/soc/i2c@1c2ac00/pmic@34/regulators/ldo2";
            reg_ldo3 = "/soc/i2c@1c2ac00/pmic@34/regulators/ldo3";
            reg_ldo4 = "/soc/i2c@1c2ac00/pmic@34/regulators/ldo4";
            reg_ldo5 = "/soc/i2c@1c2ac00/pmic@34/regulators/ldo5";
            usb_power_supply = "/soc/i2c@1c2ac00/pmic@34/usb-power-supply";
            i2c1 = "/soc/i2c@1c2b000";
            i2c2 = "/soc/i2c@1c2b400";
            i2c3 = "/soc/i2c@1c2b800";
            can0 = "/soc/can@1c2bc00";
            i2c4 = "/soc/i2c@1c2c000";
            mali = "/soc/gpu@1c40000";
            gmac = "/soc/ethernet@1c50000";
            gmac_mdio = "/soc/ethernet@1c50000/mdio";
            phy1 = "/soc/ethernet@1c50000/mdio/ethernet-phy@1";
            gic = "/soc/interrupt-controller@1c81000";
            fe0 = "/soc/display-frontend@1e00000";
            fe0_out = "/soc/display-frontend@1e00000/ports/port@1";
            fe0_out_be0 = "/soc/display-frontend@1e00000/ports/port@1/endpoint@0";
            fe0_out_be1 = "/soc/display-frontend@1e00000/ports/port@1/endpoint@1";
            fe1 = "/soc/display-frontend@1e20000";
            fe1_out = "/soc/display-frontend@1e20000/ports/port@1";
            fe1_out_be0 = "/soc/display-frontend@1e20000/ports/port@1/endpoint@0";
            fe1_out_be1 = "/soc/display-frontend@1e20000/ports/port@1/endpoint@1";
            be1 = "/soc/display-backend@1e40000";
            be1_in = "/soc/display-backend@1e40000/ports/port@0";
            be1_in_fe0 = "/soc/display-backend@1e40000/ports/port@0/endpoint@0";
            be1_in_fe1 = "/soc/display-backend@1e40000/ports/port@0/endpoint@1";
            be1_out = "/soc/display-backend@1e40000/ports/port@1";
            be1_out_tcon0 = "/soc/display-backend@1e40000/ports/port@1/endpoint@0";
            be1_out_tcon1 = "/soc/display-backend@1e40000/ports/port@1/endpoint@1";
            be0 = "/soc/display-backend@1e60000";
            be0_in = "/soc/display-backend@1e60000/ports/port@0";
            be0_in_fe0 = "/soc/display-backend@1e60000/ports/port@0/endpoint@0";
            be0_in_fe1 = "/soc/display-backend@1e60000/ports/port@0/endpoint@1";
            be0_out = "/soc/display-backend@1e60000/ports/port@1";
            be0_out_tcon0 = "/soc/display-backend@1e60000/ports/port@1/endpoint@0";
            be0_out_tcon1 = "/soc/display-backend@1e60000/ports/port@1/endpoint@1";
            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 = "/hdmi-connector/port/endpoint";
            reg_gmac_3v3 = "/gmac-3v3";
        };
    };

     

     

     

  2. On 3/1/2021 at 10:54 AM, Igor said:

    Try build image from sources.

    I enabled OrangePi config and built two focal desktop images. Image with kernel v5.10 has the same problem with dtb config (no USB, no HDMI)

    Spoiler

    root@orangepi:~# lsusb
    Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

    while image with v5.4 works good. WiFi is connected to USB so that explains issue with WiFi on kernel v5.10

    Spoiler

    root@orangepi:~# lsusb
    Bus 003 Device 002: ID 0bda:8179 Realtek Semiconductor Corp. RTL8188EUS 802.11n                                                                                                                                                              Wireless Network Adapter
    Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 002 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
    Bus 002 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

     

    On 3/1/2021 at 10:54 AM, Igor said:

    The only confusing thing is the mismatch between web site and Armbian console

    Spoiler

     

    image.png.cf47648c5c727cdc770e71312a802725.png

    image.png.dcc24ab5e159f4888398f1666bc5547e.png

     

     

     

     

     

    On 3/1/2021 at 10:54 AM, Igor said:

    Those DTs are maintained upstream

    Got it! However, both BananaPi and OrangePi have few changes per year. But, perhaps, something was broken between v5.4 and later version like v5.10 

     

    On 3/1/2021 at 10:54 AM, Igor said:

    Kernel driver is present, but we don't have click and play experience. I don't deal with this.

     

    Will try to check this, thank you. But it is not working on v5.4 out-of-the-box

    On 3/1/2021 at 10:54 AM, Igor said:

    armbian-config -> system -> hardware and enable all USB ports

    armbian-config for OrangePi doesn't allow to enable it - USB is missing there (due to missing overlays in dtb/overlay folder?)

     

    Here are some notes of possible improvements

    - it will be good to put "boot.cmd", "boot.scr", ArmbianEnv.txt and ".next" inside some Armbian debs, if lost they can be taken only from Armbian image (if I'm not mistaken)

    - linux-u-boot-legacy-orangepi_21.05.0-trunk_armhf.deb and linux-u-boot-current-orangepi_21.05.0-trunk_armhf.deb are in conflict?! I had to install u-boot manually

    Spoiler

     

    Выбор ранее не выбранного пакета linux-u-boot-orangepi-legacy.
    dpkg: относительно linux-u-boot-legacy-orangepi_21.05.0-trunk_armhf.deb, содержащего linux-u-boot-orangepi-legacy:
     linux-u-boot-orangepi-current конфликтует с armbian-u-boot
      linux-u-boot-orangepi-legacy предоставляет armbian-u-boot и будет установлен.

    dpkg: ошибка при обработке архива linux-u-boot-legacy-orangepi_21.05.0-trunk_armhf.deb (--install):
     конфликт пакетов — linux-u-boot-orangepi-legacy не будет установлен

     

    sorry it is in Russian, but it says about an error and packets conflict

    - A minor cosmetic thing. Adding fdtfile=sun7i-a20-orangepi.dtb to ArmbianEnv.txt of BananaPi image doesn't make a "full" conversion to OrangePi, how to proper set new BOARD_NAME to correct name on welcome screen?

  3. Hello

    After a couple of years, I took my "ancient" OrangePi board and found it working well with Ubuntu 18.04 (kernel 3.14.113). And I even did distr update to 20.04. So HW is ok.

    I found that Armibian support status of OrangiPi is changed to "Supported" and decided to try the latest image with modern kernel "Armbian_21.02.1_Bananapi_focal_current_5.10.12_desktop.img.xz" (shared image between OrangePi and BananaPi).

     

    XFCE desktop was loaded but USB was not working. And that was the known mismatch between OrangePi and BananaPi HW conguration. So I updated "/boot/armbianEnv.txt" with "fdtfile=sun7i-a20-orangepi.dtb".

    But after that video became OFF and board is working only as network remote station.

    That makes me think that supplied "sun7i-a20-orangepi.dtb" is incorrect. Does it make sense?

    (if I remove "fdtfile=sun7i-a20-orangepi.dtb" video is working again but USB is not)

     

    Where can I get an older version of "sun7i-a20-orangepi.dtb"? (old bin/fex file in old OragnePi images was ok)

    P.S. Does Armbian_21.02.1 supports HW video acceleration with 5.10 kernel? And how to make WiFi working? (ifconfig do not show WiFi interface)

     

    Thank you

     

    Spoiler

    armbianmonitor -u  uploaded to http://ix.io/2QRr 

     

  4. I compiled jessie desktop image without use of FORCE_CHECKOUT

    but u-boot can't load kernel - it stops at "Starting Kernel..." message. :(

    kernel only compilation gave the same result. 

     

    I decided to check if Ubuntu image from site works - it works but average load is too high, over 1.2.

    armbianmonitor -m shows 70% CPU load.

    But htop shows /sbin/init at 6% as a heaviest task. How can I check the rootcause?

  5. Hello

     

    I have built Armbian new desktop image and SATA PMP patched kernel debs for OrangePi from the master branch on Ubuntu Xenial VBox host

    ./compile.sh PROGRESS_DISPLAY=plain FORCE_CHECKOUT="no" CREATE_PATCHES=yes\
     BRANCH=default BOARD=orangepi KERNEL_ONLY=no RELEASE=jessie\
     USE_GITHUB_UBOOT_MIRROR="yes" BUILD_DESKTOP=yes EXTERNAL_NEW=prebuilt

     

    and got this messages during kernel compilation

    HEAD detached at FETCH_HEAD

    nothing to commit, working directory clean
    [ warn ] Make your changes in this directory: [ /root/my_orangepi_kernel/sources/linux-sunxi/sunxi-3.4 ]
    [ warn ] Press <Enter> after you are done [ waiting ]
    [ warn ] No changes found, skipping patch creation
    fatal: ambiguous argument 'HEAD~': unknown revision or path not in the working tree.

    and

    include/linux/compiler-gcc.h:103:30: fatal error: linux/compiler-gcc5.h: No such file or directory

     

    I fixed the second one adding KERNEL_NEEDS_GCC='< 5.0' to /root/my_orangepi_kernel/lib/config/sources/sun7i.conf

    And at the end I got linux-image-3.4.104-sun7i_5.27_armhf.deb

    Few month ago I did same and I got 3.4.112 during the build. Is it the numbering issue or an effect of my kernel compilation error workaround?

    What can be the best way to fix that error? I had same error in the log during usb-redirector compilation:

    include/linux/compiler-gcc.h:103:30: fatal error: linux/compiler-gcc5.h: No such file or directory

     

    Thank you.

     

  6. RagnerBG

    mpv has sound sync issue on my jessie, I will try to comple mplayer myself. Thanks

    Is it better to use mplayer2?

     

    I have consern that mplayer2 have incomatibility with the latest libavcodec. And that's the root cause. Previous libavcodec versions (e.g. libavcodec53libavcodec54) worked fine with mplayer2

     

    BTW. This says  that udev rules for /dev/ion is only for H3; while A10/A20, A13, requires udev rules for /dev/g2d (it's missing in Armbian now)

  7. tkaiser, Thank you for pointing the direction.

     

     

    Hello Igor.

     

    BTW. Is it possible to have different sources for kernel update for those who is using custom kernel? E.g. My system with SATA multiplier will not boot if I will miss kernel update, so I had to disable source in armbian.list. Proposing something like:

       deb http://apt.armbian.com/all jessie main

       deb http://apt.armbian.com/sw_only jessie main

       deb http://apt.armbian.com/kernel jessie main

     

    Thank you.

  8. Hello

     

    I'm investigating update from wheezy to trusty on my OrangePI (A20) based home media server. I'm using custom kernel 3.4.110 with SATA multiplier support. System is on HDD. I had few remarks and issues (part of them were solved but some are not):

    - Video acceleration was not working out of the box on trusty desktop image but it was solved it by installing "Desktop-extras for Jessie-desktop (sunxi)" - it looks it could be added as default for trusty. But mvp package can't be installed due to depedencies to libs which I did not found in ubuntu reps?!

    - compositing if OFF in xfce but when I moving windows on the desktop, CPU load is becoming 100% till I stop moving them, if I enable compositing then windows moves are not loading the CPU but video acceleration doesn't work - What could be a reason of extra CPU loading when I move windows? 2D acceleration issue? udev rules issue for G2D?

    - ALSA works out of the box. Pulseaudio is installed in trusty image by default but it is not started at system boot and programs (e.g. mplayer) can't init the pulse driver even if I start it manually by service pulseaudio start:

         AO: [pulse] Init failed: Connection refused

     

    - BTW. I did this patch for SATA multiplier (AgeStar DAS). I copy it to /userpatches/kernel/sun7i-default folder - work's good for the legacy kernel

    --- a/drivers/ata/sw_ahci_platform.c
    +++ b/drivers/ata/sw_ahci_platform.c
    @@ -249,7 +249,7 @@
     	.udma_mask = ATA_UDMA6,
     	.port_ops = &ahci_ops,
     	.private_data = (void*)(AHCI_HFLAG_32BIT_ONLY | AHCI_HFLAG_NO_MSI
    -							| AHCI_HFLAG_NO_PMP | AHCI_HFLAG_YES_NCQ),
    +							| AHCI_HFLAG_YES_NCQ),
     };
     
     static struct ahci_platform_data sw_ahci_platform_data = {
    
  9. @Igor

    Thank you. I have recently upgraded my Debian wheezy v3.5 to the latest Debian wheezy desktop v4.5 following lib scripts. And I have also manage to complile legacy kernel with PMP and all external tools. 

    I have notice the following

    - apt-get install didn't install all required packages (PAKETKI) from main.sh and from deboostrap.sh and desktop.sh  :mellow: so I had to install them by myself

    BOOTLOADER="http://git.denx.de/u-boot.git" works faster then BOOTLOADER="git://git.denx.de/u-boot.git" in Russia. I had no big delay using http. Previously I was pushed by timeout.

     

    My Agestar DAS is able to see the HDD now. But what I do not understand now is how the default 3.4.109 kernel from linux-image-sun7i_4.51_armhf.deb sees the HDD in DAS now (I have installed kernel upgrade debs to perform some check on your "golden" kernel). ?!

    root@orangepi:~# ls /boot/ -l
    drwxr-xr-x 2 root root    4096 Окт 27 14:29 bin
    -rw-r--r-- 1 root root    1937 Окт 27 14:31 boot.cmd
    -rw-r--r-- 1 root root    2009 Окт 27 14:31 boot.scr
    -rw-r--r-- 1 root root   97046 Окт 14 21:33 config-3.4.109-sun7i
    -rw-r--r-- 1 root root 2452596 Окт 26 22:03 initrd.img-3.4.109-sun7i
    lrwxrwxrwx 1 root root      22 Окт 15 22:20 script.bin -> /boot/bin/orangepi.bin
    -rw-r--r-- 1 root root 2004410 Окт 14 21:33 System.map-3.4.109-sun7i
    -rwxr-xr-x 1 root root 5605936 Окт 14 21:33 vmlinuz-3.4.109-sun7i
    -rwxr-xr-x 1 root root 5606464 Окт 22 17:40 ~vmlinuz-3.4.109-sun7i.pmp
    lrwxrwxrwx 1 root root      27 Окт 26 22:03 zImage -> /boot/vmlinuz-3.4.109-sun7i
    
    root@orangepi:~# dpkg -l | grep linux-
    ii  linux-firmware-image-sun7i            4.51                               armhf        Linux kernel firmware, version 3.4.109-sun7i
    ii  linux-headers-sun7i                   4.51                               armhf        Linux kernel headers for 3.4.109-sun7i on armhf
    rc  linux-image-3.4.107-orangepi          1.2                                armhf        Linux kernel, version 3.4.107-orangepi
    ii  linux-image-sun7i                     4.51                               armhf        Linux kernel, version 3.4.109-sun7i
    ii  linux-libc-dev:armhf                  3.2.68-1+deb7u5                    armhf        Linux support headers for userspace development
    ii  linux-u-boot-orangepi                 4.5                                armhf        Uboot loader 2015.07.
    ii  linux-wheezy-root-orangepi            4.5                                armhf        Various root file system tweaks for ARM boards
    
    root@orangepi:~# dpkg -L linux-image-3.4.107-orangepi
    Package `linux-image-3.4.107-orangepi' does not contain any files (!)
    
    root@orangepi:~# parted /dev/sdc print
    Model: ATA WDC WD30EFRX-68E (scsi)
    Disk /dev/sdc: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    
    Number  Start   End     Size    File system  Name     Flags
     1      4194kB  3001GB  3001GB  ext4         primary
    Model: ATA WDC WD30EFRX-68E (scsi)
    Disk /dev/sdc: 3001GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    
    
    
    						
  10. Hello Igor.
     
    Thank you implementing repository for system update. It is usful.  :)
     
    I was updating my Orange PI from v3.5 to the current kernel, u-boot, etc using
    wget -q -O - http://upgrade.armbian.com| bash
    It failed saying
    W: GPG error: http://apt.armbian.comwheezy Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 93D6889F9F0E78D5
    Old kernel was removed by the script but the new one was not installed. So that I installed updates manually.

     

    Is there a way to update rootfw incrementally from v3.5? E.g. current rootfs update deb does not contain utility like a10disp

     

    Another question. Does kernel supports SATA multiport (PMP) out of the box?

    cat /boot/config-3.4.109-sun7i |grep PMP says CONFIG_SATA_PMP=y

    Or I stilll need to recompile kernel without AHCI_HFLAG_NO_PMP in sata driver?

     

    P.S. I'm trying connect my board to DAS though SATA port (http://agestar.com/en/Products/3-5â€-HDD-Enclosure/USB3-0/1040-35-inch-usb30-4bay-hdd-enclosure.html) but didn't succed yet :mellow:

  11. Igor. Thank you for the build script.

    I've got this error when starting the compile.sh script for OrangePI:

    [ ok ] Downloading u-boot
    Cloning into '/home/user/output/u-boot'...
    fatal: unable to connect to git.denx.de:
    git.denx.de[0: 85.214.87.163]: errno=Connection refused

    while http://git.denx.de/u-boot.git is seen in the browser

    git clone git://git.denx.de/u-boot.git doesn't work either
    What could be wrong here?
     
    I was also asked about
    modified gmac driver for Bananapi (GMAC_FOR_BANANAPI) [N/y/?] (NEW)
    Preclaim OSS device numbers (SOUND_OSS_CORE_PRECLAIM) [Y/n/?] (NEW)

    and some other questions related to SOUND, MIDI etc. Shoul I always answer with default values to have same functionality as your OrangePI image have?

     
     
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines