Jump to content

Hardware H264 / cedar_ve driver


foxium

Recommended Posts

I had success with @ubobrov's sunxi-cedar-mainline driver before on H3 devices.

 

I'm trying to get it to work on the Orange Pi 3 LTS (H6) however it keeps giving the following error:

sunxi-cedar 1c0e000.video-engine: syscon failed...

 

Any help would be much appreciated.

 

dmesg:

[    6.167614] cedar_ve: loading out-of-tree module taints kernel.
[    6.167700] cedar_ve: module verification failed: signature and/or required key missing - tainting kernel
[    6.168445] sunxi cedar version 0.1 
[    6.168601] [cedar]: install start!!!
[    6.168654] cedar_ve: cedar-ve the get irq is 23
[    6.168673] sunxi-cedar 1c0e000.video-engine: assigned reserved memory node linux,cma
[    6.168761] sunxi-cedar 1c0e000.video-engine: syscon failed...
[    6.206602] [cedar]: memory allocated at PA: 0000000057D00000, VA: FFFF80000B412000, CONV: FFFF000017D00000
[    6.206623] [cedar]: MACC regs allocated at FFFF8000098FE000
[    6.206635] [cedar]: install end!!!

 

dts:

Spoiler

/dts-v1/;

/ {
    interrupt-parent = <0x01>;
    #address-cells = <0x01>;
    #size-cells = <0x01>;
    model = "OrangePi 3 LTS";
    compatible = "xunlong,orangepi-3-lts\0allwinner,sun50i-h6";

    aliases {
        mmc0 = "/soc/mmc@4020000";
        mmc1 = "/soc/mmc@4021000";
        mmc2 = "/soc/mmc@4022000";
        serial0 = "/soc/serial@5000000";
        serial1 = "/soc/serial@5000400";
        serial9 = "/soc/serial@7080000";
        ethernet0 = "/soc/ethernet@5020000";
    };

    ac200_clk {
        compatible = "pwm-clock";
        #clock-cells = <0x00>;
        clock-frequency = <0x16e3600>;
        pinctrl-names = "default";
        pinctrl-0 = <0x02>;
        pwms = <0x03 0x01 0x2a 0x00>;
        status = "okay";
        phandle = <0x2e>;
    };

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

        cpu@0 {
            compatible = "arm,cortex-a53";
            device_type = "cpu";
            reg = <0x00>;
            enable-method = "psci";
            clocks = <0x04 0x15>;
            clock-latency-ns = <0x3b9b0>;
            #cooling-cells = <0x02>;
            operating-points-v2 = <0x05>;
            cpu-supply = <0x06>;
            phandle = <0x08>;
        };

        cpu@1 {
            compatible = "arm,cortex-a53";
            device_type = "cpu";
            reg = <0x01>;
            enable-method = "psci";
            clocks = <0x04 0x15>;
            clock-latency-ns = <0x3b9b0>;
            #cooling-cells = <0x02>;
            operating-points-v2 = <0x05>;
            phandle = <0x09>;
        };

        cpu@2 {
            compatible = "arm,cortex-a53";
            device_type = "cpu";
            reg = <0x02>;
            enable-method = "psci";
            clocks = <0x04 0x15>;
            clock-latency-ns = <0x3b9b0>;
            #cooling-cells = <0x02>;
            operating-points-v2 = <0x05>;
            phandle = <0x0a>;
        };

        cpu@3 {
            compatible = "arm,cortex-a53";
            device_type = "cpu";
            reg = <0x03>;
            enable-method = "psci";
            clocks = <0x04 0x15>;
            clock-latency-ns = <0x3b9b0>;
            #cooling-cells = <0x02>;
            operating-points-v2 = <0x05>;
            phandle = <0x0b>;
        };
    };

    display-engine {
        compatible = "allwinner,sun50i-h6-display-engine";
        allwinner,pipelines = <0x07>;
        status = "okay";
        phandle = <0x55>;
    };

    osc24M_clk {
        #clock-cells = <0x00>;
        compatible = "fixed-clock";
        clock-frequency = <0x16e3600>;
        clock-output-names = "osc24M";
        phandle = <0x19>;
    };

    ext_osc32k_clk {
        #clock-cells = <0x00>;
        compatible = "fixed-clock";
        clock-frequency = <0x8000>;
        clock-output-names = "ext_osc32k";
        phandle = <0x47>;
    };

    pmu {
        compatible = "arm,cortex-a53-pmu";
        interrupts = <0x00 0x8c 0x04 0x00 0x8d 0x04 0x00 0x8e 0x04 0x00 0x8f 0x04>;
        interrupt-affinity = <0x08 0x09 0x0a 0x0b>;
    };

    psci {
        compatible = "arm,psci-0.2";
        method = "smc";
    };

    scpi {
        compatible = "arm,scpi";
        mboxes = <0x0c 0x02 0x0c 0x03>;
        mbox-names = "tx\0rx";
        shmem = <0x0d>;
        phandle = <0x56>;
    };

    sound_hdmi {
        compatible = "allwinner,sun9i-a80-hdmi-audio\0allwinner,sun50i-h6-hdmi-audio";
        status = "okay";
        phandle = <0x57>;

        codec {
            sound-dai = <0x0e>;
        };

        cpu {
            sound-dai = <0x0f>;
        };
    };

    sound_ac200 {
        status = "okay";
        compatible = "simple-audio-card";
        simple-audio-card,format = "i2s";
        simple-audio-card,frame-master = <0x10>;
        simple-audio-card,bitclock-master = <0x10>;
        simple-audio-card,name = "allwinner,ac200-codec";
        simple-audio-card,mclk-fs = <0x200>;
        phandle = <0x58>;

        simple-audio-card,cpu {
            sound-dai = <0x11>;
            system-clock-frequency = <0x1588800>;
            dai-tdm-slot-num = <0x02>;
            dai-tdm-slot-width = <0x20>;
            phandle = <0x10>;
        };

        simple-audio-card,codec {
            sound-dai = <0x12>;
            system-clock-frequency = <0x1588800>;
            dai-tdm-slot-num = <0x02>;
            dai-tdm-slot-width = <0x20>;
        };
    };

    timer {
        compatible = "arm,armv8-timer";
        arm,no-tick-in-suspend;
        interrupts = <0x01 0x0d 0xf04 0x01 0x0e 0xf04 0x01 0x0b 0xf04 0x01 0x0a 0xf04>;
    };

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

        linux,cma {
            compatible = "shared-dma-pool";
            linux,cma-default;
            reg = <0x57c00000 0x6000000>;
            reusable;
            alignment = <0x2000>;
            phandle = <0x98>;
        };
    };

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

        bus@1000000 {
            compatible = "allwinner,sun50i-h6-de3\0allwinner,sun50i-a64-de2";
            reg = <0x1000000 0x400000>;
            allwinner,sram = <0x13 0x01>;
            #address-cells = <0x01>;
            #size-cells = <0x01>;
            ranges = <0x00 0x1000000 0x400000>;

            clock@0 {
                compatible = "allwinner,sun50i-h6-de3-clk";
                reg = <0x00 0x10000>;
                clocks = <0x04 0x1d 0x04 0x1e>;
                clock-names = "mod\0bus";
                resets = <0x04 0x01>;
                #clock-cells = <0x01>;
                #reset-cells = <0x01>;
                phandle = <0x14>;
            };

            mixer@100000 {
                compatible = "allwinner,sun50i-h6-de3-mixer-0";
                reg = <0x100000 0x100000>;
                clocks = <0x14 0x00 0x14 0x06>;
                clock-names = "bus\0mod";
                resets = <0x14 0x00>;
                iommus = <0x15 0x00>;
                phandle = <0x07>;

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

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

                        endpoint {
                            remote-endpoint = <0x16>;
                            phandle = <0x3d>;
                        };
                    };
                };
            };
        };

        gpu@1800000 {
            compatible = "allwinner,sun50i-h6-mali\0arm,mali-t720";
            reg = <0x1800000 0x4000>;
            interrupts = <0x00 0x54 0x04 0x00 0x55 0x04 0x00 0x53 0x04>;
            interrupt-names = "job\0mmu\0gpu";
            clocks = <0x04 0x21 0x04 0x22>;
            clock-names = "core\0bus";
            resets = <0x04 0x03>;
            status = "okay";
            mali-supply = <0x18>;
            phandle = <0x5a>;
        };

        crypto@1904000 {
            compatible = "allwinner,sun50i-h6-crypto";
            reg = <0x1904000 0x1000>;
            interrupts = <0x00 0x57 0x04>;
            clocks = <0x04 0x24 0x04 0x23 0x04 0x37>;
            clock-names = "bus\0mod\0ram";
            resets = <0x04 0x04>;
            phandle = <0x5b>;
        };

        video-engine@1c0e000 {
            compatible = "allwinner,sunxi-cedar-ve";
            reg = <0x1c0e000 0x2000 0x3000000 0x10 0x3001000 0x800>;
            memory-region = <0x98>;
            syscon = <0x30>;
            clocks = <0x04 0x26 0x04 0x25 0x04 0x36>;
            clock-names = "ahb\0mod\0ram";
            resets = <0x04 0x05>;
            interrupts = <0x00 0x5a 0x04>;
            allwinner,sram = <0x17 0x01>;
        };

        syscon@3000000 {
            compatible = "allwinner,sun50i-h6-system-control\0allwinner,sun50i-a64-system-control";
            reg = <0x3000000 0x1000>;
            #address-cells = <0x01>;
            #size-cells = <0x01>;
            ranges;
            phandle = <0x30>;

            sram@100000 {
                compatible = "mmio-sram";
                reg = <0x100000 0x18000>;
                #address-cells = <0x01>;
                #size-cells = <0x01>;
                ranges = <0x00 0x100000 0x18000>;
                phandle = <0x5c>;

                scp-shmem@17c00 {
                    compatible = "arm,scp-shmem";
                    reg = <0x17c00 0x200>;
                    phandle = <0x0d>;
                };
            };

            sram@28000 {
                compatible = "mmio-sram";
                reg = <0x28000 0x1e000>;
                #address-cells = <0x01>;
                #size-cells = <0x01>;
                ranges = <0x00 0x28000 0x1e000>;
                phandle = <0x5d>;

                sram-section@0 {
                    compatible = "allwinner,sun50i-h6-sram-c\0allwinner,sun50i-a64-sram-c";
                    reg = <0x00 0x1e000>;
                    phandle = <0x13>;
                };
            };

            sram@1a00000 {
                compatible = "mmio-sram";
                reg = <0x1a00000 0x200000>;
                #address-cells = <0x01>;
                #size-cells = <0x01>;
                ranges = <0x00 0x1a00000 0x200000>;
                phandle = <0x5e>;

                sram-section@0 {
                    compatible = "allwinner,sun50i-h6-sram-c1\0allwinner,sun4i-a10-sram-c1";
                    reg = <0x00 0x200000>;
                    phandle = <0x17>;
                };
            };
        };

        clock@3001000 {
            compatible = "allwinner,sun50i-h6-ccu";
            reg = <0x3001000 0x1000>;
            clocks = <0x19 0x1a 0x00 0x1a 0x02>;
            clock-names = "hosc\0losc\0iosc";
            protected-clocks = <0x2c>;
            #clock-cells = <0x01>;
            #reset-cells = <0x01>;
            phandle = <0x04>;
        };

        dma-controller@3002000 {
            compatible = "allwinner,sun50i-h6-dma";
            reg = <0x3002000 0x1000>;
            interrupts = <0x00 0x2b 0x04>;
            clocks = <0x04 0x2b 0x04 0x35>;
            clock-names = "bus\0mbus";
            dma-channels = <0x10>;
            dma-requests = <0x2e>;
            resets = <0x04 0x08>;
            #dma-cells = <0x01>;
            phandle = <0x2a>;
        };

        mailbox@3003000 {
            compatible = "allwinner,sun50i-h6-msgbox\0allwinner,sun6i-a31-msgbox";
            reg = <0x3003000 0x1000>;
            clocks = <0x04 0x2c>;
            resets = <0x04 0x09>;
            interrupts = <0x00 0x2c 0x04>;
            #mbox-cells = <0x01>;
            phandle = <0x0c>;
        };

        interrupt-controller@3021000 {
            compatible = "arm,gic-400";
            reg = <0x3021000 0x1000 0x3022000 0x2000 0x3024000 0x2000 0x3026000 0x2000>;
            interrupts = <0x01 0x09 0xf04>;
            interrupt-controller;
            #interrupt-cells = <0x03>;
            phandle = <0x01>;
        };

        efuse@3006000 {
            compatible = "allwinner,sun50i-h6-sid";
            reg = <0x3006000 0x400>;
            #address-cells = <0x01>;
            #size-cells = <0x01>;
            phandle = <0x5f>;

            thermal-sensor-calibration@14 {
                reg = <0x14 0x08>;
                phandle = <0x4b>;
            };

            ephy-calibration@2c {
                reg = <0x2c 0x02>;
                phandle = <0x2f>;
            };

            cpu-speed-grade@1c {
                reg = <0x1c 0x04>;
                phandle = <0x52>;
            };
        };

        timer@3009000 {
            compatible = "allwinner,sun50i-h6-timer\0allwinner,sun8i-a23-timer";
            reg = <0x3009000 0xa0>;
            interrupts = <0x00 0x30 0x04 0x00 0x31 0x04>;
            clocks = <0x19>;
        };

        watchdog@30090a0 {
            compatible = "allwinner,sun50i-h6-wdt\0allwinner,sun6i-a31-wdt";
            reg = <0x30090a0 0x20>;
            interrupts = <0x00 0x32 0x04>;
            clocks = <0x19>;
            status = "disabled";
            phandle = <0x60>;
        };

        pwm@300a000 {
            compatible = "allwinner,sun50i-h6-pwm";
            reg = <0x300a000 0x400>;
            clocks = <0x19 0x04 0x32>;
            clock-names = "mod\0bus";
            resets = <0x04 0x0e>;
            #pwm-cells = <0x03>;
            status = "okay";
            phandle = <0x03>;
        };

        pinctrl@300b000 {
            compatible = "allwinner,sun50i-h6-pinctrl";
            reg = <0x300b000 0x400>;
            interrupts = <0x00 0x33 0x04 0x00 0x35 0x04 0x00 0x36 0x04 0x00 0x3b 0x04>;
            clocks = <0x04 0x1a 0x19 0x1a 0x00>;
            clock-names = "apb\0hosc\0losc";
            gpio-controller;
            #gpio-cells = <0x03>;
            interrupt-controller;
            #interrupt-cells = <0x03>;
            vcc-pc-supply = <0x1b>;
            vcc-pd-supply = <0x1c>;
            vcc-pg-supply = <0x1d>;
            phandle = <0x1f>;

            rgmii-pins {
                pins = "PD0\0PD1\0PD2\0PD3\0PD4\0PD5\0PD7\0PD8\0PD9\0PD10\0PD11\0PD12\0PD13\0PD19\0PD20";
                function = "emac";
                drive-strength = <0x28>;
                phandle = <0x31>;
            };

            rmii_pins {
                pins = "PA0\0PA1\0PA2\0PA3\0PA4\0PA5\0PA6\0PA7\0PA8\0PA9";
                function = "emac";
                drive-strength = <0x28>;
                phandle = <0x61>;
            };

            hdmi-pins {
                pins = "PH8\0PH9\0PH10";
                function = "hdmi";
                phandle = <0x3a>;
            };

            i2c0-pins {
                pins = "PD25\0PD26";
                function = "i2c0";
                phandle = <0x27>;
            };

            i2c1-pins {
                pins = "PH5\0PH6";
                function = "i2c1";
                phandle = <0x28>;
            };

            i2c2-pins {
                pins = "PD23\0PD24";
                function = "i2c2";
                phandle = <0x29>;
            };

            i2c3-pins {
                pins = "PB17\0PB18";
                function = "i2c3";
                phandle = <0x2d>;
            };

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

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

            pwm1-pin {
                pins = "PB19";
                function = "pwm1";
                phandle = <0x02>;
            };

            mmc2-pins {
                pins = "PC1\0PC4\0PC5\0PC6\0PC7\0PC8\0PC9\0PC10\0PC11\0PC12\0PC13\0PC14";
                function = "mmc2";
                drive-strength = <0x1e>;
                bias-pull-up;
                phandle = <0x23>;
            };

            spi0-pins {
                pins = "PC0\0PC2\0PC3";
                function = "spi0";
                phandle = <0x62>;
            };

            spi0-cs-pin {
                pins = "PC5";
                function = "spi0";
                phandle = <0x63>;
            };

            spi1-pins {
                pins = "PH4\0PH5\0PH6";
                function = "spi1";
                phandle = <0x2b>;
            };

            spi1-cs-pin {
                pins = "PH3";
                function = "spi1";
                phandle = <0x2c>;
            };

            spdif-tx-pin {
                pins = "PH7";
                function = "spdif";
                phandle = <0x35>;
            };

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

            uart1-pins {
                pins = "PG6\0PG7";
                function = "uart1";
                phandle = <0x25>;
            };

            uart1-rts-cts-pins {
                pins = "PG8\0PG9";
                function = "uart1";
                phandle = <0x26>;
            };

            uart2-pins {
                pins = "PD19\0PD20";
                function = "uart2";
                phandle = <0x64>;
            };

            uart2-rts-cts-pins {
                pins = "PD21\0PD22";
                function = "uart2";
                phandle = <0x65>;
            };

            uart3-pins {
                pins = "PD23\0PD24";
                function = "uart3";
                phandle = <0x66>;
            };

            uart3-rts-cts-pins {
                pins = "PD25\0PD26";
                function = "uart3";
                phandle = <0x67>;
            };

            i2s3-pins {
                pins = "PB12\0PB13\0PB14\0PB15\0PB16";
                function = "i2s3";
                phandle = <0x34>;
            };
        };

        iommu@30f0000 {
            compatible = "allwinner,sun50i-h6-iommu";
            reg = <0x30f0000 0x10000>;
            interrupts = <0x00 0x39 0x04>;
            clocks = <0x04 0x33>;
            resets = <0x04 0x0f>;
            #iommu-cells = <0x01>;
            phandle = <0x15>;
        };

        mmc@4020000 {
            compatible = "allwinner,sun50i-h6-mmc\0allwinner,sun50i-a64-mmc";
            reg = <0x4020000 0x1000>;
            clocks = <0x04 0x43 0x04 0x40>;
            clock-names = "ahb\0mmc";
            resets = <0x04 0x12>;
            reset-names = "ahb";
            interrupts = <0x00 0x23 0x04>;
            pinctrl-names = "default";
            pinctrl-0 = <0x1e>;
            max-frequency = <0x8f0d180>;
            status = "okay";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            vmmc-supply = <0x1c>;
            cd-gpios = <0x1f 0x05 0x06 0x01>;
            bus-width = <0x04>;
            phandle = <0x68>;
        };

        mmc@4021000 {
            compatible = "allwinner,sun50i-h6-mmc\0allwinner,sun50i-a64-mmc";
            reg = <0x4021000 0x1000>;
            clocks = <0x04 0x44 0x04 0x41>;
            clock-names = "ahb\0mmc";
            resets = <0x04 0x13>;
            reset-names = "ahb";
            interrupts = <0x00 0x24 0x04>;
            pinctrl-names = "default";
            pinctrl-0 = <0x20>;
            max-frequency = <0x8f0d180>;
            status = "okay";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            vmmc-supply = <0x21>;
            vqmmc-supply = <0x1d>;
            mmc-pwrseq = <0x22>;
            bus-width = <0x04>;
            non-removable;
            phandle = <0x69>;
        };

        mmc@4022000 {
            compatible = "allwinner,sun50i-h6-emmc";
            reg = <0x4022000 0x1000>;
            clocks = <0x04 0x45 0x04 0x42>;
            clock-names = "ahb\0mmc";
            resets = <0x04 0x14>;
            reset-names = "ahb";
            interrupts = <0x00 0x25 0x04>;
            pinctrl-names = "default";
            pinctrl-0 = <0x23>;
            max-frequency = <0x8f0d180>;
            status = "okay";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            vmmc-supply = <0x1c>;
            vqmmc-supply = <0x1b>;
            bus-width = <0x08>;
            non-removable;
            cap-mmc-hw-reset;
            mmc-hs200-1_8v;
            phandle = <0x6a>;
        };

        serial@5000000 {
            compatible = "snps,dw-apb-uart";
            reg = <0x5000000 0x400>;
            interrupts = <0x00 0x00 0x04>;
            reg-shift = <0x02>;
            reg-io-width = <0x04>;
            clocks = <0x04 0x46>;
            resets = <0x04 0x15>;
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <0x24>;
            phandle = <0x6b>;
        };

        serial@5000400 {
            compatible = "snps,dw-apb-uart";
            reg = <0x5000400 0x400>;
            interrupts = <0x00 0x01 0x04>;
            reg-shift = <0x02>;
            reg-io-width = <0x04>;
            clocks = <0x04 0x47>;
            resets = <0x04 0x16>;
            status = "disabled";
            pinctrl-names = "default";
            pinctrl-0 = <0x25 0x26>;
            uart-has-rtscts;
            phandle = <0x6c>;
        };

        serial@5000800 {
            compatible = "snps,dw-apb-uart";
            reg = <0x5000800 0x400>;
            interrupts = <0x00 0x02 0x04>;
            reg-shift = <0x02>;
            reg-io-width = <0x04>;
            clocks = <0x04 0x48>;
            resets = <0x04 0x17>;
            status = "disabled";
            phandle = <0x6d>;
        };

        serial@5000c00 {
            compatible = "snps,dw-apb-uart";
            reg = <0x5000c00 0x400>;
            interrupts = <0x00 0x03 0x04>;
            reg-shift = <0x02>;
            reg-io-width = <0x04>;
            clocks = <0x04 0x49>;
            resets = <0x04 0x18>;
            status = "disabled";
            phandle = <0x6e>;
        };

        i2c@5002000 {
            compatible = "allwinner,sun50i-h6-i2c\0allwinner,sun6i-a31-i2c";
            reg = <0x5002000 0x400>;
            interrupts = <0x00 0x04 0x04>;
            clocks = <0x04 0x4a>;
            resets = <0x04 0x19>;
            pinctrl-names = "default";
            pinctrl-0 = <0x27>;
            status = "disabled";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            phandle = <0x6f>;
        };

        i2c@5002400 {
            compatible = "allwinner,sun50i-h6-i2c\0allwinner,sun6i-a31-i2c";
            reg = <0x5002400 0x400>;
            interrupts = <0x00 0x05 0x04>;
            clocks = <0x04 0x4b>;
            resets = <0x04 0x1a>;
            pinctrl-names = "default";
            pinctrl-0 = <0x28>;
            status = "disabled";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            phandle = <0x70>;
        };

        i2c@5002800 {
            compatible = "allwinner,sun50i-h6-i2c\0allwinner,sun6i-a31-i2c";
            reg = <0x5002800 0x400>;
            interrupts = <0x00 0x06 0x04>;
            clocks = <0x04 0x4c>;
            resets = <0x04 0x1b>;
            pinctrl-names = "default";
            pinctrl-0 = <0x29>;
            status = "disabled";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            phandle = <0x71>;
        };

        spi@5011000 {
            compatible = "allwinner,sun50i-h6-spi\0allwinner,sun8i-h3-spi";
            reg = <0x5011000 0x1000>;
            interrupts = <0x00 0x0b 0x04>;
            clocks = <0x04 0x53 0x04 0x51>;
            clock-names = "ahb\0mod";
            dmas = <0x2a 0x17 0x2a 0x17>;
            dma-names = "rx\0tx";
            pinctrl-names = "default";
            pinctrl-0 = <0x2b 0x2c>;
            resets = <0x04 0x20>;
            status = "disabled";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            phandle = <0x72>;
        };

        i2c@5002c00 {
            compatible = "allwinner,sun50i-h6-i2c\0allwinner,sun6i-a31-i2c";
            reg = <0x5002c00 0x400>;
            interrupts = <0x00 0x07 0x04>;
            clocks = <0x04 0x4d>;
            resets = <0x04 0x1c>;
            pinctrl-names = "default";
            pinctrl-0 = <0x2d>;
            status = "okay";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            phandle = <0x73>;

            mfd@10 {
                compatible = "x-powers,ac200";
                reg = <0x10>;
                clocks = <0x2e>;
                interrupt-parent = <0x1f>;
                interrupts = <0x01 0x14 0x08>;
                interrupt-controller;
                #interrupt-cells = <0x01>;
                phandle = <0x74>;

                phy {
                    compatible = "x-powers,ac200-ephy";
                    nvmem-cells = <0x2f>;
                    nvmem-cell-names = "calibration";
                    status = "disabled";
                    phandle = <0x75>;
                };

                codec {
                    #sound-dai-cells = <0x00>;
                    compatible = "x-powers,ac200-codec";
                    status = "okay";
                    phandle = <0x12>;
                };
            };
        };

        ethernet@5020000 {
            compatible = "allwinner,sun50i-h6-emac\0allwinner,sun50i-a64-emac";
            syscon = <0x30>;
            reg = <0x5020000 0x10000>;
            interrupts = <0x00 0x0c 0x04>;
            interrupt-names = "macirq";
            resets = <0x04 0x21>;
            reset-names = "stmmaceth";
            clocks = <0x04 0x54>;
            clock-names = "stmmaceth";
            status = "okay";
            pinctrl-names = "default";
            pinctrl-0 = <0x31>;
            phy-mode = "rgmii-id";
            phy-handle = <0x32>;
            phy-supply = <0x33>;
            allwinner,rx-delay-ps = <0xc8>;
            allwinner,tx-delay-ps = <0x12c>;
            snps,reset-gpio = <0x1f 0x03 0x0e 0x01>;
            snps,reset-delays-us = <0x00 0x2710 0xf4240>;
            snps,reset-active-low;
            phandle = <0x76>;

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

                ethernet-phy@1 {
                    compatible = "ethernet-phy-ieee802.3-c22";
                    reg = <0x01>;
                    phandle = <0x32>;
                };
            };
        };

        i2s@5091000 {
            #sound-dai-cells = <0x00>;
            compatible = "allwinner,sun50i-h6-i2s";
            reg = <0x5091000 0x1000>;
            interrupts = <0x00 0x13 0x04>;
            clocks = <0x04 0x5f 0x04 0x5c>;
            clock-names = "apb\0mod";
            dmas = <0x2a 0x04 0x2a 0x04>;
            resets = <0x04 0x26>;
            dma-names = "rx\0tx";
            status = "okay";
            phandle = <0x0f>;
        };

        i2s@508f000 {
            #sound-dai-cells = <0x00>;
            compatible = "allwinner,sun50i-h6-i2s";
            reg = <0x508f000 0x1000>;
            interrupts = <0x00 0x1e 0x04>;
            clocks = <0x04 0x61 0x04 0x5a>;
            clock-names = "apb\0mod";
            dmas = <0x2a 0x06 0x2a 0x06>;
            resets = <0x04 0x28>;
            dma-names = "rx\0tx";
            pinctrl-names = "default";
            pinctrl-0 = <0x34>;
            status = "okay";
            phandle = <0x11>;
        };

        spdif@5093000 {
            #sound-dai-cells = <0x00>;
            compatible = "allwinner,sun50i-h6-spdif";
            reg = <0x5093000 0x400>;
            interrupts = <0x00 0x15 0x04>;
            clocks = <0x04 0x63 0x04 0x62>;
            clock-names = "apb\0spdif";
            resets = <0x04 0x29>;
            dmas = <0x2a 0x02>;
            dma-names = "tx";
            pinctrl-names = "default";
            pinctrl-0 = <0x35>;
            status = "disabled";
            phandle = <0x78>;
        };

        usb@5100000 {
            compatible = "allwinner,sun50i-h6-musb\0allwinner,sun8i-a33-musb";
            reg = <0x5100000 0x400>;
            clocks = <0x04 0x74>;
            resets = <0x04 0x35>;
            interrupts = <0x00 0x17 0x04>;
            interrupt-names = "mc";
            phys = <0x36 0x00>;
            phy-names = "usb";
            extcon = <0x36 0x00>;
            status = "okay";
            dr_mode = "host";
            phandle = <0x79>;
        };

        phy@5100400 {
            compatible = "allwinner,sun50i-h6-usb-phy";
            reg = <0x5100400 0x24 0x5101800 0x04 0x5311800 0x04>;
            reg-names = "phy_ctrl\0pmu0\0pmu3";
            clocks = <0x04 0x69 0x04 0x6c>;
            clock-names = "usb0_phy\0usb3_phy";
            resets = <0x04 0x2c 0x04 0x2e>;
            reset-names = "usb0_reset\0usb3_reset";
            status = "okay";
            #phy-cells = <0x01>;
            usb0_id_det-gpios = <0x1f 0x02 0x0f 0x00>;
            usb0_vbus-supply = <0x37>;
            usb3_vbus-supply = <0x37>;
            phandle = <0x36>;
        };

        usb@5101000 {
            compatible = "allwinner,sun50i-h6-ehci\0generic-ehci";
            reg = <0x5101000 0x100>;
            interrupts = <0x00 0x18 0x04>;
            clocks = <0x04 0x6f 0x04 0x71 0x04 0x68>;
            resets = <0x04 0x30 0x04 0x32>;
            phys = <0x36 0x00>;
            phy-names = "usb";
            status = "okay";
            phandle = <0x7a>;
        };

        usb@5101400 {
            compatible = "allwinner,sun50i-h6-ohci\0generic-ohci";
            reg = <0x5101400 0x100>;
            interrupts = <0x00 0x19 0x04>;
            clocks = <0x04 0x6f 0x04 0x68>;
            resets = <0x04 0x30>;
            phys = <0x36 0x00>;
            phy-names = "usb";
            status = "okay";
            phandle = <0x7b>;
        };

        usb@5200000 {
            compatible = "snps,dwc3";
            reg = <0x5200000 0x10000>;
            interrupts = <0x00 0x1a 0x04>;
            clocks = <0x04 0x72 0x04 0x72 0x1a 0x00>;
            clock-names = "ref\0bus_early\0suspend";
            resets = <0x04 0x33>;
            dr_mode = "host";
            phys = <0x38>;
            phy-names = "usb3-phy";
            status = "okay";
            phandle = <0x7c>;
        };

        phy@5210000 {
            compatible = "allwinner,sun50i-h6-usb3-phy";
            reg = <0x5210000 0x10000>;
            clocks = <0x04 0x6a>;
            resets = <0x04 0x2d>;
            #phy-cells = <0x00>;
            status = "okay";
            phandle = <0x38>;
        };

        usb@5311000 {
            compatible = "allwinner,sun50i-h6-ehci\0generic-ehci";
            reg = <0x5311000 0x100>;
            interrupts = <0x00 0x1c 0x04>;
            clocks = <0x04 0x70 0x04 0x73 0x04 0x6b>;
            resets = <0x04 0x31 0x04 0x34>;
            phys = <0x36 0x03>;
            phy-names = "usb";
            status = "okay";
            phandle = <0x7d>;
        };

        usb@5311400 {
            compatible = "allwinner,sun50i-h6-ohci\0generic-ohci";
            reg = <0x5311400 0x100>;
            interrupts = <0x00 0x1d 0x04>;
            clocks = <0x04 0x70 0x04 0x6b>;
            resets = <0x04 0x31>;
            phys = <0x36 0x03>;
            phy-names = "usb";
            status = "okay";
            phandle = <0x7e>;
        };

        hdmi@6000000 {
            #sound-dai-cells = <0x00>;
            compatible = "allwinner,sun50i-h6-dw-hdmi";
            reg = <0x6000000 0x10000>;
            reg-io-width = <0x01>;
            interrupts = <0x00 0x40 0x04>;
            clocks = <0x04 0x7e 0x04 0x7c 0x04 0x7b 0x04 0x7d 0x04 0x88 0x04 0x89>;
            clock-names = "iahb\0isfr\0tmds\0cec\0hdcp\0hdcp-bus";
            resets = <0x04 0x39 0x04 0x3e>;
            reset-names = "ctrl\0hdcp";
            phys = <0x39>;
            phy-names = "phy";
            pinctrl-names = "default";
            pinctrl-0 = <0x3a>;
            status = "okay";
            phandle = <0x0e>;

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

                port@0 {
                    reg = <0x00>;
                    phandle = <0x7f>;

                    endpoint {
                        remote-endpoint = <0x3b>;
                        phandle = <0x40>;
                    };
                };

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

                    endpoint {
                        remote-endpoint = <0x3c>;
                        phandle = <0x53>;
                    };
                };
            };
        };

        hdmi-phy@6010000 {
            compatible = "allwinner,sun50i-h6-hdmi-phy";
            reg = <0x6010000 0x10000>;
            clocks = <0x04 0x7e 0x04 0x7c>;
            clock-names = "bus\0mod";
            resets = <0x04 0x38>;
            reset-names = "phy";
            #phy-cells = <0x00>;
            phandle = <0x39>;
        };

        tcon-top@6510000 {
            compatible = "allwinner,sun50i-h6-tcon-top";
            reg = <0x6510000 0x1000>;
            clocks = <0x04 0x7f 0x04 0x82>;
            clock-names = "bus\0tcon-tv0";
            clock-output-names = "tcon-top-tv0";
            resets = <0x04 0x3a>;
            #clock-cells = <0x01>;
            phandle = <0x41>;

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

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

                    endpoint@0 {
                        reg = <0x00>;
                        remote-endpoint = <0x3d>;
                        phandle = <0x16>;
                    };
                };

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

                    endpoint@2 {
                        reg = <0x02>;
                        remote-endpoint = <0x3e>;
                        phandle = <0x42>;
                    };
                };

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

                    endpoint@0 {
                        reg = <0x00>;
                        remote-endpoint = <0x3f>;
                        phandle = <0x43>;
                    };
                };

                port@5 {
                    reg = <0x05>;
                    phandle = <0x84>;

                    endpoint {
                        remote-endpoint = <0x40>;
                        phandle = <0x3b>;
                    };
                };
            };
        };

        lcd-controller@6515000 {
            compatible = "allwinner,sun50i-h6-tcon-tv\0allwinner,sun8i-r40-tcon-tv";
            reg = <0x6515000 0x1000>;
            interrupts = <0x00 0x42 0x04>;
            clocks = <0x04 0x83 0x41 0x00>;
            clock-names = "ahb\0tcon-ch1";
            resets = <0x04 0x3c>;
            reset-names = "lcd";
            phandle = <0x85>;

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

                port@0 {
                    reg = <0x00>;
                    phandle = <0x86>;

                    endpoint {
                        remote-endpoint = <0x42>;
                        phandle = <0x3e>;
                    };
                };

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

                    endpoint@1 {
                        reg = <0x01>;
                        remote-endpoint = <0x43>;
                        phandle = <0x3f>;
                    };
                };
            };
        };

        serial@7080000 {
            compatible = "snps,dw-apb-uart";
            reg = <0x7080000 0x400>;
            interrupts = <0x00 0x6a 0x04>;
            reg-shift = <0x02>;
            reg-io-width = <0x04>;
            clocks = <0x44 0x07>;
            resets = <0x44 0x03>;
            pinctrl-names = "default";
            pinctrl-0 = <0x45>;
            status = "disabled";
            phandle = <0x88>;
        };

        rtc@7000000 {
            compatible = "allwinner,sun50i-h6-rtc";
            reg = <0x7000000 0x400>;
            interrupt-parent = <0x46>;
            interrupts = <0x00 0x65 0x04 0x00 0x66 0x04>;
            clock-output-names = "osc32k\0osc32k-out\0iosc";
            clocks = <0x47>;
            #clock-cells = <0x01>;
            phandle = <0x1a>;
        };

        clock@7010000 {
            compatible = "allwinner,sun50i-h6-r-ccu";
            reg = <0x7010000 0x400>;
            clocks = <0x19 0x1a 0x00 0x1a 0x02 0x04 0x03>;
            clock-names = "hosc\0losc\0iosc\0pll-periph";
            protected-clocks = <0x05>;
            #clock-cells = <0x01>;
            #reset-cells = <0x01>;
            phandle = <0x44>;
        };

        watchdog@7020400 {
            compatible = "allwinner,sun50i-h6-wdt\0allwinner,sun6i-a31-wdt";
            reg = <0x7020400 0x20>;
            interrupts = <0x00 0x67 0x04>;
            clocks = <0x19>;
            phandle = <0x89>;
        };

        interrupt-controller@7021000 {
            compatible = "allwinner,sun50i-h6-r-intc";
            interrupt-controller;
            #interrupt-cells = <0x03>;
            reg = <0x7021000 0x400>;
            interrupts = <0x00 0x60 0x04>;
            phandle = <0x46>;
        };

        pinctrl@7022000 {
            compatible = "allwinner,sun50i-h6-r-pinctrl";
            reg = <0x7022000 0x400>;
            interrupt-parent = <0x46>;
            interrupts = <0x00 0x69 0x04 0x00 0x6f 0x04>;
            clocks = <0x44 0x02 0x19 0x1a 0x00>;
            clock-names = "apb\0hosc\0losc";
            gpio-controller;
            #gpio-cells = <0x03>;
            interrupt-controller;
            #interrupt-cells = <0x03>;
            phandle = <0x54>;

            r-i2c-pins {
                pins = "PL0\0PL1";
                function = "s_i2c";
                phandle = <0x49>;
            };

            r-ir-rx-pin {
                pins = "PL9";
                function = "s_cir_rx";
                phandle = <0x48>;
            };

            r-rsb-pins {
                pins = "PL0\0PL1";
                function = "s_rsb";
                phandle = <0x4a>;
            };

            r-uart-pins {
                pins = "PL2\0PL3";
                function = "s_uart";
                phandle = <0x45>;
            };
        };

        ir@7040000 {
            compatible = "allwinner,sun50i-h6-ir\0allwinner,sun6i-a31-ir";
            reg = <0x7040000 0x400>;
            interrupt-parent = <0x46>;
            interrupts = <0x00 0x6d 0x04>;
            clocks = <0x44 0x09 0x44 0x0b>;
            clock-names = "apb\0ir";
            resets = <0x44 0x05>;
            pinctrl-names = "default";
            pinctrl-0 = <0x48>;
            status = "okay";
            phandle = <0x8a>;
        };

        i2c@7081400 {
            compatible = "allwinner,sun50i-h6-i2c\0allwinner,sun6i-a31-i2c";
            reg = <0x7081400 0x400>;
            interrupts = <0x00 0x6b 0x04>;
            clocks = <0x44 0x08>;
            resets = <0x44 0x04>;
            pinctrl-names = "default";
            pinctrl-0 = <0x49>;
            status = "okay";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            phandle = <0x8b>;

            pmic@36 {
                compatible = "x-powers,axp805\0x-powers,axp806";
                reg = <0x36>;
                interrupt-parent = <0x46>;
                interrupts = <0x00 0x60 0x08>;
                interrupt-controller;
                #interrupt-cells = <0x01>;
                x-powers,self-working-mode;
                vina-supply = <0x37>;
                vinb-supply = <0x37>;
                vinc-supply = <0x37>;
                vind-supply = <0x37>;
                vine-supply = <0x37>;
                aldoin-supply = <0x37>;
                bldoin-supply = <0x37>;
                cldoin-supply = <0x37>;
                phandle = <0x8c>;

                regulators {

                    aldo1 {
                        regulator-always-on;
                        regulator-min-microvolt = <0x325aa0>;
                        regulator-max-microvolt = <0x325aa0>;
                        regulator-name = "vcc-pl-led-ir";
                        phandle = <0x8d>;
                    };

                    aldo2 {
                        regulator-always-on;
                        regulator-min-microvolt = <0x325aa0>;
                        regulator-max-microvolt = <0x325aa0>;
                        regulator-name = "vcc33-audio-tv-ephy-mac";
                        regulator-enable-ramp-delay = <0x186a0>;
                        phandle = <0x8e>;
                    };

                    aldo3 {
                        regulator-always-on;
                        regulator-min-microvolt = <0x325aa0>;
                        regulator-max-microvolt = <0x325aa0>;
                        regulator-name = "vcc33-io-pd-emmc-sd-usb-uart-1";
                        phandle = <0x8f>;
                    };

                    bldo1 {
                        regulator-always-on;
                        regulator-min-microvolt = <0x1b7740>;
                        regulator-max-microvolt = <0x1b7740>;
                        regulator-name = "vcc18-dram-bias-pll";
                        phandle = <0x90>;
                    };

                    bldo2 {
                        regulator-always-on;
                        regulator-min-microvolt = <0x1b7740>;
                        regulator-max-microvolt = <0x1b7740>;
                        regulator-name = "vcc-efuse-pcie-hdmi-pc";
                        phandle = <0x1b>;
                    };

                    bldo3 {
                        regulator-always-on;
                        regulator-min-microvolt = <0x1b7740>;
                        regulator-max-microvolt = <0x1b7740>;
                        regulator-name = "vcc-wifi-io-pm-pg";
                        phandle = <0x91>;
                    };

                    bldo4 {
                    };

                    cldo1 {
                        regulator-always-on;
                        regulator-min-microvolt = <0x325aa0>;
                        regulator-max-microvolt = <0x325aa0>;
                        regulator-name = "vcc33-io-pd-emmc-sd-usb-uart-2";
                        phandle = <0x1c>;
                    };

                    cldo2 {
                    };

                    cldo3 {
                    };

                    dcdca {
                        regulator-always-on;
                        regulator-min-microvolt = "\0\f5";
                        regulator-max-microvolt = <0x11b340>;
                        regulator-ramp-delay = <0x9c4>;
                        regulator-name = "vdd-cpu";
                        phandle = <0x06>;
                    };

                    dcdcc {
                        regulator-enable-ramp-delay = <0x7d00>;
                        regulator-min-microvolt = <0xc5c10>;
                        regulator-max-microvolt = <0x107ac0>;
                        regulator-ramp-delay = <0x9c4>;
                        regulator-name = "vdd-gpu";
                        phandle = <0x18>;
                    };

                    dcdcd {
                        regulator-always-on;
                        regulator-min-microvolt = <0xea600>;
                        regulator-max-microvolt = <0xea600>;
                        regulator-name = "vdd-sys";
                        phandle = <0x92>;
                    };

                    dcdce {
                        regulator-always-on;
                        regulator-min-microvolt = <0x124f80>;
                        regulator-max-microvolt = <0x124f80>;
                        regulator-name = "vcc-dram";
                        phandle = <0x93>;
                    };

                    sw {
                    };
                };
            };
        };

        rsb@7083000 {
            compatible = "allwinner,sun8i-a23-rsb";
            reg = <0x7083000 0x400>;
            interrupts = <0x00 0x6c 0x04>;
            clocks = <0x44 0x0d>;
            clock-frequency = <0x2dc6c0>;
            resets = <0x44 0x07>;
            pinctrl-names = "default";
            pinctrl-0 = <0x4a>;
            status = "disabled";
            #address-cells = <0x01>;
            #size-cells = <0x00>;
            phandle = <0x94>;
        };

        thermal-sensor@5070400 {
            compatible = "allwinner,sun50i-h6-ths";
            reg = <0x5070400 0x100>;
            interrupts = <0x00 0x0f 0x04>;
            clocks = <0x04 0x59>;
            clock-names = "bus";
            resets = <0x04 0x24>;
            nvmem-cells = <0x4b>;
            nvmem-cell-names = "calibration";
            #thermal-sensor-cells = <0x01>;
            phandle = <0x4c>;
        };

        sunxi-info {
            compatible = "allwinner,sun50i-h6-sys-info";
            status = "okay";
        };

        addr-mgt {
            compatible = "allwinner,sunxi-addr_mgt";
            type_addr_wifi = <0x02>;
            type_addr_bt = <0x02>;
            type_addr_eth = <0x02>;
            status = "okay";
            phandle = <0x95>;
        };

        dump_reg@20000 {
            compatible = "allwinner,sunxi-dump-reg";
            reg = <0x00 0x3001000 0x00 0xf20>;
            status = "okay";
            phandle = <0x96>;
        };
    };

    thermal-zones {

        cpu-thermal {
            polling-delay-passive = <0xfa>;
            polling-delay = <0x3e8>;
            thermal-sensors = <0x4c 0x00>;

            trips {

                cpu_warm {
                    temperature = <0x124f8>;
                    hysteresis = <0x7d0>;
                    type = "passive";
                    phandle = <0x4d>;
                };

                cpu_hot_pre {
                    temperature = <0x13880>;
                    hysteresis = <0x7d0>;
                    type = "passive";
                    phandle = <0x4e>;
                };

                cpu_hot {
                    temperature = <0x14c08>;
                    hysteresis = <0x7d0>;
                    type = "passive";
                    phandle = <0x4f>;
                };

                cpu_very_hot_pre {
                    temperature = <0x15f90>;
                    hysteresis = <0x7d0>;
                    type = "passive";
                    phandle = <0x50>;
                };

                cpu_very_hot {
                    temperature = <0x17318>;
                    hysteresis = <0x7d0>;
                    type = "passive";
                    phandle = <0x51>;
                };

                cpu_crit {
                    temperature = <0x19a28>;
                    hysteresis = <0x7d0>;
                    type = "critical";
                    phandle = <0x97>;
                };
            };

            cooling-maps {

                cpu_warm_limit_cpu {
                    trip = <0x4d>;
                    cooling-device = <0x08 0xffffffff 0x02>;
                };

                cpu_hot_pre_limit_cpu {
                    trip = <0x4e>;
                    cooling-device = <0x08 0x02 0x03>;
                };

                cpu_hot_limit_cpu {
                    trip = <0x4f>;
                    cooling-device = <0x08 0x03 0x04>;
                };

                cpu_very_hot_pre_limit_cpu {
                    trip = <0x50>;
                    cooling-device = <0x08 0x05 0x06>;
                };

                cpu_very_hot_limit_cpu {
                    trip = <0x51>;
                    cooling-device = <0x08 0x07 0xffffffff>;
                };
            };
        };

        gpu-thermal {
            polling-delay-passive = <0x00>;
            polling-delay = <0x00>;
            thermal-sensors = <0x4c 0x01>;
        };
    };

    opp-table-cpu {
        compatible = "allwinner,sun50i-h6-operating-points";
        nvmem-cells = <0x52>;
        opp-shared;
        phandle = <0x05>;

        opp-480000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x1c9c3800>;
            opp-microvolt-speed0 = <0xd6d80 0xd6d80 0x124f80>;
            opp-microvolt-speed1 = <0xc8320 0xc8320 0x124f80>;
            opp-microvolt-speed2 = <0xc8320 0xc8320 0x124f80>;
        };

        opp-720000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x2aea5400>;
            opp-microvolt-speed0 = <0xd6d80 0xd6d80 0x124f80>;
            opp-microvolt-speed1 = <0xc8320 0xc8320 0x124f80>;
            opp-microvolt-speed2 = <0xc8320 0xc8320 0x124f80>;
        };

        opp-816000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x30a32c00>;
            opp-microvolt-speed0 = <0xd6d80 0xd6d80 0x124f80>;
            opp-microvolt-speed1 = <0xc8320 0xc8320 0x124f80>;
            opp-microvolt-speed2 = <0xc8320 0xc8320 0x124f80>;
        };

        opp-888000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x34edce00>;
            opp-microvolt-speed0 = <0xd6d80 0xd6d80 0x124f80>;
            opp-microvolt-speed1 = <0xc8320 0xc8320 0x124f80>;
            opp-microvolt-speed2 = <0xc8320 0xc8320 0x124f80>;
        };

        opp-1080000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x405f7e00>;
            opp-microvolt-speed0 = <0xe57e0 0xe57e0 0x124f80>;
            opp-microvolt-speed1 = <0xd6d80 0xd6d80 0x124f80>;
            opp-microvolt-speed2 = <0xd6d80 0xd6d80 0x124f80>;
        };

        opp-1320000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x4ead9a00>;
            opp-microvolt-speed0 = <0xf4240 0xf4240 0x124f80>;
            opp-microvolt-speed1 = <0xe57e0 0xe57e0 0x124f80>;
            opp-microvolt-speed2 = <0xe57e0 0xe57e0 0x124f80>;
        };

        opp-1488000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x58b11400>;
            opp-microvolt-speed0 = <0x102ca0 0x102ca0 0x124f80>;
            opp-microvolt-speed1 = <0xf4240 0xf4240 0x124f80>;
            opp-microvolt-speed2 = <0xf4240 0xf4240 0x124f80>;
        };

        opp-1608000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x5fd82200>;
            opp-microvolt-speed0 = <0x10a1d0 0x10a1d0 0x124f80>;
            opp-microvolt-speed1 = <0xfb770 0xfb770 0x124f80>;
            opp-microvolt-speed2 = <0xfb770 0xfb770 0x124f80>;
        };

        opp-1704000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x6590fa00>;
            opp-microvolt-speed0 = <0x111700 0x111700 0x124f80>;
            opp-microvolt-speed1 = <0x102ca0 0x102ca0 0x124f80>;
            opp-microvolt-speed2 = <0x102ca0 0x102ca0 0x124f80>;
        };

        opp-1800000000 {
            clock-latency-ns = <0x3b9b0>;
            opp-hz = <0x00 0x6b49d200>;
            opp-microvolt-speed0 = <0x11b340 0x11b340 0x124f80>;
            opp-microvolt-speed1 = <0x10c8e0 0x10c8e0 0x124f80>;
            opp-microvolt-speed2 = <0x10c8e0 0x10c8e0 0x124f80>;
        };
    };

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

    connector {
        compatible = "hdmi-connector";
        ddc-en-gpios = <0x1f 0x07 0x02 0x00>;
        type = "a";

        port {

            endpoint {
                remote-endpoint = <0x53>;
                phandle = <0x3c>;
            };
        };
    };

    leds {
        compatible = "gpio-leds";

        status {
            label = "green-led";
            gpios = <0x54 0x00 0x07 0x00>;
            default-state = "on";
        };

        power {
            label = "red-led";
            gpios = <0x54 0x00 0x04 0x00>;
        };
    };

    vcc5v {
        compatible = "regulator-fixed";
        regulator-name = "vcc-5v";
        regulator-min-microvolt = <0x4c4b40>;
        regulator-max-microvolt = <0x4c4b40>;
        regulator-always-on;
        phandle = <0x37>;
    };

    gmac-3v3 {
        compatible = "regulator-fixed";
        regulator-name = "vcc-gmac-3v3";
        regulator-min-microvolt = <0x325aa0>;
        regulator-max-microvolt = <0x325aa0>;
        startup-delay-us = <0x186a0>;
        gpio = <0x1f 0x03 0x06 0x00>;
        enable-active-high;
        phandle = <0x33>;
    };

    vcc33-wifi {
        compatible = "regulator-fixed";
        regulator-name = "vcc33-wifi";
        regulator-min-microvolt = <0x325aa0>;
        regulator-max-microvolt = <0x325aa0>;
        enable-active-high;
        gpio = <0x1f 0x07 0x07 0x00>;
        phandle = <0x21>;
    };

    vcc-wifi-io {
        compatible = "regulator-fixed";
        regulator-name = "vcc-wifi-io";
        regulator-min-microvolt = <0x1b7740>;
        regulator-max-microvolt = <0x1b7740>;
        regulator-always-on;
        vin-supply = <0x21>;
        phandle = <0x1d>;
    };

    wifi-pwrseq {
        compatible = "mmc-pwrseq-simple";
        clocks = <0x1a 0x01>;
        clock-names = "ext_clock";
        reset-gpios = <0x54 0x01 0x03 0x01>;
        post-power-on-delay-ms = <0xc8>;
        phandle = <0x22>;
    };

    __symbols__ {
        ac200_pwm_clk = "/ac200_clk";
        cpu0 = "/cpus/cpu@0";
        cpu1 = "/cpus/cpu@1";
        cpu2 = "/cpus/cpu@2";
        cpu3 = "/cpus/cpu@3";
        de = "/display-engine";
        osc24M = "/osc24M_clk";
        ext_osc32k = "/ext_osc32k_clk";
        scpi_protocol = "/scpi";
        sound_hdmi = "/sound_hdmi";
        sound_ac200 = "/sound_ac200";
        i2s3_master = "/sound_ac200/simple-audio-card,cpu";
        display_clocks = "/soc/bus@1000000/clock@0";
        mixer0 = "/soc/bus@1000000/mixer@100000";
        mixer0_out = "/soc/bus@1000000/mixer@100000/ports/port@1";
        mixer0_out_tcon_top_mixer0 = "/soc/bus@1000000/mixer@100000/ports/port@1/endpoint";
        gpu = "/soc/gpu@1800000";
        crypto = "/soc/crypto@1904000";
        syscon = "/soc/syscon@3000000";
        sram_a2 = "/soc/syscon@3000000/sram@100000";
        scpi_sram = "/soc/syscon@3000000/sram@100000/scp-shmem@17c00";
        sram_c = "/soc/syscon@3000000/sram@28000";
        de2_sram = "/soc/syscon@3000000/sram@28000/sram-section@0";
        sram_c1 = "/soc/syscon@3000000/sram@1a00000";
        ve_sram = "/soc/syscon@3000000/sram@1a00000/sram-section@0";
        ccu = "/soc/clock@3001000";
        dma = "/soc/dma-controller@3002000";
        msgbox = "/soc/mailbox@3003000";
        gic = "/soc/interrupt-controller@3021000";
        sid = "/soc/efuse@3006000";
        ths_calibration = "/soc/efuse@3006000/thermal-sensor-calibration@14";
        ephy_calibration = "/soc/efuse@3006000/ephy-calibration@2c";
        cpu_speed_grade = "/soc/efuse@3006000/cpu-speed-grade@1c";
        watchdog = "/soc/watchdog@30090a0";
        pwm = "/soc/pwm@300a000";
        pio = "/soc/pinctrl@300b000";
        ext_rgmii_pins = "/soc/pinctrl@300b000/rgmii-pins";
        ext_rmii_pins = "/soc/pinctrl@300b000/rmii_pins";
        hdmi_pins = "/soc/pinctrl@300b000/hdmi-pins";
        i2c0_pins = "/soc/pinctrl@300b000/i2c0-pins";
        i2c1_pins = "/soc/pinctrl@300b000/i2c1-pins";
        i2c2_pins = "/soc/pinctrl@300b000/i2c2-pins";
        i2c3_pins = "/soc/pinctrl@300b000/i2c3-pins";
        mmc0_pins = "/soc/pinctrl@300b000/mmc0-pins";
        mmc1_pins = "/soc/pinctrl@300b000/mmc1-pins";
        pwm1_pin = "/soc/pinctrl@300b000/pwm1-pin";
        mmc2_pins = "/soc/pinctrl@300b000/mmc2-pins";
        spi0_pins = "/soc/pinctrl@300b000/spi0-pins";
        spi0_cs_pin = "/soc/pinctrl@300b000/spi0-cs-pin";/
        spi1_pins = "/soc/pinctrl@300b000/spi1-pins";
        spi1_cs_pin = "/soc/pinctrl@300b000/spi1-cs-pin";
        spdif_tx_pin = "/soc/pinctrl@300b000/spdif-tx-pin";
        uart0_ph_pins = "/soc/pinctrl@300b000/uart0-ph-pins";
        uart1_pins = "/soc/pinctrl@300b000/uart1-pins";
        uart1_rts_cts_pins = "/soc/pinctrl@300b000/uart1-rts-cts-pins";
        uart2_pins = "/soc/pinctrl@300b000/uart2-pins";
        uart2_rts_cts_pins = "/soc/pinctrl@300b000/uart2-rts-cts-pins";
        uart3_pins = "/soc/pinctrl@300b000/uart3-pins";
        uart3_rts_cts_pins = "/soc/pinctrl@300b000/uart3-rts-cts-pins";
        i2s3_pins = "/soc/pinctrl@300b000/i2s3-pins";
        iommu = "/soc/iommu@30f0000";
        mmc0 = "/soc/mmc@4020000";
        mmc1 = "/soc/mmc@4021000";
        mmc2 = "/soc/mmc@4022000";
        uart0 = "/soc/serial@5000000";
        uart1 = "/soc/serial@5000400";
        uart2 = "/soc/serial@5000800";
        uart3 = "/soc/serial@5000c00";
        i2c0 = "/soc/i2c@5002000";
        i2c1 = "/soc/i2c@5002400";
        i2c2 = "/soc/i2c@5002800";
        spi1 = "/soc/spi@5011000";
        i2c3 = "/soc/i2c@5002c00";
        ac200 = "/soc/i2c@5002c00/mfd@10";
        ac200_ephy = "/soc/i2c@5002c00/mfd@10/phy";
        ac200_codec = "/soc/i2c@5002c00/mfd@10/codec";
        emac = "/soc/ethernet@5020000";
        mdio = "/soc/ethernet@5020000/mdio";
        ext_rgmii_phy = "/soc/ethernet@5020000/mdio/ethernet-phy@1";
        i2s1 = "/soc/i2s@5091000";
        i2s3 = "/soc/i2s@508f000";
        spdif = "/soc/spdif@5093000";
        usb2otg = "/soc/usb@5100000";
        usb2phy = "/soc/phy@5100400";
        ehci0 = "/soc/usb@5101000";
        ohci0 = "/soc/usb@5101400";
        dwc3 = "/soc/usb@5200000";
        usb3phy = "/soc/phy@5210000";
        ehci3 = "/soc/usb@5311000";
        ohci3 = "/soc/usb@5311400";
        hdmi = "/soc/hdmi@6000000";
        hdmi_in = "/soc/hdmi@6000000/ports/port@0";
        hdmi_in_tcon_top = "/soc/hdmi@6000000/ports/port@0/endpoint";
        hdmi_out = "/soc/hdmi@6000000/ports/port@1";
        hdmi_out_con = "/soc/hdmi@6000000/ports/port@1/endpoint";
        hdmi_phy = "/soc/hdmi-phy@6010000";
        tcon_top = "/soc/tcon-top@6510000";
        tcon_top_mixer0_in = "/soc/tcon-top@6510000/ports/port@0";
        tcon_top_mixer0_in_mixer0 = "/soc/tcon-top@6510000/ports/port@0/endpoint@0";
        tcon_top_mixer0_out = "/soc/tcon-top@6510000/ports/port@1";
        tcon_top_mixer0_out_tcon_tv = "/soc/tcon-top@6510000/ports/port@1/endpoint@2";
        tcon_top_hdmi_in = "/soc/tcon-top@6510000/ports/port@4";
        tcon_top_hdmi_in_tcon_tv = "/soc/tcon-top@6510000/ports/port@4/endpoint@0";
        tcon_top_hdmi_out = "/soc/tcon-top@6510000/ports/port@5";
        tcon_top_hdmi_out_hdmi = "/soc/tcon-top@6510000/ports/port@5/endpoint";
        tcon_tv = "/soc/lcd-controller@6515000";
        tcon_tv_in = "/soc/lcd-controller@6515000/ports/port@0";
        tcon_tv_in_tcon_top_mixer0 = "/soc/lcd-controller@6515000/ports/port@0/endpoint";
        tcon_tv_out = "/soc/lcd-controller@6515000/ports/port@1";
        tcon_tv_out_tcon_top = "/soc/lcd-controller@6515000/ports/port@1/endpoint@1";
        r_uart = "/soc/serial@7080000";
        rtc = "/soc/rtc@7000000";
        r_ccu = "/soc/clock@7010000";
        r_watchdog = "/soc/watchdog@7020400";
        r_intc = "/soc/interrupt-controller@7021000";
        r_pio = "/soc/pinctrl@7022000";
        r_i2c_pins = "/soc/pinctrl@7022000/r-i2c-pins";
        r_ir_rx_pin = "/soc/pinctrl@7022000/r-ir-rx-pin";
        r_rsb_pins = "/soc/pinctrl@7022000/r-rsb-pins";
        r_uart_pins = "/soc/pinctrl@7022000/r-uart-pins";
        r_ir = "/soc/ir@7040000";
        r_i2c = "/soc/i2c@7081400";
        axp805 = "/soc/i2c@7081400/pmic@36";
        reg_aldo1 = "/soc/i2c@7081400/pmic@36/regulators/aldo1";
        reg_aldo2 = "/soc/i2c@7081400/pmic@36/regulators/aldo2";
        reg_aldo3 = "/soc/i2c@7081400/pmic@36/regulators/aldo3";
        reg_bldo1 = "/soc/i2c@7081400/pmic@36/regulators/bldo1";
        reg_bldo2 = "/soc/i2c@7081400/pmic@36/regulators/bldo2";
        reg_blod3 = "/soc/i2c@7081400/pmic@36/regulators/bldo3";
        reg_cldo1 = "/soc/i2c@7081400/pmic@36/regulators/cldo1";
        reg_dcdca = "/soc/i2c@7081400/pmic@36/regulators/dcdca";
        reg_dcdcc = "/soc/i2c@7081400/pmic@36/regulators/dcdcc";
        reg_dcdcd = "/soc/i2c@7081400/pmic@36/regulators/dcdcd";
        reg_dcdce = "/soc/i2c@7081400/pmic@36/regulators/dcdce";
        r_rsb = "/soc/rsb@7083000";
        ths = "/soc/thermal-sensor@5070400";
        addr_mgt = "/soc/addr-mgt";
        dump_reg = "/soc/dump_reg@20000";
        cpu_warm = "/thermal-zones/cpu-thermal/trips/cpu_warm";
        cpu_hot_pre = "/thermal-zones/cpu-thermal/trips/cpu_hot_pre";
        cpu_hot = "/thermal-zones/cpu-thermal/trips/cpu_hot";
        cpu_very_hot_pre = "/thermal-zones/cpu-thermal/trips/cpu_very_hot_pre";
        cpu_very_hot = "/thermal-zones/cpu-thermal/trips/cpu_very_hot";
        cpu_crit = "/thermal-zones/cpu-thermal/trips/cpu_crit";
        cpu_opp_table = "/opp-table-cpu";
        hdmi_con_in = "/connector/port/endpoint";
        reg_vcc5v = "/vcc5v";
        reg_gmac_3v3 = "/gmac-3v3";
        reg_vcc33_wifi = "/vcc33-wifi";
        reg_vcc_wifi_io = "/vcc-wifi-io";
        wifi_pwrseq = "/wifi-pwrseq";
    };
};

Link to comment
Share on other sites

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