/dts-v1/; / { interrupt-parent = <0x01>; #address-cells = <0x01>; #size-cells = <0x01>; model = "Xunlong Orange Pi Zero"; compatible = "xunlong,orangepi-zero\0allwinner,sun8i-h2-plus"; chosen { #address-cells = <0x01>; #size-cells = <0x01>; ranges; stdout-path = "serial0:115200n8"; framebuffer-hdmi { compatible = "allwinner,simple-framebuffer\0simple-framebuffer"; allwinner,pipeline = "mixer0-lcd0-hdmi"; clocks = <0x02 0x06 0x03 0x66 0x03 0x6f>; status = "disabled"; }; framebuffer-tve { compatible = "allwinner,simple-framebuffer\0simple-framebuffer"; allwinner,pipeline = "mixer1-lcd1-tve"; clocks = <0x02 0x07 0x03 0x67>; status = "disabled"; }; }; sound { compatible = "simple-audio-card"; simple-audio-card,format = "i2s"; simple-audio-card,name = "allwinner-hdmi"; simple-audio-card,mclk-fs = <0x100>; phandle = <0x35>; simple-audio-card,codec { sound-dai = <0x04>; }; simple-audio-card,cpu { sound-dai = <0x05>; dai-tdm-slot-num = <0x02>; dai-tdm-slot-width = <0x20>; }; }; clocks { #address-cells = <0x01>; #size-cells = <0x01>; ranges; osc24M_clk { #clock-cells = <0x00>; compatible = "fixed-clock"; clock-frequency = <0x16e3600>; clock-accuracy = <0xc350>; clock-output-names = "osc24M"; phandle = <0x11>; }; osc32k_clk { #clock-cells = <0x00>; compatible = "fixed-clock"; clock-frequency = <0x8000>; clock-accuracy = <0xc350>; clock-output-names = "ext_osc32k"; phandle = <0x23>; }; }; opp_table0 { compatible = "operating-points-v2"; opp-shared; phandle = <0x28>; opp-480000000 { opp-hz = <0x00 0x1c9c3800>; opp-microvolt = <0xfde80 0xfde80 0x13d620>; clock-latency-ns = <0x3b9b0>; }; opp-648000000 { opp-hz = <0x00 0x269fb200>; opp-microvolt = <0xfde80 0xfde80 0x13d620>; clock-latency-ns = <0x3b9b0>; }; opp-816000000 { opp-hz = <0x00 0x30a32c00>; opp-microvolt = <0x10c8e0 0x10c8e0 0x13d620>; clock-latency-ns = <0x3b9b0>; }; opp-960000000 { opp-hz = <0x00 0x39387000>; opp-microvolt = <0x124f80 0x124f80 0x13d620>; clock-latency-ns = <0x3b9b0>; }; opp-1008000000 { opp-hz = <0x00 0x3c14dc00>; opp-microvolt = <0x124f80 0x124f80 0x13d620>; clock-latency-ns = <0x3b9b0>; }; opp-1104000000 { opp-hz = <0x00 0x41cdb400>; opp-microvolt = <0x142440 0x142440 0x142440>; clock-latency-ns = <0x3b9b0>; }; opp-1200000000 { opp-hz = <0x00 0x47868c00>; opp-microvolt = <0x142440 0x142440 0x142440>; clock-latency-ns = <0x3b9b0>; }; opp-1296000000 { opp-hz = <0x00 0x4d3f6400>; opp-microvolt = <0x147260 0x147260 0x147260>; clock-latency-ns = <0x3b9b0>; }; opp-1368000000 { opp-hz = <0x00 0x518a0600>; opp-microvolt = <0x155cc0 0x155cc0 0x155cc0>; clock-latency-ns = <0x3b9b0>; }; }; display-engine { compatible = "allwinner,sun8i-h3-display-engine"; allwinner,pipelines = <0x06>; status = "disabled"; phandle = <0x36>; }; soc { compatible = "simple-bus"; #address-cells = <0x01>; #size-cells = <0x01>; ranges; clock@1000000 { reg = <0x1000000 0x10000>; clocks = <0x03 0x30 0x03 0x65>; clock-names = "bus\0mod"; resets = <0x03 0x22>; #clock-cells = <0x01>; #reset-cells = <0x01>; compatible = "allwinner,sun8i-h3-de2-clk"; phandle = <0x02>; }; mixer@1100000 { compatible = "allwinner,sun8i-h3-de2-mixer-0"; reg = <0x1100000 0x100000>; clocks = <0x02 0x00 0x02 0x06>; clock-names = "bus\0mod"; resets = <0x02 0x00>; phandle = <0x06>; ports { #address-cells = <0x01>; #size-cells = <0x00>; port@1 { reg = <0x01>; phandle = <0x37>; endpoint { remote-endpoint = <0x07>; phandle = <0x08>; }; }; }; }; dma-controller@1c02000 { compatible = "allwinner,sun8i-h3-dma"; reg = <0x1c02000 0x1000>; interrupts = <0x00 0x32 0x04>; clocks = <0x03 0x15>; resets = <0x03 0x06>; #dma-cells = <0x01>; phandle = <0x16>; }; lcd-controller@1c0c000 { compatible = "allwinner,sun8i-h3-tcon-tv\0allwinner,sun8i-a83t-tcon-tv"; reg = <0x1c0c000 0x1000>; interrupts = <0x00 0x56 0x04>; clocks = <0x03 0x2a 0x03 0x66>; clock-names = "ahb\0tcon-ch1"; resets = <0x03 0x1b>; reset-names = "lcd"; phandle = <0x38>; ports { #address-cells = <0x01>; #size-cells = <0x00>; port@0 { reg = <0x00>; phandle = <0x39>; endpoint { remote-endpoint = <0x08>; phandle = <0x07>; }; }; port@1 { #address-cells = <0x01>; #size-cells = <0x00>; reg = <0x01>; phandle = <0x3a>; endpoint@1 { reg = <0x01>; remote-endpoint = <0x09>; phandle = <0x22>; }; }; }; }; mmc@1c0f000 { reg = <0x1c0f000 0x1000>; pinctrl-names = "default"; pinctrl-0 = <0x0a>; resets = <0x03 0x07>; reset-names = "ahb"; interrupts = <0x00 0x3c 0x04>; bus-width = <0x04>; status = "okay"; #address-cells = <0x01>; #size-cells = <0x00>; compatible = "allwinner,sun7i-a20-mmc"; clocks = <0x03 0x16 0x03 0x47 0x03 0x49 0x03 0x48>; clock-names = "ahb\0mmc\0output\0sample"; vmmc-supply = <0x0b>; cd-gpios = <0x0c 0x05 0x06 0x01>; phandle = <0x3b>; }; mmc@1c10000 { reg = <0x1c10000 0x1000>; pinctrl-names = "default"; pinctrl-0 = <0x0d>; resets = <0x03 0x08>; reset-names = "ahb"; interrupts = <0x00 0x3d 0x04>; status = "okay"; #address-cells = <0x01>; #size-cells = <0x00>; compatible = "allwinner,sun7i-a20-mmc"; clocks = <0x03 0x17 0x03 0x4a 0x03 0x4c 0x03 0x4b>; clock-names = "ahb\0mmc\0output\0sample"; vmmc-supply = <0x0e>; mmc-pwrseq = <0x0f>; bus-width = <0x04>; non-removable; phandle = <0x3c>; sdio_wifi@1 { reg = <0x01>; compatible = "xradio,xr819"; interrupt-parent = <0x0c>; interrupts = <0x06 0x0a 0x01>; interrupt-names = "host-wake"; phandle = <0x3d>; }; }; mmc@1c11000 { reg = <0x1c11000 0x1000>; resets = <0x03 0x09>; reset-names = "ahb"; interrupts = <0x00 0x3e 0x04>; status = "disabled"; #address-cells = <0x01>; #size-cells = <0x00>; compatible = "allwinner,sun7i-a20-mmc"; clocks = <0x03 0x18 0x03 0x4d 0x03 0x4f 0x03 0x4e>; clock-names = "ahb\0mmc\0output\0sample"; phandle = <0x3e>; }; eeprom@1c14000 { reg = <0x1c14000 0x400>; compatible = "allwinner,sun8i-h3-sid"; #address-cells = <0x01>; #size-cells = <0x01>; phandle = <0x3f>; thermal-sensor-calibration@34 { reg = <0x34 0x04>; phandle = <0x27>; }; }; usb@1c19000 { compatible = "allwinner,sun8i-h3-musb"; reg = <0x1c19000 0x400>; clocks = <0x03 0x20>; resets = <0x03 0x11>; interrupts = <0x00 0x47 0x04>; interrupt-names = "mc"; phys = <0x10 0x00>; phy-names = "usb"; extcon = <0x10 0x00>; dr_mode = "peripheral"; status = "okay"; phandle = <0x40>; }; phy@1c19400 { compatible = "allwinner,sun8i-h3-usb-phy"; reg = <0x1c19400 0x2c 0x1c1a800 0x04 0x1c1b800 0x04 0x1c1c800 0x04 0x1c1d800 0x04>; reg-names = "phy_ctrl\0pmu0\0pmu1\0pmu2\0pmu3"; clocks = <0x03 0x58 0x03 0x59 0x03 0x5a 0x03 0x5b>; clock-names = "usb0_phy\0usb1_phy\0usb2_phy\0usb3_phy"; resets = <0x03 0x00 0x03 0x01 0x03 0x02 0x03 0x03>; reset-names = "usb0_reset\0usb1_reset\0usb2_reset\0usb3_reset"; status = "okay"; #phy-cells = <0x01>; usb0_id_det-gpios = <0x0c 0x06 0x0c 0x00>; phandle = <0x10>; }; usb@1c1a000 { compatible = "allwinner,sun8i-h3-ehci\0generic-ehci"; reg = <0x1c1a000 0x100>; interrupts = <0x00 0x48 0x04>; clocks = <0x03 0x21 0x03 0x25>; resets = <0x03 0x12 0x03 0x16>; status = "okay"; phandle = <0x41>; }; usb@1c1a400 { compatible = "allwinner,sun8i-h3-ohci\0generic-ohci"; reg = <0x1c1a400 0x100>; interrupts = <0x00 0x49 0x04>; clocks = <0x03 0x21 0x03 0x25 0x03 0x5c>; resets = <0x03 0x12 0x03 0x16>; status = "okay"; phandle = <0x42>; }; usb@1c1b000 { compatible = "allwinner,sun8i-h3-ehci\0generic-ehci"; reg = <0x1c1b000 0x100>; interrupts = <0x00 0x4a 0x04>; clocks = <0x03 0x22 0x03 0x26>; resets = <0x03 0x13 0x03 0x17>; phys = <0x10 0x01>; phy-names = "usb"; status = "okay"; phandle = <0x43>; }; usb@1c1b400 { compatible = "allwinner,sun8i-h3-ohci\0generic-ohci"; reg = <0x1c1b400 0x100>; interrupts = <0x00 0x4b 0x04>; clocks = <0x03 0x22 0x03 0x26 0x03 0x5d>; resets = <0x03 0x13 0x03 0x17>; phys = <0x10 0x01>; phy-names = "usb"; status = "okay"; phandle = <0x44>; }; usb@1c1c000 { compatible = "allwinner,sun8i-h3-ehci\0generic-ehci"; reg = <0x1c1c000 0x100>; interrupts = <0x00 0x4c 0x04>; clocks = <0x03 0x23 0x03 0x27>; resets = <0x03 0x14 0x03 0x18>; phys = <0x10 0x02>; phy-names = "usb"; status = "disabled"; phandle = <0x45>; }; usb@1c1c400 { compatible = "allwinner,sun8i-h3-ohci\0generic-ohci"; reg = <0x1c1c400 0x100>; interrupts = <0x00 0x4d 0x04>; clocks = <0x03 0x23 0x03 0x27 0x03 0x5e>; resets = <0x03 0x14 0x03 0x18>; phys = <0x10 0x02>; phy-names = "usb"; status = "disabled"; phandle = <0x46>; }; usb@1c1d000 { compatible = "allwinner,sun8i-h3-ehci\0generic-ehci"; reg = <0x1c1d000 0x100>; interrupts = <0x00 0x4e 0x04>; clocks = <0x03 0x24 0x03 0x28>; resets = <0x03 0x15 0x03 0x19>; phys = <0x10 0x03>; phy-names = "usb"; status = "disabled"; phandle = <0x47>; }; usb@1c1d400 { compatible = "allwinner,sun8i-h3-ohci\0generic-ohci"; reg = <0x1c1d400 0x100>; interrupts = <0x00 0x4f 0x04>; clocks = <0x03 0x24 0x03 0x28 0x03 0x5f>; resets = <0x03 0x15 0x03 0x19>; phys = <0x10 0x03>; phy-names = "usb"; status = "disabled"; phandle = <0x48>; }; clock@1c20000 { reg = <0x1c20000 0x400>; clocks = <0x11 0x12 0x00>; clock-names = "hosc\0losc"; #clock-cells = <0x01>; #reset-cells = <0x01>; compatible = "allwinner,sun8i-h3-ccu"; phandle = <0x03>; }; pinctrl@1c20800 { reg = <0x1c20800 0x400>; interrupts = <0x00 0x0b 0x04 0x00 0x11 0x04>; clocks = <0x03 0x36 0x11 0x12 0x00>; clock-names = "apb\0hosc\0losc"; gpio-controller; #gpio-cells = <0x03>; interrupt-controller; #interrupt-cells = <0x03>; compatible = "allwinner,sun8i-h3-pinctrl"; phandle = <0x0c>; csi-pins { pins = "PE0\0PE2\0PE3\0PE4\0PE5\0PE6\0PE7\0PE8\0PE9\0PE10\0PE11"; function = "csi"; phandle = <0x20>; }; emac-rgmii-pins { pins = "PD0\0PD1\0PD2\0PD3\0PD4\0PD5\0PD7\0PD8\0PD9\0PD10\0PD12\0PD13\0PD15\0PD16\0PD17"; function = "emac"; drive-strength = <0x28>; phandle = <0x49>; }; i2c0-pins { pins = "PA11\0PA12"; function = "i2c0"; phandle = <0x1d>; }; i2c1-pins { pins = "PA18\0PA19"; function = "i2c1"; phandle = <0x1e>; }; i2c2-pins { pins = "PE12\0PE13"; function = "i2c2"; phandle = <0x1f>; }; i2s0-pins { pins = "PA18\0PA19\0PA20\0PA21"; function = "i2s0"; phandle = <0x4a>; }; i2s1-pins { pins = "PG10\0PG11\0PG12\0PG13"; function = "i2s1"; phandle = <0x4b>; }; mmc0-pins { pins = "PF0\0PF1\0PF2\0PF3\0PF4\0PF5"; function = "mmc0"; drive-strength = <0x1e>; bias-pull-up; phandle = <0x0a>; }; mmc1-pins { pins = "PG0\0PG1\0PG2\0PG3\0PG4\0PG5"; function = "mmc1"; drive-strength = <0x1e>; bias-pull-up; phandle = <0x0d>; }; mmc2-8bit-pins { pins = "PC5\0PC6\0PC8\0PC9\0PC10\0PC11\0PC12\0PC13\0PC14\0PC15\0PC16"; function = "mmc2"; drive-strength = <0x1e>; bias-pull-up; phandle = <0x4c>; }; spdif-tx-pin { pins = "PA17"; function = "spdif"; phandle = <0x4d>; }; spi0-pins { pins = "PC0\0PC1\0PC2\0PC3"; function = "spi0"; phandle = <0x17>; }; spi1-pins { pins = "PA15\0PA16\0PA14\0PA13"; function = "spi1"; phandle = <0x18>; }; uart0-pa-pins { pins = "PA4\0PA5"; function = "uart0"; phandle = <0x1a>; }; uart1-pins { pins = "PG6\0PG7"; function = "uart1"; phandle = <0x1b>; }; uart1-rts-cts-pins { pins = "PG8\0PG9"; function = "uart1"; phandle = <0x4e>; }; uart2-pins { pins = "PA0\0PA1"; function = "uart2"; phandle = <0x1c>; }; uart2-rts-cts-pins { pins = "PA2\0PA3"; function = "uart2"; phandle = <0x4f>; }; uart3-pins { pins = "PA13\0PA14"; function = "uart3"; phandle = <0x50>; }; uart3-rts-cts-pins { pins = "PA15\0PA16"; function = "uart3"; phandle = <0x51>; }; }; timer@1c20c00 { compatible = "allwinner,sun8i-a23-timer"; reg = <0x1c20c00 0xa0>; interrupts = <0x00 0x12 0x04 0x00 0x13 0x04>; clocks = <0x11>; }; ethernet@1c30000 { compatible = "allwinner,sun8i-h3-emac"; syscon = <0x13>; reg = <0x1c30000 0x10000>; interrupts = <0x00 0x52 0x04>; interrupt-names = "macirq"; resets = <0x03 0x0c>; reset-names = "stmmaceth"; clocks = <0x03 0x1b>; clock-names = "stmmaceth"; status = "okay"; phy-handle = <0x14>; phy-mode = "mii"; allwinner,leds-active-low; phandle = <0x52>; mdio { #address-cells = <0x01>; #size-cells = <0x00>; compatible = "snps,dwmac-mdio"; phandle = <0x15>; }; mdio-mux { compatible = "allwinner,sun8i-h3-mdio-mux"; #address-cells = <0x01>; #size-cells = <0x00>; mdio-parent-bus = <0x15>; mdio@1 { compatible = "allwinner,sun8i-h3-mdio-internal"; reg = <0x01>; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x53>; ethernet-phy@1 { compatible = "ethernet-phy-ieee802.3-c22"; reg = <0x01>; clocks = <0x03 0x43>; resets = <0x03 0x27>; phandle = <0x14>; }; }; mdio@2 { reg = <0x02>; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x54>; }; }; }; spi@1c68000 { compatible = "allwinner,sun8i-h3-spi"; reg = <0x1c68000 0x1000>; interrupts = <0x00 0x41 0x04>; clocks = <0x03 0x1e 0x03 0x52>; clock-names = "ahb\0mod"; dmas = <0x16 0x17 0x16 0x17>; dma-names = "rx\0tx"; pinctrl-names = "default"; pinctrl-0 = <0x17>; resets = <0x03 0x0f>; status = "disabled"; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x55>; flash@0 { #address-cells = <0x01>; #size-cells = <0x01>; compatible = "mxicy,mx25l1606e\0winbond,w25q128"; reg = <0x00>; spi-max-frequency = <0x2625a00>; }; }; spi@1c69000 { compatible = "allwinner,sun8i-h3-spi"; reg = <0x1c69000 0x1000>; interrupts = <0x00 0x42 0x04>; clocks = <0x03 0x1f 0x03 0x53>; clock-names = "ahb\0mod"; dmas = <0x16 0x18 0x16 0x18>; dma-names = "rx\0tx"; pinctrl-names = "default"; pinctrl-0 = <0x18>; resets = <0x03 0x10>; status = "disabled"; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x56>; }; watchdog@1c20ca0 { compatible = "allwinner,sun6i-a31-wdt"; reg = <0x1c20ca0 0x20>; interrupts = <0x00 0x19 0x04>; clocks = <0x11>; phandle = <0x57>; }; spdif@1c21000 { #sound-dai-cells = <0x00>; compatible = "allwinner,sun8i-h3-spdif"; reg = <0x1c21000 0x400>; interrupts = <0x00 0x0c 0x04>; clocks = <0x03 0x35 0x03 0x57>; resets = <0x03 0x29>; clock-names = "apb\0spdif"; dmas = <0x16 0x02>; dma-names = "tx"; status = "disabled"; phandle = <0x58>; }; pwm@1c21400 { compatible = "allwinner,sun8i-h3-pwm"; reg = <0x1c21400 0x08>; clocks = <0x11>; #pwm-cells = <0x03>; status = "disabled"; phandle = <0x59>; }; i2s@1c22000 { #sound-dai-cells = <0x00>; compatible = "allwinner,sun8i-h3-i2s"; reg = <0x1c22000 0x400>; interrupts = <0x00 0x0d 0x04>; clocks = <0x03 0x38 0x03 0x54>; clock-names = "apb\0mod"; dmas = <0x16 0x03 0x16 0x03>; resets = <0x03 0x2b>; dma-names = "rx\0tx"; status = "disabled"; phandle = <0x5a>; }; i2s@1c22400 { #sound-dai-cells = <0x00>; compatible = "allwinner,sun8i-h3-i2s"; reg = <0x1c22400 0x400>; interrupts = <0x00 0x0e 0x04>; clocks = <0x03 0x39 0x03 0x55>; clock-names = "apb\0mod"; dmas = <0x16 0x04 0x16 0x04>; resets = <0x03 0x2c>; dma-names = "rx\0tx"; status = "disabled"; phandle = <0x5b>; }; i2s@1c22800 { #sound-dai-cells = <0x00>; compatible = "allwinner,sun8i-h3-i2s"; reg = <0x1c22800 0x400>; interrupts = <0x00 0x0f 0x04>; clocks = <0x03 0x3a 0x03 0x56>; clock-names = "apb\0mod"; dmas = <0x16 0x1b>; resets = <0x03 0x2d>; dma-names = "tx"; allwinner,playback-channels = <0x08>; phandle = <0x05>; }; codec@1c22c00 { #sound-dai-cells = <0x00>; compatible = "allwinner,sun8i-h3-codec"; reg = <0x1c22c00 0x400>; interrupts = <0x00 0x1d 0x04>; clocks = <0x03 0x34 0x03 0x6d>; clock-names = "apb\0codec"; resets = <0x03 0x28>; dmas = <0x16 0x0f 0x16 0x0f>; dma-names = "rx\0tx"; allwinner,codec-analog-controls = <0x19>; status = "disabled"; phandle = <0x5c>; }; serial@1c28000 { compatible = "snps,dw-apb-uart"; reg = <0x1c28000 0x400>; interrupts = <0x00 0x00 0x04>; reg-shift = <0x02>; reg-io-width = <0x04>; clocks = <0x03 0x3e>; resets = <0x03 0x31>; dmas = <0x16 0x06 0x16 0x06>; dma-names = "rx\0tx"; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <0x1a>; phandle = <0x5d>; }; serial@1c28400 { compatible = "snps,dw-apb-uart"; reg = <0x1c28400 0x400>; interrupts = <0x00 0x01 0x04>; reg-shift = <0x02>; reg-io-width = <0x04>; clocks = <0x03 0x3f>; resets = <0x03 0x32>; dmas = <0x16 0x07 0x16 0x07>; dma-names = "rx\0tx"; status = "disabled"; pinctrl-names = "default"; pinctrl-0 = <0x1b>; phandle = <0x5e>; }; serial@1c28800 { compatible = "snps,dw-apb-uart"; reg = <0x1c28800 0x400>; interrupts = <0x00 0x02 0x04>; reg-shift = <0x02>; reg-io-width = <0x04>; clocks = <0x03 0x40>; resets = <0x03 0x33>; dmas = <0x16 0x08 0x16 0x08>; dma-names = "rx\0tx"; status = "disabled"; pinctrl-names = "default"; pinctrl-0 = <0x1c>; phandle = <0x5f>; }; serial@1c28c00 { compatible = "snps,dw-apb-uart"; reg = <0x1c28c00 0x400>; interrupts = <0x00 0x03 0x04>; reg-shift = <0x02>; reg-io-width = <0x04>; clocks = <0x03 0x41>; resets = <0x03 0x34>; dmas = <0x16 0x09 0x16 0x09>; dma-names = "rx\0tx"; status = "disabled"; phandle = <0x60>; }; i2c@1c2ac00 { compatible = "allwinner,sun6i-a31-i2c"; reg = <0x1c2ac00 0x400>; interrupts = <0x00 0x06 0x04>; clocks = <0x03 0x3b>; resets = <0x03 0x2e>; pinctrl-names = "default"; pinctrl-0 = <0x1d>; status = "disabled"; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x61>; }; i2c@1c2b000 { compatible = "allwinner,sun6i-a31-i2c"; reg = <0x1c2b000 0x400>; interrupts = <0x00 0x07 0x04>; clocks = <0x03 0x3c>; resets = <0x03 0x2f>; pinctrl-names = "default"; pinctrl-0 = <0x1e>; status = "disabled"; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x62>; }; i2c@1c2b400 { compatible = "allwinner,sun6i-a31-i2c"; reg = <0x1c2b400 0x400>; interrupts = <0x00 0x08 0x04>; clocks = <0x03 0x3d>; resets = <0x03 0x30>; pinctrl-names = "default"; pinctrl-0 = <0x1f>; status = "disabled"; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x63>; }; interrupt-controller@1c81000 { compatible = "arm,gic-400"; reg = <0x1c81000 0x1000 0x1c82000 0x2000 0x1c84000 0x2000 0x1c86000 0x2000>; interrupt-controller; #interrupt-cells = <0x03>; interrupts = <0x01 0x09 0xf04>; phandle = <0x01>; }; camera@1cb0000 { compatible = "allwinner,sun8i-h3-csi"; reg = <0x1cb0000 0x1000>; interrupts = <0x00 0x54 0x04>; clocks = <0x03 0x2d 0x03 0x6a 0x03 0x62>; clock-names = "bus\0mod\0ram"; resets = <0x03 0x1e>; pinctrl-names = "default"; pinctrl-0 = <0x20>; status = "disabled"; phandle = <0x64>; }; hdmi@1ee0000 { #sound-dai-cells = <0x00>; compatible = "allwinner,sun8i-h3-dw-hdmi\0allwinner,sun8i-a83t-dw-hdmi"; reg = <0x1ee0000 0x10000>; reg-io-width = <0x01>; interrupts = <0x00 0x58 0x04>; clocks = <0x03 0x2f 0x03 0x70 0x03 0x6f>; clock-names = "iahb\0isfr\0tmds"; resets = <0x03 0x21>; reset-names = "ctrl"; phys = <0x21>; phy-names = "phy"; status = "disabled"; phandle = <0x04>; ports { #address-cells = <0x01>; #size-cells = <0x00>; port@0 { reg = <0x00>; phandle = <0x65>; endpoint { remote-endpoint = <0x22>; phandle = <0x09>; }; }; port@1 { reg = <0x01>; phandle = <0x66>; }; }; }; hdmi-phy@1ef0000 { compatible = "allwinner,sun8i-h3-hdmi-phy"; reg = <0x1ef0000 0x10000>; clocks = <0x03 0x2f 0x03 0x70 0x03 0x06>; clock-names = "bus\0mod\0pll-0"; resets = <0x03 0x20>; reset-names = "phy"; #phy-cells = <0x00>; phandle = <0x21>; }; rtc@1f00000 { reg = <0x1f00000 0x400>; interrupts = <0x00 0x28 0x04 0x00 0x29 0x04>; clock-output-names = "osc32k\0osc32k-out\0iosc"; clocks = <0x23>; #clock-cells = <0x01>; compatible = "allwinner,sun8i-h3-rtc"; phandle = <0x12>; }; clock@1f01400 { compatible = "allwinner,sun8i-h3-r-ccu"; reg = <0x1f01400 0x100>; clocks = <0x11 0x12 0x00 0x12 0x02 0x03 0x09>; clock-names = "hosc\0losc\0iosc\0pll-periph"; #clock-cells = <0x01>; #reset-cells = <0x01>; phandle = <0x24>; }; codec-analog@1f015c0 { compatible = "allwinner,sun8i-h3-codec-analog"; reg = <0x1f015c0 0x04>; phandle = <0x19>; }; ir@1f02000 { compatible = "allwinner,sun6i-a31-ir"; clocks = <0x24 0x04 0x24 0x0b>; clock-names = "apb\0ir"; resets = <0x24 0x00>; interrupts = <0x00 0x25 0x04>; reg = <0x1f02000 0x400>; status = "disabled"; phandle = <0x67>; }; i2c@1f02400 { compatible = "allwinner,sun6i-a31-i2c"; reg = <0x1f02400 0x400>; interrupts = <0x00 0x2c 0x04>; pinctrl-names = "default"; pinctrl-0 = <0x25>; clocks = <0x24 0x09>; resets = <0x24 0x05>; status = "disabled"; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0x68>; }; pinctrl@1f02c00 { compatible = "allwinner,sun8i-h3-r-pinctrl"; reg = <0x1f02c00 0x400>; interrupts = <0x00 0x2d 0x04>; clocks = <0x24 0x03 0x11 0x12 0x00>; clock-names = "apb\0hosc\0losc"; gpio-controller; #gpio-cells = <0x03>; interrupt-controller; #interrupt-cells = <0x03>; phandle = <0x34>; r-ir-rx-pin { pins = "PL11"; function = "s_cir_rx"; phandle = <0x69>; }; r-i2c-pins { pins = "PL0\0PL1"; function = "s_i2c"; phandle = <0x25>; }; }; system-control@1c00000 { compatible = "allwinner,sun8i-h3-system-control"; reg = <0x1c00000 0x1000>; #address-cells = <0x01>; #size-cells = <0x01>; ranges; phandle = <0x13>; sram@1d00000 { compatible = "mmio-sram"; reg = <0x1d00000 0x80000>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x00 0x1d00000 0x80000>; phandle = <0x6a>; sram-section@0 { compatible = "allwinner,sun8i-h3-sram-c1\0allwinner,sun4i-a10-sram-c1"; reg = <0x00 0x80000>; phandle = <0x26>; }; }; }; video-codec@1c0e000 { compatible = "allwinner,sun8i-h3-video-engine"; reg = <0x1c0e000 0x1000>; clocks = <0x03 0x29 0x03 0x6c 0x03 0x61>; clock-names = "ahb\0mod\0ram"; resets = <0x03 0x1a>; interrupts = <0x00 0x3a 0x04>; allwinner,sram = <0x26 0x01>; }; gpu@1c40000 { compatible = "allwinner,sun8i-h3-mali\0arm,mali-400"; reg = <0x1c40000 0x10000>; interrupts = <0x00 0x61 0x04 0x00 0x62 0x04 0x00 0x63 0x04 0x00 0x64 0x04 0x00 0x66 0x04 0x00 0x67 0x04 0x00 0x65 0x04>; interrupt-names = "gp\0gpmmu\0pp0\0ppmmu0\0pp1\0ppmmu1\0pmu"; clocks = <0x03 0x31 0x03 0x72>; clock-names = "bus\0core"; resets = <0x03 0x23>; assigned-clocks = <0x03 0x72>; assigned-clock-rates = <0x16e36000>; phandle = <0x6b>; }; ths@1c25000 { compatible = "allwinner,sun8i-h3-ths"; reg = <0x1c25000 0x400>; interrupts = <0x00 0x1f 0x04>; resets = <0x03 0x2a>; clocks = <0x03 0x37 0x03 0x45>; clock-names = "bus\0mod"; nvmem-cells = <0x27>; nvmem-cell-names = "calibration"; #thermal-sensor-cells = <0x00>; phandle = <0x2e>; }; }; cpus { #address-cells = <0x01>; #size-cells = <0x00>; cpu@0 { compatible = "arm,cortex-a7"; device_type = "cpu"; reg = <0x00>; clocks = <0x03 0x0e>; clock-names = "cpu"; operating-points-v2 = <0x28>; #cooling-cells = <0x02>; cpu-supply = <0x29>; phandle = <0x2a>; }; cpu@1 { compatible = "arm,cortex-a7"; device_type = "cpu"; reg = <0x01>; clocks = <0x03 0x0e>; clock-names = "cpu"; operating-points-v2 = <0x28>; #cooling-cells = <0x02>; phandle = <0x2b>; }; cpu@2 { compatible = "arm,cortex-a7"; device_type = "cpu"; reg = <0x02>; clocks = <0x03 0x0e>; clock-names = "cpu"; operating-points-v2 = <0x28>; #cooling-cells = <0x02>; phandle = <0x2c>; }; cpu@3 { compatible = "arm,cortex-a7"; device_type = "cpu"; reg = <0x03>; clocks = <0x03 0x0e>; clock-names = "cpu"; operating-points-v2 = <0x28>; #cooling-cells = <0x02>; phandle = <0x2d>; }; }; pmu { compatible = "arm,cortex-a7-pmu"; interrupts = <0x00 0x78 0x04 0x00 0x79 0x04 0x00 0x7a 0x04 0x00 0x7b 0x04>; interrupt-affinity = <0x2a 0x2b 0x2c 0x2d>; }; timer { compatible = "arm,armv7-timer"; interrupts = <0x01 0x0d 0xf08 0x01 0x0e 0xf08 0x01 0x0b 0xf08 0x01 0x0a 0xf08>; }; thermal-zones { cpu_thermal { polling-delay-passive = <0xfa>; polling-delay = <0x3e8>; thermal-sensors = <0x2e>; trips { cpu_warm { temperature = <0x124f8>; hysteresis = <0x7d0>; type = "passive"; phandle = <0x2f>; }; cpu_hot_pre { temperature = <0x13880>; hysteresis = <0x7d0>; type = "passive"; phandle = <0x30>; }; cpu_hot { temperature = <0x14c08>; hysteresis = <0x7d0>; type = "passive"; phandle = <0x31>; }; cpu_very_hot_pre { temperature = <0x15f90>; hysteresis = <0x7d0>; type = "passive"; phandle = <0x32>; }; cpu_very_hot { temperature = <0x17318>; hysteresis = <0x7d0>; type = "passive"; phandle = <0x33>; }; cpu_crit { temperature = <0x19a28>; hysteresis = <0x7d0>; type = "critical"; phandle = <0x6c>; }; }; cooling-maps { cpu_warm_limit_cpu { trip = <0x2f>; cooling-device = <0x2a 0xffffffff 0x02>; }; cpu_hot_pre_limit_cpu { trip = <0x30>; cooling-device = <0x2a 0x02 0x03>; }; cpu_hot_limit_cpu { trip = <0x31>; cooling-device = <0x2a 0x03 0x04>; }; cpu_very_hot_pre_limit_cpu { trip = <0x32>; cooling-device = <0x2a 0x05 0x06>; }; cpu_very_hot_limit_cpu { trip = <0x33>; cooling-device = <0x2a 0x07 0xffffffff>; }; }; }; }; ahci-5v { compatible = "regulator-fixed"; regulator-name = "ahci-5v"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; regulator-boot-on; enable-active-high; gpio = <0x0c 0x01 0x08 0x00>; status = "disabled"; phandle = <0x6d>; }; usb0-vbus { compatible = "regulator-fixed"; regulator-name = "usb0-vbus"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; enable-active-high; gpio = <0x0c 0x01 0x09 0x00>; status = "disabled"; phandle = <0x6e>; }; usb1-vbus { compatible = "regulator-fixed"; regulator-name = "usb1-vbus"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; regulator-boot-on; enable-active-high; gpio = <0x0c 0x07 0x06 0x00>; status = "disabled"; phandle = <0x6f>; }; usb2-vbus { compatible = "regulator-fixed"; regulator-name = "usb2-vbus"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; regulator-boot-on; enable-active-high; gpio = <0x0c 0x07 0x03 0x00>; status = "disabled"; phandle = <0x70>; }; vcc3v0 { compatible = "regulator-fixed"; regulator-name = "vcc3v0"; regulator-min-microvolt = <0x2dc6c0>; regulator-max-microvolt = <0x2dc6c0>; phandle = <0x71>; }; vcc3v3 { compatible = "regulator-fixed"; regulator-name = "vcc3v3"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; phandle = <0x0b>; }; vcc5v0 { compatible = "regulator-fixed"; regulator-name = "vcc5v0"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; phandle = <0x72>; }; aliases { serial0 = "/soc/serial@1c28000"; ethernet0 = "/soc/ethernet@1c30000"; ethernet1 = "/soc/mmc@1c10000/sdio_wifi@1"; }; leds { compatible = "gpio-leds"; pwr_led { label = "orangepi:green:pwr"; gpios = <0x34 0x00 0x0a 0x00>; default-state = "on"; }; status_led { label = "orangepi:red:status"; gpios = <0x0c 0x00 0x11 0x00>; }; }; reg_vcc_wifi { compatible = "regulator-fixed"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; regulator-name = "vcc-wifi"; enable-active-high; gpio = <0x0c 0x00 0x14 0x00>; phandle = <0x0e>; }; vdd-cpux-regulator { compatible = "regulator-gpio"; regulator-name = "vdd-cpux"; regulator-type = "voltage"; regulator-boot-on; regulator-always-on; regulator-min-microvolt = <0x10c8e0>; regulator-max-microvolt = <0x13d620>; regulator-ramp-delay = <0x32>; gpios = <0x34 0x00 0x06 0x00>; enable-active-high; gpios-states = <0x01>; states = <0x10c8e0 0x00 0x13d620 0x01>; phandle = <0x29>; }; wifi_pwrseq { compatible = "mmc-pwrseq-simple"; reset-gpios = <0x34 0x00 0x07 0x01>; post-power-on-delay-ms = <0xc8>; phandle = <0x0f>; }; __symbols__ { sound_hdmi = "/sound"; osc24M = "/clocks/osc24M_clk"; osc32k = "/clocks/osc32k_clk"; cpu0_opp_table = "/opp_table0"; de = "/display-engine"; display_clocks = "/soc/clock@1000000"; mixer0 = "/soc/mixer@1100000"; mixer0_out = "/soc/mixer@1100000/ports/port@1"; mixer0_out_tcon0 = "/soc/mixer@1100000/ports/port@1/endpoint"; dma = "/soc/dma-controller@1c02000"; tcon0 = "/soc/lcd-controller@1c0c000"; tcon0_in = "/soc/lcd-controller@1c0c000/ports/port@0"; tcon0_in_mixer0 = "/soc/lcd-controller@1c0c000/ports/port@0/endpoint"; tcon0_out = "/soc/lcd-controller@1c0c000/ports/port@1"; tcon0_out_hdmi = "/soc/lcd-controller@1c0c000/ports/port@1/endpoint@1"; mmc0 = "/soc/mmc@1c0f000"; mmc1 = "/soc/mmc@1c10000"; xr819 = "/soc/mmc@1c10000/sdio_wifi@1"; mmc2 = "/soc/mmc@1c11000"; sid = "/soc/eeprom@1c14000"; ths_calibration = "/soc/eeprom@1c14000/thermal-sensor-calibration@34"; usb_otg = "/soc/usb@1c19000"; usbphy = "/soc/phy@1c19400"; ehci0 = "/soc/usb@1c1a000"; ohci0 = "/soc/usb@1c1a400"; ehci1 = "/soc/usb@1c1b000"; ohci1 = "/soc/usb@1c1b400"; ehci2 = "/soc/usb@1c1c000"; ohci2 = "/soc/usb@1c1c400"; ehci3 = "/soc/usb@1c1d000"; ohci3 = "/soc/usb@1c1d400"; ccu = "/soc/clock@1c20000"; pio = "/soc/pinctrl@1c20800"; csi_pins = "/soc/pinctrl@1c20800/csi-pins"; emac_rgmii_pins = "/soc/pinctrl@1c20800/emac-rgmii-pins"; i2c0_pins = "/soc/pinctrl@1c20800/i2c0-pins"; i2c1_pins = "/soc/pinctrl@1c20800/i2c1-pins"; i2c2_pins = "/soc/pinctrl@1c20800/i2c2-pins"; i2s0_pins = "/soc/pinctrl@1c20800/i2s0-pins"; i2s1_pins = "/soc/pinctrl@1c20800/i2s1-pins"; mmc0_pins = "/soc/pinctrl@1c20800/mmc0-pins"; mmc1_pins = "/soc/pinctrl@1c20800/mmc1-pins"; mmc2_8bit_pins = "/soc/pinctrl@1c20800/mmc2-8bit-pins"; spdif_tx_pin = "/soc/pinctrl@1c20800/spdif-tx-pin"; spi0_pins = "/soc/pinctrl@1c20800/spi0-pins"; spi1_pins = "/soc/pinctrl@1c20800/spi1-pins"; uart0_pa_pins = "/soc/pinctrl@1c20800/uart0-pa-pins"; uart1_pins = "/soc/pinctrl@1c20800/uart1-pins"; uart1_rts_cts_pins = "/soc/pinctrl@1c20800/uart1-rts-cts-pins"; uart2_pins = "/soc/pinctrl@1c20800/uart2-pins"; uart2_rts_cts_pins = "/soc/pinctrl@1c20800/uart2-rts-cts-pins"; uart3_pins = "/soc/pinctrl@1c20800/uart3-pins"; uart3_rts_cts_pins = "/soc/pinctrl@1c20800/uart3-rts-cts-pins"; emac = "/soc/ethernet@1c30000"; mdio = "/soc/ethernet@1c30000/mdio"; internal_mdio = "/soc/ethernet@1c30000/mdio-mux/mdio@1"; int_mii_phy = "/soc/ethernet@1c30000/mdio-mux/mdio@1/ethernet-phy@1"; external_mdio = "/soc/ethernet@1c30000/mdio-mux/mdio@2"; spi0 = "/soc/spi@1c68000"; spi1 = "/soc/spi@1c69000"; wdt0 = "/soc/watchdog@1c20ca0"; spdif = "/soc/spdif@1c21000"; pwm = "/soc/pwm@1c21400"; i2s0 = "/soc/i2s@1c22000"; i2s1 = "/soc/i2s@1c22400"; i2s2 = "/soc/i2s@1c22800"; codec = "/soc/codec@1c22c00"; uart0 = "/soc/serial@1c28000"; uart1 = "/soc/serial@1c28400"; uart2 = "/soc/serial@1c28800"; uart3 = "/soc/serial@1c28c00"; i2c0 = "/soc/i2c@1c2ac00"; i2c1 = "/soc/i2c@1c2b000"; i2c2 = "/soc/i2c@1c2b400"; gic = "/soc/interrupt-controller@1c81000"; csi = "/soc/camera@1cb0000"; hdmi = "/soc/hdmi@1ee0000"; hdmi_in = "/soc/hdmi@1ee0000/ports/port@0"; hdmi_in_tcon0 = "/soc/hdmi@1ee0000/ports/port@0/endpoint"; hdmi_out = "/soc/hdmi@1ee0000/ports/port@1"; hdmi_phy = "/soc/hdmi-phy@1ef0000"; rtc = "/soc/rtc@1f00000"; r_ccu = "/soc/clock@1f01400"; codec_analog = "/soc/codec-analog@1f015c0"; ir = "/soc/ir@1f02000"; r_i2c = "/soc/i2c@1f02400"; r_pio = "/soc/pinctrl@1f02c00"; r_ir_rx_pin = "/soc/pinctrl@1f02c00/r-ir-rx-pin"; r_i2c_pins = "/soc/pinctrl@1f02c00/r-i2c-pins"; syscon = "/soc/system-control@1c00000"; sram_c = "/soc/system-control@1c00000/sram@1d00000"; ve_sram = "/soc/system-control@1c00000/sram@1d00000/sram-section@0"; mali = "/soc/gpu@1c40000"; ths = "/soc/ths@1c25000"; cpu0 = "/cpus/cpu@0"; cpu1 = "/cpus/cpu@1"; cpu2 = "/cpus/cpu@2"; cpu3 = "/cpus/cpu@3"; cpu_warm = "/thermal-zones/cpu_thermal/trips/cpu_warm"; cpu_hot_pre = "/thermal-zones/cpu_thermal/trips/cpu_hot_pre"; cpu_hot = "/thermal-zones/cpu_thermal/trips/cpu_hot"; cpu_very_hot_pre = "/thermal-zones/cpu_thermal/trips/cpu_very_hot_pre"; cpu_very_hot = "/thermal-zones/cpu_thermal/trips/cpu_very_hot"; cpu_crit = "/thermal-zones/cpu_thermal/trips/cpu_crit"; reg_ahci_5v = "/ahci-5v"; reg_usb0_vbus = "/usb0-vbus"; reg_usb1_vbus = "/usb1-vbus"; reg_usb2_vbus = "/usb2-vbus"; reg_vcc3v0 = "/vcc3v0"; reg_vcc3v3 = "/vcc3v3"; reg_vcc5v0 = "/vcc5v0"; reg_vcc_wifi = "/reg_vcc_wifi"; reg_vdd_cpux = "/vdd-cpux-regulator"; wifi_pwrseq = "/wifi_pwrseq"; }; };