diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
index ba2bd2cc..5d025584 100755
--- a/arch/arm64/boot/dts/Makefile
+++ b/arch/arm64/boot/dts/Makefile
@@ -2,7 +2,11 @@ dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb foundation-v8.dtb \
 				fvp-base-gicv2-psci.dtb
 dtb-$(CONFIG_ARCH_VEXPRESS) += juno.dtb
 dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
-dtb-$(CONFIG_ARCH_SUN50I) += sun50iw1p1-fpga.dtb sun50iw1p1-soc.dtb
+dtb-$(CONFIG_ARCH_SUN50I) += sun50iw1p1-fpga.dtb \
+				sun50iw1p1-soc.dtb \
+				sun50iw1p1-pine64.dtb \
+				sun50iw1p1-pine64-plus.dtb \
+				sun50iw1p1-pine64so.dtb
 
 targets += dtbs
 
diff --git a/arch/arm64/boot/dts/sun50iw1p1-pine64-plus.dts b/arch/arm64/boot/dts/sun50iw1p1-pine64-plus.dts
new file mode 100644
index 00000000..53df94a4
--- /dev/null
+++ b/arch/arm64/boot/dts/sun50iw1p1-pine64-plus.dts
@@ -0,0 +1,3077 @@
+/dts-v1/;
+// magic:		0xd00dfeed
+// totalsize:		0x10f87 (69511)
+// off_dt_struct:	0x98
+// off_dt_strings:	0xea30
+// off_mem_rsvmap:	0x28
+// version:		17
+// last_comp_version:	16
+// boot_cpuid_phys:	0x0
+// size_dt_strings:	0x2557
+// size_dt_struct:	0xe998
+
+/memreserve/ 0x45000000 0x200000;
+/memreserve/ 0x41010000 0x10000;
+/memreserve/ 0x41020000 0x800;
+/memreserve/ 0x40100000 0x4000;
+/memreserve/ 0x40104000 0x1000;
+/memreserve/ 0x40105000 0x1000;
+/ {
+    model = "sun50iw1p1";
+    compatible = "arm,sun50iw1p1", "arm,sun50iw1p1";
+    interrupt-parent = <0x00000001>;
+    #address-cells = <0x00000002>;
+    #size-cells = <0x00000002>;
+    clocks {
+        compatible = "allwinner,sunxi-clk-init";
+        device_type = "clocks";
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000002>;
+        ranges;
+        reg = <0x00000000 0x01c20000 0x00000000 0x00000320 0x00000000 0x01f01400 0x00000000 0x000000b0 0x00000000 0x01f00060 0x00000000 0x00000004>;
+        losc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x00008000>;
+            clock-output-names = "losc";
+            linux,phandle = <0x0000000c>;
+            phandle = <0x0000000c>;
+        };
+        iosc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x00f42400>;
+            clock-output-names = "iosc";
+            linux,phandle = <0x0000000d>;
+            phandle = <0x0000000d>;
+        };
+        hosc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x016e3600>;
+            clock-output-names = "hosc";
+            linux,phandle = <0x00000006>;
+            phandle = <0x00000006>;
+        };
+        pll_cpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_cpu";
+        };
+        pll_audio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x01770000>;
+            clock-output-names = "pll_audio";
+            linux,phandle = <0x00000002>;
+            phandle = <0x00000002>;
+        };
+        pll_video0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_video0";
+            linux,phandle = <0x00000003>;
+            phandle = <0x00000003>;
+        };
+        pll_ve {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ve";
+            linux,phandle = <0x00000016>;
+            phandle = <0x00000016>;
+        };
+        pll_ddr0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ddr0";
+            linux,phandle = <0x00000093>;
+            phandle = <0x00000093>;
+        };
+        pll_periph0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_periph0";
+            linux,phandle = <0x00000004>;
+            phandle = <0x00000004>;
+        };
+        pll_periph1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_periph1";
+            linux,phandle = <0x00000005>;
+            phandle = <0x00000005>;
+        };
+        pll_video1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_video1";
+        };
+        pll_gpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_gpu";
+            linux,phandle = <0x00000096>;
+            phandle = <0x00000096>;
+        };
+        pll_mipi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_mipi";
+            linux,phandle = <0x00000008>;
+            phandle = <0x00000008>;
+        };
+        pll_hsic {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_hsic";
+            linux,phandle = <0x0000003a>;
+            phandle = <0x0000003a>;
+        };
+        pll_de {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_de";
+            linux,phandle = <0x00000007>;
+            phandle = <0x00000007>;
+        };
+        pll_ddr1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ddr1";
+            linux,phandle = <0x00000094>;
+            phandle = <0x00000094>;
+        };
+        pll_audiox8 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_audiox8";
+        };
+        pll_audiox4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000002>;
+            clock-output-names = "pll_audiox4";
+            linux,phandle = <0x0000003c>;
+            phandle = <0x0000003c>;
+        };
+        pll_audiox2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000004>;
+            clock-output-names = "pll_audiox2";
+        };
+        pll_video0x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000003>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_video0x2";
+        };
+        pll_periph0x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000004>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_periph0x2";
+            linux,phandle = <0x0000007b>;
+            phandle = <0x0000007b>;
+        };
+        pll_periph1x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000005>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_periph1x2";
+            linux,phandle = <0x0000005a>;
+            phandle = <0x0000005a>;
+        };
+        pll_periph0d2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000004>;
+            clock-mult = <0x00000001>;
+            clock-div = <0x00000002>;
+            clock-output-names = "pll_periph0d2";
+        };
+        hoscd2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000006>;
+            clock-mult = <0x00000001>;
+            clock-div = <0x00000002>;
+            clock-output-names = "hoscd2";
+        };
+        cpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "cpu";
+        };
+        cpuapb {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "cpuapb";
+        };
+        axi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "axi";
+        };
+        pll_periphahb0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "pll_periphahb0";
+        };
+        ahb1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ahb1";
+            linux,phandle = <0x00000095>;
+            phandle = <0x00000095>;
+        };
+        apb1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "apb1";
+        };
+        apb2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "apb2";
+            linux,phandle = <0x0000007e>;
+            phandle = <0x0000007e>;
+        };
+        ahb2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ahb2";
+        };
+        ths {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ths";
+            linux,phandle = <0x00000084>;
+            phandle = <0x00000084>;
+        };
+        nand {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "nand";
+            linux,phandle = <0x00000080>;
+            phandle = <0x00000080>;
+        };
+        sdmmc0_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_mod";
+            linux,phandle = <0x00000060>;
+            phandle = <0x00000060>;
+        };
+        sdmmc0_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_bus";
+            linux,phandle = <0x00000061>;
+            phandle = <0x00000061>;
+        };
+        sdmmc0_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_rst";
+            linux,phandle = <0x00000062>;
+            phandle = <0x00000062>;
+        };
+        sdmmc1_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_mod";
+            linux,phandle = <0x00000065>;
+            phandle = <0x00000065>;
+        };
+        sdmmc1_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_bus";
+            linux,phandle = <0x00000066>;
+            phandle = <0x00000066>;
+        };
+        sdmmc1_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_rst";
+            linux,phandle = <0x00000067>;
+            phandle = <0x00000067>;
+        };
+        sdmmc2_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_mod";
+            linux,phandle = <0x0000005b>;
+            phandle = <0x0000005b>;
+        };
+        sdmmc2_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_bus";
+            linux,phandle = <0x0000005c>;
+            phandle = <0x0000005c>;
+        };
+        sdmmc2_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_rst";
+            linux,phandle = <0x0000005d>;
+            phandle = <0x0000005d>;
+        };
+        ts {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ts";
+        };
+        ce {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ce";
+            linux,phandle = <0x0000007a>;
+            phandle = <0x0000007a>;
+        };
+        spi0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spi0";
+            linux,phandle = <0x00000052>;
+            phandle = <0x00000052>;
+        };
+        spi1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spi1";
+            linux,phandle = <0x00000056>;
+            phandle = <0x00000056>;
+        };
+        i2s0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s0";
+            linux,phandle = <0x00000042>;
+            phandle = <0x00000042>;
+        };
+        i2s1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s1";
+            linux,phandle = <0x00000047>;
+            phandle = <0x00000047>;
+        };
+        i2s2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s2";
+            linux,phandle = <0x00000048>;
+            phandle = <0x00000048>;
+        };
+        spdif {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spdif";
+            linux,phandle = <0x00000049>;
+            phandle = <0x00000049>;
+        };
+        usbphy0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbphy0";
+            linux,phandle = <0x00000032>;
+            phandle = <0x00000032>;
+        };
+        usbphy1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbphy1";
+            linux,phandle = <0x00000036>;
+            phandle = <0x00000036>;
+        };
+        usbhsic {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbhsic";
+            linux,phandle = <0x00000038>;
+            phandle = <0x00000038>;
+        };
+        usbhsic12m {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbhsic12m";
+            linux,phandle = <0x00000039>;
+            phandle = <0x00000039>;
+        };
+        usbohci1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci1";
+            linux,phandle = <0x0000003b>;
+            phandle = <0x0000003b>;
+        };
+        usbohci0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci0";
+            linux,phandle = <0x00000035>;
+            phandle = <0x00000035>;
+        };
+        de {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000007>;
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "de";
+            linux,phandle = <0x0000006a>;
+            phandle = <0x0000006a>;
+        };
+        tcon0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000008>;
+            clock-output-names = "tcon0";
+            linux,phandle = <0x0000006b>;
+            phandle = <0x0000006b>;
+        };
+        tcon1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000003>;
+            clock-output-names = "tcon1";
+            linux,phandle = <0x0000006e>;
+            phandle = <0x0000006e>;
+        };
+        deinterlace {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "deinterlace";
+            linux,phandle = <0x0000007c>;
+            phandle = <0x0000007c>;
+        };
+        csi_s {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_s";
+            linux,phandle = <0x00000073>;
+            phandle = <0x00000073>;
+        };
+        csi_m {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_m";
+            linux,phandle = <0x00000074>;
+            phandle = <0x00000074>;
+        };
+        csi_misc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_misc";
+            linux,phandle = <0x00000075>;
+            phandle = <0x00000075>;
+        };
+        ve {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ve";
+            linux,phandle = <0x00000017>;
+            phandle = <0x00000017>;
+        };
+        adda {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "adda";
+            linux,phandle = <0x00000041>;
+            phandle = <0x00000041>;
+        };
+        addax4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "addax4";
+        };
+        avs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "avs";
+        };
+        hdmi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000003>;
+            clock-output-names = "hdmi";
+            linux,phandle = <0x0000006f>;
+            phandle = <0x0000006f>;
+        };
+        hdmi_slow {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hdmi_slow";
+            linux,phandle = <0x00000070>;
+            phandle = <0x00000070>;
+        };
+        mbus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "mbus";
+        };
+        mipidsi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "mipidsi";
+            linux,phandle = <0x0000006d>;
+            phandle = <0x0000006d>;
+        };
+        gpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "gpu";
+            linux,phandle = <0x00000097>;
+            phandle = <0x00000097>;
+        };
+        usbehci_16 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci_16";
+        };
+        usbehci1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbehci1";
+            linux,phandle = <0x00000037>;
+            phandle = <0x00000037>;
+        };
+        usbehci0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbehci0";
+            linux,phandle = <0x00000034>;
+            phandle = <0x00000034>;
+        };
+        usbotg {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbotg";
+            linux,phandle = <0x00000033>;
+            phandle = <0x00000033>;
+        };
+        gmac {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "gmac";
+            linux,phandle = <0x0000008f>;
+            phandle = <0x0000008f>;
+        };
+        sdram {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdram";
+        };
+        dma {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "dma";
+            linux,phandle = <0x0000000b>;
+            phandle = <0x0000000b>;
+        };
+        hwspinlock_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hwspinlock_rst";
+            linux,phandle = <0x0000000f>;
+            phandle = <0x0000000f>;
+        };
+        hwspinlock_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hwspinlock_bus";
+            linux,phandle = <0x00000010>;
+            phandle = <0x00000010>;
+        };
+        msgbox {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "msgbox";
+            linux,phandle = <0x0000000e>;
+            phandle = <0x0000000e>;
+        };
+        lvds {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "lvds";
+            linux,phandle = <0x0000006c>;
+            phandle = <0x0000006c>;
+        };
+        uart0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart0";
+            linux,phandle = <0x00000018>;
+            phandle = <0x00000018>;
+        };
+        uart1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart1";
+            linux,phandle = <0x0000001b>;
+            phandle = <0x0000001b>;
+        };
+        uart2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart2";
+            linux,phandle = <0x0000001e>;
+            phandle = <0x0000001e>;
+        };
+        uart3 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart3";
+            linux,phandle = <0x00000021>;
+            phandle = <0x00000021>;
+        };
+        uart4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart4";
+            linux,phandle = <0x00000024>;
+            phandle = <0x00000024>;
+        };
+        scr {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "scr";
+            linux,phandle = <0x0000007d>;
+            phandle = <0x0000007d>;
+        };
+        twi0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi0";
+            linux,phandle = <0x00000027>;
+            phandle = <0x00000027>;
+        };
+        twi1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi1";
+            linux,phandle = <0x0000002a>;
+            phandle = <0x0000002a>;
+        };
+        twi2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi2";
+            linux,phandle = <0x0000002d>;
+            phandle = <0x0000002d>;
+        };
+        twi3 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi3";
+        };
+        pio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "pio";
+            linux,phandle = <0x0000000a>;
+            phandle = <0x0000000a>;
+        };
+        cpurcir {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurcir";
+            linux,phandle = <0x00000012>;
+            phandle = <0x00000012>;
+        };
+        cpurpio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurpio";
+            linux,phandle = <0x00000009>;
+            phandle = <0x00000009>;
+        };
+        cpurpll_peri0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurpll_peri0";
+        };
+        cpurcpus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurcpus";
+        };
+        cpurahbs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurahbs";
+        };
+        cpurapbs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurapbs";
+        };
+        losc_out {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "losc_out";
+            linux,phandle = <0x00000098>;
+            phandle = <0x00000098>;
+        };
+    };
+    soc@01c00000 {
+        compatible = "simple-bus";
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000002>;
+        ranges;
+        device_type = "soc";
+        pinctrl@01f02c00 {
+            compatible = "allwinner,sun50i-r-pinctrl";
+            reg = <0x00000000 0x01f02c00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000002d 0x00000004>;
+            clocks = <0x00000009>;
+            device_type = "r_pio";
+            gpio-controller;
+            interrupt-controller;
+            #interrupt-cells = <0x00000002>;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            linux,phandle = <0x00000079>;
+            phandle = <0x00000079>;
+            s_cir0@0 {
+                allwinner,pins = "PL11";
+                allwinner,function = "s_cir0";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000011>;
+                phandle = <0x00000011>;
+            };
+            spwm0@0 {
+                linux,phandle = <0x000000af>;
+                phandle = <0x000000af>;
+                allwinner,pins = "PL10";
+                allwinner,function = "spwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spwm0@1 {
+                linux,phandle = <0x000000b0>;
+                phandle = <0x000000b0>;
+                allwinner,pins = "PL10";
+                allwinner,function = "spwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_uart0@0 {
+                linux,phandle = <0x000000b6>;
+                phandle = <0x000000b6>;
+                allwinner,pins = "PL2", "PL3";
+                allwinner,function = "s_uart0";
+                allwinner,pname = "s_uart0_tx", "s_uart0_rx";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_rsb0@0 {
+                linux,phandle = <0x000000b7>;
+                phandle = <0x000000b7>;
+                allwinner,pins = "PL0", "PL1";
+                allwinner,function = "s_rsb0";
+                allwinner,pname = "s_rsb0_sck", "s_rsb0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_jtag0@0 {
+                linux,phandle = <0x000000b8>;
+                phandle = <0x000000b8>;
+                allwinner,pins = "PL4", "PL5", "PL6", "PL7";
+                allwinner,function = "s_jtag0";
+                allwinner,pname = "s_jtag0_tms", "s_jtag0_tck", "s_jtag0_tdo", "s_jtag0_tdi";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+        };
+        pinctrl@01c20800 {
+            compatible = "allwinner,sun50i-pinctrl";
+            reg = <0x00000000 0x01c20800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000000b 0x00000004 0x00000000 0x00000011 0x00000004 0x00000000 0x00000015 0x00000004>;
+            device_type = "pio";
+            clocks = <0x0000000a>;
+            gpio-controller;
+            interrupt-controller;
+            #interrupt-cells = <0x00000002>;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            linux,phandle = <0x00000030>;
+            phandle = <0x00000030>;
+            uart0@1 {
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000001a>;
+                phandle = <0x0000001a>;
+            };
+            uart1@1 {
+                allwinner,pins = "PG6", "PG7", "PG8", "PG9";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000001d>;
+                phandle = <0x0000001d>;
+            };
+            uart2@1 {
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000020>;
+                phandle = <0x00000020>;
+            };
+            uart3@1 {
+                allwinner,pins = "PH4", "PH5", "PH6", "PH7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000023>;
+                phandle = <0x00000023>;
+            };
+            uart4@1 {
+                allwinner,pins = "PD2", "PD3", "PD4", "PD5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000026>;
+                phandle = <0x00000026>;
+            };
+            twi0@1 {
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000029>;
+                phandle = <0x00000029>;
+            };
+            twi1@1 {
+                allwinner,pins = "PH2", "PH3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000002c>;
+                phandle = <0x0000002c>;
+            };
+            twi2@1 {
+                allwinner,pins = "PE14", "PE15";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000002f>;
+                phandle = <0x0000002f>;
+            };
+            spi0@2 {
+                allwinner,pins = "PC3", "PC2", "PC0", "PC1";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000055>;
+                phandle = <0x00000055>;
+            };
+            spi1@2 {
+                allwinner,pins = "PD0", "PD1", "PD2", "PD3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000059>;
+                phandle = <0x00000059>;
+            };
+            sdc0@1 {
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000064>;
+                phandle = <0x00000064>;
+            };
+            sdc1@1 {
+                allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000069>;
+                phandle = <0x00000069>;
+            };
+            sdc2@1 {
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000005f>;
+                phandle = <0x0000005f>;
+            };
+            daudio0@0 {
+                allwinner,pins = "PB6", "PB3", "PB4", "PB5", "PB7";
+                allwinner,function = "pcm0";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000043>;
+                phandle = <0x00000043>;
+            };
+            daudio0_sleep@0 {
+                allwinner,pins = "PB6", "PB3", "PB4", "PB5", "PB7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000044>;
+                phandle = <0x00000044>;
+            };
+            daudio1@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "pcm1";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000045>;
+                phandle = <0x00000045>;
+            };
+            daudio1_sleep@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000046>;
+                phandle = <0x00000046>;
+            };
+            aif3@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "aif3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000003e>;
+                phandle = <0x0000003e>;
+            };
+            aif2_sleep@0 {
+                allwinner,pins = "PB6", "PB4", "PB5", "PB7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000003f>;
+                phandle = <0x0000003f>;
+            };
+            aif3_sleep@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000040>;
+                phandle = <0x00000040>;
+            };
+            spdif@0 {
+                allwinner,pins = "PH8";
+                allwinner,function = "spdif0";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000004a>;
+                phandle = <0x0000004a>;
+            };
+            spdif_sleep@0 {
+                allwinner,pins = "PH8";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000004b>;
+                phandle = <0x0000004b>;
+            };
+            csi0_sleep@0 {
+                allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13";
+                allwinner,pname = "csi0_pck", "csi0_hsync", "csi0_vsync", "csi0_d0", "csi0_d1", "csi0_d2", "csi0_d3", "csi0_d4", "csi0_d5", "csi0_d6", "csi0_d7", "csi0_sck", "csi0_sda";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                allwinner,data = <0x00000000>;
+                linux,phandle = <0x00000077>;
+                phandle = <0x00000077>;
+            };
+            smartcard@0 {
+                allwinner,pins = "PB1", "PB4", "PB5", "PB6", "PB7";
+                allwinner,function = "sim0";
+                allwinner,muxsel = <0x00000005>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000007f>;
+                phandle = <0x0000007f>;
+            };
+            nand0@2 {
+                allwinner,pins = "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PC18";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000083>;
+                phandle = <0x00000083>;
+            };
+            card0_boot_para@0 {
+                linux,phandle = <0x00000099>;
+                phandle = <0x00000099>;
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "card0_boot_para";
+                allwinner,pname = "sdc_d1", "sdc_d0", "sdc_clk", "sdc_cmd", "sdc_d3", "sdc_d2";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            card2_boot_para@0 {
+                linux,phandle = <0x0000009a>;
+                phandle = <0x0000009a>;
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "card2_boot_para";
+                allwinner,pname = "sdc_ds", "sdc_clk", "sdc_cmd", "sdc_d0", "sdc_d1", "sdc_d2", "sdc_d3", "sdc_d4", "sdc_d5", "sdc_d6", "sdc_d7", "sdc_emmc_rst";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi_para@0 {
+                linux,phandle = <0x0000009b>;
+                phandle = <0x0000009b>;
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "twi_para";
+                allwinner,pname = "twi_scl", "twi_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart_para@0 {
+                linux,phandle = <0x0000009c>;
+                phandle = <0x0000009c>;
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "uart_para";
+                allwinner,pname = "uart_debug_tx", "uart_debug_rx";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            jtag_para@0 {
+                linux,phandle = <0x0000009d>;
+                phandle = <0x0000009d>;
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "jtag_para";
+                allwinner,pname = "jtag_ms", "jtag_ck", "jtag_do", "jtag_di";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            gmac0@0 {
+                linux,phandle = <0x0000009e>;
+                phandle = <0x0000009e>;
+                allwinner,pins = "PD18", "PD17", "PD16", "PD15", "PD20", "PD19", "PD11", "PD10", "PD9", "PD8", "PD13", "PD12", "PD21", "PD22", "PD23";
+                allwinner,function = "gmac0";
+                allwinner,pname = "gmac_txd0", "gmac_txd1", "gmac_txd2", "gmac_txd3", "gmac_txen", "gmac_gtxclk", "gmac_rxd0", "gmac_rxd1", "gmac_rxd2", "gmac_rxd3", "gmac_rxdv", "gmac_rxclk", "gmac_clkin", "gmac_mdc", "gmac_mdio";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi0@0 {
+                linux,phandle = <0x0000009f>;
+                phandle = <0x0000009f>;
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "twi0";
+                allwinner,pname = "twi0_scl", "twi0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi1@0 {
+                linux,phandle = <0x000000a0>;
+                phandle = <0x000000a0>;
+                allwinner,pins = "PH2", "PH3";
+                allwinner,function = "twi1";
+                allwinner,pname = "twi1_scl", "twi1_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi2@0 {
+                linux,phandle = <0x000000a1>;
+                phandle = <0x000000a1>;
+                allwinner,pins = "PE14", "PE15";
+                allwinner,function = "twi2";
+                allwinner,pname = "twi2_scl", "twi2_sda";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart0@0 {
+                linux,phandle = <0x000000a2>;
+                phandle = <0x000000a2>;
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "uart0";
+                allwinner,pname = "uart0_tx", "uart0_rx";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart1@0 {
+                linux,phandle = <0x000000a3>;
+                phandle = <0x000000a3>;
+                allwinner,pins = "PG6", "PG7", "PG8", "PG9";
+                allwinner,function = "uart1";
+                allwinner,pname = "uart1_tx", "uart1_rx", "uart1_rts", "uart1_cts";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart2@0 {
+                linux,phandle = <0x000000a4>;
+                phandle = <0x000000a4>;
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "uart2";
+                allwinner,pname = "uart2_tx", "uart2_rx", "uart2_rts", "uart2_cts";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart3@0 {
+                linux,phandle = <0x000000a5>;
+                phandle = <0x000000a5>;
+                allwinner,pins = "PD0", "PD1";
+                allwinner,function = "uart3";
+                allwinner,pname = "uart3_tx", "uart3_rx";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart4@0 {
+                linux,phandle = <0x000000a6>;
+                phandle = <0x000000a6>;
+                allwinner,pins = "PD2", "PD3", "PD4", "PD5";
+                allwinner,function = "uart4";
+                allwinner,pname = "uart4_tx", "uart4_rx", "uart4_rts", "uart4_cts";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi0@0 {
+                linux,phandle = <0x000000a7>;
+                phandle = <0x000000a7>;
+                allwinner,pins = "PC3";
+                allwinner,function = "spi0";
+                allwinner,pname = "spi0_cs0";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi0@1 {
+                linux,phandle = <0x000000a8>;
+                phandle = <0x000000a8>;
+                allwinner,pins = "PC2", "PC0", "PC1";
+                allwinner,function = "spi0";
+                allwinner,pname = "spi0_sclk", "spi0_mosi", "spi0_miso";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi1@0 {
+                linux,phandle = <0x000000a9>;
+                phandle = <0x000000a9>;
+                allwinner,pins = "PD0";
+                allwinner,function = "spi1";
+                allwinner,pname = "spi1_cs0";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi1@1 {
+                linux,phandle = <0x000000aa>;
+                phandle = <0x000000aa>;
+                allwinner,pins = "PD1", "PD2", "PD3";
+                allwinner,function = "spi1";
+                allwinner,pname = "spi1_sclk", "spi1_mosi", "spi1_miso";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            nand0@0 {
+                linux,phandle = <0x000000ab>;
+                phandle = <0x000000ab>;
+                allwinner,pins = "PC0", "PC1", "PC2", "PC5", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "nand0";
+                allwinner,pname = "nand0_we", "nand0_ale", "nand0_cle", "nand0_nre", "nand0_d0", "nand0_d1", "nand0_d2", "nand0_d3", "nand0_d4", "nand0_d5", "nand0_d6", "nand0_d7", "nand0_ndqs";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0x00000001>;
+                allwinner,data = <0xffffffff>;
+            };
+            nand0@1 {
+                linux,phandle = <0x000000ac>;
+                phandle = <0x000000ac>;
+                allwinner,pins = "PC3", "PC4", "PC6", "PC7", "PC17", "PC18";
+                allwinner,function = "nand0";
+                allwinner,pname = "nand0_ce1", "nand0_ce0", "nand0_rb0", "nand0_rb1", "nand0_ce2", "nand0_ce3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000001>;
+                allwinner,data = <0xffffffff>;
+            };
+            pwm0@0 {
+                linux,phandle = <0x000000ad>;
+                phandle = <0x000000ad>;
+                allwinner,pins = "PD22";
+                allwinner,function = "pwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            pwm0@1 {
+                linux,phandle = <0x000000ae>;
+                phandle = <0x000000ae>;
+                allwinner,pins = "PD22";
+                allwinner,function = "pwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            csi0@0 {
+                linux,phandle = <0x000000b1>;
+                phandle = <0x000000b1>;
+                allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13";
+                allwinner,function = "csi0";
+                allwinner,pname = "csi0_pck", "csi0_hsync", "csi0_vsync", "csi0_d0", "csi0_d1", "csi0_d2", "csi0_d3", "csi0_d4", "csi0_d5", "csi0_d6", "csi0_d7", "csi0_sck", "csi0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc0@0 {
+                linux,phandle = <0x000000b2>;
+                phandle = <0x000000b2>;
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "sdc0";
+                allwinner,pname = "sdc0_d1", "sdc0_d0", "sdc0_clk", "sdc0_cmd", "sdc0_d3", "sdc0_d2";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc1@0 {
+                linux,phandle = <0x000000b3>;
+                phandle = <0x000000b3>;
+                allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
+                allwinner,function = "sdc1";
+                allwinner,pname = "sdc1_clk", "sdc1_cmd", "sdc1_d0", "sdc1_d1", "sdc1_d2", "sdc1_d3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc2@0 {
+                linux,phandle = <0x000000b4>;
+                phandle = <0x000000b4>;
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "sdc2";
+                allwinner,pname = "sdc2_ds", "sdc2_clk", "sdc2_cmd", "sdc2_d0", "sdc2_d1", "sdc2_d2", "sdc2_d3", "sdc2_d4", "sdc2_d5", "sdc2_d6", "sdc2_d7", "sdc2_emmc_rst";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            codec@0 {
+                linux,phandle = <0x000000b5>;
+                phandle = <0x000000b5>;
+                allwinner,pins = "PH7";
+                allwinner,function = "codec";
+                allwinner,pname = "gpio-spk";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            Vdevice@0 {
+                linux,phandle = <0x000000b9>;
+                phandle = <0x000000b9>;
+                allwinner,pins = "PB1", "PB2";
+                allwinner,function = "Vdevice";
+                allwinner,pname = "Vdevice_0", "Vdevice_1";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+        };
+        pinctrl@0 {
+            compatible = "allwinner,axp-pinctrl";
+            gpio-controller;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            device_type = "axp_pio";
+            linux,phandle = <0x00000031>;
+            phandle = <0x00000031>;
+        };
+        dma-controller@01c02000 {
+            compatible = "allwinner,sun50i-dma";
+            reg = <0x00000000 0x01c02000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000032 0x00000004>;
+            clocks = <0x0000000b>;
+            #dma-cells = <0x00000001>;
+        };
+        mbus-controller@01c62000 {
+            compatible = "allwinner,sun50i-mbus";
+            reg = <0x00000000 0x01c62000 0x00000000 0x00000110>;
+            #mbus-cells = <0x00000001>;
+        };
+        arisc {
+            compatible = "allwinner,sunxi-arisc";
+            #address-cells = <0x00000002>;
+            #size-cells = <0x00000002>;
+            clocks = <0x0000000c 0x0000000d 0x00000006 0x00000004>;
+            clock-names = "losc", "iosc", "hosc", "pll_periph0";
+            powchk_used = <0x00000000>;
+            power_reg = <0x02309621>;
+            system_power = <0x00000032>;
+        };
+        arisc_space {
+            compatible = "allwinner,arisc_space";
+            space1 = <0x00040000 0x00000000 0x00014000>;
+            space2 = <0x40100000 0x00018000 0x00004000>;
+            space3 = <0x40104000 0x00000000 0x00001000>;
+            space4 = <0x40105000 0x00000000 0x00001000>;
+        };
+        standby_space {
+            compatible = "allwinner,standby_space";
+            space1 = <0x41020000 0x00000000 0x00000800>;
+        };
+        msgbox@1c17000 {
+            compatible = "allwinner,msgbox";
+            clocks = <0x0000000e>;
+            clock-names = "clk_msgbox";
+            reg = <0x00000000 0x01c17000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000031 0x00000001>;
+            status = "okay";
+        };
+        hwspinlock@1c18000 {
+            compatible = "allwinner,sunxi-hwspinlock";
+            clocks = <0x0000000f 0x00000010>;
+            clock-names = "clk_hwspinlock_rst", "clk_hwspinlock_bus";
+            reg = <0x00000000 0x01c18000 0x00000000 0x00001000>;
+            status = "okay";
+            num-locks = <0x00000008>;
+        };
+        s_cir@1f02000 {
+            compatible = "allwinner,s_cir";
+            reg = <0x00000000 0x01f02000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000025 0x00000004>;
+            pinctrl-names = "default";
+            pinctrl-0 = <0x00000011>;
+            clocks = <0x00000006 0x00000012>;
+            supply = "vcc-pl";
+            ir_power_key_code = <0x0000004d>;
+            ir_addr_code = <0x00004040>;
+            status = "okay";
+            device_type = "s_cir0";
+        };
+        s_uart@1f02800 {
+            compatible = "allwinner,s_uart";
+            reg = <0x00000000 0x01f02800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000026 0x00000004>;
+            pinctrl-names = "default";
+            status = "okay";
+            device_type = "s_uart0";
+            pinctrl-0 = <0x000000b6>;
+        };
+        s_rsb@1f03400 {
+            compatible = "allwinner,s_rsb";
+            reg = <0x00000000 0x01f03400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000027 0x00000004>;
+            pinctrl-names = "default";
+            status = "okay";
+            device_type = "s_rsb0";
+            pinctrl-0 = <0x000000b7>;
+        };
+        s_jtag0 {
+            compatible = "allwinner,s_jtag";
+            pinctrl-names = "default";
+            status = "disabled";
+            device_type = "s_jtag0";
+            pinctrl-0 = <0x000000b8>;
+        };
+        timer@1c20c00 {
+            compatible = "allwinner,sunxi-timer";
+            device_type = "timer";
+            reg = <0x00000000 0x01c20c00 0x00000000 0x00000090>;
+            interrupts = <0x00000000 0x00000012 0x00000001>;
+            clock-frequency = <0x016e3600>;
+            timer-prescale = <0x00000010>;
+        };
+        rtc@01f00000 {
+            compatible = "allwinner,sun50i-rtc";
+            device_type = "rtc";
+            reg = <0x00000000 0x01f00000 0x00000000 0x00000218>;
+            interrupts = <0x00000000 0x00000028 0x00000004>;
+            gpr_offset = <0x00000100>;
+            gpr_len = <0x00000004>;
+        };
+        ve@01c0e000 {
+            compatible = "allwinner,sunxi-cedar-ve";
+            reg = <0x00000000 0x01c0e000 0x00000000 0x00001000 0x00000000 0x01c00000 0x00000000 0x00000010 0x00000000 0x01c20000 0x00000000 0x00000800>;
+            interrupts = <0x00000000 0x0000003a 0x00000004>;
+            clocks = <0x00000016 0x00000017>;
+        };
+        uart@01c28000 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart0";
+            reg = <0x00000000 0x01c28000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000000 0x00000004>;
+            clocks = <0x00000018>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000001a>;
+            uart0_port = <0x00000000>;
+            uart0_type = <0x00000002>;
+            status = "okay";
+            pinctrl-0 = <0x000000a2>;
+        };
+        uart@01c28400 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart1";
+            reg = <0x00000000 0x01c28400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000001 0x00000004>;
+            clocks = <0x0000001b>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000001d>;
+            uart1_port = <0x00000001>;
+            uart1_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a3>;
+        };
+        uart@01c28800 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart2";
+            reg = <0x00000000 0x01c28800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000002 0x00000004>;
+            clocks = <0x0000001e>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000020>;
+            uart2_port = <0x00000002>;
+            uart2_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a4>;
+        };
+        uart@01c28c00 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart3";
+            reg = <0x00000000 0x01c28c00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000003 0x00000004>;
+            clocks = <0x00000021>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000023>;
+            uart3_port = <0x00000003>;
+            uart3_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a5>;
+        };
+        uart@01c29000 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart4";
+            reg = <0x00000000 0x01c29000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000004 0x00000004>;
+            clocks = <0x00000024>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000026>;
+            uart4_port = <0x00000004>;
+            uart4_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a6>;
+        };
+        twi@0x01c2ac00 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi0";
+            reg = <0x00000000 0x01c2ac00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000006 0x00000004>;
+            clocks = <0x00000027>;
+            clock-frequency = <0x00061a80>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000029>;
+            status = "okay";
+            pinctrl-0 = <0x0000009f>;
+        };
+        twi@0x01c2b000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi1";
+            reg = <0x00000000 0x01c2b000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000007 0x00000004>;
+            clocks = <0x0000002a>;
+            clock-frequency = <0x00030d40>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000002c>;
+            status = "okay";
+            pinctrl-0 = <0x000000a0>;
+        };
+        twi@0x01c2b400 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi2";
+            reg = <0x00000000 0x01c2b400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000008 0x00000004>;
+            clocks = <0x0000002d>;
+            clock-frequency = <0x00030d40>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000002f>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a1>;
+        };
+        usbc0@0 {
+            device_type = "usbc0";
+            compatible = "allwinner,sunxi-otg-manager";
+            usb_port_type = <0x00000001>;
+            usb_detect_type = <0x00000000>;
+            usb_host_init_state = <0x00000001>;
+            usb_regulator_io = "nocare";
+            usb_wakeup_suspend = <0x00000001>;
+            usb_luns = <0x00000003>;
+            usb_serial_unique = <0x00000001>;
+            usb_serial_number = "20080411";
+            rndis_wceis = <0x00000001>;
+            status = "okay";
+            usb_id_gpio;
+            usb_det_vbus_gpio;
+            usb_drv_vbus_gpio;
+        };
+        udc-controller@0x01c19000 {
+            compatible = "allwinner,sunxi-udc";
+            reg = <0x00000000 0x01c19000 0x00000000 0x00001000 0x00000000 0x01c00000 0x00000000 0x00000100>;
+            interrupts = <0x00000000 0x00000047 0x00000004>;
+            clocks = <0x00000032 0x00000033>;
+            status = "okay";
+        };
+        ehci0-controller@0x01c1a000 {
+            compatible = "allwinner,sunxi-ehci0";
+            reg = <0x00000000 0x01c1a000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000048 0x00000004>;
+            clocks = <0x00000032 0x00000034>;
+            hci_ctrl_no = <0x00000000>;
+            status = "okay";
+        };
+        ohci0-controller@0x01c1a400 {
+            compatible = "allwinner,sunxi-ohci0";
+            reg = <0x00000000 0x01c1a000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000049 0x00000004>;
+            clocks = <0x00000032 0x00000035>;
+            hci_ctrl_no = <0x00000000>;
+            status = "okay";
+        };
+        usbc1@0 {
+            device_type = "usbc1";
+            usb_host_init_state = <0x00000001>;
+            usb_regulator_io = "nocare";
+            usb_wakeup_suspend = <0x00000001>;
+            usb_hsic_used = <0x00000000>;
+            usb_hsic_regulator_io = "vcc-hsic-12";
+            usb_hsic_ctrl = <0x00000000>;
+            usb_hsic_usb3503_flag = <0x00000000>;
+            status = "okay";
+            usb_port_type = <0x00000001>;
+            usb_detect_type = <0x00000000>;
+            usb_drv_vbus_gpio;
+            usb_hsic_rdy_gpio;
+            usb_hsic_hub_connect_gpio;
+            usb_hsic_int_n_gpio;
+            usb_hsic_reset_n_gpio;
+        };
+        ehci1-controller@0x01c1b000 {
+            compatible = "allwinner,sunxi-ehci1";
+            reg = <0x00000000 0x01c1b000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000004a 0x00000004>;
+            clocks = <0x00000036 0x00000037 0x00000038 0x00000039 0x0000003a>;
+            hci_ctrl_no = <0x00000001>;
+            status = "okay";
+        };
+        ohci1-controller@0x01c1b400 {
+            compatible = "allwinner,sunxi-ohci1";
+            reg = <0x00000000 0x01c1b000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000004b 0x00000004>;
+            clocks = <0x00000036 0x0000003b>;
+            hci_ctrl_no = <0x00000001>;
+            status = "okay";
+        };
+        codec@0x01c22c00 {
+            compatible = "allwinner,sunxi-internal-codec";
+            reg = <0x00000000 0x01c22c00 0x00000000 0x00000478 0x00000000 0x01f015c0 0x00000000 0x00000000>;
+            clocks = <0x0000003c>;
+            pinctrl-names = "aif2-default", "aif3-default", "aif2-sleep", "aif3-sleep";
+            pinctrl-1 = <0x0000003e>;
+            pinctrl-2 = <0x0000003f>;
+            pinctrl-3 = <0x00000040>;
+            gpio-spk = <0x00000030 0x00000007 0x00000007 0x00000001 0x00000001 0x00000001 0x00000001>;
+            headphonevol = <0x0000003b>;
+            spkervol = <0x0000001a>;
+            earpiecevol = <0x0000001e>;
+            maingain = <0x00000004>;
+            headsetmicgain = <0x00000004>;
+            adcagc_cfg = <0x00000000>;
+            adcdrc_cfg = <0x00000000>;
+            adchpf_cfg = <0x00000000>;
+            dacdrc_cfg = <0x00000000>;
+            dachpf_cfg = <0x00000000>;
+            aif1_lrlk_div = <0x00000040>;
+            aif2_lrlk_div = <0x00000040>;
+            aif2config = <0x00000000>;
+            aif3config = <0x00000000>;
+            pa_sleep_time = <0x0000015e>;
+            dac_digital_vol = <0x0000a0a0>;
+            status = "okay";
+            linux,phandle = <0x0000004d>;
+            phandle = <0x0000004d>;
+            device_type = "codec";
+            pinctrl-0 = <0x000000b5>;
+        };
+        i2s0-controller@0x01c22c00 {
+            compatible = "allwinner,sunxi-internal-i2s";
+            reg = <0x00000000 0x01c22c00 0x00000000 0x00000478>;
+            clocks = <0x00000002 0x00000041>;
+            status = "okay";
+            linux,phandle = <0x0000004c>;
+            phandle = <0x0000004c>;
+            device_type = "i2s";
+        };
+        daudio@0x01c22000 {
+            compatible = "allwinner,sunxi-daudio";
+            reg = <0x00000000 0x01c22000 0x00000000 0x00000058>;
+            clocks = <0x00000002 0x00000042>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x00000043>;
+            pinctrl-1 = <0x00000044>;
+            pcm_lrck_period = <0x00000020>;
+            pcm_lrckr_period = <0x00000001>;
+            slot_width_select = <0x00000020>;
+            pcm_lsb_first = <0x00000000>;
+            tx_data_mode = <0x00000000>;
+            rx_data_mode = <0x00000000>;
+            daudio_master = <0x00000004>;
+            audio_format = <0x00000001>;
+            signal_inversion = <0x00000001>;
+            frametype = <0x00000000>;
+            tdm_config = <0x00000001>;
+            tdm_num = <0x00000000>;
+            status = "disabled";
+            linux,phandle = <0x0000004e>;
+            phandle = <0x0000004e>;
+            device_type = "daudio0";
+        };
+        daudio@0x01c22400 {
+            compatible = "allwinner,sunxi-daudio";
+            reg = <0x00000000 0x01c22400 0x00000000 0x00000058>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x00000045>;
+            pinctrl-1 = <0x00000046>;
+            clocks = <0x00000002 0x00000047>;
+            pcm_lrck_period = <0x00000020>;
+            pcm_lrckr_period = <0x00000001>;
+            slot_width_select = <0x00000020>;
+            pcm_lsb_first = <0x00000000>;
+            tx_data_mode = <0x00000000>;
+            rx_data_mode = <0x00000000>;
+            daudio_master = <0x00000004>;
+            audio_format = <0x00000001>;
+            signal_inversion = <0x00000001>;
+            frametype = <0x00000000>;
+            tdm_config = <0x00000001>;
+            tdm_num = <0x00000001>;
+            status = "disabled";
+            linux,phandle = <0x0000004f>;
+            phandle = <0x0000004f>;
+            device_type = "daudio1";
+        };
+        daudio@0x01c22800 {
+            compatible = "allwinner,sunxi-tdmhdmi";
+            reg = <0x00000000 0x01c22800 0x00000000 0x00000058>;
+            clocks = <0x00000002 0x00000048>;
+            status = "okay";
+            linux,phandle = <0x00000050>;
+            phandle = <0x00000050>;
+            device_type = "daudio2";
+        };
+        spdif-controller@0x01c21000 {
+            compatible = "allwinner,sunxi-spdif";
+            reg = <0x00000000 0x01c21000 0x00000000 0x00000038>;
+            clocks = <0x00000002 0x00000049>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x0000004a>;
+            pinctrl-1 = <0x0000004b>;
+            status = "disabled";
+            linux,phandle = <0x00000051>;
+            phandle = <0x00000051>;
+            device_type = "spdif";
+        };
+        sound@0 {
+            compatible = "allwinner,sunxi-codec-machine";
+            interrupts = <0x00000000 0x0000001c 0x00000004>;
+            sunxi,i2s-controller = <0x0000004c>;
+            sunxi,audio-codec = <0x0000004d>;
+            aif2fmt = <0x00000003>;
+            aif3fmt = <0x00000003>;
+            aif2master = <0x00000001>;
+            hp_detect_case = <0x00000001>;
+            status = "okay";
+            device_type = "sndcodec";
+        };
+        sound@1 {
+            compatible = "allwinner,sunxi-daudio0-machine";
+            sunxi,daudio0-controller = <0x0000004e>;
+            status = "disabled";
+            device_type = "snddaudio0";
+        };
+        sound@2 {
+            compatible = "allwinner,sunxi-daudio1-machine";
+            sunxi,daudio1-controller = <0x0000004f>;
+            status = "disabled";
+            device_type = "snddaudio1";
+        };
+        sound@3 {
+            compatible = "allwinner,sunxi-hdmi-machine";
+            sunxi,hdmi-controller = <0x00000050>;
+            status = "okay";
+            device_type = "sndhdmi";
+        };
+        sound@4 {
+            compatible = "allwinner,sunxi-spdif-machine";
+            sunxi,spdif-controller = <0x00000051>;
+            status = "disabled";
+            device_type = "sndspdif";
+        };
+        spi@01c68000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-spi";
+            device_type = "spi0";
+            reg = <0x00000000 0x01c68000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000041 0x00000004>;
+            clocks = <0x00000004 0x00000052>;
+            clock-frequency = <0x05f5e100>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000055>;
+            spi0_cs_number = <0x00000001>;
+            spi0_cs_bitmap = <0x00000001>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a7 0x000000a8>;
+        };
+        spi@01c69000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-spi";
+            device_type = "spi1";
+            reg = <0x00000000 0x01c69000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000042 0x00000004>;
+            clocks = <0x00000004 0x00000056>;
+            clock-frequency = <0x05f5e100>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000059>;
+            spi1_cs_number = <0x00000001>;
+            spi1_cs_bitmap = <0x00000001>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a9 0x000000aa>;
+        };
+        sdmmc@01C11000 {
+            compatible = "allwinner,sun50i-sdmmc2";
+            device_type = "sdc2";
+            reg = <0x00000000 0x01c11000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003e 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x0000005b 0x0000005c 0x0000005d>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000005f>;
+            bus-width = <0x00000008>;
+            max-frequency = <0x05f5e100>;
+            sdc_tm4_sm0_freq0 = <0x00000000>;
+            sdc_tm4_sm0_freq1 = <0x00000000>;
+            sdc_tm4_sm1_freq0 = <0x00000000>;
+            sdc_tm4_sm1_freq1 = <0x00000000>;
+            sdc_tm4_sm2_freq0 = <0x00000000>;
+            sdc_tm4_sm2_freq1 = <0x00000000>;
+            sdc_tm4_sm3_freq0 = <0x05000000>;
+            sdc_tm4_sm3_freq1 = <0x00000405>;
+            sdc_tm4_sm4_freq0 = <0x00050000>;
+            sdc_tm4_sm4_freq1 = <0x00000408>;
+            status = "disabled";
+            non-removable;
+            pinctrl-0 = <0x000000b4>;
+            cd-gpios;
+            sunxi-power-save-mode;
+            sunxi-dis-signal-vol-sw;
+            mmc-ddr-1_8v;
+            mmc-hs200-1_8v;
+            mmc-hs400-1_8v;
+            vmmc = "vcc-emmc";
+            vqmmc = "vcc-lpddr";
+            vdmmc = "none";
+        };
+        sdmmc@01c0f000 {
+            compatible = "allwinner,sun50i-sdmmc0";
+            device_type = "sdc0";
+            reg = <0x00000000 0x01c0f000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003c 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x00000060 0x00000061 0x00000062>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000064>;
+            max-frequency = <0x02faf080>;
+            bus-width = <0x00000004>;
+            broken-cd;
+            status = "okay";
+            pinctrl-0 = <0x000000b2>;
+            cd-gpios = <0x00000030 0x00000005 0x00000006 0x00000000 0x00000001 0x00000002 0xffffffff>;
+            sunxi-power-save-mode;
+            vmmc = "none";
+            vqmmc = "none";
+            vdmmc = "vcc-sdc";
+        };
+        sdmmc@1C10000 {
+            compatible = "allwinner,sun50i-sdmmc1";
+            device_type = "sdc1";
+            reg = <0x00000000 0x01c10000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003d 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x00000065 0x00000066 0x00000067>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000069>;
+            max-frequency = <0x08f0d180>;
+            bus-width = <0x00000004>;
+            sunxi-dly-52M-ddr4 = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000002>;
+            sunxi-dly-104M = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000001>;
+            sunxi-dly-208M = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000001>;
+            status = "okay";
+            pinctrl-0 = <0x000000b3>;
+            sd-uhs-sdr50;
+            sd-uhs-ddr50;
+            sd-uhs-sdr104;
+            cap-sdio-irq;
+            keep-power-in-suspend;
+            ignore-pm-notify;
+        };
+        disp@01000000 {
+            compatible = "allwinner,sun50i-disp";
+            reg = <0x00000000 0x01000000 0x00000000 0x00300000 0x00000000 0x01c0c000 0x00000000 0x000017fc 0x00000000 0x01ca0000 0x00000000 0x000010fc>;
+            interrupts = <0x00000000 0x00000056 0x00000104 0x00000000 0x00000057 0x00000104 0x00000000 0x00000059 0x00000104>;
+            clocks = <0x0000006a 0x0000006b 0x0000006c 0x0000006d 0x0000006e>;
+            status = "okay";
+            device_type = "disp";
+            disp_init_enable = <0x00000001>;
+            disp_mode = <0x00000000>;
+            screen0_output_type = <0x00000003>;
+            screen0_output_mode = <0x0000000a>;
+            screen1_output_type = <0x00000003>;
+            screen1_output_mode = <0x0000000a>;
+            fb0_format = <0x00000000>;
+            fb0_width = <0x00000000>;
+            fb0_height = <0x00000000>;
+            fb1_format = <0x00000000>;
+            fb1_width = <0x00000000>;
+            fb1_height = <0x00000000>;
+        };
+        lcd0@01c0c000 {
+            compatible = "allwinner,sunxi-lcd0";
+            pinctrl-names = "active", "sleep";
+            status = "okay";
+            device_type = "lcd0";
+            lcd_used = <0x00000000>;
+            lcd_driver_name = "mb709_mipi";
+            lcd_backlight = <0x00000032>;
+            lcd_if = <0x00000004>;
+            lcd_x = <0x00000400>;
+            lcd_y = <0x00000258>;
+            lcd_width = <0x00000000>;
+            lcd_height = <0x00000000>;
+            lcd_dclk_freq = <0x00000037>;
+            lcd_pwm_used = <0x00000001>;
+            lcd_pwm_ch = <0x00000010>;
+            lcd_pwm_freq = <0x0000c350>;
+            lcd_pwm_pol = <0x00000001>;
+            lcd_pwm_max_limit = <0x000000fa>;
+            lcd_hbp = <0x00000078>;
+            lcd_ht = <0x00000604>;
+            lcd_hspw = <0x00000014>;
+            lcd_vbp = <0x00000017>;
+            lcd_vt = <0x0000027b>;
+            lcd_vspw = <0x00000002>;
+            lcd_dsi_if = <0x00000002>;
+            lcd_dsi_lane = <0x00000004>;
+            lcd_dsi_format = <0x00000000>;
+            lcd_dsi_eotp = <0x00000000>;
+            lcd_dsi_vc = <0x00000000>;
+            lcd_dsi_te = <0x00000000>;
+            lcd_frm = <0x00000000>;
+            lcd_gamma_en = <0x00000000>;
+            lcd_bright_curve_en = <0x00000000>;
+            lcd_cmap_en = <0x00000000>;
+            lcd_bl_en = <0x00000030 0x00000007 0x0000000a 0x00000001 0x00000000 0xffffffff 0x00000001>;
+            lcd_bl_en_power = "none";
+            lcd_power = "vcc-mipi";
+            lcd_fix_power = "vcc-dsi-33";
+            lcd_gpio_0 = <0x00000030 0x00000003 0x00000018 0x00000001 0x00000000 0xffffffff 0x00000001>;
+        };
+        hdmi@01ee0000 {
+            compatible = "allwinner,sunxi-hdmi";
+            reg = <0x00000000 0x01ee0000 0x00000000 0x00020000>;
+            clocks = <0x0000006f 0x00000070>;
+            device_type = "hdmi";
+            status = "okay";
+            hdmi_power = "vcc-hdmi-33";
+            hdmi_hdcp_enable = <0x00000000>;
+            hdmi_cts_compatibility = <0x00000000>;
+        };
+        tr@01000000 {
+            compatible = "allwinner,sun50i-tr";
+            reg = <0x00000000 0x01000000 0x00000000 0x000200bc>;
+            interrupts = <0x00000000 0x00000060 0x00000104>;
+            clocks = <0x0000006a>;
+            status = "okay";
+        };
+        pwm@01c21400 {
+            compatible = "allwinner,sunxi-pwm";
+            reg = <0x00000000 0x01c21400 0x00000000 0x0000003c>;
+            pwm-number = <0x00000001>;
+            pwm-base = <0x00000000>;
+            pwms = <0x00000071>;
+        };
+        pwm0@01c21400 {
+            compatible = "allwinner,sunxi-pwm0";
+            pinctrl-names = "active", "sleep";
+            reg_base = <0x01c21400>;
+            reg_busy_offset = <0x00000000>;
+            reg_busy_shift = <0x0000001c>;
+            reg_enable_offset = <0x00000000>;
+            reg_enable_shift = <0x00000004>;
+            reg_clk_gating_offset = <0x00000000>;
+            reg_clk_gating_shift = <0x00000006>;
+            reg_bypass_offset = <0x00000000>;
+            reg_bypass_shift = <0x00000009>;
+            reg_pulse_start_offset = <0x00000000>;
+            reg_pulse_start_shift = <0x00000008>;
+            reg_mode_offset = <0x00000000>;
+            reg_mode_shift = <0x00000007>;
+            reg_polarity_offset = <0x00000000>;
+            reg_polarity_shift = <0x00000005>;
+            reg_period_offset = <0x00000004>;
+            reg_period_shift = <0x00000010>;
+            reg_period_width = <0x00000010>;
+            reg_active_offset = <0x00000004>;
+            reg_active_shift = <0x00000000>;
+            reg_active_width = <0x00000010>;
+            reg_prescal_offset = <0x00000000>;
+            reg_prescal_shift = <0x00000000>;
+            reg_prescal_width = <0x00000004>;
+            linux,phandle = <0x00000071>;
+            phandle = <0x00000071>;
+            device_type = "pwm0";
+            pwm_used = <0x00000000>;
+            pinctrl-0 = <0x000000ad>;
+            pinctrl-1 = <0x000000ae>;
+        };
+        s_pwm@1f03800 {
+            compatible = "allwinner,sunxi-s_pwm";
+            reg = <0x00000000 0x01f03800 0x00000000 0x0000003c>;
+            pwm-number = <0x00000001>;
+            pwm-base = <0x00000010>;
+            pwms = <0x00000072>;
+        };
+        spwm0@0x01f03800 {
+            compatible = "allwinner,sunxi-pwm16";
+            pinctrl-names = "active", "sleep";
+            reg_base = <0x01f03800>;
+            reg_busy_offset = <0x00000000>;
+            reg_busy_shift = <0x0000001c>;
+            reg_enable_offset = <0x00000000>;
+            reg_enable_shift = <0x00000004>;
+            reg_clk_gating_offset = <0x00000000>;
+            reg_clk_gating_shift = <0x00000006>;
+            reg_bypass_offset = <0x00000000>;
+            reg_bypass_shift = <0x00000009>;
+            reg_pulse_start_offset = <0x00000000>;
+            reg_pulse_start_shift = <0x00000008>;
+            reg_mode_offset = <0x00000000>;
+            reg_mode_shift = <0x00000007>;
+            reg_polarity_offset = <0x00000000>;
+            reg_polarity_shift = <0x00000005>;
+            reg_period_offset = <0x00000004>;
+            reg_period_shift = <0x00000010>;
+            reg_period_width = <0x00000010>;
+            reg_active_offset = <0x00000004>;
+            reg_active_shift = <0x00000000>;
+            reg_active_width = <0x00000010>;
+            reg_prescal_offset = <0x00000000>;
+            reg_prescal_shift = <0x00000000>;
+            reg_prescal_width = <0x00000004>;
+            linux,phandle = <0x00000072>;
+            phandle = <0x00000072>;
+            device_type = "spwm0";
+            s_pwm_used = <0x00000001>;
+            pinctrl-0 = <0x000000af>;
+            pinctrl-1 = <0x000000b0>;
+        };
+        boot_disp {
+            compatible = "allwinner,boot_disp";
+            device_type = "boot_disp";
+            output_disp = <0x00000000>;
+            output_type = <0x00000003>;
+            output_mode = <0x0000000a>;
+        };
+        cci@0x01cb3000 {
+            compatible = "allwinner,sunxi-csi_cci";
+            reg = <0x00000000 0x01cb3000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000055 0x00000004>;
+            status = "okay";
+        };
+        csi_res@0x01cb0000 {
+            compatible = "allwinner,sunxi-csi";
+            reg = <0x00000000 0x01cb0000 0x00000000 0x00001000>;
+            status = "okay";
+        };
+        vfe@0 {
+            device_type = "csi0";
+            compatible = "allwinner,sunxi-vfe";
+            interrupts = <0x00000000 0x00000054 0x00000004>;
+            clocks = <0x00000073 0x00000074 0x00000075 0x00000004 0x00000006 0x00000005>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000077>;
+            csi0_sensor_list = <0x00000000>;
+            status = "disabled";
+            pinctrl-0 = <0x000000b1>;
+            csi0_mck = <0x00000030 0x00000004 0x00000001 0x00000000 0x00000000 0x00000001 0x00000000>;
+            dev@0 {
+                csi0_dev0_mname = "s5k4ec";
+                csi0_dev0_twi_addr = <0x0000005a>;
+                csi0_dev0_pos = "rear";
+                csi0_dev0_isp_used = <0x00000001>;
+                csi0_dev0_fmt = <0x00000000>;
+                csi0_dev0_stby_mode = <0x00000001>;
+                csi0_dev0_vflip = <0x00000000>;
+                csi0_dev0_hflip = <0x00000000>;
+                csi0_dev0_iovdd = "iovdd-csi";
+                csi0_dev0_iovdd_vol = <0x002ab980>;
+                csi0_dev0_avdd = "avdd-csi";
+                csi0_dev0_avdd_vol = <0x002ab980>;
+                csi0_dev0_dvdd = "dvdd-csi-18";
+                csi0_dev0_dvdd_vol = <0x0016e360>;
+                csi0_dev0_flash_used = <0x00000000>;
+                csi0_dev0_flash_type = <0x00000002>;
+                csi0_dev0_flvdd = "vdd-csi-led";
+                csi0_dev0_flvdd_vol = <0x00325aa0>;
+                csi0_dev0_act_used = <0x00000000>;
+                csi0_dev0_act_name = "ad5820_act";
+                csi0_dev0_act_slave = <0x00000018>;
+                status = "disabled";
+                device_type = "csi0_dev0";
+                csi0_dev0_afvdd;
+                csi0_dev0_afvdd_vol;
+                csi0_dev0_power_en;
+                csi0_dev0_reset = <0x00000030 0x00000004 0x00000010 0x00000000 0x00000000 0x00000001 0x00000000>;
+                csi0_dev0_pwdn = <0x00000030 0x00000004 0x00000011 0x00000000 0x00000000 0x00000001 0x00000000>;
+                csi0_dev0_flash_en;
+                csi0_dev0_flash_mode;
+                csi0_dev0_af_pwdn;
+            };
+        };
+        vdevice@0 {
+            compatible = "allwinner,sun50i-vdevice";
+            pinctrl-names = "default";
+            test-gpios = <0x00000079 0x0000000b 0x00000000 0x00000001 0x00000002 0x00000003 0x00000004>;
+            status = "okay";
+            device_type = "Vdevice";
+            pinctrl-0 = <0x000000b9>;
+        };
+        ce@1c15000 {
+            compatible = "allwinner,sunxi-ce";
+            reg = <0x00000000 0x01c15000 0x00000000 0x00000080 0x00000000 0x01c15800 0x00000000 0x00000080>;
+            interrupts = <0x00000000 0x0000005e 0x0000ff01 0x00000000 0x00000050 0x0000ff01>;
+            clock-frequency = <0x11e1a300 0x0bebc200>;
+            clocks = <0x0000007a 0x0000007b>;
+        };
+        deinterlace@0x01e00000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-deinterlace";
+            reg = <0x00000000 0x01e00000 0x00000000 0x0000077c>;
+            interrupts = <0x00000000 0x0000005d 0x00000004>;
+            clocks = <0x0000007c 0x00000004>;
+            status = "okay";
+            device_type = "di";
+        };
+        smartcard@0x01c2c400 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-scr";
+            reg = <0x00000000 0x01c2c400 0x00000000 0x00000100>;
+            interrupts = <0x00000000 0x00000053 0x00000004>;
+            clocks = <0x0000007d 0x0000007e>;
+            clock-frequency = <0x016e3600>;
+            pinctrl-names = "default";
+            pinctrl-0 = <0x0000007f>;
+            status = "okay";
+            device_type = "smc";
+            smc_used;
+            smc_rst;
+            smc_vppen;
+            smc_vppp;
+            smc_det;
+            smc_vccen;
+            smc_sck;
+            smc_sda;
+        };
+        nmi@0x01f00c00 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-nmi";
+            reg = <0x00000000 0x01f00c00 0x00000000 0x00000050>;
+            nmi_irq_ctrl = <0x0000000c>;
+            nmi_irq_en = <0x00000040>;
+            nmi_irq_status = <0x00000010>;
+            nmi_irq_mask = <0x00000050>;
+            status = "okay";
+        };
+        pmu0@0 {
+            compatible = "allwinner,pmu0";
+            device_type = "pmu0";
+            pmu_batdeten = <0x00000001>;
+            pmu_init_chgend_rate = <0x00000014>;
+            pmu_init_chg_enabled = <0x00000001>;
+            pmu_init_adc_freq = <0x00000320>;
+            pmu_init_adcts_freq = <0x00000320>;
+            pmu_init_chg_pretime = <0x00000046>;
+            pmu_init_chg_csttime = <0x000002d0>;
+            pmu_batt_cap_correct = <0x00000001>;
+            pmu_chg_end_on_en = <0x00000000>;
+            pmu_pwroff_vol = <0x00000ce4>;
+            pmu_pwron_vol = <0x00000a28>;
+            pmu_powkey_off_delay_time = <0x00000000>;
+            pmu_pwrok_time = <0x00000040>;
+            pmu_reset_shutdown_en = <0x00000001>;
+            pmu_restvol_adjust_time = <0x0000003c>;
+            pmu_ocv_cou_adjust_time = <0x0000003c>;
+            pmu_vbusen_func = <0x00000001>;
+            pmu_reset = <0x00000000>;
+            pmu_IRQ_wakeup = <0x00000001>;
+            pmu_hot_shutdowm = <0x00000001>;
+            pmu_inshort = <0x00000000>;
+            pmu_bat_shutdown_ltf = <0x00000c80>;
+            pmu_bat_shutdown_htf = <0x000000ed>;
+            status = "okay";
+            pmu_id = <0x00000006>;
+            pmu_twi_addr = <0x00000034>;
+            pmu_twi_id = <0x00000001>;
+            pmu_irq_id = <0x00000040>;
+            pmu_chg_ic_temp = <0x00000000>;
+            pmu_battery_rdc = <0x00000058>;
+            pmu_battery_cap = <0x000012c0>;
+            pmu_runtime_chgcur = <0x000001c2>;
+            pmu_suspend_chgcur = <0x000005dc>;
+            pmu_shutdown_chgcur = <0x000005dc>;
+            pmu_init_chgvol = <0x00001068>;
+            pmu_ac_vol = <0x00000fa0>;
+            pmu_ac_cur = <0x00000dac>;
+            pmu_usbpc_vol = <0x00001130>;
+            pmu_usbpc_cur = <0x000001f4>;
+            pmu_battery_warning_level1 = <0x0000000f>;
+            pmu_battery_warning_level2 = <0x00000000>;
+            pmu_chgled_func = <0x00000000>;
+            pmu_chgled_type = <0x00000000>;
+            pmu_bat_para1 = <0x00000000>;
+            pmu_bat_para2 = <0x00000000>;
+            pmu_bat_para3 = <0x00000000>;
+            pmu_bat_para4 = <0x00000000>;
+            pmu_bat_para5 = <0x00000000>;
+            pmu_bat_para6 = <0x00000000>;
+            pmu_bat_para7 = <0x00000001>;
+            pmu_bat_para8 = <0x00000001>;
+            pmu_bat_para9 = <0x00000002>;
+            pmu_bat_para10 = <0x00000003>;
+            pmu_bat_para11 = <0x00000004>;
+            pmu_bat_para12 = <0x0000000a>;
+            pmu_bat_para13 = <0x00000011>;
+            pmu_bat_para14 = <0x0000001a>;
+            pmu_bat_para15 = <0x00000029>;
+            pmu_bat_para16 = <0x0000002e>;
+            pmu_bat_para17 = <0x00000033>;
+            pmu_bat_para18 = <0x00000038>;
+            pmu_bat_para19 = <0x0000003b>;
+            pmu_bat_para20 = <0x00000041>;
+            pmu_bat_para21 = <0x00000045>;
+            pmu_bat_para22 = <0x0000004b>;
+            pmu_bat_para23 = <0x0000004f>;
+            pmu_bat_para24 = <0x00000053>;
+            pmu_bat_para25 = <0x00000059>;
+            pmu_bat_para26 = <0x0000005f>;
+            pmu_bat_para27 = <0x00000062>;
+            pmu_bat_para28 = <0x00000064>;
+            pmu_bat_para29 = <0x00000064>;
+            pmu_bat_para30 = <0x00000064>;
+            pmu_bat_para31 = <0x00000064>;
+            pmu_bat_para32 = <0x00000064>;
+            pmu_bat_temp_enable = <0x00000001>;
+            pmu_bat_charge_ltf = <0x000008d5>;
+            pmu_bat_charge_htf = <0x00000184>;
+            pmu_bat_temp_para1 = <0x00001d2a>;
+            pmu_bat_temp_para2 = <0x00001180>;
+            pmu_bat_temp_para3 = <0x00000dbe>;
+            pmu_bat_temp_para4 = <0x00000ae2>;
+            pmu_bat_temp_para5 = <0x000008af>;
+            pmu_bat_temp_para6 = <0x000006fc>;
+            pmu_bat_temp_para7 = <0x000005a8>;
+            pmu_bat_temp_para8 = <0x000003c9>;
+            pmu_bat_temp_para9 = <0x00000298>;
+            pmu_bat_temp_para10 = <0x000001d2>;
+            pmu_bat_temp_para11 = <0x00000189>;
+            pmu_bat_temp_para12 = <0x0000014d>;
+            pmu_bat_temp_para13 = <0x0000011b>;
+            pmu_bat_temp_para14 = <0x000000f2>;
+            pmu_bat_temp_para15 = <0x000000b3>;
+            pmu_bat_temp_para16 = <0x00000086>;
+            pmu_powkey_off_time = <0x00001770>;
+            pmu_powkey_off_func = <0x00000000>;
+            pmu_powkey_off_en = <0x00000001>;
+            pmu_powkey_long_time = <0x000005dc>;
+            pmu_powkey_on_time = <0x000003e8>;
+            power_start = <0x00000000>;
+        };
+        regu@0 {
+            compatible = "allwinner,pmu0_regu";
+            regulator_count = <0x00000017>;
+            status = "okay";
+            device_type = "pmu0_regu";
+            regulator1 = "axp81x_dcdc1 none vcc-nand vcc-emmc vcc-sdc vcc-usb-30 vcc-io vcc-pd";
+            regulator2 = "axp81x_dcdc2 none vdd-cpua";
+            regulator3 = "axp81x_dcdc3 none";
+            regulator4 = "axp81x_dcdc4 none";
+            regulator5 = "axp81x_dcdc5 none vcc-dram";
+            regulator6 = "axp81x_dcdc6 none vdd-sys";
+            regulator7 = "axp81x_dcdc7 none";
+            regulator8 = "axp81x_rtc none";
+            regulator9 = "axp81x_aldo1 none vdd-csi-led iovdd-csi vcc-pe";
+            regulator10 = "axp81x_aldo2 none vcc-pl";
+            regulator11 = "axp81x_aldo3 none vcc-avcc vcc-pll";
+            regulator12 = "axp81x_dldo1 none vcc-hdmi-33";
+            regulator13 = "axp81x_dldo2 none vcc-mipi";
+            regulator14 = "axp81x_dldo3 none avdd-csi";
+            regulator15 = "axp81x_dldo4 none vcc-deviceio";
+            regulator16 = "axp81x_eldo1 none vcc-cpvdd vcc-wifi-io vcc-pc vcc-pg";
+            regulator17 = "axp81x_eldo2 none vcc-lcd-0";
+            regulator18 = "axp81x_eldo3 none dvdd-csi-18";
+            regulator19 = "axp81x_fldo1 none vcc-hsic-12";
+            regulator20 = "axp81x_fldo2 none vdd-cpus";
+            regulator21 = "axp81x_gpio0ldo none vcc-ctp";
+            regulator22 = "axp81x_gpio1ldo none";
+            regulator23 = "axp81x_dc1sw none vcc-lvds vcc-dsi-33";
+        };
+        nand0@01c03000 {
+            compatible = "allwinner,sun50i-nand";
+            device_type = "nand0";
+            reg = <0x00000000 0x01c03000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000046 0x00000004>;
+            clocks = <0x00000004 0x00000080>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000083>;
+            nand0_regulator1 = "vcc-nand";
+            nand0_regulator2 = "none";
+            nand0_cache_level = <0x55aaaa55>;
+            nand0_flush_cache_num = <0x55aaaa55>;
+            nand0_capacity_level = <0x55aaaa55>;
+            nand0_id_number_ctl = <0x55aaaa55>;
+            nand0_print_level = <0x55aaaa55>;
+            nand0_p0 = <0x55aaaa55>;
+            nand0_p1 = <0x55aaaa55>;
+            nand0_p2 = <0x55aaaa55>;
+            nand0_p3 = <0x55aaaa55>;
+            status = "disabled";
+            nand0_support_2ch = <0x00000000>;
+            pinctrl-0 = <0x000000ab 0x000000ac>;
+        };
+        thermal_sensor {
+            compatible = "allwinner,thermal_sensor";
+            reg = <0x00000000 0x01c25000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000001f 0x00000000>;
+            clocks = <0x00000006 0x00000084>;
+            sensor_num = <0x00000003>;
+            shut_temp = <0x00000078>;
+            status = "okay";
+            combine0 {
+                #thermal-sensor-cells = <0x00000001>;
+                combine_cnt = <0x00000003>;
+                combine_type = "max";
+                combine_chn = <0x00000000 0x00000001 0x00000002>;
+                linux,phandle = <0x00000085>;
+                phandle = <0x00000085>;
+            };
+        };
+        cpu_budget_cool {
+            compatible = "allwinner,budget_cooling";
+            #cooling-cells = <0x00000002>;
+            status = "okay";
+            state_cnt = <0x00000008>;
+            cluster_num = <0x00000001>;
+                     /*  1152000   4 cores */
+            state0 = <0x00119400 0x00000004>;
+                     /*  1008000   4 cores */
+            state1 = <0x000f6180 0x00000004>;
+                     /*   912000   4 cores */
+            state2 = <0x000dea80 0x00000004>;
+                     /*   816000   4 cores */
+            state3 = <0x000c7380 0x00000004>;
+                     /*   720000   4 cores */
+            state4 = <0x000afc80 0x00000004>;
+                     /*   624000   3 cores */
+            state5 = <0x00098580 0x00000003>;
+                     /*   528000   2 cores */
+            state6 = <0x00080e80 0x00000002>;
+                     /*   480000    1 core */
+            state7 = <0x00075300 0x00000001>;
+            linux,phandle = <0x00000087>;
+            phandle = <0x00000087>;
+        };
+        gpu_cooling {
+            compatible = "allwinner,gpu_cooling";
+            reg = <0x00000000 0x00000000 0x00000000 0x00000000>;
+            #cooling-cells = <0x00000002>;
+            status = "okay";
+            state_cnt = <0x00000003>;
+            state0 = <0x00000000>;
+            state1 = <0x00000168>;
+            state2 = <0x00000090>;
+            linux,phandle = <0x0000008c>;
+            phandle = <0x0000008c>;
+        };
+        thermal-zones {
+            soc_thermal {
+                polling-delay-passive = <0x000001f4>;
+                polling-delay = <0x000007d0>;
+                thermal-sensors = <0x00000085 0x00000000>;
+                trips {
+                    t0 {
+                        temperature = <0x00000050>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000086>;
+                        phandle = <0x00000086>;
+                    };
+                    t1 {
+                        temperature = <0x00000055>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000088>;
+                        phandle = <0x00000088>;
+                    };
+                    t2 {
+                        temperature = <0x0000005a>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000089>;
+                        phandle = <0x00000089>;
+                    };
+                    t3 {
+                        temperature = <0x0000005f>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008a>;
+                        phandle = <0x0000008a>;
+                    };
+                    t4 {
+                        temperature = <0x00000055>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008b>;
+                        phandle = <0x0000008b>;
+                    };
+                    t5 {
+                        temperature = <0x0000005a>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008d>;
+                        phandle = <0x0000008d>;
+                    };
+                    t6 {
+                        temperature = <0x0000006c>;
+                        type = "critical";
+                        hysteresis = <0x00000000>;
+                    };
+                };
+                cooling-maps {
+                    bind0 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000086>;
+                        cooling-device = <0x00000087 0x00000001 0x00000001>;
+                    };
+                    bind1 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000088>;
+                        cooling-device = <0x00000087 0x00000002 0x00000002>;
+                    };
+                    bind2 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000089>;
+                        cooling-device = <0x00000087 0x00000003 0x00000006>;
+                    };
+                    bind3 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008a>;
+                        cooling-device = <0x00000087 0x00000007 0x00000009>;
+                    };
+                    bind4 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008b>;
+                        cooling-device = <0x0000008c 0x00000001 0x00000001>;
+                    };
+                    bind5 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008d>;
+                        cooling-device = <0x0000008c 0x00000002 0x00000002>;
+                    };
+                };
+            };
+        };
+        keyboard {
+            compatible = "allwinner,keyboard_2000mv";
+            reg = <0x00000000 0x01c21800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000001e 0x00000000>;
+            status = "okay";
+            key_cnt = <0x00000005>;
+            key1 = <0x000000f0 0x00000073>;
+            key2 = <0x000001f4 0x00000072>;
+            key3 = <0x000002bc 0x0000008b>;
+            key4 = <0x0000037a 0x0000001c>;
+            key5 = <0x000007d0 0x00000066>;
+        };
+        eth@01c30000 {
+            compatible = "allwinner,sunxi-gmac";
+            reg = <0x00000000 0x01c30000 0x00000000 0x00010000 0x00000000 0x01c00000 0x00000000 0x00000030>;
+            pinctrl-names = "default";
+            interrupts = <0x00000000 0x00000052 0x00000004>;
+            interrupt-names = "gmacirq";
+            clocks = <0x0000008f>;
+            clock-names = "gmac";
+            phy-mode = "rgmii";
+            tx-delay = <0x00000003>;
+            rx-delay = <0x00000000>;
+            gmac_power1 = "axp81x_dc1sw:0";
+            status = "okay";
+            device_type = "gmac0";
+            pinctrl-0 = <0x0000009e>;
+            gmac_power2;
+            gmac_power3;
+        };
+        product {
+            device_type = "product";
+            version = "100";
+            machine = "evb";
+        };
+        platform {
+            device_type = "platform";
+            eraseflag = <0x00000001>;
+        };
+        target {
+            device_type = "target";
+            boot_clock = <0x000003f0>;
+            storage_type = <0xffffffff>;
+            burn_key = <0x00000000>;
+        };
+        power_sply {
+            device_type = "power_sply";
+            dcdc1_vol = <0x000f4f24>;
+            dcdc2_vol = <0x000f468c>;
+            dcdc6_vol = <0x000f468c>;
+            aldo1_vol = <0x00000af0>;
+            aldo2_vol = <0x000f4948>;
+            aldo3_vol = <0x000f4df8>;
+            dldo1_vol = <0x00000ce4>;
+            dldo2_vol = <0x00000ce4>;
+            dldo3_vol = <0x00000af0>;
+            dldo4_vol = <0x000f4f24>;
+            eldo1_vol = <0x000f4948>;
+            eldo2_vol = <0x00000708>;
+            eldo3_vol = <0x00000708>;
+            fldo1_vol = <0x000004b0>;
+            fldo2_vol = <0x000f468c>;
+            gpio0_vol = <0x00000c1c>;
+        };
+        card_boot {
+            device_type = "card_boot";
+            logical_start = <0x0000a000>;
+            sprite_gpio0;
+        };
+        pm_para {
+            device_type = "pm_para";
+            standby_mode = <0x00000001>;
+        };
+        card0_boot_para {
+            device_type = "card0_boot_para";
+            card_ctrl = <0x00000000>;
+            card_high_speed = <0x00000001>;
+            card_line = <0x00000004>;
+            pinctrl-0 = <0x00000099>;
+        };
+        card2_boot_para {
+            device_type = "card2_boot_para";
+            sdc_io_1v8 = <0x00000001>;
+            card_ctrl = <0x00000002>;
+            card_high_speed = <0x00000001>;
+            card_line = <0x00000008>;
+            pinctrl-0 = <0x0000009a>;
+            sdc_ex_dly_used = <0x00000002>;
+        };
+        twi_para {
+            device_type = "twi_para";
+            twi_port = <0x00000000>;
+            pinctrl-0 = <0x0000009b>;
+        };
+        uart_para {
+            device_type = "uart_para";
+            uart_debug_port = <0x00000000>;
+            pinctrl-0 = <0x0000009c>;
+        };
+        jtag_para {
+            device_type = "jtag_para";
+            jtag_enable = <0x00000001>;
+            pinctrl-0 = <0x0000009d>;
+        };
+        clock {
+            device_type = "clock";
+            pll4 = <0x0000012c>;
+            pll6 = <0x00000258>;
+            pll8 = <0x00000168>;
+            pll9 = <0x00000129>;
+            pll10 = <0x00000108>;
+        };
+        rtp_para {
+            device_type = "rtp_para";
+            rtp_used = <0x00000000>;
+            rtp_screen_size = <0x00000005>;
+            rtp_regidity_level = <0x00000005>;
+            rtp_press_threshold_enable = <0x00000000>;
+            rtp_press_threshold = <0x00001f40>;
+            rtp_sensitive_level = <0x0000000f>;
+            rtp_exchange_x_y_flag = <0x00000000>;
+        };
+        ctp {
+            device_type = "ctp";
+            compatible = "allwinner,sun50i-ctp-para";
+            status = "disabled";
+            ctp_name = "gt911_DB";
+            ctp_twi_id = <0x00000000>;
+            ctp_twi_addr = <0x00000040>;
+            ctp_screen_max_x = <0x00000400>;
+            ctp_screen_max_y = <0x00000258>;
+            ctp_revert_x_flag = <0x00000001>;
+            ctp_revert_y_flag = <0x00000001>;
+            ctp_exchange_x_y_flag = <0x00000000>;
+            ctp_int_port = <0x00000030 0x00000007 0x00000004 0x00000006 0xffffffff 0xffffffff 0xffffffff>;
+            ctp_wakeup = <0x00000030 0x00000007 0x0000000b 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+            ctp_power_ldo = "vcc-ctp";
+            ctp_power_ldo_vol = <0x00000ce4>;
+            ctp_power_io;
+        };
+        ctp_list {
+            device_type = "ctp_list";
+            compatible = "allwinner,sun50i-ctp-list";
+            status = "okay";
+            gslX680new = <0x00000001>;
+            gt9xx_ts = <0x00000000>;
+            gt9xxf_ts = <0x00000001>;
+            gt9xxnew_ts = <0x00000000>;
+            gt82x = <0x00000001>;
+            zet622x = <0x00000001>;
+            aw5306_ts = <0x00000001>;
+        };
+        tkey_para {
+            device_type = "tkey_para";
+            tkey_used = <0x00000000>;
+            tkey_twi_id;
+            tkey_twi_addr;
+            tkey_int;
+        };
+        motor_para {
+            device_type = "motor_para";
+            motor_used = <0x00000000>;
+            motor_shake = <0x00000031 0x0000fffe 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+        };
+        tvout_para {
+            device_type = "tvout_para";
+            tvout_used;
+            tvout_channel_num;
+            tv_en;
+        };
+        tvin_para {
+            device_type = "tvin_para";
+            tvin_used;
+            tvin_channel_num;
+        };
+        serial_feature {
+            device_type = "serial_feature";
+            sn_filename = "sn.txt";
+        };
+        gsensor {
+            device_type = "gsensor";
+            compatible = "allwinner,sun50i-gsensor-para";
+            status = "okay";
+            gsensor_twi_id = <0x00000001>;
+            gsensor_twi_addr = <0x0000001d>;
+            gsensor_vcc_io = "vcc-deviceio";
+            gsensor_vcc_io_val = <0x00000ce4>;
+            gsensor_int1 = <0x00000030 0x00000007 0x00000005 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+            gsensor_int2 = <0x00000030 0x00000007 0x00000006 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        gsensor_list {
+            device_type = "gsensor_list";
+            compatible = "allwinner,sun50i-gsensor-list-para";
+            gsensor_list__used = <0x00000001>;
+            lsm9ds0_acc_mag = <0x00000001>;
+            bma250 = <0x00000001>;
+            mma8452 = <0x00000001>;
+            mma7660 = <0x00000001>;
+            mma865x = <0x00000001>;
+            afa750 = <0x00000001>;
+            lis3de_acc = <0x00000001>;
+            lis3dh_acc = <0x00000001>;
+            kxtik = <0x00000001>;
+            dmard10 = <0x00000000>;
+            dmard06 = <0x00000001>;
+            mxc622x = <0x00000001>;
+            fxos8700 = <0x00000001>;
+            lsm303d = <0x00000000>;
+            sc7a30 = <0x00000001>;
+        };
+        3g_para {
+            device_type = "3g_para";
+            3g_used = <0x00000000>;
+            3g_usbc_num = <0x00000002>;
+            3g_uart_num = <0x00000000>;
+            bb_vbat = <0x00000079 0x0000000b 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_host_wake = <0x00000079 0x0000000c 0x00000000 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_on = <0x00000079 0x0000000c 0x00000001 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_pwr_on = <0x00000079 0x0000000c 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_wake = <0x00000079 0x0000000c 0x00000004 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_rf_dis = <0x00000079 0x0000000c 0x00000005 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_rst = <0x00000079 0x0000000c 0x00000006 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            3g_int;
+        };
+        gyroscopesensor {
+            device_type = "gyroscopesensor";
+            compatible = "allwinner,sun50i-gyr_sensors-para";
+            status = "disabled";
+            gy_twi_id = <0x00000002>;
+            gy_twi_addr = <0x0000006a>;
+            gy_int1 = <0x00000030 0x00000000 0x0000000a 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+            gy_int2;
+        };
+        gy_list {
+            device_type = "gy_list";
+            compatible = "allwinner,sun50i-gyr_sensors-list-para";
+            status = "disabled";
+            lsm9ds0_gyr = <0x00000001>;
+            l3gd20_gyr = <0x00000000>;
+            bmg160_gyr = <0x00000001>;
+        };
+        lightsensor {
+            device_type = "lightsensor";
+            compatible = "allwinner,sun50i-lsensors-para";
+            status = "disabled";
+            ls_twi_id = <0x00000002>;
+            ls_twi_addr = <0x00000023>;
+            ls_int = <0x00000030 0x00000000 0x0000000c 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        ls_list {
+            device_type = "ls_list";
+            compatible = "allwinner,sun50i-lsensors-list-para";
+            status = "disabled";
+            ltr_501als = <0x00000001>;
+            jsa1212 = <0x00000000>;
+            jsa1127 = <0x00000001>;
+            stk3x1x = <0x00000000>;
+        };
+        compasssensor {
+            device_type = "compasssensor";
+            compatible = "allwinner,sun50i-compass-para";
+            status = "disabled";
+            compass_twi_id = <0x00000002>;
+            compass_twi_addr = <0x0000000d>;
+            compass_int = <0x00000030 0x00000000 0x0000000b 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        compass_list {
+            device_type = "compass_list";
+            compatible = "allwinner,sun50i-compass-list-para";
+            status = "disabled";
+            lsm9ds0 = <0x00000001>;
+            lsm303d = <0x00000000>;
+        };
+        recovery_key {
+            device_type = "recovery_key";
+            key_max = <0x0000000c>;
+            key_min = <0x0000000a>;
+        };
+        fastboot_key {
+            device_type = "fastboot_key";
+            key_max = <0x00000006>;
+            key_min = <0x00000004>;
+        };
+    };
+    aliases {
+        serial0 = "/soc@01c00000/uart@01c28000";
+        serial1 = "/soc@01c00000/uart@01c28400";
+        serial2 = "/soc@01c00000/uart@01c28800";
+        serial3 = "/soc@01c00000/uart@01c28c00";
+        serial4 = "/soc@01c00000/uart@01c29000";
+        twi0 = "/soc@01c00000/twi@0x01c2ac00";
+        twi1 = "/soc@01c00000/twi@0x01c2b000";
+        twi2 = "/soc@01c00000/twi@0x01c2b400";
+        spi0 = "/soc@01c00000/spi@01c68000";
+        spi1 = "/soc@01c00000/spi@01c69000";
+        global_timer0 = "/soc@01c00000/timer@1c20c00";
+        cci0 = "/soc@01c00000/cci@0x01cb3000";
+        csi_res0 = "/soc@01c00000/csi_res@0x01cb0000";
+        vfe0 = "/soc@01c00000/vfe@0";
+        mmc0 = "/soc@01c00000/sdmmc@01c0f000";
+        mmc2 = "/soc@01c00000/sdmmc@01C11000";
+        nand0 = "/soc@01c00000/nand0@01c03000";
+        disp = "/soc@01c00000/disp@01000000";
+        lcd0 = "/soc@01c00000/lcd0@01c0c000";
+        hdmi = "/soc@01c00000/hdmi@01ee0000";
+        pwm = "/soc@01c00000/pwm@01c21400";
+        pwm0 = "/soc@01c00000/pwm0@01c21400";
+        s_pwm = "/soc@01c00000/s_pwm@1f03800";
+        spwm0 = "/soc@01c00000/spwm0@0x01f03800";
+        boot_disp = "/soc@01c00000/boot_disp";
+    };
+    chosen {
+        bootargs = "earlyprintk=sunxi-uart,0x01c28000 loglevel=8 initcall_debug=1 console=ttyS0 init=/init";
+        linux,initrd-start = <0x00000000 0x00000000>;
+        linux,initrd-end = <0x00000000 0x00000000>;
+    };
+    cpus {
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000000>;
+        cpu@0 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000000>;
+            enable-method = "psci";
+         /* CPU Frequencies    408000     480000     504000     528000     576000     600000     624000     648000     672000     720000     768000     816000     864000     912000     960000    1008000    1056000    1104000    1152000    1200000    1344000 */
+            cpufreq_tbl = <0x000639C0 0x00075300 0x0007b0c0 0x00080e80 0x0008ca00 0x000927c0 0x00098580 0x0009e340 0x000a4100 0x000afc80 0x000bb800 0x000c7380 0x000d2f00 0x000dea80 0x000ea600 0x000f6180 0x00101d00 0x0010d880 0x00119400 0x00124f80 0x00148200>;
+            clock-latency = <0x001e8480>;
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@1 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000001>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@2 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000002>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@3 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000003>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        idle-states {
+            entry-method = "arm,psci";
+            cpu-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x00010000>;
+                entry-latency-us = <0x00000028>;
+                exit-latency-us = <0x00000064>;
+                min-residency-us = <0x00000096>;
+                linux,phandle = <0x00000090>;
+                phandle = <0x00000090>;
+            };
+            cluster-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x01010000>;
+                entry-latency-us = <0x000001f4>;
+                exit-latency-us = <0x000003e8>;
+                min-residency-us = <0x000009c4>;
+                linux,phandle = <0x00000091>;
+                phandle = <0x00000091>;
+            };
+            sys-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x02010000>;
+                entry-latency-us = <0x000003e8>;
+                exit-latency-us = <0x000007d0>;
+                min-residency-us = <0x00001194>;
+                linux,phandle = <0x00000092>;
+                phandle = <0x00000092>;
+            };
+        };
+    };
+    psci {
+        compatible = "arm,psci-0.2";
+        method = "smc";
+        psci_version = <0x84000000>;
+        cpu_suspend = <0xc4000001>;
+        cpu_off = <0x84000002>;
+        cpu_on = <0xc4000003>;
+        affinity_info = <0xc4000004>;
+        migrate = <0xc4000005>;
+        migrate_info_type = <0x84000006>;
+        migrate_info_up_cpu = <0xc4000007>;
+        system_off = <0x84000008>;
+        system_reset = <0x84000009>;
+    };
+    n_brom {
+        compatible = "allwinner,n-brom";
+        reg = <0x00000000 0x00000000 0x00000000 0x0000c000>;
+    };
+    s_brom {
+        compatible = "allwinner,s-brom";
+        reg = <0x00000000 0x00000000 0x00000000 0x00010000>;
+    };
+    sram_a1 {
+        compatible = "allwinner,sram_a1";
+        reg = <0x00000000 0x00010000 0x00000000 0x00008000>;
+    };
+    sram_a2 {
+        compatible = "allwinner,sram_a2";
+        reg = <0x00000000 0x00040000 0x00000000 0x00014000>;
+    };
+    prcm {
+        compatible = "allwinner,prcm";
+        reg = <0x00000000 0x01f01400 0x00000000 0x00000400>;
+    };
+    cpuscfg {
+        compatible = "allwinner,cpuscfg";
+        reg = <0x00000000 0x01f01c00 0x00000000 0x00000400>;
+    };
+    ion {
+        compatible = "allwinner,sunxi-ion";
+        system_contig {
+            type = <0x00000001>;
+        };
+        cma {
+            type = <0x00000004>;
+        };
+        system {
+            type = <0x00000000>;
+        };
+    };
+    dram {
+        compatible = "allwinner,dram";
+        clocks = <0x00000093 0x00000094>;
+        clock-names = "pll_ddr0", "pll_ddr1";
+        dram_clk = <0x000002a0>;
+        dram_type = <0x00000003>;
+        dram_zq = <0x003b3bdd>;
+        dram_odt_en = <0x00000001>;
+        dram_para1 = <0x10e40400>;
+        dram_para2 = <0x04000000>;
+        dram_mr0 = <0x00001c70>;
+        dram_mr1 = <0x00000040>;
+        dram_mr2 = <0x00000018>;
+        dram_mr3 = <0x00000000>;
+        dram_tpr0 = <0x0048a192>;
+        dram_tpr1 = <0x01c2418d>;
+        dram_tpr2 = <0x00076051>;
+        dram_tpr3 = <0x050005dc>;
+        dram_tpr4 = <0x00000000>;
+        dram_tpr5 = <0x00000000>;
+        dram_tpr6 = <0x00000000>;
+        dram_tpr7 = <0x2a066198>;
+        dram_tpr8 = <0x00000000>;
+        dram_tpr9 = <0x00000000>;
+        dram_tpr10 = <0x00008808>;
+        dram_tpr11 = <0x40a60066>;
+        dram_tpr12 = <0x55550000>;
+        dram_tpr13 = <0x04000903>;
+        device_type = "dram";
+    };
+    memory@40000000 {
+        device_type = "memory";
+        reg = <0x00000000 0x41000000 0x00000000 0x3f000000>;
+    };
+    interrupt-controller@1c81000 {
+        compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
+        #interrupt-cells = <0x00000003>;
+        #address-cells = <0x00000000>;
+        device_type = "gic";
+        interrupt-controller;
+        reg = <0x00000000 0x01c81000 0x00000000 0x00001000 0x00000000 0x01c82000 0x00000000 0x00002000 0x00000000 0x01c84000 0x00000000 0x00002000 0x00000000 0x01c86000 0x00000000 0x00002000>;
+        interrupts = <0x00000001 0x00000009 0x00000f04>;
+        linux,phandle = <0x00000001>;
+        phandle = <0x00000001>;
+    };
+    sunxi-chipid@1c14200 {
+        compatible = "sunxi,sun50i-chipid";
+        device_type = "chipid";
+        reg = <0x00000000 0x01c14200 0x00000000 0x00000400>;
+    };
+    timer {
+        compatible = "arm,armv8-timer";
+        interrupts = <0x00000001 0x0000000d 0x0000ff01 0x00000001 0x0000000e 0x0000ff01 0x00000001 0x0000000b 0x0000ff01 0x00000001 0x0000000a 0x0000ff01>;
+        clock-frequency = <0x016e3600>;
+    };
+    pmu {
+        compatible = "arm,armv8-pmuv3";
+        interrupts = <0x00000000 0x00000078 0x00000004 0x00000000 0x00000079 0x00000004 0x00000000 0x0000007a 0x00000004 0x00000000 0x0000007b 0x00000004>;
+    };
+    dvfs_table {
+        compatible = "allwinner,dvfs_table";
+        max_freq = <0x44aa2000>;
+        min_freq = <0x1c9c3800>;
+        lv_count = <0x00000008>;
+        lv1_freq = <0x44aa2000>;
+        lv1_volt = <0x00000514>;
+        lv2_freq = <0x41cdb400>;
+        lv2_volt = <0x000004ec>;
+        lv3_freq = <0x3ef14800>;
+        lv3_volt = <0x000004d8>;
+        lv4_freq = <0x3c14dc00>;
+        lv4_volt = <0x000004b0>;
+        lv5_freq = <0x39387000>;
+        lv5_volt = <0x00000488>;
+        lv6_freq = <0x365c0400>;
+        lv6_volt = <0x00000460>;
+        lv7_freq = <0x30a32c00>;
+        lv7_volt = <0x00000438>;
+        lv8_freq = <0x269fb200>;
+        lv8_volt = <0x00000410>;
+        device_type = "dvfs_table";
+    };
+    dramfreq {
+        compatible = "allwinner,sunxi-dramfreq";
+        reg = <0x00000000 0x01c62000 0x00000000 0x00001000 0x00000000 0x01c63000 0x00000000 0x00001000 0x00000000 0x01c20000 0x00000000 0x00000800>;
+        clocks = <0x00000093 0x00000094 0x00000095>;
+        status = "okay";
+    };
+    uboot {
+    };
+    gpu@0x01c40000 {
+        compatible = "arm,mali-400", "arm,mali-utgard";
+        reg = <0x00000000 0x01c40000 0x00000000 0x00010000>;
+        interrupts = <0x00000000 0x00000061 0x00000004 0x00000000 0x00000062 0x00000004 0x00000000 0x00000063 0x00000004 0x00000000 0x00000064 0x00000004 0x00000000 0x00000066 0x00000004 0x00000000 0x00000067 0x00000004>;
+        interrupt-names = "IRQGP", "IRQGPMMU", "IRQPP0", "IRQPPMMU0", "IRQPP1", "IRQPPMMU1";
+        clocks = <0x00000096 0x00000097>;
+        device_type = "gpu_mali400_0";
+        normal_freq = <0x00000198>;
+        scene_ctrl_status = <0x00000000>;
+        temp_ctrl_status = <0x00000001>;
+    };
+    wlan {
+        compatible = "allwinner,sunxi-wlan";
+        wlan_io_regulator = "vcc-wifi-io";
+        wlan_busnum = <0x00000001>;
+        status = "okay";
+        device_type = "wlan";
+        clocks;
+        wlan_power;
+        wlan_regon = <0x00000079 0x0000000b 0x00000002 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+        wlan_hostwake = <0x00000079 0x0000000b 0x00000003 0x00000006 0xffffffff 0xffffffff 0x00000000>;
+        efuse_map_path = "wifi_efuse_8189e_for_MB1019Q5.map";
+    };
+    bt {
+        compatible = "allwinner,sunxi-bt";
+        bt_io_regulator = "vcc-wifi-io";
+        status = "okay";
+        device_type = "bt";
+        clocks;
+        bt_power;
+        bt_rst_n = <0x00000079 0x0000000b 0x00000004 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+    };
+    btlpm {
+        compatible = "allwinner,sunxi-btlpm";
+        uart_index = <0x00000001>;
+        status = "okay";
+        device_type = "btlpm";
+        bt_wake = <0x00000079 0x0000000b 0x00000006 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+        bt_hostwake = <0x00000079 0x0000000b 0x00000005 0x00000006 0xffffffff 0xffffffff 0x00000000>;
+    };
+};
diff --git a/arch/arm64/boot/dts/sun50iw1p1-pine64.dts b/arch/arm64/boot/dts/sun50iw1p1-pine64.dts
new file mode 100644
index 00000000..1ab6d8e8
--- /dev/null
+++ b/arch/arm64/boot/dts/sun50iw1p1-pine64.dts
@@ -0,0 +1,3077 @@
+/dts-v1/;
+// magic:		0xd00dfeed
+// totalsize:		0x10f87 (69511)
+// off_dt_struct:	0x98
+// off_dt_strings:	0xea30
+// off_mem_rsvmap:	0x28
+// version:		17
+// last_comp_version:	16
+// boot_cpuid_phys:	0x0
+// size_dt_strings:	0x2557
+// size_dt_struct:	0xe998
+
+/memreserve/ 0x45000000 0x200000;
+/memreserve/ 0x41010000 0x10000;
+/memreserve/ 0x41020000 0x800;
+/memreserve/ 0x40100000 0x4000;
+/memreserve/ 0x40104000 0x1000;
+/memreserve/ 0x40105000 0x1000;
+/ {
+    model = "sun50iw1p1";
+    compatible = "arm,sun50iw1p1", "arm,sun50iw1p1";
+    interrupt-parent = <0x00000001>;
+    #address-cells = <0x00000002>;
+    #size-cells = <0x00000002>;
+    clocks {
+        compatible = "allwinner,sunxi-clk-init";
+        device_type = "clocks";
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000002>;
+        ranges;
+        reg = <0x00000000 0x01c20000 0x00000000 0x00000320 0x00000000 0x01f01400 0x00000000 0x000000b0 0x00000000 0x01f00060 0x00000000 0x00000004>;
+        losc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x00008000>;
+            clock-output-names = "losc";
+            linux,phandle = <0x0000000c>;
+            phandle = <0x0000000c>;
+        };
+        iosc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x00f42400>;
+            clock-output-names = "iosc";
+            linux,phandle = <0x0000000d>;
+            phandle = <0x0000000d>;
+        };
+        hosc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x016e3600>;
+            clock-output-names = "hosc";
+            linux,phandle = <0x00000006>;
+            phandle = <0x00000006>;
+        };
+        pll_cpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_cpu";
+        };
+        pll_audio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x01770000>;
+            clock-output-names = "pll_audio";
+            linux,phandle = <0x00000002>;
+            phandle = <0x00000002>;
+        };
+        pll_video0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_video0";
+            linux,phandle = <0x00000003>;
+            phandle = <0x00000003>;
+        };
+        pll_ve {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ve";
+            linux,phandle = <0x00000016>;
+            phandle = <0x00000016>;
+        };
+        pll_ddr0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ddr0";
+            linux,phandle = <0x00000093>;
+            phandle = <0x00000093>;
+        };
+        pll_periph0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_periph0";
+            linux,phandle = <0x00000004>;
+            phandle = <0x00000004>;
+        };
+        pll_periph1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_periph1";
+            linux,phandle = <0x00000005>;
+            phandle = <0x00000005>;
+        };
+        pll_video1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_video1";
+        };
+        pll_gpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_gpu";
+            linux,phandle = <0x00000096>;
+            phandle = <0x00000096>;
+        };
+        pll_mipi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_mipi";
+            linux,phandle = <0x00000008>;
+            phandle = <0x00000008>;
+        };
+        pll_hsic {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_hsic";
+            linux,phandle = <0x0000003a>;
+            phandle = <0x0000003a>;
+        };
+        pll_de {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_de";
+            linux,phandle = <0x00000007>;
+            phandle = <0x00000007>;
+        };
+        pll_ddr1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ddr1";
+            linux,phandle = <0x00000094>;
+            phandle = <0x00000094>;
+        };
+        pll_audiox8 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_audiox8";
+        };
+        pll_audiox4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000002>;
+            clock-output-names = "pll_audiox4";
+            linux,phandle = <0x0000003c>;
+            phandle = <0x0000003c>;
+        };
+        pll_audiox2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000004>;
+            clock-output-names = "pll_audiox2";
+        };
+        pll_video0x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000003>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_video0x2";
+        };
+        pll_periph0x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000004>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_periph0x2";
+            linux,phandle = <0x0000007b>;
+            phandle = <0x0000007b>;
+        };
+        pll_periph1x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000005>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_periph1x2";
+            linux,phandle = <0x0000005a>;
+            phandle = <0x0000005a>;
+        };
+        pll_periph0d2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000004>;
+            clock-mult = <0x00000001>;
+            clock-div = <0x00000002>;
+            clock-output-names = "pll_periph0d2";
+        };
+        hoscd2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000006>;
+            clock-mult = <0x00000001>;
+            clock-div = <0x00000002>;
+            clock-output-names = "hoscd2";
+        };
+        cpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "cpu";
+        };
+        cpuapb {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "cpuapb";
+        };
+        axi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "axi";
+        };
+        pll_periphahb0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "pll_periphahb0";
+        };
+        ahb1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ahb1";
+            linux,phandle = <0x00000095>;
+            phandle = <0x00000095>;
+        };
+        apb1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "apb1";
+        };
+        apb2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "apb2";
+            linux,phandle = <0x0000007e>;
+            phandle = <0x0000007e>;
+        };
+        ahb2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ahb2";
+        };
+        ths {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ths";
+            linux,phandle = <0x00000084>;
+            phandle = <0x00000084>;
+        };
+        nand {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "nand";
+            linux,phandle = <0x00000080>;
+            phandle = <0x00000080>;
+        };
+        sdmmc0_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_mod";
+            linux,phandle = <0x00000060>;
+            phandle = <0x00000060>;
+        };
+        sdmmc0_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_bus";
+            linux,phandle = <0x00000061>;
+            phandle = <0x00000061>;
+        };
+        sdmmc0_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_rst";
+            linux,phandle = <0x00000062>;
+            phandle = <0x00000062>;
+        };
+        sdmmc1_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_mod";
+            linux,phandle = <0x00000065>;
+            phandle = <0x00000065>;
+        };
+        sdmmc1_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_bus";
+            linux,phandle = <0x00000066>;
+            phandle = <0x00000066>;
+        };
+        sdmmc1_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_rst";
+            linux,phandle = <0x00000067>;
+            phandle = <0x00000067>;
+        };
+        sdmmc2_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_mod";
+            linux,phandle = <0x0000005b>;
+            phandle = <0x0000005b>;
+        };
+        sdmmc2_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_bus";
+            linux,phandle = <0x0000005c>;
+            phandle = <0x0000005c>;
+        };
+        sdmmc2_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_rst";
+            linux,phandle = <0x0000005d>;
+            phandle = <0x0000005d>;
+        };
+        ts {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ts";
+        };
+        ce {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ce";
+            linux,phandle = <0x0000007a>;
+            phandle = <0x0000007a>;
+        };
+        spi0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spi0";
+            linux,phandle = <0x00000052>;
+            phandle = <0x00000052>;
+        };
+        spi1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spi1";
+            linux,phandle = <0x00000056>;
+            phandle = <0x00000056>;
+        };
+        i2s0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s0";
+            linux,phandle = <0x00000042>;
+            phandle = <0x00000042>;
+        };
+        i2s1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s1";
+            linux,phandle = <0x00000047>;
+            phandle = <0x00000047>;
+        };
+        i2s2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s2";
+            linux,phandle = <0x00000048>;
+            phandle = <0x00000048>;
+        };
+        spdif {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spdif";
+            linux,phandle = <0x00000049>;
+            phandle = <0x00000049>;
+        };
+        usbphy0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbphy0";
+            linux,phandle = <0x00000032>;
+            phandle = <0x00000032>;
+        };
+        usbphy1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbphy1";
+            linux,phandle = <0x00000036>;
+            phandle = <0x00000036>;
+        };
+        usbhsic {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbhsic";
+            linux,phandle = <0x00000038>;
+            phandle = <0x00000038>;
+        };
+        usbhsic12m {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbhsic12m";
+            linux,phandle = <0x00000039>;
+            phandle = <0x00000039>;
+        };
+        usbohci1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci1";
+            linux,phandle = <0x0000003b>;
+            phandle = <0x0000003b>;
+        };
+        usbohci0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci0";
+            linux,phandle = <0x00000035>;
+            phandle = <0x00000035>;
+        };
+        de {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000007>;
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "de";
+            linux,phandle = <0x0000006a>;
+            phandle = <0x0000006a>;
+        };
+        tcon0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000008>;
+            clock-output-names = "tcon0";
+            linux,phandle = <0x0000006b>;
+            phandle = <0x0000006b>;
+        };
+        tcon1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000003>;
+            clock-output-names = "tcon1";
+            linux,phandle = <0x0000006e>;
+            phandle = <0x0000006e>;
+        };
+        deinterlace {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "deinterlace";
+            linux,phandle = <0x0000007c>;
+            phandle = <0x0000007c>;
+        };
+        csi_s {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_s";
+            linux,phandle = <0x00000073>;
+            phandle = <0x00000073>;
+        };
+        csi_m {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_m";
+            linux,phandle = <0x00000074>;
+            phandle = <0x00000074>;
+        };
+        csi_misc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_misc";
+            linux,phandle = <0x00000075>;
+            phandle = <0x00000075>;
+        };
+        ve {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ve";
+            linux,phandle = <0x00000017>;
+            phandle = <0x00000017>;
+        };
+        adda {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "adda";
+            linux,phandle = <0x00000041>;
+            phandle = <0x00000041>;
+        };
+        addax4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "addax4";
+        };
+        avs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "avs";
+        };
+        hdmi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000003>;
+            clock-output-names = "hdmi";
+            linux,phandle = <0x0000006f>;
+            phandle = <0x0000006f>;
+        };
+        hdmi_slow {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hdmi_slow";
+            linux,phandle = <0x00000070>;
+            phandle = <0x00000070>;
+        };
+        mbus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "mbus";
+        };
+        mipidsi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "mipidsi";
+            linux,phandle = <0x0000006d>;
+            phandle = <0x0000006d>;
+        };
+        gpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "gpu";
+            linux,phandle = <0x00000097>;
+            phandle = <0x00000097>;
+        };
+        usbehci_16 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci_16";
+        };
+        usbehci1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbehci1";
+            linux,phandle = <0x00000037>;
+            phandle = <0x00000037>;
+        };
+        usbehci0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbehci0";
+            linux,phandle = <0x00000034>;
+            phandle = <0x00000034>;
+        };
+        usbotg {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbotg";
+            linux,phandle = <0x00000033>;
+            phandle = <0x00000033>;
+        };
+        gmac {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "gmac";
+            linux,phandle = <0x0000008f>;
+            phandle = <0x0000008f>;
+        };
+        sdram {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdram";
+        };
+        dma {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "dma";
+            linux,phandle = <0x0000000b>;
+            phandle = <0x0000000b>;
+        };
+        hwspinlock_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hwspinlock_rst";
+            linux,phandle = <0x0000000f>;
+            phandle = <0x0000000f>;
+        };
+        hwspinlock_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hwspinlock_bus";
+            linux,phandle = <0x00000010>;
+            phandle = <0x00000010>;
+        };
+        msgbox {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "msgbox";
+            linux,phandle = <0x0000000e>;
+            phandle = <0x0000000e>;
+        };
+        lvds {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "lvds";
+            linux,phandle = <0x0000006c>;
+            phandle = <0x0000006c>;
+        };
+        uart0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart0";
+            linux,phandle = <0x00000018>;
+            phandle = <0x00000018>;
+        };
+        uart1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart1";
+            linux,phandle = <0x0000001b>;
+            phandle = <0x0000001b>;
+        };
+        uart2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart2";
+            linux,phandle = <0x0000001e>;
+            phandle = <0x0000001e>;
+        };
+        uart3 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart3";
+            linux,phandle = <0x00000021>;
+            phandle = <0x00000021>;
+        };
+        uart4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart4";
+            linux,phandle = <0x00000024>;
+            phandle = <0x00000024>;
+        };
+        scr {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "scr";
+            linux,phandle = <0x0000007d>;
+            phandle = <0x0000007d>;
+        };
+        twi0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi0";
+            linux,phandle = <0x00000027>;
+            phandle = <0x00000027>;
+        };
+        twi1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi1";
+            linux,phandle = <0x0000002a>;
+            phandle = <0x0000002a>;
+        };
+        twi2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi2";
+            linux,phandle = <0x0000002d>;
+            phandle = <0x0000002d>;
+        };
+        twi3 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi3";
+        };
+        pio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "pio";
+            linux,phandle = <0x0000000a>;
+            phandle = <0x0000000a>;
+        };
+        cpurcir {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurcir";
+            linux,phandle = <0x00000012>;
+            phandle = <0x00000012>;
+        };
+        cpurpio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurpio";
+            linux,phandle = <0x00000009>;
+            phandle = <0x00000009>;
+        };
+        cpurpll_peri0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurpll_peri0";
+        };
+        cpurcpus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurcpus";
+        };
+        cpurahbs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurahbs";
+        };
+        cpurapbs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurapbs";
+        };
+        losc_out {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "losc_out";
+            linux,phandle = <0x00000098>;
+            phandle = <0x00000098>;
+        };
+    };
+    soc@01c00000 {
+        compatible = "simple-bus";
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000002>;
+        ranges;
+        device_type = "soc";
+        pinctrl@01f02c00 {
+            compatible = "allwinner,sun50i-r-pinctrl";
+            reg = <0x00000000 0x01f02c00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000002d 0x00000004>;
+            clocks = <0x00000009>;
+            device_type = "r_pio";
+            gpio-controller;
+            interrupt-controller;
+            #interrupt-cells = <0x00000002>;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            linux,phandle = <0x00000079>;
+            phandle = <0x00000079>;
+            s_cir0@0 {
+                allwinner,pins = "PL11";
+                allwinner,function = "s_cir0";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000011>;
+                phandle = <0x00000011>;
+            };
+            spwm0@0 {
+                linux,phandle = <0x000000af>;
+                phandle = <0x000000af>;
+                allwinner,pins = "PL10";
+                allwinner,function = "spwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spwm0@1 {
+                linux,phandle = <0x000000b0>;
+                phandle = <0x000000b0>;
+                allwinner,pins = "PL10";
+                allwinner,function = "spwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_uart0@0 {
+                linux,phandle = <0x000000b6>;
+                phandle = <0x000000b6>;
+                allwinner,pins = "PL2", "PL3";
+                allwinner,function = "s_uart0";
+                allwinner,pname = "s_uart0_tx", "s_uart0_rx";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_rsb0@0 {
+                linux,phandle = <0x000000b7>;
+                phandle = <0x000000b7>;
+                allwinner,pins = "PL0", "PL1";
+                allwinner,function = "s_rsb0";
+                allwinner,pname = "s_rsb0_sck", "s_rsb0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_jtag0@0 {
+                linux,phandle = <0x000000b8>;
+                phandle = <0x000000b8>;
+                allwinner,pins = "PL4", "PL5", "PL6", "PL7";
+                allwinner,function = "s_jtag0";
+                allwinner,pname = "s_jtag0_tms", "s_jtag0_tck", "s_jtag0_tdo", "s_jtag0_tdi";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+        };
+        pinctrl@01c20800 {
+            compatible = "allwinner,sun50i-pinctrl";
+            reg = <0x00000000 0x01c20800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000000b 0x00000004 0x00000000 0x00000011 0x00000004 0x00000000 0x00000015 0x00000004>;
+            device_type = "pio";
+            clocks = <0x0000000a>;
+            gpio-controller;
+            interrupt-controller;
+            #interrupt-cells = <0x00000002>;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            linux,phandle = <0x00000030>;
+            phandle = <0x00000030>;
+            uart0@1 {
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000001a>;
+                phandle = <0x0000001a>;
+            };
+            uart1@1 {
+                allwinner,pins = "PG6", "PG7", "PG8", "PG9";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000001d>;
+                phandle = <0x0000001d>;
+            };
+            uart2@1 {
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000020>;
+                phandle = <0x00000020>;
+            };
+            uart3@1 {
+                allwinner,pins = "PH4", "PH5", "PH6", "PH7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000023>;
+                phandle = <0x00000023>;
+            };
+            uart4@1 {
+                allwinner,pins = "PD2", "PD3", "PD4", "PD5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000026>;
+                phandle = <0x00000026>;
+            };
+            twi0@1 {
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000029>;
+                phandle = <0x00000029>;
+            };
+            twi1@1 {
+                allwinner,pins = "PH2", "PH3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000002c>;
+                phandle = <0x0000002c>;
+            };
+            twi2@1 {
+                allwinner,pins = "PE14", "PE15";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000002f>;
+                phandle = <0x0000002f>;
+            };
+            spi0@2 {
+                allwinner,pins = "PC3", "PC2", "PC0", "PC1";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000055>;
+                phandle = <0x00000055>;
+            };
+            spi1@2 {
+                allwinner,pins = "PD0", "PD1", "PD2", "PD3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000059>;
+                phandle = <0x00000059>;
+            };
+            sdc0@1 {
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000064>;
+                phandle = <0x00000064>;
+            };
+            sdc1@1 {
+                allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000069>;
+                phandle = <0x00000069>;
+            };
+            sdc2@1 {
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000005f>;
+                phandle = <0x0000005f>;
+            };
+            daudio0@0 {
+                allwinner,pins = "PB6", "PB3", "PB4", "PB5", "PB7";
+                allwinner,function = "pcm0";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000043>;
+                phandle = <0x00000043>;
+            };
+            daudio0_sleep@0 {
+                allwinner,pins = "PB6", "PB3", "PB4", "PB5", "PB7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000044>;
+                phandle = <0x00000044>;
+            };
+            daudio1@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "pcm1";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000045>;
+                phandle = <0x00000045>;
+            };
+            daudio1_sleep@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000046>;
+                phandle = <0x00000046>;
+            };
+            aif3@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "aif3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000003e>;
+                phandle = <0x0000003e>;
+            };
+            aif2_sleep@0 {
+                allwinner,pins = "PB6", "PB4", "PB5", "PB7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000003f>;
+                phandle = <0x0000003f>;
+            };
+            aif3_sleep@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000040>;
+                phandle = <0x00000040>;
+            };
+            spdif@0 {
+                allwinner,pins = "PH8";
+                allwinner,function = "spdif0";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000004a>;
+                phandle = <0x0000004a>;
+            };
+            spdif_sleep@0 {
+                allwinner,pins = "PH8";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000004b>;
+                phandle = <0x0000004b>;
+            };
+            csi0_sleep@0 {
+                allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13";
+                allwinner,pname = "csi0_pck", "csi0_hsync", "csi0_vsync", "csi0_d0", "csi0_d1", "csi0_d2", "csi0_d3", "csi0_d4", "csi0_d5", "csi0_d6", "csi0_d7", "csi0_sck", "csi0_sda";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                allwinner,data = <0x00000000>;
+                linux,phandle = <0x00000077>;
+                phandle = <0x00000077>;
+            };
+            smartcard@0 {
+                allwinner,pins = "PB1", "PB4", "PB5", "PB6", "PB7";
+                allwinner,function = "sim0";
+                allwinner,muxsel = <0x00000005>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000007f>;
+                phandle = <0x0000007f>;
+            };
+            nand0@2 {
+                allwinner,pins = "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PC18";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000083>;
+                phandle = <0x00000083>;
+            };
+            card0_boot_para@0 {
+                linux,phandle = <0x00000099>;
+                phandle = <0x00000099>;
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "card0_boot_para";
+                allwinner,pname = "sdc_d1", "sdc_d0", "sdc_clk", "sdc_cmd", "sdc_d3", "sdc_d2";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            card2_boot_para@0 {
+                linux,phandle = <0x0000009a>;
+                phandle = <0x0000009a>;
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "card2_boot_para";
+                allwinner,pname = "sdc_ds", "sdc_clk", "sdc_cmd", "sdc_d0", "sdc_d1", "sdc_d2", "sdc_d3", "sdc_d4", "sdc_d5", "sdc_d6", "sdc_d7", "sdc_emmc_rst";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi_para@0 {
+                linux,phandle = <0x0000009b>;
+                phandle = <0x0000009b>;
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "twi_para";
+                allwinner,pname = "twi_scl", "twi_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart_para@0 {
+                linux,phandle = <0x0000009c>;
+                phandle = <0x0000009c>;
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "uart_para";
+                allwinner,pname = "uart_debug_tx", "uart_debug_rx";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            jtag_para@0 {
+                linux,phandle = <0x0000009d>;
+                phandle = <0x0000009d>;
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "jtag_para";
+                allwinner,pname = "jtag_ms", "jtag_ck", "jtag_do", "jtag_di";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            gmac0@0 {
+                linux,phandle = <0x0000009e>;
+                phandle = <0x0000009e>;
+                allwinner,pins = "PD18", "PD17", "PD19", "PD20", "PD11", "PD10", "PD13", "PD22", "PD23";
+                allwinner,function = "gmac0";
+                allwinner,pname = "gmac_txd0", "gmac_txd1", "gmac_txclk", "gmac_txen", "gmac_rxd0", "gmac_rxd1", "gmac_rxdv", "gmac_mdc", "gmac_mdio";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi0@0 {
+                linux,phandle = <0x0000009f>;
+                phandle = <0x0000009f>;
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "twi0";
+                allwinner,pname = "twi0_scl", "twi0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi1@0 {
+                linux,phandle = <0x000000a0>;
+                phandle = <0x000000a0>;
+                allwinner,pins = "PH2", "PH3";
+                allwinner,function = "twi1";
+                allwinner,pname = "twi1_scl", "twi1_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi2@0 {
+                linux,phandle = <0x000000a1>;
+                phandle = <0x000000a1>;
+                allwinner,pins = "PE14", "PE15";
+                allwinner,function = "twi2";
+                allwinner,pname = "twi2_scl", "twi2_sda";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart0@0 {
+                linux,phandle = <0x000000a2>;
+                phandle = <0x000000a2>;
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "uart0";
+                allwinner,pname = "uart0_tx", "uart0_rx";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart1@0 {
+                linux,phandle = <0x000000a3>;
+                phandle = <0x000000a3>;
+                allwinner,pins = "PG6", "PG7", "PG8", "PG9";
+                allwinner,function = "uart1";
+                allwinner,pname = "uart1_tx", "uart1_rx", "uart1_rts", "uart1_cts";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart2@0 {
+                linux,phandle = <0x000000a4>;
+                phandle = <0x000000a4>;
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "uart2";
+                allwinner,pname = "uart2_tx", "uart2_rx", "uart2_rts", "uart2_cts";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart3@0 {
+                linux,phandle = <0x000000a5>;
+                phandle = <0x000000a5>;
+                allwinner,pins = "PD0", "PD1";
+                allwinner,function = "uart3";
+                allwinner,pname = "uart3_tx", "uart3_rx";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart4@0 {
+                linux,phandle = <0x000000a6>;
+                phandle = <0x000000a6>;
+                allwinner,pins = "PD2", "PD3", "PD4", "PD5";
+                allwinner,function = "uart4";
+                allwinner,pname = "uart4_tx", "uart4_rx", "uart4_rts", "uart4_cts";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi0@0 {
+                linux,phandle = <0x000000a7>;
+                phandle = <0x000000a7>;
+                allwinner,pins = "PC3";
+                allwinner,function = "spi0";
+                allwinner,pname = "spi0_cs0";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi0@1 {
+                linux,phandle = <0x000000a8>;
+                phandle = <0x000000a8>;
+                allwinner,pins = "PC2", "PC0", "PC1";
+                allwinner,function = "spi0";
+                allwinner,pname = "spi0_sclk", "spi0_mosi", "spi0_miso";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi1@0 {
+                linux,phandle = <0x000000a9>;
+                phandle = <0x000000a9>;
+                allwinner,pins = "PD0";
+                allwinner,function = "spi1";
+                allwinner,pname = "spi1_cs0";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi1@1 {
+                linux,phandle = <0x000000aa>;
+                phandle = <0x000000aa>;
+                allwinner,pins = "PD1", "PD2", "PD3";
+                allwinner,function = "spi1";
+                allwinner,pname = "spi1_sclk", "spi1_mosi", "spi1_miso";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            nand0@0 {
+                linux,phandle = <0x000000ab>;
+                phandle = <0x000000ab>;
+                allwinner,pins = "PC0", "PC1", "PC2", "PC5", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "nand0";
+                allwinner,pname = "nand0_we", "nand0_ale", "nand0_cle", "nand0_nre", "nand0_d0", "nand0_d1", "nand0_d2", "nand0_d3", "nand0_d4", "nand0_d5", "nand0_d6", "nand0_d7", "nand0_ndqs";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0x00000001>;
+                allwinner,data = <0xffffffff>;
+            };
+            nand0@1 {
+                linux,phandle = <0x000000ac>;
+                phandle = <0x000000ac>;
+                allwinner,pins = "PC3", "PC4", "PC6", "PC7", "PC17", "PC18";
+                allwinner,function = "nand0";
+                allwinner,pname = "nand0_ce1", "nand0_ce0", "nand0_rb0", "nand0_rb1", "nand0_ce2", "nand0_ce3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000001>;
+                allwinner,data = <0xffffffff>;
+            };
+            pwm0@0 {
+                linux,phandle = <0x000000ad>;
+                phandle = <0x000000ad>;
+                allwinner,pins = "PD22";
+                allwinner,function = "pwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            pwm0@1 {
+                linux,phandle = <0x000000ae>;
+                phandle = <0x000000ae>;
+                allwinner,pins = "PD22";
+                allwinner,function = "pwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            csi0@0 {
+                linux,phandle = <0x000000b1>;
+                phandle = <0x000000b1>;
+                allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13";
+                allwinner,function = "csi0";
+                allwinner,pname = "csi0_pck", "csi0_hsync", "csi0_vsync", "csi0_d0", "csi0_d1", "csi0_d2", "csi0_d3", "csi0_d4", "csi0_d5", "csi0_d6", "csi0_d7", "csi0_sck", "csi0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc0@0 {
+                linux,phandle = <0x000000b2>;
+                phandle = <0x000000b2>;
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "sdc0";
+                allwinner,pname = "sdc0_d1", "sdc0_d0", "sdc0_clk", "sdc0_cmd", "sdc0_d3", "sdc0_d2";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc1@0 {
+                linux,phandle = <0x000000b3>;
+                phandle = <0x000000b3>;
+                allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
+                allwinner,function = "sdc1";
+                allwinner,pname = "sdc1_clk", "sdc1_cmd", "sdc1_d0", "sdc1_d1", "sdc1_d2", "sdc1_d3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc2@0 {
+                linux,phandle = <0x000000b4>;
+                phandle = <0x000000b4>;
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "sdc2";
+                allwinner,pname = "sdc2_ds", "sdc2_clk", "sdc2_cmd", "sdc2_d0", "sdc2_d1", "sdc2_d2", "sdc2_d3", "sdc2_d4", "sdc2_d5", "sdc2_d6", "sdc2_d7", "sdc2_emmc_rst";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            codec@0 {
+                linux,phandle = <0x000000b5>;
+                phandle = <0x000000b5>;
+                allwinner,pins = "PH7";
+                allwinner,function = "codec";
+                allwinner,pname = "gpio-spk";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            Vdevice@0 {
+                linux,phandle = <0x000000b9>;
+                phandle = <0x000000b9>;
+                allwinner,pins = "PB1", "PB2";
+                allwinner,function = "Vdevice";
+                allwinner,pname = "Vdevice_0", "Vdevice_1";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+        };
+        pinctrl@0 {
+            compatible = "allwinner,axp-pinctrl";
+            gpio-controller;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            device_type = "axp_pio";
+            linux,phandle = <0x00000031>;
+            phandle = <0x00000031>;
+        };
+        dma-controller@01c02000 {
+            compatible = "allwinner,sun50i-dma";
+            reg = <0x00000000 0x01c02000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000032 0x00000004>;
+            clocks = <0x0000000b>;
+            #dma-cells = <0x00000001>;
+        };
+        mbus-controller@01c62000 {
+            compatible = "allwinner,sun50i-mbus";
+            reg = <0x00000000 0x01c62000 0x00000000 0x00000110>;
+            #mbus-cells = <0x00000001>;
+        };
+        arisc {
+            compatible = "allwinner,sunxi-arisc";
+            #address-cells = <0x00000002>;
+            #size-cells = <0x00000002>;
+            clocks = <0x0000000c 0x0000000d 0x00000006 0x00000004>;
+            clock-names = "losc", "iosc", "hosc", "pll_periph0";
+            powchk_used = <0x00000000>;
+            power_reg = <0x02309621>;
+            system_power = <0x00000032>;
+        };
+        arisc_space {
+            compatible = "allwinner,arisc_space";
+            space1 = <0x00040000 0x00000000 0x00014000>;
+            space2 = <0x40100000 0x00018000 0x00004000>;
+            space3 = <0x40104000 0x00000000 0x00001000>;
+            space4 = <0x40105000 0x00000000 0x00001000>;
+        };
+        standby_space {
+            compatible = "allwinner,standby_space";
+            space1 = <0x41020000 0x00000000 0x00000800>;
+        };
+        msgbox@1c17000 {
+            compatible = "allwinner,msgbox";
+            clocks = <0x0000000e>;
+            clock-names = "clk_msgbox";
+            reg = <0x00000000 0x01c17000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000031 0x00000001>;
+            status = "okay";
+        };
+        hwspinlock@1c18000 {
+            compatible = "allwinner,sunxi-hwspinlock";
+            clocks = <0x0000000f 0x00000010>;
+            clock-names = "clk_hwspinlock_rst", "clk_hwspinlock_bus";
+            reg = <0x00000000 0x01c18000 0x00000000 0x00001000>;
+            status = "okay";
+            num-locks = <0x00000008>;
+        };
+        s_cir@1f02000 {
+            compatible = "allwinner,s_cir";
+            reg = <0x00000000 0x01f02000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000025 0x00000004>;
+            pinctrl-names = "default";
+            pinctrl-0 = <0x00000011>;
+            clocks = <0x00000006 0x00000012>;
+            supply = "vcc-pl";
+            ir_power_key_code = <0x0000004d>;
+            ir_addr_code = <0x00004040>;
+            status = "okay";
+            device_type = "s_cir0";
+        };
+        s_uart@1f02800 {
+            compatible = "allwinner,s_uart";
+            reg = <0x00000000 0x01f02800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000026 0x00000004>;
+            pinctrl-names = "default";
+            status = "okay";
+            device_type = "s_uart0";
+            pinctrl-0 = <0x000000b6>;
+        };
+        s_rsb@1f03400 {
+            compatible = "allwinner,s_rsb";
+            reg = <0x00000000 0x01f03400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000027 0x00000004>;
+            pinctrl-names = "default";
+            status = "okay";
+            device_type = "s_rsb0";
+            pinctrl-0 = <0x000000b7>;
+        };
+        s_jtag0 {
+            compatible = "allwinner,s_jtag";
+            pinctrl-names = "default";
+            status = "disabled";
+            device_type = "s_jtag0";
+            pinctrl-0 = <0x000000b8>;
+        };
+        timer@1c20c00 {
+            compatible = "allwinner,sunxi-timer";
+            device_type = "timer";
+            reg = <0x00000000 0x01c20c00 0x00000000 0x00000090>;
+            interrupts = <0x00000000 0x00000012 0x00000001>;
+            clock-frequency = <0x016e3600>;
+            timer-prescale = <0x00000010>;
+        };
+        rtc@01f00000 {
+            compatible = "allwinner,sun50i-rtc";
+            device_type = "rtc";
+            reg = <0x00000000 0x01f00000 0x00000000 0x00000218>;
+            interrupts = <0x00000000 0x00000028 0x00000004>;
+            gpr_offset = <0x00000100>;
+            gpr_len = <0x00000004>;
+        };
+        ve@01c0e000 {
+            compatible = "allwinner,sunxi-cedar-ve";
+            reg = <0x00000000 0x01c0e000 0x00000000 0x00001000 0x00000000 0x01c00000 0x00000000 0x00000010 0x00000000 0x01c20000 0x00000000 0x00000800>;
+            interrupts = <0x00000000 0x0000003a 0x00000004>;
+            clocks = <0x00000016 0x00000017>;
+        };
+        uart@01c28000 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart0";
+            reg = <0x00000000 0x01c28000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000000 0x00000004>;
+            clocks = <0x00000018>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000001a>;
+            uart0_port = <0x00000000>;
+            uart0_type = <0x00000002>;
+            status = "okay";
+            pinctrl-0 = <0x000000a2>;
+        };
+        uart@01c28400 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart1";
+            reg = <0x00000000 0x01c28400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000001 0x00000004>;
+            clocks = <0x0000001b>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000001d>;
+            uart1_port = <0x00000001>;
+            uart1_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a3>;
+        };
+        uart@01c28800 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart2";
+            reg = <0x00000000 0x01c28800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000002 0x00000004>;
+            clocks = <0x0000001e>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000020>;
+            uart2_port = <0x00000002>;
+            uart2_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a4>;
+        };
+        uart@01c28c00 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart3";
+            reg = <0x00000000 0x01c28c00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000003 0x00000004>;
+            clocks = <0x00000021>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000023>;
+            uart3_port = <0x00000003>;
+            uart3_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a5>;
+        };
+        uart@01c29000 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart4";
+            reg = <0x00000000 0x01c29000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000004 0x00000004>;
+            clocks = <0x00000024>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000026>;
+            uart4_port = <0x00000004>;
+            uart4_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a6>;
+        };
+        twi@0x01c2ac00 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi0";
+            reg = <0x00000000 0x01c2ac00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000006 0x00000004>;
+            clocks = <0x00000027>;
+            clock-frequency = <0x00061a80>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000029>;
+            status = "okay";
+            pinctrl-0 = <0x0000009f>;
+        };
+        twi@0x01c2b000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi1";
+            reg = <0x00000000 0x01c2b000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000007 0x00000004>;
+            clocks = <0x0000002a>;
+            clock-frequency = <0x00030d40>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000002c>;
+            status = "okay";
+            pinctrl-0 = <0x000000a0>;
+        };
+        twi@0x01c2b400 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi2";
+            reg = <0x00000000 0x01c2b400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000008 0x00000004>;
+            clocks = <0x0000002d>;
+            clock-frequency = <0x00030d40>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000002f>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a1>;
+        };
+        usbc0@0 {
+            device_type = "usbc0";
+            compatible = "allwinner,sunxi-otg-manager";
+            usb_port_type = <0x00000001>;
+            usb_detect_type = <0x00000000>;
+            usb_host_init_state = <0x00000001>;
+            usb_regulator_io = "nocare";
+            usb_wakeup_suspend = <0x00000001>;
+            usb_luns = <0x00000003>;
+            usb_serial_unique = <0x00000001>;
+            usb_serial_number = "20080411";
+            rndis_wceis = <0x00000001>;
+            status = "okay";
+            usb_id_gpio;
+            usb_det_vbus_gpio;
+            usb_drv_vbus_gpio;
+        };
+        udc-controller@0x01c19000 {
+            compatible = "allwinner,sunxi-udc";
+            reg = <0x00000000 0x01c19000 0x00000000 0x00001000 0x00000000 0x01c00000 0x00000000 0x00000100>;
+            interrupts = <0x00000000 0x00000047 0x00000004>;
+            clocks = <0x00000032 0x00000033>;
+            status = "okay";
+        };
+        ehci0-controller@0x01c1a000 {
+            compatible = "allwinner,sunxi-ehci0";
+            reg = <0x00000000 0x01c1a000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000048 0x00000004>;
+            clocks = <0x00000032 0x00000034>;
+            hci_ctrl_no = <0x00000000>;
+            status = "okay";
+        };
+        ohci0-controller@0x01c1a400 {
+            compatible = "allwinner,sunxi-ohci0";
+            reg = <0x00000000 0x01c1a000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000049 0x00000004>;
+            clocks = <0x00000032 0x00000035>;
+            hci_ctrl_no = <0x00000000>;
+            status = "okay";
+        };
+        usbc1@0 {
+            device_type = "usbc1";
+            usb_host_init_state = <0x00000001>;
+            usb_regulator_io = "nocare";
+            usb_wakeup_suspend = <0x00000001>;
+            usb_hsic_used = <0x00000000>;
+            usb_hsic_regulator_io = "vcc-hsic-12";
+            usb_hsic_ctrl = <0x00000000>;
+            usb_hsic_usb3503_flag = <0x00000000>;
+            status = "okay";
+            usb_port_type = <0x00000001>;
+            usb_detect_type = <0x00000000>;
+            usb_drv_vbus_gpio;
+            usb_hsic_rdy_gpio;
+            usb_hsic_hub_connect_gpio;
+            usb_hsic_int_n_gpio;
+            usb_hsic_reset_n_gpio;
+        };
+        ehci1-controller@0x01c1b000 {
+            compatible = "allwinner,sunxi-ehci1";
+            reg = <0x00000000 0x01c1b000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000004a 0x00000004>;
+            clocks = <0x00000036 0x00000037 0x00000038 0x00000039 0x0000003a>;
+            hci_ctrl_no = <0x00000001>;
+            status = "okay";
+        };
+        ohci1-controller@0x01c1b400 {
+            compatible = "allwinner,sunxi-ohci1";
+            reg = <0x00000000 0x01c1b000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000004b 0x00000004>;
+            clocks = <0x00000036 0x0000003b>;
+            hci_ctrl_no = <0x00000001>;
+            status = "okay";
+        };
+        codec@0x01c22c00 {
+            compatible = "allwinner,sunxi-internal-codec";
+            reg = <0x00000000 0x01c22c00 0x00000000 0x00000478 0x00000000 0x01f015c0 0x00000000 0x00000000>;
+            clocks = <0x0000003c>;
+            pinctrl-names = "aif2-default", "aif3-default", "aif2-sleep", "aif3-sleep";
+            pinctrl-1 = <0x0000003e>;
+            pinctrl-2 = <0x0000003f>;
+            pinctrl-3 = <0x00000040>;
+            gpio-spk = <0x00000030 0x00000007 0x00000007 0x00000001 0x00000001 0x00000001 0x00000001>;
+            headphonevol = <0x0000003b>;
+            spkervol = <0x0000001a>;
+            earpiecevol = <0x0000001e>;
+            maingain = <0x00000004>;
+            headsetmicgain = <0x00000004>;
+            adcagc_cfg = <0x00000000>;
+            adcdrc_cfg = <0x00000000>;
+            adchpf_cfg = <0x00000000>;
+            dacdrc_cfg = <0x00000000>;
+            dachpf_cfg = <0x00000000>;
+            aif1_lrlk_div = <0x00000040>;
+            aif2_lrlk_div = <0x00000040>;
+            aif2config = <0x00000000>;
+            aif3config = <0x00000000>;
+            pa_sleep_time = <0x0000015e>;
+            dac_digital_vol = <0x0000a0a0>;
+            status = "okay";
+            linux,phandle = <0x0000004d>;
+            phandle = <0x0000004d>;
+            device_type = "codec";
+            pinctrl-0 = <0x000000b5>;
+        };
+        i2s0-controller@0x01c22c00 {
+            compatible = "allwinner,sunxi-internal-i2s";
+            reg = <0x00000000 0x01c22c00 0x00000000 0x00000478>;
+            clocks = <0x00000002 0x00000041>;
+            status = "okay";
+            linux,phandle = <0x0000004c>;
+            phandle = <0x0000004c>;
+            device_type = "i2s";
+        };
+        daudio@0x01c22000 {
+            compatible = "allwinner,sunxi-daudio";
+            reg = <0x00000000 0x01c22000 0x00000000 0x00000058>;
+            clocks = <0x00000002 0x00000042>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x00000043>;
+            pinctrl-1 = <0x00000044>;
+            pcm_lrck_period = <0x00000020>;
+            pcm_lrckr_period = <0x00000001>;
+            slot_width_select = <0x00000020>;
+            pcm_lsb_first = <0x00000000>;
+            tx_data_mode = <0x00000000>;
+            rx_data_mode = <0x00000000>;
+            daudio_master = <0x00000004>;
+            audio_format = <0x00000001>;
+            signal_inversion = <0x00000001>;
+            frametype = <0x00000000>;
+            tdm_config = <0x00000001>;
+            tdm_num = <0x00000000>;
+            status = "disabled";
+            linux,phandle = <0x0000004e>;
+            phandle = <0x0000004e>;
+            device_type = "daudio0";
+        };
+        daudio@0x01c22400 {
+            compatible = "allwinner,sunxi-daudio";
+            reg = <0x00000000 0x01c22400 0x00000000 0x00000058>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x00000045>;
+            pinctrl-1 = <0x00000046>;
+            clocks = <0x00000002 0x00000047>;
+            pcm_lrck_period = <0x00000020>;
+            pcm_lrckr_period = <0x00000001>;
+            slot_width_select = <0x00000020>;
+            pcm_lsb_first = <0x00000000>;
+            tx_data_mode = <0x00000000>;
+            rx_data_mode = <0x00000000>;
+            daudio_master = <0x00000004>;
+            audio_format = <0x00000001>;
+            signal_inversion = <0x00000001>;
+            frametype = <0x00000000>;
+            tdm_config = <0x00000001>;
+            tdm_num = <0x00000001>;
+            status = "disabled";
+            linux,phandle = <0x0000004f>;
+            phandle = <0x0000004f>;
+            device_type = "daudio1";
+        };
+        daudio@0x01c22800 {
+            compatible = "allwinner,sunxi-tdmhdmi";
+            reg = <0x00000000 0x01c22800 0x00000000 0x00000058>;
+            clocks = <0x00000002 0x00000048>;
+            status = "okay";
+            linux,phandle = <0x00000050>;
+            phandle = <0x00000050>;
+            device_type = "daudio2";
+        };
+        spdif-controller@0x01c21000 {
+            compatible = "allwinner,sunxi-spdif";
+            reg = <0x00000000 0x01c21000 0x00000000 0x00000038>;
+            clocks = <0x00000002 0x00000049>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x0000004a>;
+            pinctrl-1 = <0x0000004b>;
+            status = "disabled";
+            linux,phandle = <0x00000051>;
+            phandle = <0x00000051>;
+            device_type = "spdif";
+        };
+        sound@0 {
+            compatible = "allwinner,sunxi-codec-machine";
+            interrupts = <0x00000000 0x0000001c 0x00000004>;
+            sunxi,i2s-controller = <0x0000004c>;
+            sunxi,audio-codec = <0x0000004d>;
+            aif2fmt = <0x00000003>;
+            aif3fmt = <0x00000003>;
+            aif2master = <0x00000001>;
+            hp_detect_case = <0x00000001>;
+            status = "okay";
+            device_type = "sndcodec";
+        };
+        sound@1 {
+            compatible = "allwinner,sunxi-daudio0-machine";
+            sunxi,daudio0-controller = <0x0000004e>;
+            status = "disabled";
+            device_type = "snddaudio0";
+        };
+        sound@2 {
+            compatible = "allwinner,sunxi-daudio1-machine";
+            sunxi,daudio1-controller = <0x0000004f>;
+            status = "disabled";
+            device_type = "snddaudio1";
+        };
+        sound@3 {
+            compatible = "allwinner,sunxi-hdmi-machine";
+            sunxi,hdmi-controller = <0x00000050>;
+            status = "okay";
+            device_type = "sndhdmi";
+        };
+        sound@4 {
+            compatible = "allwinner,sunxi-spdif-machine";
+            sunxi,spdif-controller = <0x00000051>;
+            status = "disabled";
+            device_type = "sndspdif";
+        };
+        spi@01c68000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-spi";
+            device_type = "spi0";
+            reg = <0x00000000 0x01c68000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000041 0x00000004>;
+            clocks = <0x00000004 0x00000052>;
+            clock-frequency = <0x05f5e100>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000055>;
+            spi0_cs_number = <0x00000001>;
+            spi0_cs_bitmap = <0x00000001>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a7 0x000000a8>;
+        };
+        spi@01c69000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-spi";
+            device_type = "spi1";
+            reg = <0x00000000 0x01c69000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000042 0x00000004>;
+            clocks = <0x00000004 0x00000056>;
+            clock-frequency = <0x05f5e100>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000059>;
+            spi1_cs_number = <0x00000001>;
+            spi1_cs_bitmap = <0x00000001>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a9 0x000000aa>;
+        };
+        sdmmc@01C11000 {
+            compatible = "allwinner,sun50i-sdmmc2";
+            device_type = "sdc2";
+            reg = <0x00000000 0x01c11000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003e 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x0000005b 0x0000005c 0x0000005d>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000005f>;
+            bus-width = <0x00000008>;
+            max-frequency = <0x05f5e100>;
+            sdc_tm4_sm0_freq0 = <0x00000000>;
+            sdc_tm4_sm0_freq1 = <0x00000000>;
+            sdc_tm4_sm1_freq0 = <0x00000000>;
+            sdc_tm4_sm1_freq1 = <0x00000000>;
+            sdc_tm4_sm2_freq0 = <0x00000000>;
+            sdc_tm4_sm2_freq1 = <0x00000000>;
+            sdc_tm4_sm3_freq0 = <0x05000000>;
+            sdc_tm4_sm3_freq1 = <0x00000405>;
+            sdc_tm4_sm4_freq0 = <0x00050000>;
+            sdc_tm4_sm4_freq1 = <0x00000408>;
+            status = "disabled";
+            non-removable;
+            pinctrl-0 = <0x000000b4>;
+            cd-gpios;
+            sunxi-power-save-mode;
+            sunxi-dis-signal-vol-sw;
+            mmc-ddr-1_8v;
+            mmc-hs200-1_8v;
+            mmc-hs400-1_8v;
+            vmmc = "vcc-emmc";
+            vqmmc = "vcc-lpddr";
+            vdmmc = "none";
+        };
+        sdmmc@01c0f000 {
+            compatible = "allwinner,sun50i-sdmmc0";
+            device_type = "sdc0";
+            reg = <0x00000000 0x01c0f000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003c 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x00000060 0x00000061 0x00000062>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000064>;
+            max-frequency = <0x02faf080>;
+            bus-width = <0x00000004>;
+            broken-cd;
+            status = "okay";
+            pinctrl-0 = <0x000000b2>;
+            cd-gpios = <0x00000030 0x00000005 0x00000006 0x00000000 0x00000001 0x00000002 0xffffffff>;
+            sunxi-power-save-mode;
+            vmmc = "none";
+            vqmmc = "none";
+            vdmmc = "vcc-sdc";
+        };
+        sdmmc@1C10000 {
+            compatible = "allwinner,sun50i-sdmmc1";
+            device_type = "sdc1";
+            reg = <0x00000000 0x01c10000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003d 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x00000065 0x00000066 0x00000067>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000069>;
+            max-frequency = <0x08f0d180>;
+            bus-width = <0x00000004>;
+            sunxi-dly-52M-ddr4 = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000002>;
+            sunxi-dly-104M = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000001>;
+            sunxi-dly-208M = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000001>;
+            status = "okay";
+            pinctrl-0 = <0x000000b3>;
+            sd-uhs-sdr50;
+            sd-uhs-ddr50;
+            sd-uhs-sdr104;
+            cap-sdio-irq;
+            keep-power-in-suspend;
+            ignore-pm-notify;
+        };
+        disp@01000000 {
+            compatible = "allwinner,sun50i-disp";
+            reg = <0x00000000 0x01000000 0x00000000 0x00300000 0x00000000 0x01c0c000 0x00000000 0x000017fc 0x00000000 0x01ca0000 0x00000000 0x000010fc>;
+            interrupts = <0x00000000 0x00000056 0x00000104 0x00000000 0x00000057 0x00000104 0x00000000 0x00000059 0x00000104>;
+            clocks = <0x0000006a 0x0000006b 0x0000006c 0x0000006d 0x0000006e>;
+            status = "okay";
+            device_type = "disp";
+            disp_init_enable = <0x00000001>;
+            disp_mode = <0x00000000>;
+            screen0_output_type = <0x00000003>;
+            screen0_output_mode = <0x0000000a>;
+            screen1_output_type = <0x00000003>;
+            screen1_output_mode = <0x0000000a>;
+            fb0_format = <0x00000000>;
+            fb0_width = <0x00000000>;
+            fb0_height = <0x00000000>;
+            fb1_format = <0x00000000>;
+            fb1_width = <0x00000000>;
+            fb1_height = <0x00000000>;
+        };
+        lcd0@01c0c000 {
+            compatible = "allwinner,sunxi-lcd0";
+            pinctrl-names = "active", "sleep";
+            status = "okay";
+            device_type = "lcd0";
+            lcd_used = <0x00000000>;
+            lcd_driver_name = "mb709_mipi";
+            lcd_backlight = <0x00000032>;
+            lcd_if = <0x00000004>;
+            lcd_x = <0x00000400>;
+            lcd_y = <0x00000258>;
+            lcd_width = <0x00000000>;
+            lcd_height = <0x00000000>;
+            lcd_dclk_freq = <0x00000037>;
+            lcd_pwm_used = <0x00000001>;
+            lcd_pwm_ch = <0x00000010>;
+            lcd_pwm_freq = <0x0000c350>;
+            lcd_pwm_pol = <0x00000001>;
+            lcd_pwm_max_limit = <0x000000fa>;
+            lcd_hbp = <0x00000078>;
+            lcd_ht = <0x00000604>;
+            lcd_hspw = <0x00000014>;
+            lcd_vbp = <0x00000017>;
+            lcd_vt = <0x0000027b>;
+            lcd_vspw = <0x00000002>;
+            lcd_dsi_if = <0x00000002>;
+            lcd_dsi_lane = <0x00000004>;
+            lcd_dsi_format = <0x00000000>;
+            lcd_dsi_eotp = <0x00000000>;
+            lcd_dsi_vc = <0x00000000>;
+            lcd_dsi_te = <0x00000000>;
+            lcd_frm = <0x00000000>;
+            lcd_gamma_en = <0x00000000>;
+            lcd_bright_curve_en = <0x00000000>;
+            lcd_cmap_en = <0x00000000>;
+            lcd_bl_en = <0x00000030 0x00000007 0x0000000a 0x00000001 0x00000000 0xffffffff 0x00000001>;
+            lcd_bl_en_power = "none";
+            lcd_power = "vcc-mipi";
+            lcd_fix_power = "vcc-dsi-33";
+            lcd_gpio_0 = <0x00000030 0x00000003 0x00000018 0x00000001 0x00000000 0xffffffff 0x00000001>;
+        };
+        hdmi@01ee0000 {
+            compatible = "allwinner,sunxi-hdmi";
+            reg = <0x00000000 0x01ee0000 0x00000000 0x00020000>;
+            clocks = <0x0000006f 0x00000070>;
+            device_type = "hdmi";
+            status = "okay";
+            hdmi_power = "vcc-hdmi-33";
+            hdmi_hdcp_enable = <0x00000000>;
+            hdmi_cts_compatibility = <0x00000000>;
+        };
+        tr@01000000 {
+            compatible = "allwinner,sun50i-tr";
+            reg = <0x00000000 0x01000000 0x00000000 0x000200bc>;
+            interrupts = <0x00000000 0x00000060 0x00000104>;
+            clocks = <0x0000006a>;
+            status = "okay";
+        };
+        pwm@01c21400 {
+            compatible = "allwinner,sunxi-pwm";
+            reg = <0x00000000 0x01c21400 0x00000000 0x0000003c>;
+            pwm-number = <0x00000001>;
+            pwm-base = <0x00000000>;
+            pwms = <0x00000071>;
+        };
+        pwm0@01c21400 {
+            compatible = "allwinner,sunxi-pwm0";
+            pinctrl-names = "active", "sleep";
+            reg_base = <0x01c21400>;
+            reg_busy_offset = <0x00000000>;
+            reg_busy_shift = <0x0000001c>;
+            reg_enable_offset = <0x00000000>;
+            reg_enable_shift = <0x00000004>;
+            reg_clk_gating_offset = <0x00000000>;
+            reg_clk_gating_shift = <0x00000006>;
+            reg_bypass_offset = <0x00000000>;
+            reg_bypass_shift = <0x00000009>;
+            reg_pulse_start_offset = <0x00000000>;
+            reg_pulse_start_shift = <0x00000008>;
+            reg_mode_offset = <0x00000000>;
+            reg_mode_shift = <0x00000007>;
+            reg_polarity_offset = <0x00000000>;
+            reg_polarity_shift = <0x00000005>;
+            reg_period_offset = <0x00000004>;
+            reg_period_shift = <0x00000010>;
+            reg_period_width = <0x00000010>;
+            reg_active_offset = <0x00000004>;
+            reg_active_shift = <0x00000000>;
+            reg_active_width = <0x00000010>;
+            reg_prescal_offset = <0x00000000>;
+            reg_prescal_shift = <0x00000000>;
+            reg_prescal_width = <0x00000004>;
+            linux,phandle = <0x00000071>;
+            phandle = <0x00000071>;
+            device_type = "pwm0";
+            pwm_used = <0x00000000>;
+            pinctrl-0 = <0x000000ad>;
+            pinctrl-1 = <0x000000ae>;
+        };
+        s_pwm@1f03800 {
+            compatible = "allwinner,sunxi-s_pwm";
+            reg = <0x00000000 0x01f03800 0x00000000 0x0000003c>;
+            pwm-number = <0x00000001>;
+            pwm-base = <0x00000010>;
+            pwms = <0x00000072>;
+        };
+        spwm0@0x01f03800 {
+            compatible = "allwinner,sunxi-pwm16";
+            pinctrl-names = "active", "sleep";
+            reg_base = <0x01f03800>;
+            reg_busy_offset = <0x00000000>;
+            reg_busy_shift = <0x0000001c>;
+            reg_enable_offset = <0x00000000>;
+            reg_enable_shift = <0x00000004>;
+            reg_clk_gating_offset = <0x00000000>;
+            reg_clk_gating_shift = <0x00000006>;
+            reg_bypass_offset = <0x00000000>;
+            reg_bypass_shift = <0x00000009>;
+            reg_pulse_start_offset = <0x00000000>;
+            reg_pulse_start_shift = <0x00000008>;
+            reg_mode_offset = <0x00000000>;
+            reg_mode_shift = <0x00000007>;
+            reg_polarity_offset = <0x00000000>;
+            reg_polarity_shift = <0x00000005>;
+            reg_period_offset = <0x00000004>;
+            reg_period_shift = <0x00000010>;
+            reg_period_width = <0x00000010>;
+            reg_active_offset = <0x00000004>;
+            reg_active_shift = <0x00000000>;
+            reg_active_width = <0x00000010>;
+            reg_prescal_offset = <0x00000000>;
+            reg_prescal_shift = <0x00000000>;
+            reg_prescal_width = <0x00000004>;
+            linux,phandle = <0x00000072>;
+            phandle = <0x00000072>;
+            device_type = "spwm0";
+            s_pwm_used = <0x00000001>;
+            pinctrl-0 = <0x000000af>;
+            pinctrl-1 = <0x000000b0>;
+        };
+        boot_disp {
+            compatible = "allwinner,boot_disp";
+            device_type = "boot_disp";
+            output_disp = <0x00000000>;
+            output_type = <0x00000003>;
+            output_mode = <0x0000000a>;
+        };
+        cci@0x01cb3000 {
+            compatible = "allwinner,sunxi-csi_cci";
+            reg = <0x00000000 0x01cb3000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000055 0x00000004>;
+            status = "okay";
+        };
+        csi_res@0x01cb0000 {
+            compatible = "allwinner,sunxi-csi";
+            reg = <0x00000000 0x01cb0000 0x00000000 0x00001000>;
+            status = "okay";
+        };
+        vfe@0 {
+            device_type = "csi0";
+            compatible = "allwinner,sunxi-vfe";
+            interrupts = <0x00000000 0x00000054 0x00000004>;
+            clocks = <0x00000073 0x00000074 0x00000075 0x00000004 0x00000006 0x00000005>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000077>;
+            csi0_sensor_list = <0x00000000>;
+            status = "disabled";
+            pinctrl-0 = <0x000000b1>;
+            csi0_mck = <0x00000030 0x00000004 0x00000001 0x00000000 0x00000000 0x00000001 0x00000000>;
+            dev@0 {
+                csi0_dev0_mname = "s5k4ec";
+                csi0_dev0_twi_addr = <0x0000005a>;
+                csi0_dev0_pos = "rear";
+                csi0_dev0_isp_used = <0x00000001>;
+                csi0_dev0_fmt = <0x00000000>;
+                csi0_dev0_stby_mode = <0x00000001>;
+                csi0_dev0_vflip = <0x00000000>;
+                csi0_dev0_hflip = <0x00000000>;
+                csi0_dev0_iovdd = "iovdd-csi";
+                csi0_dev0_iovdd_vol = <0x002ab980>;
+                csi0_dev0_avdd = "avdd-csi";
+                csi0_dev0_avdd_vol = <0x002ab980>;
+                csi0_dev0_dvdd = "dvdd-csi-18";
+                csi0_dev0_dvdd_vol = <0x0016e360>;
+                csi0_dev0_flash_used = <0x00000000>;
+                csi0_dev0_flash_type = <0x00000002>;
+                csi0_dev0_flvdd = "vdd-csi-led";
+                csi0_dev0_flvdd_vol = <0x00325aa0>;
+                csi0_dev0_act_used = <0x00000000>;
+                csi0_dev0_act_name = "ad5820_act";
+                csi0_dev0_act_slave = <0x00000018>;
+                status = "disabled";
+                device_type = "csi0_dev0";
+                csi0_dev0_afvdd;
+                csi0_dev0_afvdd_vol;
+                csi0_dev0_power_en;
+                csi0_dev0_reset = <0x00000030 0x00000004 0x00000010 0x00000000 0x00000000 0x00000001 0x00000000>;
+                csi0_dev0_pwdn = <0x00000030 0x00000004 0x00000011 0x00000000 0x00000000 0x00000001 0x00000000>;
+                csi0_dev0_flash_en;
+                csi0_dev0_flash_mode;
+                csi0_dev0_af_pwdn;
+            };
+        };
+        vdevice@0 {
+            compatible = "allwinner,sun50i-vdevice";
+            pinctrl-names = "default";
+            test-gpios = <0x00000079 0x0000000b 0x00000000 0x00000001 0x00000002 0x00000003 0x00000004>;
+            status = "okay";
+            device_type = "Vdevice";
+            pinctrl-0 = <0x000000b9>;
+        };
+        ce@1c15000 {
+            compatible = "allwinner,sunxi-ce";
+            reg = <0x00000000 0x01c15000 0x00000000 0x00000080 0x00000000 0x01c15800 0x00000000 0x00000080>;
+            interrupts = <0x00000000 0x0000005e 0x0000ff01 0x00000000 0x00000050 0x0000ff01>;
+            clock-frequency = <0x11e1a300 0x0bebc200>;
+            clocks = <0x0000007a 0x0000007b>;
+        };
+        deinterlace@0x01e00000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-deinterlace";
+            reg = <0x00000000 0x01e00000 0x00000000 0x0000077c>;
+            interrupts = <0x00000000 0x0000005d 0x00000004>;
+            clocks = <0x0000007c 0x00000004>;
+            status = "okay";
+            device_type = "di";
+        };
+        smartcard@0x01c2c400 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-scr";
+            reg = <0x00000000 0x01c2c400 0x00000000 0x00000100>;
+            interrupts = <0x00000000 0x00000053 0x00000004>;
+            clocks = <0x0000007d 0x0000007e>;
+            clock-frequency = <0x016e3600>;
+            pinctrl-names = "default";
+            pinctrl-0 = <0x0000007f>;
+            status = "okay";
+            device_type = "smc";
+            smc_used;
+            smc_rst;
+            smc_vppen;
+            smc_vppp;
+            smc_det;
+            smc_vccen;
+            smc_sck;
+            smc_sda;
+        };
+        nmi@0x01f00c00 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-nmi";
+            reg = <0x00000000 0x01f00c00 0x00000000 0x00000050>;
+            nmi_irq_ctrl = <0x0000000c>;
+            nmi_irq_en = <0x00000040>;
+            nmi_irq_status = <0x00000010>;
+            nmi_irq_mask = <0x00000050>;
+            status = "okay";
+        };
+        pmu0@0 {
+            compatible = "allwinner,pmu0";
+            device_type = "pmu0";
+            pmu_batdeten = <0x00000001>;
+            pmu_init_chgend_rate = <0x00000014>;
+            pmu_init_chg_enabled = <0x00000001>;
+            pmu_init_adc_freq = <0x00000320>;
+            pmu_init_adcts_freq = <0x00000320>;
+            pmu_init_chg_pretime = <0x00000046>;
+            pmu_init_chg_csttime = <0x000002d0>;
+            pmu_batt_cap_correct = <0x00000001>;
+            pmu_chg_end_on_en = <0x00000000>;
+            pmu_pwroff_vol = <0x00000ce4>;
+            pmu_pwron_vol = <0x00000a28>;
+            pmu_powkey_off_delay_time = <0x00000000>;
+            pmu_pwrok_time = <0x00000040>;
+            pmu_reset_shutdown_en = <0x00000001>;
+            pmu_restvol_adjust_time = <0x0000003c>;
+            pmu_ocv_cou_adjust_time = <0x0000003c>;
+            pmu_vbusen_func = <0x00000001>;
+            pmu_reset = <0x00000000>;
+            pmu_IRQ_wakeup = <0x00000001>;
+            pmu_hot_shutdowm = <0x00000001>;
+            pmu_inshort = <0x00000000>;
+            pmu_bat_shutdown_ltf = <0x00000c80>;
+            pmu_bat_shutdown_htf = <0x000000ed>;
+            status = "okay";
+            pmu_id = <0x00000006>;
+            pmu_twi_addr = <0x00000034>;
+            pmu_twi_id = <0x00000001>;
+            pmu_irq_id = <0x00000040>;
+            pmu_chg_ic_temp = <0x00000000>;
+            pmu_battery_rdc = <0x00000058>;
+            pmu_battery_cap = <0x000012c0>;
+            pmu_runtime_chgcur = <0x000001c2>;
+            pmu_suspend_chgcur = <0x000005dc>;
+            pmu_shutdown_chgcur = <0x000005dc>;
+            pmu_init_chgvol = <0x00001068>;
+            pmu_ac_vol = <0x00000fa0>;
+            pmu_ac_cur = <0x00000dac>;
+            pmu_usbpc_vol = <0x00001130>;
+            pmu_usbpc_cur = <0x000001f4>;
+            pmu_battery_warning_level1 = <0x0000000f>;
+            pmu_battery_warning_level2 = <0x00000000>;
+            pmu_chgled_func = <0x00000000>;
+            pmu_chgled_type = <0x00000000>;
+            pmu_bat_para1 = <0x00000000>;
+            pmu_bat_para2 = <0x00000000>;
+            pmu_bat_para3 = <0x00000000>;
+            pmu_bat_para4 = <0x00000000>;
+            pmu_bat_para5 = <0x00000000>;
+            pmu_bat_para6 = <0x00000000>;
+            pmu_bat_para7 = <0x00000001>;
+            pmu_bat_para8 = <0x00000001>;
+            pmu_bat_para9 = <0x00000002>;
+            pmu_bat_para10 = <0x00000003>;
+            pmu_bat_para11 = <0x00000004>;
+            pmu_bat_para12 = <0x0000000a>;
+            pmu_bat_para13 = <0x00000011>;
+            pmu_bat_para14 = <0x0000001a>;
+            pmu_bat_para15 = <0x00000029>;
+            pmu_bat_para16 = <0x0000002e>;
+            pmu_bat_para17 = <0x00000033>;
+            pmu_bat_para18 = <0x00000038>;
+            pmu_bat_para19 = <0x0000003b>;
+            pmu_bat_para20 = <0x00000041>;
+            pmu_bat_para21 = <0x00000045>;
+            pmu_bat_para22 = <0x0000004b>;
+            pmu_bat_para23 = <0x0000004f>;
+            pmu_bat_para24 = <0x00000053>;
+            pmu_bat_para25 = <0x00000059>;
+            pmu_bat_para26 = <0x0000005f>;
+            pmu_bat_para27 = <0x00000062>;
+            pmu_bat_para28 = <0x00000064>;
+            pmu_bat_para29 = <0x00000064>;
+            pmu_bat_para30 = <0x00000064>;
+            pmu_bat_para31 = <0x00000064>;
+            pmu_bat_para32 = <0x00000064>;
+            pmu_bat_temp_enable = <0x00000001>;
+            pmu_bat_charge_ltf = <0x000008d5>;
+            pmu_bat_charge_htf = <0x00000184>;
+            pmu_bat_temp_para1 = <0x00001d2a>;
+            pmu_bat_temp_para2 = <0x00001180>;
+            pmu_bat_temp_para3 = <0x00000dbe>;
+            pmu_bat_temp_para4 = <0x00000ae2>;
+            pmu_bat_temp_para5 = <0x000008af>;
+            pmu_bat_temp_para6 = <0x000006fc>;
+            pmu_bat_temp_para7 = <0x000005a8>;
+            pmu_bat_temp_para8 = <0x000003c9>;
+            pmu_bat_temp_para9 = <0x00000298>;
+            pmu_bat_temp_para10 = <0x000001d2>;
+            pmu_bat_temp_para11 = <0x00000189>;
+            pmu_bat_temp_para12 = <0x0000014d>;
+            pmu_bat_temp_para13 = <0x0000011b>;
+            pmu_bat_temp_para14 = <0x000000f2>;
+            pmu_bat_temp_para15 = <0x000000b3>;
+            pmu_bat_temp_para16 = <0x00000086>;
+            pmu_powkey_off_time = <0x00001770>;
+            pmu_powkey_off_func = <0x00000000>;
+            pmu_powkey_off_en = <0x00000001>;
+            pmu_powkey_long_time = <0x000005dc>;
+            pmu_powkey_on_time = <0x000003e8>;
+            power_start = <0x00000000>;
+        };
+        regu@0 {
+            compatible = "allwinner,pmu0_regu";
+            regulator_count = <0x00000017>;
+            status = "okay";
+            device_type = "pmu0_regu";
+            regulator1 = "axp81x_dcdc1 none vcc-nand vcc-emmc vcc-sdc vcc-usb-30 vcc-io vcc-pd";
+            regulator2 = "axp81x_dcdc2 none vdd-cpua";
+            regulator3 = "axp81x_dcdc3 none";
+            regulator4 = "axp81x_dcdc4 none";
+            regulator5 = "axp81x_dcdc5 none vcc-dram";
+            regulator6 = "axp81x_dcdc6 none vdd-sys";
+            regulator7 = "axp81x_dcdc7 none";
+            regulator8 = "axp81x_rtc none";
+            regulator9 = "axp81x_aldo1 none vdd-csi-led iovdd-csi vcc-pe";
+            regulator10 = "axp81x_aldo2 none vcc-pl";
+            regulator11 = "axp81x_aldo3 none vcc-avcc vcc-pll";
+            regulator12 = "axp81x_dldo1 none vcc-hdmi-33";
+            regulator13 = "axp81x_dldo2 none vcc-mipi";
+            regulator14 = "axp81x_dldo3 none avdd-csi";
+            regulator15 = "axp81x_dldo4 none vcc-deviceio";
+            regulator16 = "axp81x_eldo1 none vcc-cpvdd vcc-wifi-io vcc-pc vcc-pg";
+            regulator17 = "axp81x_eldo2 none vcc-lcd-0";
+            regulator18 = "axp81x_eldo3 none dvdd-csi-18";
+            regulator19 = "axp81x_fldo1 none vcc-hsic-12";
+            regulator20 = "axp81x_fldo2 none vdd-cpus";
+            regulator21 = "axp81x_gpio0ldo none vcc-ctp";
+            regulator22 = "axp81x_gpio1ldo none";
+            regulator23 = "axp81x_dc1sw none vcc-lvds vcc-dsi-33";
+        };
+        nand0@01c03000 {
+            compatible = "allwinner,sun50i-nand";
+            device_type = "nand0";
+            reg = <0x00000000 0x01c03000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000046 0x00000004>;
+            clocks = <0x00000004 0x00000080>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000083>;
+            nand0_regulator1 = "vcc-nand";
+            nand0_regulator2 = "none";
+            nand0_cache_level = <0x55aaaa55>;
+            nand0_flush_cache_num = <0x55aaaa55>;
+            nand0_capacity_level = <0x55aaaa55>;
+            nand0_id_number_ctl = <0x55aaaa55>;
+            nand0_print_level = <0x55aaaa55>;
+            nand0_p0 = <0x55aaaa55>;
+            nand0_p1 = <0x55aaaa55>;
+            nand0_p2 = <0x55aaaa55>;
+            nand0_p3 = <0x55aaaa55>;
+            status = "disabled";
+            nand0_support_2ch = <0x00000000>;
+            pinctrl-0 = <0x000000ab 0x000000ac>;
+        };
+        thermal_sensor {
+            compatible = "allwinner,thermal_sensor";
+            reg = <0x00000000 0x01c25000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000001f 0x00000000>;
+            clocks = <0x00000006 0x00000084>;
+            sensor_num = <0x00000003>;
+            shut_temp = <0x00000078>;
+            status = "okay";
+            combine0 {
+                #thermal-sensor-cells = <0x00000001>;
+                combine_cnt = <0x00000003>;
+                combine_type = "max";
+                combine_chn = <0x00000000 0x00000001 0x00000002>;
+                linux,phandle = <0x00000085>;
+                phandle = <0x00000085>;
+            };
+        };
+        cpu_budget_cool {
+            compatible = "allwinner,budget_cooling";
+            #cooling-cells = <0x00000002>;
+            status = "okay";
+            state_cnt = <0x00000008>;
+            cluster_num = <0x00000001>;
+                     /*  1152000   4 cores */
+            state0 = <0x00119400 0x00000004>;
+                     /*  1008000   4 cores */
+            state1 = <0x000f6180 0x00000004>;
+                     /*   912000   4 cores */
+            state2 = <0x000dea80 0x00000004>;
+                     /*   816000   4 cores */
+            state3 = <0x000c7380 0x00000004>;
+                     /*   720000   4 cores */
+            state4 = <0x000afc80 0x00000004>;
+                     /*   624000   3 cores */
+            state5 = <0x00098580 0x00000003>;
+                     /*   528000   2 cores */
+            state6 = <0x00080e80 0x00000002>;
+                     /*   480000    1 core */
+            state7 = <0x00075300 0x00000001>;
+            linux,phandle = <0x00000087>;
+            phandle = <0x00000087>;
+        };
+        gpu_cooling {
+            compatible = "allwinner,gpu_cooling";
+            reg = <0x00000000 0x00000000 0x00000000 0x00000000>;
+            #cooling-cells = <0x00000002>;
+            status = "okay";
+            state_cnt = <0x00000003>;
+            state0 = <0x00000000>;
+            state1 = <0x00000168>;
+            state2 = <0x00000090>;
+            linux,phandle = <0x0000008c>;
+            phandle = <0x0000008c>;
+        };
+        thermal-zones {
+            soc_thermal {
+                polling-delay-passive = <0x000001f4>;
+                polling-delay = <0x000007d0>;
+                thermal-sensors = <0x00000085 0x00000000>;
+                trips {
+                    t0 {
+                        temperature = <0x00000050>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000086>;
+                        phandle = <0x00000086>;
+                    };
+                    t1 {
+                        temperature = <0x00000055>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000088>;
+                        phandle = <0x00000088>;
+                    };
+                    t2 {
+                        temperature = <0x0000005a>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000089>;
+                        phandle = <0x00000089>;
+                    };
+                    t3 {
+                        temperature = <0x0000005f>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008a>;
+                        phandle = <0x0000008a>;
+                    };
+                    t4 {
+                        temperature = <0x00000055>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008b>;
+                        phandle = <0x0000008b>;
+                    };
+                    t5 {
+                        temperature = <0x0000005a>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008d>;
+                        phandle = <0x0000008d>;
+                    };
+                    t6 {
+                        temperature = <0x0000006c>;
+                        type = "critical";
+                        hysteresis = <0x00000000>;
+                    };
+                };
+                cooling-maps {
+                    bind0 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000086>;
+                        cooling-device = <0x00000087 0x00000001 0x00000001>;
+                    };
+                    bind1 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000088>;
+                        cooling-device = <0x00000087 0x00000002 0x00000002>;
+                    };
+                    bind2 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000089>;
+                        cooling-device = <0x00000087 0x00000003 0x00000006>;
+                    };
+                    bind3 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008a>;
+                        cooling-device = <0x00000087 0x00000007 0x00000009>;
+                    };
+                    bind4 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008b>;
+                        cooling-device = <0x0000008c 0x00000001 0x00000001>;
+                    };
+                    bind5 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008d>;
+                        cooling-device = <0x0000008c 0x00000002 0x00000002>;
+                    };
+                };
+            };
+        };
+        keyboard {
+            compatible = "allwinner,keyboard_2000mv";
+            reg = <0x00000000 0x01c21800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000001e 0x00000000>;
+            status = "okay";
+            key_cnt = <0x00000005>;
+            key1 = <0x000000f0 0x00000073>;
+            key2 = <0x000001f4 0x00000072>;
+            key3 = <0x000002bc 0x0000008b>;
+            key4 = <0x0000037a 0x0000001c>;
+            key5 = <0x000007d0 0x00000066>;
+        };
+        eth@01c30000 {
+            compatible = "allwinner,sunxi-gmac";
+            reg = <0x00000000 0x01c30000 0x00000000 0x00010000 0x00000000 0x01c00000 0x00000000 0x00000030>;
+            pinctrl-names = "default";
+            interrupts = <0x00000000 0x00000052 0x00000004>;
+            interrupt-names = "gmacirq";
+            clocks = <0x0000008f>;
+            clock-names = "gmac";
+            phy-mode = "rmii";
+            tx-delay = <0x00000000>;
+            rx-delay = <0x00000000>;
+            gmac_power1 = "axp81x_dc1sw:0";
+            status = "okay";
+            device_type = "gmac0";
+            pinctrl-0 = <0x0000009e>;
+            gmac_power2;
+            gmac_power3;
+        };
+        product {
+            device_type = "product";
+            version = "100";
+            machine = "evb";
+        };
+        platform {
+            device_type = "platform";
+            eraseflag = <0x00000001>;
+        };
+        target {
+            device_type = "target";
+            boot_clock = <0x000003f0>;
+            storage_type = <0xffffffff>;
+            burn_key = <0x00000000>;
+        };
+        power_sply {
+            device_type = "power_sply";
+            dcdc1_vol = <0x000f4f24>;
+            dcdc2_vol = <0x000f468c>;
+            dcdc6_vol = <0x000f468c>;
+            aldo1_vol = <0x00000af0>;
+            aldo2_vol = <0x000f4948>;
+            aldo3_vol = <0x000f4df8>;
+            dldo1_vol = <0x00000ce4>;
+            dldo2_vol = <0x00000ce4>;
+            dldo3_vol = <0x00000af0>;
+            dldo4_vol = <0x000f4f24>;
+            eldo1_vol = <0x000f4948>;
+            eldo2_vol = <0x00000708>;
+            eldo3_vol = <0x00000708>;
+            fldo1_vol = <0x000004b0>;
+            fldo2_vol = <0x000f468c>;
+            gpio0_vol = <0x00000c1c>;
+        };
+        card_boot {
+            device_type = "card_boot";
+            logical_start = <0x0000a000>;
+            sprite_gpio0;
+        };
+        pm_para {
+            device_type = "pm_para";
+            standby_mode = <0x00000001>;
+        };
+        card0_boot_para {
+            device_type = "card0_boot_para";
+            card_ctrl = <0x00000000>;
+            card_high_speed = <0x00000001>;
+            card_line = <0x00000004>;
+            pinctrl-0 = <0x00000099>;
+        };
+        card2_boot_para {
+            device_type = "card2_boot_para";
+            sdc_io_1v8 = <0x00000001>;
+            card_ctrl = <0x00000002>;
+            card_high_speed = <0x00000001>;
+            card_line = <0x00000008>;
+            pinctrl-0 = <0x0000009a>;
+            sdc_ex_dly_used = <0x00000002>;
+        };
+        twi_para {
+            device_type = "twi_para";
+            twi_port = <0x00000000>;
+            pinctrl-0 = <0x0000009b>;
+        };
+        uart_para {
+            device_type = "uart_para";
+            uart_debug_port = <0x00000000>;
+            pinctrl-0 = <0x0000009c>;
+        };
+        jtag_para {
+            device_type = "jtag_para";
+            jtag_enable = <0x00000001>;
+            pinctrl-0 = <0x0000009d>;
+        };
+        clock {
+            device_type = "clock";
+            pll4 = <0x0000012c>;
+            pll6 = <0x00000258>;
+            pll8 = <0x00000168>;
+            pll9 = <0x00000129>;
+            pll10 = <0x00000108>;
+        };
+        rtp_para {
+            device_type = "rtp_para";
+            rtp_used = <0x00000000>;
+            rtp_screen_size = <0x00000005>;
+            rtp_regidity_level = <0x00000005>;
+            rtp_press_threshold_enable = <0x00000000>;
+            rtp_press_threshold = <0x00001f40>;
+            rtp_sensitive_level = <0x0000000f>;
+            rtp_exchange_x_y_flag = <0x00000000>;
+        };
+        ctp {
+            device_type = "ctp";
+            compatible = "allwinner,sun50i-ctp-para";
+            status = "disabled";
+            ctp_name = "gt911_DB";
+            ctp_twi_id = <0x00000000>;
+            ctp_twi_addr = <0x00000040>;
+            ctp_screen_max_x = <0x00000400>;
+            ctp_screen_max_y = <0x00000258>;
+            ctp_revert_x_flag = <0x00000001>;
+            ctp_revert_y_flag = <0x00000001>;
+            ctp_exchange_x_y_flag = <0x00000000>;
+            ctp_int_port = <0x00000030 0x00000007 0x00000004 0x00000006 0xffffffff 0xffffffff 0xffffffff>;
+            ctp_wakeup = <0x00000030 0x00000007 0x0000000b 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+            ctp_power_ldo = "vcc-ctp";
+            ctp_power_ldo_vol = <0x00000ce4>;
+            ctp_power_io;
+        };
+        ctp_list {
+            device_type = "ctp_list";
+            compatible = "allwinner,sun50i-ctp-list";
+            status = "okay";
+            gslX680new = <0x00000001>;
+            gt9xx_ts = <0x00000000>;
+            gt9xxf_ts = <0x00000001>;
+            gt9xxnew_ts = <0x00000000>;
+            gt82x = <0x00000001>;
+            zet622x = <0x00000001>;
+            aw5306_ts = <0x00000001>;
+        };
+        tkey_para {
+            device_type = "tkey_para";
+            tkey_used = <0x00000000>;
+            tkey_twi_id;
+            tkey_twi_addr;
+            tkey_int;
+        };
+        motor_para {
+            device_type = "motor_para";
+            motor_used = <0x00000000>;
+            motor_shake = <0x00000031 0x0000fffe 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+        };
+        tvout_para {
+            device_type = "tvout_para";
+            tvout_used;
+            tvout_channel_num;
+            tv_en;
+        };
+        tvin_para {
+            device_type = "tvin_para";
+            tvin_used;
+            tvin_channel_num;
+        };
+        serial_feature {
+            device_type = "serial_feature";
+            sn_filename = "sn.txt";
+        };
+        gsensor {
+            device_type = "gsensor";
+            compatible = "allwinner,sun50i-gsensor-para";
+            status = "okay";
+            gsensor_twi_id = <0x00000001>;
+            gsensor_twi_addr = <0x0000001d>;
+            gsensor_vcc_io = "vcc-deviceio";
+            gsensor_vcc_io_val = <0x00000ce4>;
+            gsensor_int1 = <0x00000030 0x00000007 0x00000005 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+            gsensor_int2 = <0x00000030 0x00000007 0x00000006 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        gsensor_list {
+            device_type = "gsensor_list";
+            compatible = "allwinner,sun50i-gsensor-list-para";
+            gsensor_list__used = <0x00000001>;
+            lsm9ds0_acc_mag = <0x00000001>;
+            bma250 = <0x00000001>;
+            mma8452 = <0x00000001>;
+            mma7660 = <0x00000001>;
+            mma865x = <0x00000001>;
+            afa750 = <0x00000001>;
+            lis3de_acc = <0x00000001>;
+            lis3dh_acc = <0x00000001>;
+            kxtik = <0x00000001>;
+            dmard10 = <0x00000000>;
+            dmard06 = <0x00000001>;
+            mxc622x = <0x00000001>;
+            fxos8700 = <0x00000001>;
+            lsm303d = <0x00000000>;
+            sc7a30 = <0x00000001>;
+        };
+        3g_para {
+            device_type = "3g_para";
+            3g_used = <0x00000000>;
+            3g_usbc_num = <0x00000002>;
+            3g_uart_num = <0x00000000>;
+            bb_vbat = <0x00000079 0x0000000b 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_host_wake = <0x00000079 0x0000000c 0x00000000 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_on = <0x00000079 0x0000000c 0x00000001 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_pwr_on = <0x00000079 0x0000000c 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_wake = <0x00000079 0x0000000c 0x00000004 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_rf_dis = <0x00000079 0x0000000c 0x00000005 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_rst = <0x00000079 0x0000000c 0x00000006 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            3g_int;
+        };
+        gyroscopesensor {
+            device_type = "gyroscopesensor";
+            compatible = "allwinner,sun50i-gyr_sensors-para";
+            status = "disabled";
+            gy_twi_id = <0x00000002>;
+            gy_twi_addr = <0x0000006a>;
+            gy_int1 = <0x00000030 0x00000000 0x0000000a 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+            gy_int2;
+        };
+        gy_list {
+            device_type = "gy_list";
+            compatible = "allwinner,sun50i-gyr_sensors-list-para";
+            status = "disabled";
+            lsm9ds0_gyr = <0x00000001>;
+            l3gd20_gyr = <0x00000000>;
+            bmg160_gyr = <0x00000001>;
+        };
+        lightsensor {
+            device_type = "lightsensor";
+            compatible = "allwinner,sun50i-lsensors-para";
+            status = "disabled";
+            ls_twi_id = <0x00000002>;
+            ls_twi_addr = <0x00000023>;
+            ls_int = <0x00000030 0x00000000 0x0000000c 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        ls_list {
+            device_type = "ls_list";
+            compatible = "allwinner,sun50i-lsensors-list-para";
+            status = "disabled";
+            ltr_501als = <0x00000001>;
+            jsa1212 = <0x00000000>;
+            jsa1127 = <0x00000001>;
+            stk3x1x = <0x00000000>;
+        };
+        compasssensor {
+            device_type = "compasssensor";
+            compatible = "allwinner,sun50i-compass-para";
+            status = "disabled";
+            compass_twi_id = <0x00000002>;
+            compass_twi_addr = <0x0000000d>;
+            compass_int = <0x00000030 0x00000000 0x0000000b 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        compass_list {
+            device_type = "compass_list";
+            compatible = "allwinner,sun50i-compass-list-para";
+            status = "disabled";
+            lsm9ds0 = <0x00000001>;
+            lsm303d = <0x00000000>;
+        };
+        recovery_key {
+            device_type = "recovery_key";
+            key_max = <0x0000000c>;
+            key_min = <0x0000000a>;
+        };
+        fastboot_key {
+            device_type = "fastboot_key";
+            key_max = <0x00000006>;
+            key_min = <0x00000004>;
+        };
+    };
+    aliases {
+        serial0 = "/soc@01c00000/uart@01c28000";
+        serial1 = "/soc@01c00000/uart@01c28400";
+        serial2 = "/soc@01c00000/uart@01c28800";
+        serial3 = "/soc@01c00000/uart@01c28c00";
+        serial4 = "/soc@01c00000/uart@01c29000";
+        twi0 = "/soc@01c00000/twi@0x01c2ac00";
+        twi1 = "/soc@01c00000/twi@0x01c2b000";
+        twi2 = "/soc@01c00000/twi@0x01c2b400";
+        spi0 = "/soc@01c00000/spi@01c68000";
+        spi1 = "/soc@01c00000/spi@01c69000";
+        global_timer0 = "/soc@01c00000/timer@1c20c00";
+        cci0 = "/soc@01c00000/cci@0x01cb3000";
+        csi_res0 = "/soc@01c00000/csi_res@0x01cb0000";
+        vfe0 = "/soc@01c00000/vfe@0";
+        mmc0 = "/soc@01c00000/sdmmc@01c0f000";
+        mmc2 = "/soc@01c00000/sdmmc@01C11000";
+        nand0 = "/soc@01c00000/nand0@01c03000";
+        disp = "/soc@01c00000/disp@01000000";
+        lcd0 = "/soc@01c00000/lcd0@01c0c000";
+        hdmi = "/soc@01c00000/hdmi@01ee0000";
+        pwm = "/soc@01c00000/pwm@01c21400";
+        pwm0 = "/soc@01c00000/pwm0@01c21400";
+        s_pwm = "/soc@01c00000/s_pwm@1f03800";
+        spwm0 = "/soc@01c00000/spwm0@0x01f03800";
+        boot_disp = "/soc@01c00000/boot_disp";
+    };
+    chosen {
+        bootargs = "earlyprintk=sunxi-uart,0x01c28000 loglevel=8 initcall_debug=1 console=ttyS0 init=/init";
+        linux,initrd-start = <0x00000000 0x00000000>;
+        linux,initrd-end = <0x00000000 0x00000000>;
+    };
+    cpus {
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000000>;
+        cpu@0 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000000>;
+            enable-method = "psci";
+         /* CPU Frequencies    408000     480000     504000     528000     576000     600000     624000     648000     672000     720000     768000     816000     864000     912000     960000    1008000    1056000    1104000    1152000    1200000    1344000 */
+            cpufreq_tbl = <0x000639C0 0x00075300 0x0007b0c0 0x00080e80 0x0008ca00 0x000927c0 0x00098580 0x0009e340 0x000a4100 0x000afc80 0x000bb800 0x000c7380 0x000d2f00 0x000dea80 0x000ea600 0x000f6180 0x00101d00 0x0010d880 0x00119400 0x00124f80 0x00148200>;
+            clock-latency = <0x001e8480>;
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@1 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000001>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@2 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000002>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@3 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000003>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        idle-states {
+            entry-method = "arm,psci";
+            cpu-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x00010000>;
+                entry-latency-us = <0x00000028>;
+                exit-latency-us = <0x00000064>;
+                min-residency-us = <0x00000096>;
+                linux,phandle = <0x00000090>;
+                phandle = <0x00000090>;
+            };
+            cluster-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x01010000>;
+                entry-latency-us = <0x000001f4>;
+                exit-latency-us = <0x000003e8>;
+                min-residency-us = <0x000009c4>;
+                linux,phandle = <0x00000091>;
+                phandle = <0x00000091>;
+            };
+            sys-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x02010000>;
+                entry-latency-us = <0x000003e8>;
+                exit-latency-us = <0x000007d0>;
+                min-residency-us = <0x00001194>;
+                linux,phandle = <0x00000092>;
+                phandle = <0x00000092>;
+            };
+        };
+    };
+    psci {
+        compatible = "arm,psci-0.2";
+        method = "smc";
+        psci_version = <0x84000000>;
+        cpu_suspend = <0xc4000001>;
+        cpu_off = <0x84000002>;
+        cpu_on = <0xc4000003>;
+        affinity_info = <0xc4000004>;
+        migrate = <0xc4000005>;
+        migrate_info_type = <0x84000006>;
+        migrate_info_up_cpu = <0xc4000007>;
+        system_off = <0x84000008>;
+        system_reset = <0x84000009>;
+    };
+    n_brom {
+        compatible = "allwinner,n-brom";
+        reg = <0x00000000 0x00000000 0x00000000 0x0000c000>;
+    };
+    s_brom {
+        compatible = "allwinner,s-brom";
+        reg = <0x00000000 0x00000000 0x00000000 0x00010000>;
+    };
+    sram_a1 {
+        compatible = "allwinner,sram_a1";
+        reg = <0x00000000 0x00010000 0x00000000 0x00008000>;
+    };
+    sram_a2 {
+        compatible = "allwinner,sram_a2";
+        reg = <0x00000000 0x00040000 0x00000000 0x00014000>;
+    };
+    prcm {
+        compatible = "allwinner,prcm";
+        reg = <0x00000000 0x01f01400 0x00000000 0x00000400>;
+    };
+    cpuscfg {
+        compatible = "allwinner,cpuscfg";
+        reg = <0x00000000 0x01f01c00 0x00000000 0x00000400>;
+    };
+    ion {
+        compatible = "allwinner,sunxi-ion";
+        system_contig {
+            type = <0x00000001>;
+        };
+        cma {
+            type = <0x00000004>;
+        };
+        system {
+            type = <0x00000000>;
+        };
+    };
+    dram {
+        compatible = "allwinner,dram";
+        clocks = <0x00000093 0x00000094>;
+        clock-names = "pll_ddr0", "pll_ddr1";
+        dram_clk = <0x000002a0>;
+        dram_type = <0x00000003>;
+        dram_zq = <0x003b3bdd>;
+        dram_odt_en = <0x00000001>;
+        dram_para1 = <0x10e40400>;
+        dram_para2 = <0x04000000>;
+        dram_mr0 = <0x00001c70>;
+        dram_mr1 = <0x00000040>;
+        dram_mr2 = <0x00000018>;
+        dram_mr3 = <0x00000000>;
+        dram_tpr0 = <0x0048a192>;
+        dram_tpr1 = <0x01c2418d>;
+        dram_tpr2 = <0x00076051>;
+        dram_tpr3 = <0x050005dc>;
+        dram_tpr4 = <0x00000000>;
+        dram_tpr5 = <0x00000000>;
+        dram_tpr6 = <0x00000000>;
+        dram_tpr7 = <0x2a066198>;
+        dram_tpr8 = <0x00000000>;
+        dram_tpr9 = <0x00000000>;
+        dram_tpr10 = <0x00008808>;
+        dram_tpr11 = <0x40a60066>;
+        dram_tpr12 = <0x55550000>;
+        dram_tpr13 = <0x04000903>;
+        device_type = "dram";
+    };
+    memory@40000000 {
+        device_type = "memory";
+        reg = <0x00000000 0x41000000 0x00000000 0x3f000000>;
+    };
+    interrupt-controller@1c81000 {
+        compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
+        #interrupt-cells = <0x00000003>;
+        #address-cells = <0x00000000>;
+        device_type = "gic";
+        interrupt-controller;
+        reg = <0x00000000 0x01c81000 0x00000000 0x00001000 0x00000000 0x01c82000 0x00000000 0x00002000 0x00000000 0x01c84000 0x00000000 0x00002000 0x00000000 0x01c86000 0x00000000 0x00002000>;
+        interrupts = <0x00000001 0x00000009 0x00000f04>;
+        linux,phandle = <0x00000001>;
+        phandle = <0x00000001>;
+    };
+    sunxi-chipid@1c14200 {
+        compatible = "sunxi,sun50i-chipid";
+        device_type = "chipid";
+        reg = <0x00000000 0x01c14200 0x00000000 0x00000400>;
+    };
+    timer {
+        compatible = "arm,armv8-timer";
+        interrupts = <0x00000001 0x0000000d 0x0000ff01 0x00000001 0x0000000e 0x0000ff01 0x00000001 0x0000000b 0x0000ff01 0x00000001 0x0000000a 0x0000ff01>;
+        clock-frequency = <0x016e3600>;
+    };
+    pmu {
+        compatible = "arm,armv8-pmuv3";
+        interrupts = <0x00000000 0x00000078 0x00000004 0x00000000 0x00000079 0x00000004 0x00000000 0x0000007a 0x00000004 0x00000000 0x0000007b 0x00000004>;
+    };
+    dvfs_table {
+        compatible = "allwinner,dvfs_table";
+        max_freq = <0x44aa2000>;
+        min_freq = <0x1c9c3800>;
+        lv_count = <0x00000008>;
+        lv1_freq = <0x44aa2000>;
+        lv1_volt = <0x00000514>;
+        lv2_freq = <0x41cdb400>;
+        lv2_volt = <0x000004ec>;
+        lv3_freq = <0x3ef14800>;
+        lv3_volt = <0x000004d8>;
+        lv4_freq = <0x3c14dc00>;
+        lv4_volt = <0x000004b0>;
+        lv5_freq = <0x39387000>;
+        lv5_volt = <0x00000488>;
+        lv6_freq = <0x365c0400>;
+        lv6_volt = <0x00000460>;
+        lv7_freq = <0x30a32c00>;
+        lv7_volt = <0x00000438>;
+        lv8_freq = <0x269fb200>;
+        lv8_volt = <0x00000410>;
+        device_type = "dvfs_table";
+    };
+    dramfreq {
+        compatible = "allwinner,sunxi-dramfreq";
+        reg = <0x00000000 0x01c62000 0x00000000 0x00001000 0x00000000 0x01c63000 0x00000000 0x00001000 0x00000000 0x01c20000 0x00000000 0x00000800>;
+        clocks = <0x00000093 0x00000094 0x00000095>;
+        status = "okay";
+    };
+    uboot {
+    };
+    gpu@0x01c40000 {
+        compatible = "arm,mali-400", "arm,mali-utgard";
+        reg = <0x00000000 0x01c40000 0x00000000 0x00010000>;
+        interrupts = <0x00000000 0x00000061 0x00000004 0x00000000 0x00000062 0x00000004 0x00000000 0x00000063 0x00000004 0x00000000 0x00000064 0x00000004 0x00000000 0x00000066 0x00000004 0x00000000 0x00000067 0x00000004>;
+        interrupt-names = "IRQGP", "IRQGPMMU", "IRQPP0", "IRQPPMMU0", "IRQPP1", "IRQPPMMU1";
+        clocks = <0x00000096 0x00000097>;
+        device_type = "gpu_mali400_0";
+        normal_freq = <0x00000198>;
+        scene_ctrl_status = <0x00000000>;
+        temp_ctrl_status = <0x00000001>;
+    };
+    wlan {
+        compatible = "allwinner,sunxi-wlan";
+        wlan_io_regulator = "vcc-wifi-io";
+        wlan_busnum = <0x00000001>;
+        status = "okay";
+        device_type = "wlan";
+        clocks;
+        wlan_power;
+        wlan_regon = <0x00000079 0x0000000b 0x00000002 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+        wlan_hostwake = <0x00000079 0x0000000b 0x00000003 0x00000006 0xffffffff 0xffffffff 0x00000000>;
+        efuse_map_path = "wifi_efuse_8189e_for_MB1019Q5.map";
+    };
+    bt {
+        compatible = "allwinner,sunxi-bt";
+        bt_io_regulator = "vcc-wifi-io";
+        status = "okay";
+        device_type = "bt";
+        clocks;
+        bt_power;
+        bt_rst_n = <0x00000079 0x0000000b 0x00000004 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+    };
+    btlpm {
+        compatible = "allwinner,sunxi-btlpm";
+        uart_index = <0x00000001>;
+        status = "okay";
+        device_type = "btlpm";
+        bt_wake = <0x00000079 0x0000000b 0x00000006 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+        bt_hostwake = <0x00000079 0x0000000b 0x00000005 0x00000006 0xffffffff 0xffffffff 0x00000000>;
+    };
+};
diff --git a/arch/arm64/boot/dts/sun50iw1p1-pine64so.dts b/arch/arm64/boot/dts/sun50iw1p1-pine64so.dts
new file mode 100644
index 00000000..f9a84fff
--- /dev/null
+++ b/arch/arm64/boot/dts/sun50iw1p1-pine64so.dts
@@ -0,0 +1,3079 @@
+/dts-v1/;
+// magic:		0xd00dfeed
+// totalsize:		0x10f87 (69511)
+// off_dt_struct:	0x98
+// off_dt_strings:	0xea30
+// off_mem_rsvmap:	0x28
+// version:		17
+// last_comp_version:	16
+// boot_cpuid_phys:	0x0
+// size_dt_strings:	0x2557
+// size_dt_struct:	0xe998
+
+/memreserve/ 0x45000000 0x200000;
+/memreserve/ 0x41010000 0x10000;
+/memreserve/ 0x41020000 0x800;
+/memreserve/ 0x40100000 0x4000;
+/memreserve/ 0x40104000 0x1000;
+/memreserve/ 0x40105000 0x1000;
+/ {
+    model = "sun50iw1p1";
+    compatible = "arm,sun50iw1p1", "arm,sun50iw1p1";
+    interrupt-parent = <0x00000001>;
+    #address-cells = <0x00000002>;
+    #size-cells = <0x00000002>;
+    clocks {
+        compatible = "allwinner,sunxi-clk-init";
+        device_type = "clocks";
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000002>;
+        ranges;
+        reg = <0x00000000 0x01c20000 0x00000000 0x00000320 0x00000000 0x01f01400 0x00000000 0x000000b0 0x00000000 0x01f00060 0x00000000 0x00000004>;
+        losc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x00008000>;
+            clock-output-names = "losc";
+            linux,phandle = <0x0000000c>;
+            phandle = <0x0000000c>;
+        };
+        iosc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x00f42400>;
+            clock-output-names = "iosc";
+            linux,phandle = <0x0000000d>;
+            phandle = <0x0000000d>;
+        };
+        hosc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-clock";
+            clock-frequency = <0x016e3600>;
+            clock-output-names = "hosc";
+            linux,phandle = <0x00000006>;
+            phandle = <0x00000006>;
+        };
+        pll_cpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_cpu";
+        };
+        pll_audio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x01770000>;
+            clock-output-names = "pll_audio";
+            linux,phandle = <0x00000002>;
+            phandle = <0x00000002>;
+        };
+        pll_video0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_video0";
+            linux,phandle = <0x00000003>;
+            phandle = <0x00000003>;
+        };
+        pll_ve {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ve";
+            linux,phandle = <0x00000016>;
+            phandle = <0x00000016>;
+        };
+        pll_ddr0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ddr0";
+            linux,phandle = <0x00000093>;
+            phandle = <0x00000093>;
+        };
+        pll_periph0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_periph0";
+            linux,phandle = <0x00000004>;
+            phandle = <0x00000004>;
+        };
+        pll_periph1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_periph1";
+            linux,phandle = <0x00000005>;
+            phandle = <0x00000005>;
+        };
+        pll_video1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_video1";
+        };
+        pll_gpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_gpu";
+            linux,phandle = <0x00000096>;
+            phandle = <0x00000096>;
+        };
+        pll_mipi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_mipi";
+            linux,phandle = <0x00000008>;
+            phandle = <0x00000008>;
+        };
+        pll_hsic {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_hsic";
+            linux,phandle = <0x0000003a>;
+            phandle = <0x0000003a>;
+        };
+        pll_de {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "pll_de";
+            linux,phandle = <0x00000007>;
+            phandle = <0x00000007>;
+        };
+        pll_ddr1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-pll-clock";
+            lock-mode = "new";
+            clock-output-names = "pll_ddr1";
+            linux,phandle = <0x00000094>;
+            phandle = <0x00000094>;
+        };
+        pll_audiox8 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_audiox8";
+        };
+        pll_audiox4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000002>;
+            clock-output-names = "pll_audiox4";
+            linux,phandle = <0x0000003c>;
+            phandle = <0x0000003c>;
+        };
+        pll_audiox2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000002>;
+            clock-mult = <0x00000008>;
+            clock-div = <0x00000004>;
+            clock-output-names = "pll_audiox2";
+        };
+        pll_video0x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000003>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_video0x2";
+        };
+        pll_periph0x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000004>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_periph0x2";
+            linux,phandle = <0x0000007b>;
+            phandle = <0x0000007b>;
+        };
+        pll_periph1x2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000005>;
+            clock-mult = <0x00000002>;
+            clock-div = <0x00000001>;
+            clock-output-names = "pll_periph1x2";
+            linux,phandle = <0x0000005a>;
+            phandle = <0x0000005a>;
+        };
+        pll_periph0d2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000004>;
+            clock-mult = <0x00000001>;
+            clock-div = <0x00000002>;
+            clock-output-names = "pll_periph0d2";
+        };
+        hoscd2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,fixed-factor-clock";
+            clocks = <0x00000006>;
+            clock-mult = <0x00000001>;
+            clock-div = <0x00000002>;
+            clock-output-names = "hoscd2";
+        };
+        cpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "cpu";
+        };
+        cpuapb {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "cpuapb";
+        };
+        axi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "axi";
+        };
+        pll_periphahb0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "pll_periphahb0";
+        };
+        ahb1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ahb1";
+            linux,phandle = <0x00000095>;
+            phandle = <0x00000095>;
+        };
+        apb1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "apb1";
+        };
+        apb2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "apb2";
+            linux,phandle = <0x0000007e>;
+            phandle = <0x0000007e>;
+        };
+        ahb2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ahb2";
+        };
+        ths {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ths";
+            linux,phandle = <0x00000084>;
+            phandle = <0x00000084>;
+        };
+        nand {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "nand";
+            linux,phandle = <0x00000080>;
+            phandle = <0x00000080>;
+        };
+        sdmmc0_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_mod";
+            linux,phandle = <0x00000060>;
+            phandle = <0x00000060>;
+        };
+        sdmmc0_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_bus";
+            linux,phandle = <0x00000061>;
+            phandle = <0x00000061>;
+        };
+        sdmmc0_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc0_rst";
+            linux,phandle = <0x00000062>;
+            phandle = <0x00000062>;
+        };
+        sdmmc1_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_mod";
+            linux,phandle = <0x00000065>;
+            phandle = <0x00000065>;
+        };
+        sdmmc1_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_bus";
+            linux,phandle = <0x00000066>;
+            phandle = <0x00000066>;
+        };
+        sdmmc1_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc1_rst";
+            linux,phandle = <0x00000067>;
+            phandle = <0x00000067>;
+        };
+        sdmmc2_mod {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_mod";
+            linux,phandle = <0x0000005b>;
+            phandle = <0x0000005b>;
+        };
+        sdmmc2_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_bus";
+            linux,phandle = <0x0000005c>;
+            phandle = <0x0000005c>;
+        };
+        sdmmc2_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdmmc2_rst";
+            linux,phandle = <0x0000005d>;
+            phandle = <0x0000005d>;
+        };
+        ts {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ts";
+        };
+        ce {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ce";
+            linux,phandle = <0x0000007a>;
+            phandle = <0x0000007a>;
+        };
+        spi0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spi0";
+            linux,phandle = <0x00000052>;
+            phandle = <0x00000052>;
+        };
+        spi1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spi1";
+            linux,phandle = <0x00000056>;
+            phandle = <0x00000056>;
+        };
+        i2s0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s0";
+            linux,phandle = <0x00000042>;
+            phandle = <0x00000042>;
+        };
+        i2s1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s1";
+            linux,phandle = <0x00000047>;
+            phandle = <0x00000047>;
+        };
+        i2s2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "i2s2";
+            linux,phandle = <0x00000048>;
+            phandle = <0x00000048>;
+        };
+        spdif {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "spdif";
+            linux,phandle = <0x00000049>;
+            phandle = <0x00000049>;
+        };
+        usbphy0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbphy0";
+            linux,phandle = <0x00000032>;
+            phandle = <0x00000032>;
+        };
+        usbphy1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbphy1";
+            linux,phandle = <0x00000036>;
+            phandle = <0x00000036>;
+        };
+        usbhsic {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbhsic";
+            linux,phandle = <0x00000038>;
+            phandle = <0x00000038>;
+        };
+        usbhsic12m {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbhsic12m";
+            linux,phandle = <0x00000039>;
+            phandle = <0x00000039>;
+        };
+        usbohci1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci1";
+            linux,phandle = <0x0000003b>;
+            phandle = <0x0000003b>;
+        };
+        usbohci0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci0";
+            linux,phandle = <0x00000035>;
+            phandle = <0x00000035>;
+        };
+        de {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000007>;
+            assigned-clock-rates = <0x11b3dc40>;
+            clock-output-names = "de";
+            linux,phandle = <0x0000006a>;
+            phandle = <0x0000006a>;
+        };
+        tcon0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000008>;
+            clock-output-names = "tcon0";
+            linux,phandle = <0x0000006b>;
+            phandle = <0x0000006b>;
+        };
+        tcon1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000003>;
+            clock-output-names = "tcon1";
+            linux,phandle = <0x0000006e>;
+            phandle = <0x0000006e>;
+        };
+        deinterlace {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "deinterlace";
+            linux,phandle = <0x0000007c>;
+            phandle = <0x0000007c>;
+        };
+        csi_s {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_s";
+            linux,phandle = <0x00000073>;
+            phandle = <0x00000073>;
+        };
+        csi_m {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_m";
+            linux,phandle = <0x00000074>;
+            phandle = <0x00000074>;
+        };
+        csi_misc {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "csi_misc";
+            linux,phandle = <0x00000075>;
+            phandle = <0x00000075>;
+        };
+        ve {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "ve";
+            linux,phandle = <0x00000017>;
+            phandle = <0x00000017>;
+        };
+        adda {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "adda";
+            linux,phandle = <0x00000041>;
+            phandle = <0x00000041>;
+        };
+        addax4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "addax4";
+        };
+        avs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "avs";
+        };
+        hdmi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            assigned-clock-parents = <0x00000003>;
+            clock-output-names = "hdmi";
+            linux,phandle = <0x0000006f>;
+            phandle = <0x0000006f>;
+        };
+        hdmi_slow {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hdmi_slow";
+            linux,phandle = <0x00000070>;
+            phandle = <0x00000070>;
+        };
+        mbus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "mbus";
+        };
+        mipidsi {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "mipidsi";
+            linux,phandle = <0x0000006d>;
+            phandle = <0x0000006d>;
+        };
+        gpu {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "gpu";
+            linux,phandle = <0x00000097>;
+            phandle = <0x00000097>;
+        };
+        usbehci_16 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbohci_16";
+        };
+        usbehci1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbehci1";
+            linux,phandle = <0x00000037>;
+            phandle = <0x00000037>;
+        };
+        usbehci0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbehci0";
+            linux,phandle = <0x00000034>;
+            phandle = <0x00000034>;
+        };
+        usbotg {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "usbotg";
+            linux,phandle = <0x00000033>;
+            phandle = <0x00000033>;
+        };
+        gmac {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "gmac";
+            linux,phandle = <0x0000008f>;
+            phandle = <0x0000008f>;
+        };
+        sdram {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "sdram";
+        };
+        dma {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "dma";
+            linux,phandle = <0x0000000b>;
+            phandle = <0x0000000b>;
+        };
+        hwspinlock_rst {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hwspinlock_rst";
+            linux,phandle = <0x0000000f>;
+            phandle = <0x0000000f>;
+        };
+        hwspinlock_bus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "hwspinlock_bus";
+            linux,phandle = <0x00000010>;
+            phandle = <0x00000010>;
+        };
+        msgbox {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "msgbox";
+            linux,phandle = <0x0000000e>;
+            phandle = <0x0000000e>;
+        };
+        lvds {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "lvds";
+            linux,phandle = <0x0000006c>;
+            phandle = <0x0000006c>;
+        };
+        uart0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart0";
+            linux,phandle = <0x00000018>;
+            phandle = <0x00000018>;
+        };
+        uart1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart1";
+            linux,phandle = <0x0000001b>;
+            phandle = <0x0000001b>;
+        };
+        uart2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart2";
+            linux,phandle = <0x0000001e>;
+            phandle = <0x0000001e>;
+        };
+        uart3 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart3";
+            linux,phandle = <0x00000021>;
+            phandle = <0x00000021>;
+        };
+        uart4 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "uart4";
+            linux,phandle = <0x00000024>;
+            phandle = <0x00000024>;
+        };
+        scr {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "scr";
+            linux,phandle = <0x0000007d>;
+            phandle = <0x0000007d>;
+        };
+        twi0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi0";
+            linux,phandle = <0x00000027>;
+            phandle = <0x00000027>;
+        };
+        twi1 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi1";
+            linux,phandle = <0x0000002a>;
+            phandle = <0x0000002a>;
+        };
+        twi2 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi2";
+            linux,phandle = <0x0000002d>;
+            phandle = <0x0000002d>;
+        };
+        twi3 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "twi3";
+        };
+        pio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-clock";
+            clock-output-names = "pio";
+            linux,phandle = <0x0000000a>;
+            phandle = <0x0000000a>;
+        };
+        cpurcir {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurcir";
+            linux,phandle = <0x00000012>;
+            phandle = <0x00000012>;
+        };
+        cpurpio {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurpio";
+            linux,phandle = <0x00000009>;
+            phandle = <0x00000009>;
+        };
+        cpurpll_peri0 {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurpll_peri0";
+        };
+        cpurcpus {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurcpus";
+        };
+        cpurahbs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurahbs";
+        };
+        cpurapbs {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "cpurapbs";
+        };
+        losc_out {
+            #clock-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-periph-cpus-clock";
+            clock-output-names = "losc_out";
+            linux,phandle = <0x00000098>;
+            phandle = <0x00000098>;
+        };
+    };
+    soc@01c00000 {
+        compatible = "simple-bus";
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000002>;
+        ranges;
+        device_type = "soc";
+        pinctrl@01f02c00 {
+            compatible = "allwinner,sun50i-r-pinctrl";
+            reg = <0x00000000 0x01f02c00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000002d 0x00000004>;
+            clocks = <0x00000009>;
+            device_type = "r_pio";
+            gpio-controller;
+            interrupt-controller;
+            #interrupt-cells = <0x00000002>;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            linux,phandle = <0x00000079>;
+            phandle = <0x00000079>;
+            s_cir0@0 {
+                allwinner,pins = "PL11";
+                allwinner,function = "s_cir0";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000011>;
+                phandle = <0x00000011>;
+            };
+            spwm0@0 {
+                linux,phandle = <0x000000af>;
+                phandle = <0x000000af>;
+                allwinner,pins = "PL10";
+                allwinner,function = "spwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spwm0@1 {
+                linux,phandle = <0x000000b0>;
+                phandle = <0x000000b0>;
+                allwinner,pins = "PL10";
+                allwinner,function = "spwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_uart0@0 {
+                linux,phandle = <0x000000b6>;
+                phandle = <0x000000b6>;
+                allwinner,pins = "PL2", "PL3";
+                allwinner,function = "s_uart0";
+                allwinner,pname = "s_uart0_tx", "s_uart0_rx";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_rsb0@0 {
+                linux,phandle = <0x000000b7>;
+                phandle = <0x000000b7>;
+                allwinner,pins = "PL0", "PL1";
+                allwinner,function = "s_rsb0";
+                allwinner,pname = "s_rsb0_sck", "s_rsb0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            s_jtag0@0 {
+                linux,phandle = <0x000000b8>;
+                phandle = <0x000000b8>;
+                allwinner,pins = "PL4", "PL5", "PL6", "PL7";
+                allwinner,function = "s_jtag0";
+                allwinner,pname = "s_jtag0_tms", "s_jtag0_tck", "s_jtag0_tdo", "s_jtag0_tdi";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+        };
+        pinctrl@01c20800 {
+            compatible = "allwinner,sun50i-pinctrl";
+            reg = <0x00000000 0x01c20800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000000b 0x00000004 0x00000000 0x00000011 0x00000004 0x00000000 0x00000015 0x00000004>;
+            device_type = "pio";
+            clocks = <0x0000000a>;
+            gpio-controller;
+            interrupt-controller;
+            #interrupt-cells = <0x00000002>;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            linux,phandle = <0x00000030>;
+            phandle = <0x00000030>;
+            uart0@1 {
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000001a>;
+                phandle = <0x0000001a>;
+            };
+            uart1@1 {
+                allwinner,pins = "PG6", "PG7", "PG8", "PG9";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000001d>;
+                phandle = <0x0000001d>;
+            };
+            uart2@1 {
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000020>;
+                phandle = <0x00000020>;
+            };
+            uart3@1 {
+                allwinner,pins = "PH4", "PH5", "PH6", "PH7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000023>;
+                phandle = <0x00000023>;
+            };
+            uart4@1 {
+                allwinner,pins = "PD2", "PD3", "PD4", "PD5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000026>;
+                phandle = <0x00000026>;
+            };
+            twi0@1 {
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000029>;
+                phandle = <0x00000029>;
+            };
+            twi1@1 {
+                allwinner,pins = "PH2", "PH3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000002c>;
+                phandle = <0x0000002c>;
+            };
+            twi2@1 {
+                allwinner,pins = "PE14", "PE15";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000002f>;
+                phandle = <0x0000002f>;
+            };
+            spi0@2 {
+                allwinner,pins = "PC3", "PC2", "PC0", "PC1";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000055>;
+                phandle = <0x00000055>;
+            };
+            spi1@2 {
+                allwinner,pins = "PD0", "PD1", "PD2", "PD3";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000059>;
+                phandle = <0x00000059>;
+            };
+            sdc0@1 {
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000064>;
+                phandle = <0x00000064>;
+            };
+            sdc1@1 {
+                allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x00000069>;
+                phandle = <0x00000069>;
+            };
+            sdc2@1 {
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000005f>;
+                phandle = <0x0000005f>;
+            };
+            daudio0@0 {
+                allwinner,pins = "PB6", "PB3", "PB4", "PB5", "PB7";
+                allwinner,function = "pcm0";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000043>;
+                phandle = <0x00000043>;
+            };
+            daudio0_sleep@0 {
+                allwinner,pins = "PB6", "PB3", "PB4", "PB5", "PB7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000044>;
+                phandle = <0x00000044>;
+            };
+            daudio1@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "pcm1";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000045>;
+                phandle = <0x00000045>;
+            };
+            daudio1_sleep@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000046>;
+                phandle = <0x00000046>;
+            };
+            aif3@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "aif3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000003e>;
+                phandle = <0x0000003e>;
+            };
+            aif2_sleep@0 {
+                allwinner,pins = "PB6", "PB4", "PB5", "PB7";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000003f>;
+                phandle = <0x0000003f>;
+            };
+            aif3_sleep@0 {
+                allwinner,pins = "PG10", "PG11", "PG12", "PG13";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000040>;
+                phandle = <0x00000040>;
+            };
+            spdif@0 {
+                allwinner,pins = "PH8";
+                allwinner,function = "spdif0";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000004a>;
+                phandle = <0x0000004a>;
+            };
+            spdif_sleep@0 {
+                allwinner,pins = "PH8";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x0000004b>;
+                phandle = <0x0000004b>;
+            };
+            csi0_sleep@0 {
+                allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13";
+                allwinner,pname = "csi0_pck", "csi0_hsync", "csi0_vsync", "csi0_d0", "csi0_d1", "csi0_d2", "csi0_d3", "csi0_d4", "csi0_d5", "csi0_d6", "csi0_d7", "csi0_sck", "csi0_sda";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                allwinner,data = <0x00000000>;
+                linux,phandle = <0x00000077>;
+                phandle = <0x00000077>;
+            };
+            smartcard@0 {
+                allwinner,pins = "PB1", "PB4", "PB5", "PB6", "PB7";
+                allwinner,function = "sim0";
+                allwinner,muxsel = <0x00000005>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000001>;
+                linux,phandle = <0x0000007f>;
+                phandle = <0x0000007f>;
+            };
+            nand0@2 {
+                allwinner,pins = "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PC18";
+                allwinner,function = "io_disabled";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,drive = <0x00000001>;
+                allwinner,pull = <0x00000000>;
+                linux,phandle = <0x00000083>;
+                phandle = <0x00000083>;
+            };
+            card0_boot_para@0 {
+                linux,phandle = <0x00000099>;
+                phandle = <0x00000099>;
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "card0_boot_para";
+                allwinner,pname = "sdc_d1", "sdc_d0", "sdc_clk", "sdc_cmd", "sdc_d3", "sdc_d2";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            card2_boot_para@0 {
+                linux,phandle = <0x0000009a>;
+                phandle = <0x0000009a>;
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "card2_boot_para";
+                allwinner,pname = "sdc_ds", "sdc_clk", "sdc_cmd", "sdc_d0", "sdc_d1", "sdc_d2", "sdc_d3", "sdc_d4", "sdc_d5", "sdc_d6", "sdc_d7", "sdc_emmc_rst";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi_para@0 {
+                linux,phandle = <0x0000009b>;
+                phandle = <0x0000009b>;
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "twi_para";
+                allwinner,pname = "twi_scl", "twi_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart_para@0 {
+                linux,phandle = <0x0000009c>;
+                phandle = <0x0000009c>;
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "uart_para";
+                allwinner,pname = "uart_debug_tx", "uart_debug_rx";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            jtag_para@0 {
+                linux,phandle = <0x0000009d>;
+                phandle = <0x0000009d>;
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "jtag_para";
+                allwinner,pname = "jtag_ms", "jtag_ck", "jtag_do", "jtag_di";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            gmac0@0 {
+                linux,phandle = <0x0000009e>;
+                phandle = <0x0000009e>;
+                allwinner,pins = "PD18", "PD17", "PD16", "PD15", "PD20", "PD19", "PD11", "PD10", "PD9", "PD8", "PD13", "PD12", "PD21", "PD22", "PD23";
+                allwinner,function = "gmac0";
+                allwinner,pname = "gmac_txd0", "gmac_txd1", "gmac_txd2", "gmac_txd3", "gmac_txen", "gmac_gtxclk", "gmac_rxd0", "gmac_rxd1", "gmac_rxd2", "gmac_rxd3", "gmac_rxdv", "gmac_rxclk", "gmac_clkin", "gmac_mdc", "gmac_mdio";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi0@0 {
+                linux,phandle = <0x0000009f>;
+                phandle = <0x0000009f>;
+                allwinner,pins = "PH0", "PH1";
+                allwinner,function = "twi0";
+                allwinner,pname = "twi0_scl", "twi0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi1@0 {
+                linux,phandle = <0x000000a0>;
+                phandle = <0x000000a0>;
+                allwinner,pins = "PH2", "PH3";
+                allwinner,function = "twi1";
+                allwinner,pname = "twi1_scl", "twi1_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            twi2@0 {
+                linux,phandle = <0x000000a1>;
+                phandle = <0x000000a1>;
+                allwinner,pins = "PE14", "PE15";
+                allwinner,function = "twi2";
+                allwinner,pname = "twi2_scl", "twi2_sda";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart0@0 {
+                linux,phandle = <0x000000a2>;
+                phandle = <0x000000a2>;
+                allwinner,pins = "PB8", "PB9";
+                allwinner,function = "uart0";
+                allwinner,pname = "uart0_tx", "uart0_rx";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart1@0 {
+                linux,phandle = <0x000000a3>;
+                phandle = <0x000000a3>;
+                allwinner,pins = "PG6", "PG7", "PG8", "PG9";
+                allwinner,function = "uart1";
+                allwinner,pname = "uart1_tx", "uart1_rx", "uart1_rts", "uart1_cts";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart2@0 {
+                linux,phandle = <0x000000a4>;
+                phandle = <0x000000a4>;
+                allwinner,pins = "PB0", "PB1", "PB2", "PB3";
+                allwinner,function = "uart2";
+                allwinner,pname = "uart2_tx", "uart2_rx", "uart2_rts", "uart2_cts";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart3@0 {
+                linux,phandle = <0x000000a5>;
+                phandle = <0x000000a5>;
+                allwinner,pins = "PD0", "PD1";
+                allwinner,function = "uart3";
+                allwinner,pname = "uart3_tx", "uart3_rx";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            uart4@0 {
+                linux,phandle = <0x000000a6>;
+                phandle = <0x000000a6>;
+                allwinner,pins = "PD2", "PD3", "PD4", "PD5";
+                allwinner,function = "uart4";
+                allwinner,pname = "uart4_tx", "uart4_rx", "uart4_rts", "uart4_cts";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi0@0 {
+                linux,phandle = <0x000000a7>;
+                phandle = <0x000000a7>;
+                allwinner,pins = "PC3";
+                allwinner,function = "spi0";
+                allwinner,pname = "spi0_cs0";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi0@1 {
+                linux,phandle = <0x000000a8>;
+                phandle = <0x000000a8>;
+                allwinner,pins = "PC2", "PC0", "PC1";
+                allwinner,function = "spi0";
+                allwinner,pname = "spi0_sclk", "spi0_mosi", "spi0_miso";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi1@0 {
+                linux,phandle = <0x000000a9>;
+                phandle = <0x000000a9>;
+                allwinner,pins = "PD0";
+                allwinner,function = "spi1";
+                allwinner,pname = "spi1_cs0";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            spi1@1 {
+                linux,phandle = <0x000000aa>;
+                phandle = <0x000000aa>;
+                allwinner,pins = "PD1", "PD2", "PD3";
+                allwinner,function = "spi1";
+                allwinner,pname = "spi1_sclk", "spi1_mosi", "spi1_miso";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            nand0@0 {
+                linux,phandle = <0x000000ab>;
+                phandle = <0x000000ab>;
+                allwinner,pins = "PC0", "PC1", "PC2", "PC5", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "nand0";
+                allwinner,pname = "nand0_we", "nand0_ale", "nand0_cle", "nand0_nre", "nand0_d0", "nand0_d1", "nand0_d2", "nand0_d3", "nand0_d4", "nand0_d5", "nand0_d6", "nand0_d7", "nand0_ndqs";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0x00000001>;
+                allwinner,data = <0xffffffff>;
+            };
+            nand0@1 {
+                linux,phandle = <0x000000ac>;
+                phandle = <0x000000ac>;
+                allwinner,pins = "PC3", "PC4", "PC6", "PC7", "PC17", "PC18";
+                allwinner,function = "nand0";
+                allwinner,pname = "nand0_ce1", "nand0_ce0", "nand0_rb0", "nand0_rb1", "nand0_ce2", "nand0_ce3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000001>;
+                allwinner,data = <0xffffffff>;
+            };
+            pwm0@0 {
+                linux,phandle = <0x000000ad>;
+                phandle = <0x000000ad>;
+                allwinner,pins = "PD22";
+                allwinner,function = "pwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            pwm0@1 {
+                linux,phandle = <0x000000ae>;
+                phandle = <0x000000ae>;
+                allwinner,pins = "PD22";
+                allwinner,function = "pwm0";
+                allwinner,pname = "pwm_positive";
+                allwinner,muxsel = <0x00000007>;
+                allwinner,pull = <0x00000000>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            csi0@0 {
+                linux,phandle = <0x000000b1>;
+                phandle = <0x000000b1>;
+                allwinner,pins = "PE0", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13";
+                allwinner,function = "csi0";
+                allwinner,pname = "csi0_pck", "csi0_hsync", "csi0_vsync", "csi0_d0", "csi0_d1", "csi0_d2", "csi0_d3", "csi0_d4", "csi0_d5", "csi0_d6", "csi0_d7", "csi0_sck", "csi0_sda";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0xffffffff>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc0@0 {
+                linux,phandle = <0x000000b2>;
+                phandle = <0x000000b2>;
+                allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
+                allwinner,function = "sdc0";
+                allwinner,pname = "sdc0_d1", "sdc0_d0", "sdc0_clk", "sdc0_cmd", "sdc0_d3", "sdc0_d2";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc1@0 {
+                linux,phandle = <0x000000b3>;
+                phandle = <0x000000b3>;
+                allwinner,pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
+                allwinner,function = "sdc1";
+                allwinner,pname = "sdc1_clk", "sdc1_cmd", "sdc1_d0", "sdc1_d1", "sdc1_d2", "sdc1_d3";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            sdc2@0 {
+                linux,phandle = <0x000000b4>;
+                phandle = <0x000000b4>;
+                allwinner,pins = "PC1", "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
+                allwinner,function = "sdc2";
+                allwinner,pname = "sdc2_ds", "sdc2_clk", "sdc2_cmd", "sdc2_d0", "sdc2_d1", "sdc2_d2", "sdc2_d3", "sdc2_d4", "sdc2_d5", "sdc2_d6", "sdc2_d7", "sdc2_emmc_rst";
+                allwinner,muxsel = <0x00000003>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000003>;
+                allwinner,data = <0xffffffff>;
+            };
+            codec@0 {
+                linux,phandle = <0x000000b5>;
+                phandle = <0x000000b5>;
+                allwinner,pins = "PH7";
+                allwinner,function = "codec";
+                allwinner,pname = "gpio-spk";
+                allwinner,muxsel = <0x00000002>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0xffffffff>;
+                allwinner,data = <0xffffffff>;
+            };
+            Vdevice@0 {
+                linux,phandle = <0x000000b9>;
+                phandle = <0x000000b9>;
+                allwinner,pins = "PB1", "PB2";
+                allwinner,function = "Vdevice";
+                allwinner,pname = "Vdevice_0", "Vdevice_1";
+                allwinner,muxsel = <0x00000004>;
+                allwinner,pull = <0x00000001>;
+                allwinner,drive = <0x00000002>;
+                allwinner,data = <0xffffffff>;
+            };
+        };
+        pinctrl@0 {
+            compatible = "allwinner,axp-pinctrl";
+            gpio-controller;
+            #size-cells = <0x00000000>;
+            #gpio-cells = <0x00000006>;
+            device_type = "axp_pio";
+            linux,phandle = <0x00000031>;
+            phandle = <0x00000031>;
+        };
+        dma-controller@01c02000 {
+            compatible = "allwinner,sun50i-dma";
+            reg = <0x00000000 0x01c02000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000032 0x00000004>;
+            clocks = <0x0000000b>;
+            #dma-cells = <0x00000001>;
+        };
+        mbus-controller@01c62000 {
+            compatible = "allwinner,sun50i-mbus";
+            reg = <0x00000000 0x01c62000 0x00000000 0x00000110>;
+            #mbus-cells = <0x00000001>;
+        };
+        arisc {
+            compatible = "allwinner,sunxi-arisc";
+            #address-cells = <0x00000002>;
+            #size-cells = <0x00000002>;
+            clocks = <0x0000000c 0x0000000d 0x00000006 0x00000004>;
+            clock-names = "losc", "iosc", "hosc", "pll_periph0";
+            powchk_used = <0x00000000>;
+            power_reg = <0x02309621>;
+            system_power = <0x00000032>;
+        };
+        arisc_space {
+            compatible = "allwinner,arisc_space";
+            space1 = <0x00040000 0x00000000 0x00014000>;
+            space2 = <0x40100000 0x00018000 0x00004000>;
+            space3 = <0x40104000 0x00000000 0x00001000>;
+            space4 = <0x40105000 0x00000000 0x00001000>;
+        };
+        standby_space {
+            compatible = "allwinner,standby_space";
+            space1 = <0x41020000 0x00000000 0x00000800>;
+        };
+        msgbox@1c17000 {
+            compatible = "allwinner,msgbox";
+            clocks = <0x0000000e>;
+            clock-names = "clk_msgbox";
+            reg = <0x00000000 0x01c17000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000031 0x00000001>;
+            status = "okay";
+        };
+        hwspinlock@1c18000 {
+            compatible = "allwinner,sunxi-hwspinlock";
+            clocks = <0x0000000f 0x00000010>;
+            clock-names = "clk_hwspinlock_rst", "clk_hwspinlock_bus";
+            reg = <0x00000000 0x01c18000 0x00000000 0x00001000>;
+            status = "okay";
+            num-locks = <0x00000008>;
+        };
+        s_cir@1f02000 {
+            compatible = "allwinner,s_cir";
+            reg = <0x00000000 0x01f02000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000025 0x00000004>;
+            pinctrl-names = "default";
+            pinctrl-0 = <0x00000011>;
+            clocks = <0x00000006 0x00000012>;
+            supply = "vcc-pl";
+            ir_power_key_code = <0x0000004d>;
+            ir_addr_code = <0x00004040>;
+            status = "okay";
+            device_type = "s_cir0";
+        };
+        s_uart@1f02800 {
+            compatible = "allwinner,s_uart";
+            reg = <0x00000000 0x01f02800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000026 0x00000004>;
+            pinctrl-names = "default";
+            status = "okay";
+            device_type = "s_uart0";
+            pinctrl-0 = <0x000000b6>;
+        };
+        s_rsb@1f03400 {
+            compatible = "allwinner,s_rsb";
+            reg = <0x00000000 0x01f03400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000027 0x00000004>;
+            pinctrl-names = "default";
+            status = "okay";
+            device_type = "s_rsb0";
+            pinctrl-0 = <0x000000b7>;
+        };
+        s_jtag0 {
+            compatible = "allwinner,s_jtag";
+            pinctrl-names = "default";
+            status = "disabled";
+            device_type = "s_jtag0";
+            pinctrl-0 = <0x000000b8>;
+        };
+        timer@1c20c00 {
+            compatible = "allwinner,sunxi-timer";
+            device_type = "timer";
+            reg = <0x00000000 0x01c20c00 0x00000000 0x00000090>;
+            interrupts = <0x00000000 0x00000012 0x00000001>;
+            clock-frequency = <0x016e3600>;
+            timer-prescale = <0x00000010>;
+        };
+        rtc@01f00000 {
+            compatible = "allwinner,sun50i-rtc";
+            device_type = "rtc";
+            reg = <0x00000000 0x01f00000 0x00000000 0x00000218>;
+            interrupts = <0x00000000 0x00000028 0x00000004>;
+            gpr_offset = <0x00000100>;
+            gpr_len = <0x00000004>;
+        };
+        ve@01c0e000 {
+            compatible = "allwinner,sunxi-cedar-ve";
+            reg = <0x00000000 0x01c0e000 0x00000000 0x00001000 0x00000000 0x01c00000 0x00000000 0x00000010 0x00000000 0x01c20000 0x00000000 0x00000800>;
+            interrupts = <0x00000000 0x0000003a 0x00000004>;
+            clocks = <0x00000016 0x00000017>;
+        };
+        uart@01c28000 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart0";
+            reg = <0x00000000 0x01c28000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000000 0x00000004>;
+            clocks = <0x00000018>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000001a>;
+            uart0_port = <0x00000000>;
+            uart0_type = <0x00000002>;
+            status = "okay";
+            pinctrl-0 = <0x000000a2>;
+        };
+        uart@01c28400 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart1";
+            reg = <0x00000000 0x01c28400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000001 0x00000004>;
+            clocks = <0x0000001b>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000001d>;
+            uart1_port = <0x00000001>;
+            uart1_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a3>;
+        };
+        uart@01c28800 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart2";
+            reg = <0x00000000 0x01c28800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000002 0x00000004>;
+            clocks = <0x0000001e>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000020>;
+            uart2_port = <0x00000002>;
+            uart2_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a4>;
+        };
+        uart@01c28c00 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart3";
+            reg = <0x00000000 0x01c28c00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000003 0x00000004>;
+            clocks = <0x00000021>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000023>;
+            uart3_port = <0x00000003>;
+            uart3_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a5>;
+        };
+        uart@01c29000 {
+            compatible = "allwinner,sun50i-uart";
+            device_type = "uart4";
+            reg = <0x00000000 0x01c29000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000004 0x00000004>;
+            clocks = <0x00000024>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000026>;
+            uart4_port = <0x00000004>;
+            uart4_type = <0x00000004>;
+            status = "okay";
+            pinctrl-0 = <0x000000a6>;
+        };
+        twi@0x01c2ac00 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi0";
+            reg = <0x00000000 0x01c2ac00 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000006 0x00000004>;
+            clocks = <0x00000027>;
+            clock-frequency = <0x00061a80>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000029>;
+            status = "okay";
+            pinctrl-0 = <0x0000009f>;
+        };
+        twi@0x01c2b000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi1";
+            reg = <0x00000000 0x01c2b000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000007 0x00000004>;
+            clocks = <0x0000002a>;
+            clock-frequency = <0x00030d40>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000002c>;
+            status = "okay";
+            pinctrl-0 = <0x000000a0>;
+        };
+        twi@0x01c2b400 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-twi";
+            device_type = "twi2";
+            reg = <0x00000000 0x01c2b400 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x00000008 0x00000004>;
+            clocks = <0x0000002d>;
+            clock-frequency = <0x00030d40>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000002f>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a1>;
+        };
+        usbc0@0 {
+            device_type = "usbc0";
+            compatible = "allwinner,sunxi-otg-manager";
+            usb_port_type = <0x00000001>;
+            usb_detect_type = <0x00000000>;
+            usb_host_init_state = <0x00000001>;
+            usb_regulator_io = "nocare";
+            usb_wakeup_suspend = <0x00000001>;
+            usb_luns = <0x00000003>;
+            usb_serial_unique = <0x00000001>;
+            usb_serial_number = "20080411";
+            rndis_wceis = <0x00000001>;
+            status = "okay";
+            usb_id_gpio;
+            usb_det_vbus_gpio;
+            usb_drv_vbus_gpio;
+        };
+        udc-controller@0x01c19000 {
+            compatible = "allwinner,sunxi-udc";
+            reg = <0x00000000 0x01c19000 0x00000000 0x00001000 0x00000000 0x01c00000 0x00000000 0x00000100>;
+            interrupts = <0x00000000 0x00000047 0x00000004>;
+            clocks = <0x00000032 0x00000033>;
+            status = "okay";
+        };
+        ehci0-controller@0x01c1a000 {
+            compatible = "allwinner,sunxi-ehci0";
+            reg = <0x00000000 0x01c1a000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000048 0x00000004>;
+            clocks = <0x00000032 0x00000034>;
+            hci_ctrl_no = <0x00000000>;
+            status = "okay";
+        };
+        ohci0-controller@0x01c1a400 {
+            compatible = "allwinner,sunxi-ohci0";
+            reg = <0x00000000 0x01c1a000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000049 0x00000004>;
+            clocks = <0x00000032 0x00000035>;
+            hci_ctrl_no = <0x00000000>;
+            status = "okay";
+        };
+        usbc1@0 {
+            device_type = "usbc1";
+            usb_host_init_state = <0x00000001>;
+            usb_regulator_io = "nocare";
+            usb_wakeup_suspend = <0x00000001>;
+            usb_hsic_used = <0x00000000>;
+            usb_hsic_regulator_io = "vcc-hsic-12";
+            usb_hsic_ctrl = <0x00000000>;
+            usb_hsic_usb3503_flag = <0x00000000>;
+            status = "okay";
+            usb_port_type = <0x00000001>;
+            usb_detect_type = <0x00000000>;
+            usb_drv_vbus_gpio;
+            usb_hsic_rdy_gpio;
+            usb_hsic_hub_connect_gpio;
+            usb_hsic_int_n_gpio;
+            usb_hsic_reset_n_gpio;
+        };
+        ehci1-controller@0x01c1b000 {
+            compatible = "allwinner,sunxi-ehci1";
+            reg = <0x00000000 0x01c1b000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000004a 0x00000004>;
+            clocks = <0x00000036 0x00000037 0x00000038 0x00000039 0x0000003a>;
+            hci_ctrl_no = <0x00000001>;
+            status = "okay";
+        };
+        ohci1-controller@0x01c1b400 {
+            compatible = "allwinner,sunxi-ohci1";
+            reg = <0x00000000 0x01c1b000 0x00000000 0x00000fff 0x00000000 0x01c00000 0x00000000 0x00000100 0x00000000 0x01c19000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000004b 0x00000004>;
+            clocks = <0x00000036 0x0000003b>;
+            hci_ctrl_no = <0x00000001>;
+            status = "okay";
+        };
+        codec@0x01c22c00 {
+            compatible = "allwinner,sunxi-internal-codec";
+            reg = <0x00000000 0x01c22c00 0x00000000 0x00000478 0x00000000 0x01f015c0 0x00000000 0x00000000>;
+            clocks = <0x0000003c>;
+            pinctrl-names = "aif2-default", "aif3-default", "aif2-sleep", "aif3-sleep";
+            pinctrl-1 = <0x0000003e>;
+            pinctrl-2 = <0x0000003f>;
+            pinctrl-3 = <0x00000040>;
+            gpio-spk = <0x00000030 0x00000007 0x00000007 0x00000001 0x00000001 0x00000001 0x00000001>;
+            headphonevol = <0x0000003b>;
+            spkervol = <0x0000001a>;
+            earpiecevol = <0x0000001e>;
+            maingain = <0x00000004>;
+            headsetmicgain = <0x00000004>;
+            adcagc_cfg = <0x00000000>;
+            adcdrc_cfg = <0x00000000>;
+            adchpf_cfg = <0x00000000>;
+            dacdrc_cfg = <0x00000000>;
+            dachpf_cfg = <0x00000000>;
+            aif1_lrlk_div = <0x00000040>;
+            aif2_lrlk_div = <0x00000040>;
+            aif2config = <0x00000000>;
+            aif3config = <0x00000000>;
+            pa_sleep_time = <0x0000015e>;
+            dac_digital_vol = <0x0000a0a0>;
+            status = "okay";
+            linux,phandle = <0x0000004d>;
+            phandle = <0x0000004d>;
+            device_type = "codec";
+            pinctrl-0 = <0x000000b5>;
+        };
+        i2s0-controller@0x01c22c00 {
+            compatible = "allwinner,sunxi-internal-i2s";
+            reg = <0x00000000 0x01c22c00 0x00000000 0x00000478>;
+            clocks = <0x00000002 0x00000041>;
+            status = "okay";
+            linux,phandle = <0x0000004c>;
+            phandle = <0x0000004c>;
+            device_type = "i2s";
+        };
+        daudio@0x01c22000 {
+            compatible = "allwinner,sunxi-daudio";
+            reg = <0x00000000 0x01c22000 0x00000000 0x00000058>;
+            clocks = <0x00000002 0x00000042>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x00000043>;
+            pinctrl-1 = <0x00000044>;
+            pcm_lrck_period = <0x00000020>;
+            pcm_lrckr_period = <0x00000001>;
+            slot_width_select = <0x00000020>;
+            pcm_lsb_first = <0x00000000>;
+            tx_data_mode = <0x00000000>;
+            rx_data_mode = <0x00000000>;
+            daudio_master = <0x00000004>;
+            audio_format = <0x00000001>;
+            signal_inversion = <0x00000001>;
+            frametype = <0x00000000>;
+            tdm_config = <0x00000001>;
+            tdm_num = <0x00000000>;
+            status = "disabled";
+            linux,phandle = <0x0000004e>;
+            phandle = <0x0000004e>;
+            device_type = "daudio0";
+        };
+        daudio@0x01c22400 {
+            compatible = "allwinner,sunxi-daudio";
+            reg = <0x00000000 0x01c22400 0x00000000 0x00000058>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x00000045>;
+            pinctrl-1 = <0x00000046>;
+            clocks = <0x00000002 0x00000047>;
+            pcm_lrck_period = <0x00000020>;
+            pcm_lrckr_period = <0x00000001>;
+            slot_width_select = <0x00000020>;
+            pcm_lsb_first = <0x00000000>;
+            tx_data_mode = <0x00000000>;
+            rx_data_mode = <0x00000000>;
+            daudio_master = <0x00000004>;
+            audio_format = <0x00000001>;
+            signal_inversion = <0x00000001>;
+            frametype = <0x00000000>;
+            tdm_config = <0x00000001>;
+            tdm_num = <0x00000001>;
+            status = "disabled";
+            linux,phandle = <0x0000004f>;
+            phandle = <0x0000004f>;
+            device_type = "daudio1";
+        };
+        daudio@0x01c22800 {
+            compatible = "allwinner,sunxi-tdmhdmi";
+            reg = <0x00000000 0x01c22800 0x00000000 0x00000058>;
+            clocks = <0x00000002 0x00000048>;
+            status = "okay";
+            linux,phandle = <0x00000050>;
+            phandle = <0x00000050>;
+            device_type = "daudio2";
+        };
+        spdif-controller@0x01c21000 {
+            compatible = "allwinner,sunxi-spdif";
+            reg = <0x00000000 0x01c21000 0x00000000 0x00000038>;
+            clocks = <0x00000002 0x00000049>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-0 = <0x0000004a>;
+            pinctrl-1 = <0x0000004b>;
+            status = "disabled";
+            linux,phandle = <0x00000051>;
+            phandle = <0x00000051>;
+            device_type = "spdif";
+        };
+        sound@0 {
+            compatible = "allwinner,sunxi-codec-machine";
+            interrupts = <0x00000000 0x0000001c 0x00000004>;
+            sunxi,i2s-controller = <0x0000004c>;
+            sunxi,audio-codec = <0x0000004d>;
+            aif2fmt = <0x00000003>;
+            aif3fmt = <0x00000003>;
+            aif2master = <0x00000001>;
+            hp_detect_case = <0x00000001>;
+            status = "okay";
+            device_type = "sndcodec";
+        };
+        sound@1 {
+            compatible = "allwinner,sunxi-daudio0-machine";
+            sunxi,daudio0-controller = <0x0000004e>;
+            status = "disabled";
+            device_type = "snddaudio0";
+        };
+        sound@2 {
+            compatible = "allwinner,sunxi-daudio1-machine";
+            sunxi,daudio1-controller = <0x0000004f>;
+            status = "disabled";
+            device_type = "snddaudio1";
+        };
+        sound@3 {
+            compatible = "allwinner,sunxi-hdmi-machine";
+            sunxi,hdmi-controller = <0x00000050>;
+            status = "okay";
+            device_type = "sndhdmi";
+        };
+        sound@4 {
+            compatible = "allwinner,sunxi-spdif-machine";
+            sunxi,spdif-controller = <0x00000051>;
+            status = "disabled";
+            device_type = "sndspdif";
+        };
+        spi@01c68000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-spi";
+            device_type = "spi0";
+            reg = <0x00000000 0x01c68000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000041 0x00000004>;
+            clocks = <0x00000004 0x00000052>;
+            clock-frequency = <0x05f5e100>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000055>;
+            spi0_cs_number = <0x00000001>;
+            spi0_cs_bitmap = <0x00000001>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a7 0x000000a8>;
+        };
+        spi@01c69000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sun50i-spi";
+            device_type = "spi1";
+            reg = <0x00000000 0x01c69000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000042 0x00000004>;
+            clocks = <0x00000004 0x00000056>;
+            clock-frequency = <0x05f5e100>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000059>;
+            spi1_cs_number = <0x00000001>;
+            spi1_cs_bitmap = <0x00000001>;
+            status = "disabled";
+            pinctrl-0 = <0x000000a9 0x000000aa>;
+        };
+        sdmmc@01C11000 {
+            compatible = "allwinner,sun50i-sdmmc2";
+            device_type = "sdc2";
+            reg = <0x00000000 0x01c11000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003e 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x0000005b 0x0000005c 0x0000005d>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x0000005f>;
+            bus-width = <0x00000008>;
+            max-frequency = <0x05f5e100>;
+            sdc_tm4_sm0_freq0 = <0x00000000>;
+            sdc_tm4_sm0_freq1 = <0x00000000>;
+            sdc_tm4_sm1_freq0 = <0x00000000>;
+            sdc_tm4_sm1_freq1 = <0x00000000>;
+            sdc_tm4_sm2_freq0 = <0x00000000>;
+            sdc_tm4_sm2_freq1 = <0x00000000>;
+            sdc_tm4_sm3_freq0 = <0x05000000>;
+            sdc_tm4_sm3_freq1 = <0x00000405>;
+            sdc_tm4_sm4_freq0 = <0x00050000>;
+            sdc_tm4_sm4_freq1 = <0x00000408>;
+            status = "disabled";
+            non-removable;
+            pinctrl-0 = <0x000000b4>;
+            cd-gpios;
+            sunxi-power-save-mode;
+            sunxi-dis-signal-vol-sw;
+            mmc-ddr-1_8v;
+            mmc-hs200-1_8v;
+            mmc-hs400-1_8v;
+            vmmc = "vcc-emmc";
+            vqmmc = "vcc-lpddr";
+            vdmmc = "none";
+        };
+        sdmmc@01c0f000 {
+            compatible = "allwinner,sun50i-sdmmc0";
+            device_type = "sdc0";
+            reg = <0x00000000 0x01c0f000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003c 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x00000060 0x00000061 0x00000062>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000064>;
+            max-frequency = <0x02faf080>;
+            bus-width = <0x00000004>;
+            broken-cd;
+            status = "okay";
+            non-removable = <0x1>;
+            pinctrl-0 = <0x000000b2>;
+            cd-gpios = <0x00000030 0x00000005 0x00000006 0x00000000 0x00000001 0x00000002 0x00000000>;
+            sunxi-power-save-mode;
+            vmmc = "none";
+            vqmmc = "none";
+            vdmmc = "vcc-sdc";
+        };
+        sdmmc@1C10000 {
+            compatible = "allwinner,sun50i-sdmmc1";
+            device_type = "sdc1";
+            reg = <0x00000000 0x01c10000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x0000003d 0x00000104>;
+            clocks = <0x00000006 0x0000005a 0x00000065 0x00000066 0x00000067>;
+            clock-names = "osc24m", "pll_periph", "mmc", "ahb", "rst";
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000069>;
+            max-frequency = <0x08f0d180>;
+            bus-width = <0x00000004>;
+            sunxi-dly-52M-ddr4 = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000002>;
+            sunxi-dly-104M = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000001>;
+            sunxi-dly-208M = <0x00000001 0x00000000 0x00000000 0x00000000 0x00000001>;
+            status = "okay";
+            pinctrl-0 = <0x000000b3>;
+            sd-uhs-sdr50;
+            sd-uhs-ddr50;
+            sd-uhs-sdr104;
+            cap-sdio-irq;
+            keep-power-in-suspend;
+            ignore-pm-notify;
+        };
+        disp@01000000 {
+            compatible = "allwinner,sun50i-disp";
+            reg = <0x00000000 0x01000000 0x00000000 0x00300000 0x00000000 0x01c0c000 0x00000000 0x000017fc 0x00000000 0x01ca0000 0x00000000 0x000010fc>;
+            interrupts = <0x00000000 0x00000056 0x00000104 0x00000000 0x00000057 0x00000104 0x00000000 0x00000059 0x00000104>;
+            clocks = <0x0000006a 0x0000006b 0x0000006c 0x0000006d 0x0000006e>;
+            status = "okay";
+            device_type = "disp";
+            disp_init_enable = <0x00000001>;
+            disp_mode = <0x00000000>;
+            screen0_output_type = <0x00000003>;
+            screen0_output_mode = <0x0000000a>;
+            screen1_output_type = <0x00000003>;
+            screen1_output_mode = <0x0000000a>;
+            fb0_format = <0x00000000>;
+            fb0_width = <0x00000000>;
+            fb0_height = <0x00000000>;
+            fb1_format = <0x00000000>;
+            fb1_width = <0x00000000>;
+            fb1_height = <0x00000000>;
+        };
+        lcd0@01c0c000 {
+            compatible = "allwinner,sunxi-lcd0";
+            pinctrl-names = "active", "sleep";
+            status = "okay";
+            device_type = "lcd0";
+            lcd_used = <0x00000000>;
+            lcd_driver_name = "mb709_mipi";
+            lcd_backlight = <0x00000032>;
+            lcd_if = <0x00000004>;
+            lcd_x = <0x00000400>;
+            lcd_y = <0x00000258>;
+            lcd_width = <0x00000000>;
+            lcd_height = <0x00000000>;
+            lcd_dclk_freq = <0x00000037>;
+            lcd_pwm_used = <0x00000001>;
+            lcd_pwm_ch = <0x00000010>;
+            lcd_pwm_freq = <0x0000c350>;
+            lcd_pwm_pol = <0x00000001>;
+            lcd_pwm_max_limit = <0x000000fa>;
+            lcd_hbp = <0x00000078>;
+            lcd_ht = <0x00000604>;
+            lcd_hspw = <0x00000014>;
+            lcd_vbp = <0x00000017>;
+            lcd_vt = <0x0000027b>;
+            lcd_vspw = <0x00000002>;
+            lcd_dsi_if = <0x00000002>;
+            lcd_dsi_lane = <0x00000004>;
+            lcd_dsi_format = <0x00000000>;
+            lcd_dsi_eotp = <0x00000000>;
+            lcd_dsi_vc = <0x00000000>;
+            lcd_dsi_te = <0x00000000>;
+            lcd_frm = <0x00000000>;
+            lcd_gamma_en = <0x00000000>;
+            lcd_bright_curve_en = <0x00000000>;
+            lcd_cmap_en = <0x00000000>;
+            lcd_bl_en = <0x00000030 0x00000007 0x0000000a 0x00000001 0x00000000 0xffffffff 0x00000001>;
+            lcd_bl_en_power = "none";
+            lcd_power = "vcc-mipi";
+            lcd_fix_power = "vcc-dsi-33";
+            lcd_gpio_0 = <0x00000030 0x00000003 0x00000018 0x00000001 0x00000000 0xffffffff 0x00000001>;
+        };
+        hdmi@01ee0000 {
+            compatible = "allwinner,sunxi-hdmi";
+            reg = <0x00000000 0x01ee0000 0x00000000 0x00020000>;
+            clocks = <0x0000006f 0x00000070>;
+            device_type = "hdmi";
+            status = "okay";
+            hdmi_power = "vcc-hdmi-33";
+            hdmi_hdcp_enable = <0x00000000>;
+            hdmi_cts_compatibility = <0x00000000>;
+        };
+        tr@01000000 {
+            compatible = "allwinner,sun50i-tr";
+            reg = <0x00000000 0x01000000 0x00000000 0x000200bc>;
+            interrupts = <0x00000000 0x00000060 0x00000104>;
+            clocks = <0x0000006a>;
+            status = "okay";
+        };
+        pwm@01c21400 {
+            compatible = "allwinner,sunxi-pwm";
+            reg = <0x00000000 0x01c21400 0x00000000 0x0000003c>;
+            pwm-number = <0x00000001>;
+            pwm-base = <0x00000000>;
+            pwms = <0x00000071>;
+        };
+        pwm0@01c21400 {
+            compatible = "allwinner,sunxi-pwm0";
+            pinctrl-names = "active", "sleep";
+            reg_base = <0x01c21400>;
+            reg_busy_offset = <0x00000000>;
+            reg_busy_shift = <0x0000001c>;
+            reg_enable_offset = <0x00000000>;
+            reg_enable_shift = <0x00000004>;
+            reg_clk_gating_offset = <0x00000000>;
+            reg_clk_gating_shift = <0x00000006>;
+            reg_bypass_offset = <0x00000000>;
+            reg_bypass_shift = <0x00000009>;
+            reg_pulse_start_offset = <0x00000000>;
+            reg_pulse_start_shift = <0x00000008>;
+            reg_mode_offset = <0x00000000>;
+            reg_mode_shift = <0x00000007>;
+            reg_polarity_offset = <0x00000000>;
+            reg_polarity_shift = <0x00000005>;
+            reg_period_offset = <0x00000004>;
+            reg_period_shift = <0x00000010>;
+            reg_period_width = <0x00000010>;
+            reg_active_offset = <0x00000004>;
+            reg_active_shift = <0x00000000>;
+            reg_active_width = <0x00000010>;
+            reg_prescal_offset = <0x00000000>;
+            reg_prescal_shift = <0x00000000>;
+            reg_prescal_width = <0x00000004>;
+            linux,phandle = <0x00000071>;
+            phandle = <0x00000071>;
+            device_type = "pwm0";
+            pwm_used = <0x00000000>;
+            pinctrl-0 = <0x000000ad>;
+            pinctrl-1 = <0x000000ae>;
+        };
+        s_pwm@1f03800 {
+            compatible = "allwinner,sunxi-s_pwm";
+            reg = <0x00000000 0x01f03800 0x00000000 0x0000003c>;
+            pwm-number = <0x00000001>;
+            pwm-base = <0x00000010>;
+            pwms = <0x00000072>;
+        };
+        spwm0@0x01f03800 {
+            compatible = "allwinner,sunxi-pwm16";
+            pinctrl-names = "active", "sleep";
+            reg_base = <0x01f03800>;
+            reg_busy_offset = <0x00000000>;
+            reg_busy_shift = <0x0000001c>;
+            reg_enable_offset = <0x00000000>;
+            reg_enable_shift = <0x00000004>;
+            reg_clk_gating_offset = <0x00000000>;
+            reg_clk_gating_shift = <0x00000006>;
+            reg_bypass_offset = <0x00000000>;
+            reg_bypass_shift = <0x00000009>;
+            reg_pulse_start_offset = <0x00000000>;
+            reg_pulse_start_shift = <0x00000008>;
+            reg_mode_offset = <0x00000000>;
+            reg_mode_shift = <0x00000007>;
+            reg_polarity_offset = <0x00000000>;
+            reg_polarity_shift = <0x00000005>;
+            reg_period_offset = <0x00000004>;
+            reg_period_shift = <0x00000010>;
+            reg_period_width = <0x00000010>;
+            reg_active_offset = <0x00000004>;
+            reg_active_shift = <0x00000000>;
+            reg_active_width = <0x00000010>;
+            reg_prescal_offset = <0x00000000>;
+            reg_prescal_shift = <0x00000000>;
+            reg_prescal_width = <0x00000004>;
+            linux,phandle = <0x00000072>;
+            phandle = <0x00000072>;
+            device_type = "spwm0";
+            s_pwm_used = <0x00000001>;
+            pinctrl-0 = <0x000000af>;
+            pinctrl-1 = <0x000000b0>;
+        };
+        boot_disp {
+            compatible = "allwinner,boot_disp";
+            device_type = "boot_disp";
+            output_disp = <0x00000000>;
+            output_type = <0x00000003>;
+            output_mode = <0x0000000a>;
+        };
+        cci@0x01cb3000 {
+            compatible = "allwinner,sunxi-csi_cci";
+            reg = <0x00000000 0x01cb3000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000055 0x00000004>;
+            status = "okay";
+        };
+        csi_res@0x01cb0000 {
+            compatible = "allwinner,sunxi-csi";
+            reg = <0x00000000 0x01cb0000 0x00000000 0x00001000>;
+            status = "okay";
+        };
+        vfe@0 {
+            device_type = "csi0";
+            compatible = "allwinner,sunxi-vfe";
+            interrupts = <0x00000000 0x00000054 0x00000004>;
+            clocks = <0x00000073 0x00000074 0x00000075 0x00000004 0x00000006 0x00000005>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000077>;
+            csi0_sensor_list = <0x00000000>;
+            status = "disabled";
+            pinctrl-0 = <0x000000b1>;
+            csi0_mck = <0x00000030 0x00000004 0x00000001 0x00000000 0x00000000 0x00000001 0x00000000>;
+            dev@0 {
+                csi0_dev0_mname = "s5k4ec";
+                csi0_dev0_twi_addr = <0x0000005a>;
+                csi0_dev0_pos = "rear";
+                csi0_dev0_isp_used = <0x00000001>;
+                csi0_dev0_fmt = <0x00000000>;
+                csi0_dev0_stby_mode = <0x00000001>;
+                csi0_dev0_vflip = <0x00000000>;
+                csi0_dev0_hflip = <0x00000000>;
+                csi0_dev0_iovdd = "iovdd-csi";
+                csi0_dev0_iovdd_vol = <0x002ab980>;
+                csi0_dev0_avdd = "avdd-csi";
+                csi0_dev0_avdd_vol = <0x002ab980>;
+                csi0_dev0_dvdd = "dvdd-csi-18";
+                csi0_dev0_dvdd_vol = <0x0016e360>;
+                csi0_dev0_flash_used = <0x00000000>;
+                csi0_dev0_flash_type = <0x00000002>;
+                csi0_dev0_flvdd = "vdd-csi-led";
+                csi0_dev0_flvdd_vol = <0x00325aa0>;
+                csi0_dev0_act_used = <0x00000000>;
+                csi0_dev0_act_name = "ad5820_act";
+                csi0_dev0_act_slave = <0x00000018>;
+                status = "disabled";
+                device_type = "csi0_dev0";
+                csi0_dev0_afvdd;
+                csi0_dev0_afvdd_vol;
+                csi0_dev0_power_en;
+                csi0_dev0_reset = <0x00000030 0x00000004 0x00000010 0x00000000 0x00000000 0x00000001 0x00000000>;
+                csi0_dev0_pwdn = <0x00000030 0x00000004 0x00000011 0x00000000 0x00000000 0x00000001 0x00000000>;
+                csi0_dev0_flash_en;
+                csi0_dev0_flash_mode;
+                csi0_dev0_af_pwdn;
+            };
+
+        };
+        vdevice@0 {
+            compatible = "allwinner,sun50i-vdevice";
+            pinctrl-names = "default";
+            test-gpios = <0x00000079 0x0000000b 0x00000000 0x00000001 0x00000002 0x00000003 0x00000004>;
+            status = "okay";
+            device_type = "Vdevice";
+            pinctrl-0 = <0x000000b9>;
+        };
+        ce@1c15000 {
+            compatible = "allwinner,sunxi-ce";
+            reg = <0x00000000 0x01c15000 0x00000000 0x00000080 0x00000000 0x01c15800 0x00000000 0x00000080>;
+            interrupts = <0x00000000 0x0000005e 0x0000ff01 0x00000000 0x00000050 0x0000ff01>;
+            clock-frequency = <0x11e1a300 0x0bebc200>;
+            clocks = <0x0000007a 0x0000007b>;
+        };
+        deinterlace@0x01e00000 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-deinterlace";
+            reg = <0x00000000 0x01e00000 0x00000000 0x0000077c>;
+            interrupts = <0x00000000 0x0000005d 0x00000004>;
+            clocks = <0x0000007c 0x00000004>;
+            status = "okay";
+            device_type = "di";
+        };
+        smartcard@0x01c2c400 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-scr";
+            reg = <0x00000000 0x01c2c400 0x00000000 0x00000100>;
+            interrupts = <0x00000000 0x00000053 0x00000004>;
+            clocks = <0x0000007d 0x0000007e>;
+            clock-frequency = <0x016e3600>;
+            pinctrl-names = "default";
+            pinctrl-0 = <0x0000007f>;
+            status = "okay";
+            device_type = "smc";
+            smc_used;
+            smc_rst;
+            smc_vppen;
+            smc_vppp;
+            smc_det;
+            smc_vccen;
+            smc_sck;
+            smc_sda;
+        };
+        nmi@0x01f00c00 {
+            #address-cells = <0x00000001>;
+            #size-cells = <0x00000000>;
+            compatible = "allwinner,sunxi-nmi";
+            reg = <0x00000000 0x01f00c00 0x00000000 0x00000050>;
+            nmi_irq_ctrl = <0x0000000c>;
+            nmi_irq_en = <0x00000040>;
+            nmi_irq_status = <0x00000010>;
+            nmi_irq_mask = <0x00000050>;
+            status = "okay";
+        };
+        pmu0@0 {
+            compatible = "allwinner,pmu0";
+            device_type = "pmu0";
+            pmu_batdeten = <0x00000001>;
+            pmu_init_chgend_rate = <0x00000014>;
+            pmu_init_chg_enabled = <0x00000001>;
+            pmu_init_adc_freq = <0x00000320>;
+            pmu_init_adcts_freq = <0x00000320>;
+            pmu_init_chg_pretime = <0x00000046>;
+            pmu_init_chg_csttime = <0x000002d0>;
+            pmu_batt_cap_correct = <0x00000001>;
+            pmu_chg_end_on_en = <0x00000000>;
+            pmu_pwroff_vol = <0x00000ce4>;
+            pmu_pwron_vol = <0x00000a28>;
+            pmu_powkey_off_delay_time = <0x00000000>;
+            pmu_pwrok_time = <0x00000040>;
+            pmu_reset_shutdown_en = <0x00000001>;
+            pmu_restvol_adjust_time = <0x0000003c>;
+            pmu_ocv_cou_adjust_time = <0x0000003c>;
+            pmu_vbusen_func = <0x00000001>;
+            pmu_reset = <0x00000000>;
+            pmu_IRQ_wakeup = <0x00000001>;
+            pmu_hot_shutdowm = <0x00000001>;
+            pmu_inshort = <0x00000000>;
+            pmu_bat_shutdown_ltf = <0x00000c80>;
+            pmu_bat_shutdown_htf = <0x000000ed>;
+            status = "okay";
+            pmu_id = <0x00000006>;
+            pmu_twi_addr = <0x00000034>;
+            pmu_twi_id = <0x00000001>;
+            pmu_irq_id = <0x00000040>;
+            pmu_chg_ic_temp = <0x00000000>;
+            pmu_battery_rdc = <0x00000058>;
+            pmu_battery_cap = <0x000012c0>;
+            pmu_runtime_chgcur = <0x000001c2>;
+            pmu_suspend_chgcur = <0x000005dc>;
+            pmu_shutdown_chgcur = <0x000005dc>;
+            pmu_init_chgvol = <0x00001068>;
+            pmu_ac_vol = <0x00000fa0>;
+            pmu_ac_cur = <0x00000dac>;
+            pmu_usbpc_vol = <0x00001130>;
+            pmu_usbpc_cur = <0x000001f4>;
+            pmu_battery_warning_level1 = <0x0000000f>;
+            pmu_battery_warning_level2 = <0x00000000>;
+            pmu_chgled_func = <0x00000000>;
+            pmu_chgled_type = <0x00000000>;
+            pmu_bat_para1 = <0x00000000>;
+            pmu_bat_para2 = <0x00000000>;
+            pmu_bat_para3 = <0x00000000>;
+            pmu_bat_para4 = <0x00000000>;
+            pmu_bat_para5 = <0x00000000>;
+            pmu_bat_para6 = <0x00000000>;
+            pmu_bat_para7 = <0x00000001>;
+            pmu_bat_para8 = <0x00000001>;
+            pmu_bat_para9 = <0x00000002>;
+            pmu_bat_para10 = <0x00000003>;
+            pmu_bat_para11 = <0x00000004>;
+            pmu_bat_para12 = <0x0000000a>;
+            pmu_bat_para13 = <0x00000011>;
+            pmu_bat_para14 = <0x0000001a>;
+            pmu_bat_para15 = <0x00000029>;
+            pmu_bat_para16 = <0x0000002e>;
+            pmu_bat_para17 = <0x00000033>;
+            pmu_bat_para18 = <0x00000038>;
+            pmu_bat_para19 = <0x0000003b>;
+            pmu_bat_para20 = <0x00000041>;
+            pmu_bat_para21 = <0x00000045>;
+            pmu_bat_para22 = <0x0000004b>;
+            pmu_bat_para23 = <0x0000004f>;
+            pmu_bat_para24 = <0x00000053>;
+            pmu_bat_para25 = <0x00000059>;
+            pmu_bat_para26 = <0x0000005f>;
+            pmu_bat_para27 = <0x00000062>;
+            pmu_bat_para28 = <0x00000064>;
+            pmu_bat_para29 = <0x00000064>;
+            pmu_bat_para30 = <0x00000064>;
+            pmu_bat_para31 = <0x00000064>;
+            pmu_bat_para32 = <0x00000064>;
+            pmu_bat_temp_enable = <0x00000001>;
+            pmu_bat_charge_ltf = <0x000008d5>;
+            pmu_bat_charge_htf = <0x00000184>;
+            pmu_bat_temp_para1 = <0x00001d2a>;
+            pmu_bat_temp_para2 = <0x00001180>;
+            pmu_bat_temp_para3 = <0x00000dbe>;
+            pmu_bat_temp_para4 = <0x00000ae2>;
+            pmu_bat_temp_para5 = <0x000008af>;
+            pmu_bat_temp_para6 = <0x000006fc>;
+            pmu_bat_temp_para7 = <0x000005a8>;
+            pmu_bat_temp_para8 = <0x000003c9>;
+            pmu_bat_temp_para9 = <0x00000298>;
+            pmu_bat_temp_para10 = <0x000001d2>;
+            pmu_bat_temp_para11 = <0x00000189>;
+            pmu_bat_temp_para12 = <0x0000014d>;
+            pmu_bat_temp_para13 = <0x0000011b>;
+            pmu_bat_temp_para14 = <0x000000f2>;
+            pmu_bat_temp_para15 = <0x000000b3>;
+            pmu_bat_temp_para16 = <0x00000086>;
+            pmu_powkey_off_time = <0x00001770>;
+            pmu_powkey_off_func = <0x00000000>;
+            pmu_powkey_off_en = <0x00000001>;
+            pmu_powkey_long_time = <0x000005dc>;
+            pmu_powkey_on_time = <0x000003e8>;
+            power_start = <0x00000003>;
+        };
+        regu@0 {
+            compatible = "allwinner,pmu0_regu";
+            regulator_count = <0x00000017>;
+            status = "okay";
+            device_type = "pmu0_regu";
+            regulator1 = "axp81x_dcdc1 none vcc-nand vcc-emmc vcc-sdc vcc-usb-30 vcc-io vcc-pd";
+            regulator2 = "axp81x_dcdc2 none vdd-cpua";
+            regulator3 = "axp81x_dcdc3 none";
+            regulator4 = "axp81x_dcdc4 none";
+            regulator5 = "axp81x_dcdc5 none vcc-dram";
+            regulator6 = "axp81x_dcdc6 none vdd-sys";
+            regulator7 = "axp81x_dcdc7 none";
+            regulator8 = "axp81x_rtc none";
+            regulator9 = "axp81x_aldo1 none vdd-csi-led iovdd-csi vcc-pe";
+            regulator10 = "axp81x_aldo2 none vcc-pl";
+            regulator11 = "axp81x_aldo3 none vcc-avcc vcc-pll";
+            regulator12 = "axp81x_dldo1 none vcc-hdmi-33";
+            regulator13 = "axp81x_dldo2 none vcc-mipi";
+            regulator14 = "axp81x_dldo3 none avdd-csi";
+            regulator15 = "axp81x_dldo4 none vcc-deviceio";
+            regulator16 = "axp81x_eldo1 none vcc-cpvdd vcc-wifi-io vcc-pc vcc-pg";
+            regulator17 = "axp81x_eldo2 none vcc-lcd-0";
+            regulator18 = "axp81x_eldo3 none dvdd-csi-18";
+            regulator19 = "axp81x_fldo1 none vcc-hsic-12";
+            regulator20 = "axp81x_fldo2 none vdd-cpus";
+            regulator21 = "axp81x_gpio0ldo none vcc-ctp";
+            regulator22 = "axp81x_gpio1ldo none";
+            regulator23 = "axp81x_dc1sw none vcc-lvds vcc-dsi-33";
+        };
+        nand0@01c03000 {
+            compatible = "allwinner,sun50i-nand";
+            device_type = "nand0";
+            reg = <0x00000000 0x01c03000 0x00000000 0x00001000>;
+            interrupts = <0x00000000 0x00000046 0x00000004>;
+            clocks = <0x00000004 0x00000080>;
+            pinctrl-names = "default", "sleep";
+            pinctrl-1 = <0x00000083>;
+            nand0_regulator1 = "vcc-nand";
+            nand0_regulator2 = "none";
+            nand0_cache_level = <0x55aaaa55>;
+            nand0_flush_cache_num = <0x55aaaa55>;
+            nand0_capacity_level = <0x55aaaa55>;
+            nand0_id_number_ctl = <0x55aaaa55>;
+            nand0_print_level = <0x55aaaa55>;
+            nand0_p0 = <0x55aaaa55>;
+            nand0_p1 = <0x55aaaa55>;
+            nand0_p2 = <0x55aaaa55>;
+            nand0_p3 = <0x55aaaa55>;
+            status = "disabled";
+            nand0_support_2ch = <0x00000000>;
+            pinctrl-0 = <0x000000ab 0x000000ac>;
+        };
+        thermal_sensor {
+            compatible = "allwinner,thermal_sensor";
+            reg = <0x00000000 0x01c25000 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000001f 0x00000000>;
+            clocks = <0x00000006 0x00000084>;
+            sensor_num = <0x00000003>;
+            shut_temp = <0x00000078>;
+            status = "okay";
+            combine0 {
+                #thermal-sensor-cells = <0x00000001>;
+                combine_cnt = <0x00000003>;
+                combine_type = "max";
+                combine_chn = <0x00000000 0x00000001 0x00000002>;
+                linux,phandle = <0x00000085>;
+                phandle = <0x00000085>;
+            };
+        };
+        cpu_budget_cool {
+            compatible = "allwinner,budget_cooling";
+            #cooling-cells = <0x00000002>;
+            status = "okay";
+            state_cnt = <0x00000008>;
+            cluster_num = <0x00000001>;
+                     /*  1152000   4 cores */
+            state0 = <0x00119400 0x00000004>;
+                     /*  1008000   4 cores */
+            state1 = <0x000f6180 0x00000004>;
+                     /*   912000   4 cores */
+            state2 = <0x000dea80 0x00000004>;
+                     /*   816000   4 cores */
+            state3 = <0x000c7380 0x00000004>;
+                     /*   720000   4 cores */
+            state4 = <0x000afc80 0x00000004>;
+                     /*   624000   3 cores */
+            state5 = <0x00098580 0x00000003>;
+                     /*   528000   2 cores */
+            state6 = <0x00080e80 0x00000002>;
+                     /*   480000    1 core */
+            state7 = <0x00075300 0x00000001>;
+            linux,phandle = <0x00000087>;
+            phandle = <0x00000087>;
+        };
+        gpu_cooling {
+            compatible = "allwinner,gpu_cooling";
+            reg = <0x00000000 0x00000000 0x00000000 0x00000000>;
+            #cooling-cells = <0x00000002>;
+            status = "okay";
+            state_cnt = <0x00000003>;
+            state0 = <0x00000000>;
+            state1 = <0x00000168>;
+            state2 = <0x00000090>;
+            linux,phandle = <0x0000008c>;
+            phandle = <0x0000008c>;
+        };
+        thermal-zones {
+            soc_thermal {
+                polling-delay-passive = <0x000001f4>;
+                polling-delay = <0x000007d0>;
+                thermal-sensors = <0x00000085 0x00000000>;
+                trips {
+                    t0 {
+                        temperature = <0x00000050>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000086>;
+                        phandle = <0x00000086>;
+                    };
+                    t1 {
+                        temperature = <0x00000055>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000088>;
+                        phandle = <0x00000088>;
+                    };
+                    t2 {
+                        temperature = <0x0000005a>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x00000089>;
+                        phandle = <0x00000089>;
+                    };
+                    t3 {
+                        temperature = <0x0000005f>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008a>;
+                        phandle = <0x0000008a>;
+                    };
+                    t4 {
+                        temperature = <0x00000055>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008b>;
+                        phandle = <0x0000008b>;
+                    };
+                    t5 {
+                        temperature = <0x0000005a>;
+                        type = "passive";
+                        hysteresis = <0x00000000>;
+                        linux,phandle = <0x0000008d>;
+                        phandle = <0x0000008d>;
+                    };
+                    t6 {
+                        temperature = <0x0000006c>;
+                        type = "critical";
+                        hysteresis = <0x00000000>;
+                    };
+                };
+                cooling-maps {
+                    bind0 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000086>;
+                        cooling-device = <0x00000087 0x00000001 0x00000001>;
+                    };
+                    bind1 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000088>;
+                        cooling-device = <0x00000087 0x00000002 0x00000002>;
+                    };
+                    bind2 {
+                        contribution = <0x00000000>;
+                        trip = <0x00000089>;
+                        cooling-device = <0x00000087 0x00000003 0x00000006>;
+                    };
+                    bind3 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008a>;
+                        cooling-device = <0x00000087 0x00000007 0x00000009>;
+                    };
+                    bind4 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008b>;
+                        cooling-device = <0x0000008c 0x00000001 0x00000001>;
+                    };
+                    bind5 {
+                        contribution = <0x00000000>;
+                        trip = <0x0000008d>;
+                        cooling-device = <0x0000008c 0x00000002 0x00000002>;
+                    };
+                };
+            };
+        };
+        keyboard {
+            compatible = "allwinner,keyboard_2000mv";
+            reg = <0x00000000 0x01c21800 0x00000000 0x00000400>;
+            interrupts = <0x00000000 0x0000001e 0x00000000>;
+            status = "okay";
+            key_cnt = <0x00000005>;
+            key1 = <0x000000f0 0x00000073>;
+            key2 = <0x000001f4 0x00000072>;
+            key3 = <0x000002bc 0x0000008b>;
+            key4 = <0x0000037a 0x0000001c>;
+            key5 = <0x000007d0 0x00000066>;
+        };
+        eth@01c30000 {
+            compatible = "allwinner,sunxi-gmac";
+            reg = <0x00000000 0x01c30000 0x00000000 0x00040000 0x00000000 0x01c00000 0x00000000 0x00000030>;
+            pinctrl-names = "default";
+            interrupts = <0x00000000 0x00000052 0x00000004>;
+            interrupt-names = "gmacirq";
+            clocks = <0x0000008f>;
+            clock-names = "gmac";
+            phy-mode = "rgmii";
+            tx-delay = <0x00000003>;
+            rx-delay = <0x00000000>;
+            gmac_power1 = "axp81x_dc1sw:0";
+            status = "okay";
+            device_type = "gmac0";
+            pinctrl-0 = <0x0000009e>;
+            gmac_power2;
+            gmac_power3;
+        };
+        product {
+            device_type = "product";
+            version = "100";
+            machine = "evb";
+        };
+        platform {
+            device_type = "platform";
+            eraseflag = <0x00000001>;
+        };
+        target {
+            device_type = "target";
+            boot_clock = <0x000003f0>;
+            storage_type = <0xffffffff>;
+            burn_key = <0x00000000>;
+        };
+        power_sply {
+            device_type = "power_sply";
+            dcdc1_vol = <0x000f4f24>;
+            dcdc2_vol = <0x000f468c>;
+            dcdc6_vol = <0x000f468c>;
+            aldo1_vol = <0x00000af0>;
+            aldo2_vol = <0x000f4948>;
+            aldo3_vol = <0x000f4df8>;
+            dldo1_vol = <0x00000ce4>;
+            dldo2_vol = <0x00000ce4>;
+            dldo3_vol = <0x00000af0>;
+            dldo4_vol = <0x000f4f24>;
+            eldo1_vol = <0x000f4948>;
+            eldo2_vol = <0x00000708>;
+            eldo3_vol = <0x00000708>;
+            fldo1_vol = <0x000004b0>;
+            fldo2_vol = <0x000f468c>;
+            gpio0_vol = <0x00000c1c>;
+        };
+        card_boot {
+            device_type = "card_boot";
+            logical_start = <0x0000a000>;
+            sprite_gpio0;
+        };
+        pm_para {
+            device_type = "pm_para";
+            standby_mode = <0x00000001>;
+        };
+        card0_boot_para {
+            device_type = "card0_boot_para";
+            card_ctrl = <0x00000000>;
+            card_high_speed = <0x00000001>;
+            card_line = <0x00000004>;
+            pinctrl-0 = <0x00000099>;
+        };
+        card2_boot_para {
+            device_type = "card2_boot_para";
+            sdc_io_1v8 = <0x00000001>;
+            card_ctrl = <0x00000002>;
+            card_high_speed = <0x00000001>;
+            card_line = <0x00000008>;
+            pinctrl-0 = <0x0000009a>;
+            sdc_ex_dly_used = <0x00000002>;
+        };
+        twi_para {
+            device_type = "twi_para";
+            twi_port = <0x00000000>;
+            pinctrl-0 = <0x0000009b>;
+        };
+        uart_para {
+            device_type = "uart_para";
+            uart_debug_port = <0x00000000>;
+            pinctrl-0 = <0x0000009c>;
+        };
+        jtag_para {
+            device_type = "jtag_para";
+            jtag_enable = <0x00000001>;
+            pinctrl-0 = <0x0000009d>;
+        };
+        clock {
+            device_type = "clock";
+            pll4 = <0x0000012c>;
+            pll6 = <0x00000258>;
+            pll8 = <0x00000168>;
+            pll9 = <0x00000129>;
+            pll10 = <0x00000108>;
+        };
+        rtp_para {
+            device_type = "rtp_para";
+            rtp_used = <0x00000000>;
+            rtp_screen_size = <0x00000005>;
+            rtp_regidity_level = <0x00000005>;
+            rtp_press_threshold_enable = <0x00000000>;
+            rtp_press_threshold = <0x00001f40>;
+            rtp_sensitive_level = <0x0000000f>;
+            rtp_exchange_x_y_flag = <0x00000000>;
+        };
+        ctp {
+            device_type = "ctp";
+            compatible = "allwinner,sun50i-ctp-para";
+            status = "disabled";
+            ctp_name = "gt911_DB";
+            ctp_twi_id = <0x00000000>;
+            ctp_twi_addr = <0x00000040>;
+            ctp_screen_max_x = <0x00000400>;
+            ctp_screen_max_y = <0x00000258>;
+            ctp_revert_x_flag = <0x00000001>;
+            ctp_revert_y_flag = <0x00000001>;
+            ctp_exchange_x_y_flag = <0x00000000>;
+            ctp_int_port = <0x00000030 0x00000007 0x00000004 0x00000006 0xffffffff 0xffffffff 0xffffffff>;
+            ctp_wakeup = <0x00000030 0x00000007 0x0000000b 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+            ctp_power_ldo = "vcc-ctp";
+            ctp_power_ldo_vol = <0x00000ce4>;
+            ctp_power_io;
+        };
+        ctp_list {
+            device_type = "ctp_list";
+            compatible = "allwinner,sun50i-ctp-list";
+            status = "okay";
+            gslX680new = <0x00000001>;
+            gt9xx_ts = <0x00000000>;
+            gt9xxf_ts = <0x00000001>;
+            gt9xxnew_ts = <0x00000000>;
+            gt82x = <0x00000001>;
+            zet622x = <0x00000001>;
+            aw5306_ts = <0x00000001>;
+        };
+        tkey_para {
+            device_type = "tkey_para";
+            tkey_used = <0x00000000>;
+            tkey_twi_id;
+            tkey_twi_addr;
+            tkey_int;
+        };
+        motor_para {
+            device_type = "motor_para";
+            motor_used = <0x00000000>;
+            motor_shake = <0x00000031 0x0000fffe 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+        };
+        tvout_para {
+            device_type = "tvout_para";
+            tvout_used;
+            tvout_channel_num;
+            tv_en;
+        };
+        tvin_para {
+            device_type = "tvin_para";
+            tvin_used;
+            tvin_channel_num;
+        };
+        serial_feature {
+            device_type = "serial_feature";
+            sn_filename = "sn.txt";
+        };
+        gsensor {
+            device_type = "gsensor";
+            compatible = "allwinner,sun50i-gsensor-para";
+            status = "disabled";
+            gsensor_twi_id = <0x00000001>;
+            gsensor_twi_addr = <0x0000001d>;
+            gsensor_vcc_io = "vcc-deviceio";
+            gsensor_vcc_io_val = <0x00000ce4>;
+            gsensor_int1 = <0x00000030 0x00000007 0x00000005 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+            gsensor_int2 = <0x00000030 0x00000007 0x00000006 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        gsensor_list {
+            device_type = "gsensor_list";
+            compatible = "allwinner,sun50i-gsensor-list-para";
+            gsensor_list__used = <0x00000001>;
+            lsm9ds0_acc_mag = <0x00000001>;
+            bma250 = <0x00000001>;
+            mma8452 = <0x00000001>;
+            mma7660 = <0x00000001>;
+            mma865x = <0x00000001>;
+            afa750 = <0x00000001>;
+            lis3de_acc = <0x00000001>;
+            lis3dh_acc = <0x00000001>;
+            kxtik = <0x00000001>;
+            dmard10 = <0x00000000>;
+            dmard06 = <0x00000001>;
+            mxc622x = <0x00000001>;
+            fxos8700 = <0x00000001>;
+            lsm303d = <0x00000000>;
+            sc7a30 = <0x00000001>;
+        };
+        3g_para {
+            device_type = "3g_para";
+            3g_used = <0x00000000>;
+            3g_usbc_num = <0x00000002>;
+            3g_uart_num = <0x00000000>;
+            bb_vbat = <0x00000079 0x0000000b 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_host_wake = <0x00000079 0x0000000c 0x00000000 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_on = <0x00000079 0x0000000c 0x00000001 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_pwr_on = <0x00000079 0x0000000c 0x00000003 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_wake = <0x00000079 0x0000000c 0x00000004 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_rf_dis = <0x00000079 0x0000000c 0x00000005 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            bb_rst = <0x00000079 0x0000000c 0x00000006 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+            3g_int;
+        };
+        gyroscopesensor {
+            device_type = "gyroscopesensor";
+            compatible = "allwinner,sun50i-gyr_sensors-para";
+            status = "disabled";
+            gy_twi_id = <0x00000002>;
+            gy_twi_addr = <0x0000006a>;
+            gy_int1 = <0x00000030 0x00000000 0x0000000a 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+            gy_int2;
+        };
+        gy_list {
+            device_type = "gy_list";
+            compatible = "allwinner,sun50i-gyr_sensors-list-para";
+            status = "disabled";
+            lsm9ds0_gyr = <0x00000001>;
+            l3gd20_gyr = <0x00000000>;
+            bmg160_gyr = <0x00000001>;
+        };
+        lightsensor {
+            device_type = "lightsensor";
+            compatible = "allwinner,sun50i-lsensors-para";
+            status = "disabled";
+            ls_twi_id = <0x00000002>;
+            ls_twi_addr = <0x00000023>;
+            ls_int = <0x00000030 0x00000000 0x0000000c 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        ls_list {
+            device_type = "ls_list";
+            compatible = "allwinner,sun50i-lsensors-list-para";
+            status = "disabled";
+            ltr_501als = <0x00000001>;
+            jsa1212 = <0x00000000>;
+            jsa1127 = <0x00000001>;
+            stk3x1x = <0x00000000>;
+        };
+        compasssensor {
+            device_type = "compasssensor";
+            compatible = "allwinner,sun50i-compass-para";
+            status = "disabled";
+            compass_twi_id = <0x00000002>;
+            compass_twi_addr = <0x0000000d>;
+            compass_int = <0x00000030 0x00000000 0x0000000b 0x00000006 0x00000001 0xffffffff 0xffffffff>;
+        };
+        compass_list {
+            device_type = "compass_list";
+            compatible = "allwinner,sun50i-compass-list-para";
+            status = "disabled";
+            lsm9ds0 = <0x00000001>;
+            lsm303d = <0x00000000>;
+        };
+        recovery_key {
+            device_type = "recovery_key";
+            key_max = <0x0000000c>;
+            key_min = <0x0000000a>;
+        };
+        fastboot_key {
+            device_type = "fastboot_key";
+            key_max = <0x00000006>;
+            key_min = <0x00000004>;
+        };
+    };
+    aliases {
+        serial0 = "/soc@01c00000/uart@01c28000";
+        serial1 = "/soc@01c00000/uart@01c28400";
+        serial2 = "/soc@01c00000/uart@01c28800";
+        serial3 = "/soc@01c00000/uart@01c28c00";
+        serial4 = "/soc@01c00000/uart@01c29000";
+        twi0 = "/soc@01c00000/twi@0x01c2ac00";
+        twi1 = "/soc@01c00000/twi@0x01c2b000";
+        twi2 = "/soc@01c00000/twi@0x01c2b400";
+        spi0 = "/soc@01c00000/spi@01c68000";
+        spi1 = "/soc@01c00000/spi@01c69000";
+        global_timer0 = "/soc@01c00000/timer@1c20c00";
+        cci0 = "/soc@01c00000/cci@0x01cb3000";
+        csi_res0 = "/soc@01c00000/csi_res@0x01cb0000";
+        vfe0 = "/soc@01c00000/vfe@0";
+        mmc0 = "/soc@01c00000/sdmmc@01c0f000";
+        mmc2 = "/soc@01c00000/sdmmc@01C11000";
+        nand0 = "/soc@01c00000/nand0@01c03000";
+        disp = "/soc@01c00000/disp@01000000";
+        lcd0 = "/soc@01c00000/lcd0@01c0c000";
+        hdmi = "/soc@01c00000/hdmi@01ee0000";
+        pwm = "/soc@01c00000/pwm@01c21400";
+        pwm0 = "/soc@01c00000/pwm0@01c21400";
+        s_pwm = "/soc@01c00000/s_pwm@1f03800";
+        spwm0 = "/soc@01c00000/spwm0@0x01f03800";
+        boot_disp = "/soc@01c00000/boot_disp";
+    };
+    chosen {
+        bootargs = "earlyprintk=sunxi-uart,0x01c28000 loglevel=8 initcall_debug=1 console=ttyS0 init=/init";
+        linux,initrd-start = <0x00000000 0x00000000>;
+        linux,initrd-end = <0x00000000 0x00000000>;
+    };
+    cpus {
+        #address-cells = <0x00000002>;
+        #size-cells = <0x00000000>;
+        cpu@0 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000000>;
+            enable-method = "psci";
+         /* CPU Frequencies    408000     480000     504000     528000     576000     600000     624000     648000     672000     720000     768000     816000     864000     912000     960000    1008000    1056000    1104000    1152000    1200000    1344000 */
+            cpufreq_tbl = <0x000639C0 0x00075300 0x0007b0c0 0x00080e80 0x0008ca00 0x000927c0 0x00098580 0x0009e340 0x000a4100 0x000afc80 0x000bb800 0x000c7380 0x000d2f00 0x000dea80 0x000ea600 0x000f6180 0x00101d00 0x0010d880 0x00119400 0x00124f80 0x00148200>;
+            clock-latency = <0x001e8480>;
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@1 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000001>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@2 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000002>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        cpu@3 {
+            device_type = "cpu";
+            compatible = "arm,cortex-a53", "arm,armv8";
+            reg = <0x00000000 0x00000003>;
+            enable-method = "psci";
+            clock-frequency = <0x3c14dc00>;
+            cpu-idle-states = <0x00000090 0x00000091 0x00000092>;
+        };
+        idle-states {
+            entry-method = "arm,psci";
+            cpu-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x00010000>;
+                entry-latency-us = <0x00000028>;
+                exit-latency-us = <0x00000064>;
+                min-residency-us = <0x00000096>;
+                linux,phandle = <0x00000090>;
+                phandle = <0x00000090>;
+            };
+            cluster-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x01010000>;
+                entry-latency-us = <0x000001f4>;
+                exit-latency-us = <0x000003e8>;
+                min-residency-us = <0x000009c4>;
+                linux,phandle = <0x00000091>;
+                phandle = <0x00000091>;
+            };
+            sys-sleep-0 {
+                compatible = "arm,idle-state";
+                arm,psci-suspend-param = <0x02010000>;
+                entry-latency-us = <0x000003e8>;
+                exit-latency-us = <0x000007d0>;
+                min-residency-us = <0x00001194>;
+                linux,phandle = <0x00000092>;
+                phandle = <0x00000092>;
+            };
+        };
+    };
+    psci {
+        compatible = "arm,psci-0.2";
+        method = "smc";
+        psci_version = <0x84000000>;
+        cpu_suspend = <0xc4000001>;
+        cpu_off = <0x84000002>;
+        cpu_on = <0xc4000003>;
+        affinity_info = <0xc4000004>;
+        migrate = <0xc4000005>;
+        migrate_info_type = <0x84000006>;
+        migrate_info_up_cpu = <0xc4000007>;
+        system_off = <0x84000008>;
+        system_reset = <0x84000009>;
+    };
+    n_brom {
+        compatible = "allwinner,n-brom";
+        reg = <0x00000000 0x00000000 0x00000000 0x0000c000>;
+    };
+    s_brom {
+        compatible = "allwinner,s-brom";
+        reg = <0x00000000 0x00000000 0x00000000 0x00010000>;
+    };
+    sram_a1 {
+        compatible = "allwinner,sram_a1";
+        reg = <0x00000000 0x00010000 0x00000000 0x00008000>;
+    };
+    sram_a2 {
+        compatible = "allwinner,sram_a2";
+        reg = <0x00000000 0x00040000 0x00000000 0x00014000>;
+    };
+    prcm {
+        compatible = "allwinner,prcm";
+        reg = <0x00000000 0x01f01400 0x00000000 0x00000400>;
+    };
+    cpuscfg {
+        compatible = "allwinner,cpuscfg";
+        reg = <0x00000000 0x01f01c00 0x00000000 0x00000400>;
+    };
+    ion {
+        compatible = "allwinner,sunxi-ion";
+        system_contig {
+            type = <0x00000001>;
+        };
+        cma {
+            type = <0x00000004>;
+        };
+        system {
+            type = <0x00000000>;
+        };
+    };
+    dram {
+        compatible = "allwinner,dram";
+        clocks = <0x00000093 0x00000094>;
+        clock-names = "pll_ddr0", "pll_ddr1";
+        dram_clk = <0x00000228>;
+        dram_type = <0x00000007>;
+        dram_zq = <0x003b3bdd>;
+        dram_odt_en = <0x00000001>;
+        dram_para1 = <0x10e410e4>;
+        dram_para2 = <0x00001000>;
+        dram_mr0 = <0x00001840>;
+        dram_mr1 = <0x00000040>;
+        dram_mr2 = <0x00000018>;
+        dram_mr3 = <0x00000002>;
+        dram_tpr0 = <0x004a2195>;
+        dram_tpr1 = <0x02424190>;
+        dram_tpr2 = <0x0008b060>;
+        dram_tpr3 = <0x050005dc>;
+        dram_tpr4 = <0x00000000>;
+        dram_tpr5 = <0x00000000>;
+        dram_tpr6 = <0x00000000>;
+        dram_tpr7 = <0x2a066198>;
+        dram_tpr8 = <0x00000000>;
+        dram_tpr9 = <0x00000000>;
+        dram_tpr10 = <0x00008808>;
+        dram_tpr11 = <0x40a60066>;
+        dram_tpr12 = <0x55550000>;
+        dram_tpr13 = <0x04000900>;
+        device_type = "dram";
+    };
+    memory@40000000 {
+        device_type = "memory";
+        reg = <0x00000000 0x40000000 0x00000000 0x40000000>;
+    };
+    interrupt-controller@1c81000 {
+        compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
+        #interrupt-cells = <0x00000003>;
+        #address-cells = <0x00000000>;
+        device_type = "gic";
+        interrupt-controller;
+        reg = <0x00000000 0x01c81000 0x00000000 0x00001000 0x00000000 0x01c82000 0x00000000 0x00002000 0x00000000 0x01c84000 0x00000000 0x00002000 0x00000000 0x01c86000 0x00000000 0x00002000>;
+        interrupts = <0x00000001 0x00000009 0x00000f04>;
+        linux,phandle = <0x00000001>;
+        phandle = <0x00000001>;
+    };
+    sunxi-chipid@1c14200 {
+        compatible = "sunxi,sun50i-chipid";
+        device_type = "chipid";
+        reg = <0x00000000 0x01c14200 0x00000000 0x00000400>;
+    };
+    timer {
+        compatible = "arm,armv8-timer";
+        interrupts = <0x00000001 0x0000000d 0x0000ff01 0x00000001 0x0000000e 0x0000ff01 0x00000001 0x0000000b 0x0000ff01 0x00000001 0x0000000a 0x0000ff01>;
+        clock-frequency = <0x016e3600>;
+    };
+    pmu {
+        compatible = "arm,armv8-pmuv3";
+        interrupts = <0x00000000 0x00000078 0x00000004 0x00000000 0x00000079 0x00000004 0x00000000 0x0000007a 0x00000004 0x00000000 0x0000007b 0x00000004>;
+    };
+    dvfs_table {
+        compatible = "allwinner,dvfs_table";
+        max_freq = <0x44aa2000>;
+        min_freq = <0x1c9c3800>;
+        lv_count = <0x00000008>;
+        lv1_freq = <0x44aa2000>;
+        lv1_volt = <0x00000514>;
+        lv2_freq = <0x41cdb400>;
+        lv2_volt = <0x000004ec>;
+        lv3_freq = <0x3ef14800>;
+        lv3_volt = <0x000004d8>;
+        lv4_freq = <0x3c14dc00>;
+        lv4_volt = <0x000004b0>;
+        lv5_freq = <0x39387000>;
+        lv5_volt = <0x00000488>;
+        lv6_freq = <0x365c0400>;
+        lv6_volt = <0x00000460>;
+        lv7_freq = <0x30a32c00>;
+        lv7_volt = <0x00000438>;
+        lv8_freq = <0x269fb200>;
+        lv8_volt = <0x00000410>;
+        device_type = "dvfs_table";
+    };
+    dramfreq {
+        compatible = "allwinner,sunxi-dramfreq";
+        reg = <0x00000000 0x01c62000 0x00000000 0x00001000 0x00000000 0x01c63000 0x00000000 0x00001000 0x00000000 0x01c20000 0x00000000 0x00000800>;
+        clocks = <0x00000093 0x00000094 0x00000095>;
+        status = "okay";
+    };
+    uboot {
+    };
+    gpu@0x01c40000 {
+        compatible = "arm,mali-400", "arm,mali-utgard";
+        reg = <0x00000000 0x01c40000 0x00000000 0x00010000>;
+        interrupts = <0x00000000 0x00000061 0x00000004 0x00000000 0x00000062 0x00000004 0x00000000 0x00000063 0x00000004 0x00000000 0x00000064 0x00000004 0x00000000 0x00000066 0x00000004 0x00000000 0x00000067 0x00000004>;
+        interrupt-names = "IRQGP", "IRQGPMMU", "IRQPP0", "IRQPPMMU0", "IRQPP1", "IRQPPMMU1";
+        clocks = <0x00000096 0x00000097>;
+        device_type = "gpu_mali400_0";
+        normal_freq = <0x00000198>;
+        scene_ctrl_status = <0x00000000>;
+        temp_ctrl_status = <0x00000001>;
+    };
+    wlan {
+        compatible = "allwinner,sunxi-wlan";
+        wlan_io_regulator = "vcc-wifi-io";
+        wlan_busnum = <0x00000001>;
+        status = "okay";
+        device_type = "wlan";
+        clocks;
+        wlan_power;
+        wlan_regon = <0x00000079 0x0000000b 0x00000002 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+        wlan_hostwake = <0x00000079 0x0000000b 0x00000003 0x00000006 0xffffffff 0xffffffff 0x00000000>;
+        efuse_map_path = "wifi_efuse_8189e_for_MB1019Q5.map";
+    };
+    bt {
+        compatible = "allwinner,sunxi-bt";
+        bt_io_regulator = "vcc-wifi-io";
+        status = "okay";
+        device_type = "bt";
+        clocks;
+        bt_power;
+        bt_rst_n = <0x00000079 0x0000000b 0x00000004 0x00000001 0xffffffff 0xffffffff 0x00000000>;
+    };
+    btlpm {
+        compatible = "allwinner,sunxi-btlpm";
+        uart_index = <0x00000001>;
+        status = "okay";
+        device_type = "btlpm";
+        bt_wake = <0x00000079 0x0000000b 0x00000006 0x00000001 0xffffffff 0xffffffff 0x00000001>;
+        bt_hostwake = <0x00000079 0x0000000b 0x00000005 0x00000006 0xffffffff 0xffffffff 0x00000000>;
+    };
+};