Skip to content

Instantly share code, notes, and snippets.

@elliotwoods
Created August 27, 2017 19:05
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save elliotwoods/02cfef1c79babb91a14a2e555b9d8da2 to your computer and use it in GitHub Desktop.
Save elliotwoods/02cfef1c79babb91a14a2e555b9d8da2 to your computer and use it in GitHub Desktop.
/dts-v1/;
/ {
interrupt-parent = <0x1>;
#address-cells = <0x1>;
#size-cells = <0x1>;
model = "Xunlong Orange Pi Zero";
compatible = "xunlong,orangepi-zero", "allwinner,sun8i-h2-plus";
chosen {
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
stdout-path = "serial0:115200n8";
framebuffer@0 {
compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
allwinner,pipeline = "mixer0-lcd0-hdmi";
clocks = <0x2 0x2a 0x2 0x30 0x2 0x2f 0x2 0x65 0x2 0x66 0x2 0x6f>;
status = "disabled";
linux,phandle = <0x26>;
phandle = <0x26>;
};
framebuffer@1 {
compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
allwinner,pipeline = "de0-lcd1-tve0";
clocks = <0x2 0x2b 0x2 0x30 0x2 0x2e 0x2 0x65 0x2 0x66 0x2 0x67>;
status = "disabled";
linux,phandle = <0x27>;
phandle = <0x27>;
};
};
clocks {
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
osc24M_clk {
#clock-cells = <0x0>;
compatible = "fixed-clock";
clock-frequency = <0x16e3600>;
clock-output-names = "osc24M";
linux,phandle = <0x3>;
phandle = <0x3>;
};
osc32k_clk {
#clock-cells = <0x0>;
compatible = "fixed-clock";
clock-frequency = <0x8000>;
clock-output-names = "osc32k";
linux,phandle = <0x5>;
phandle = <0x5>;
};
apb0_clk {
compatible = "fixed-factor-clock";
#clock-cells = <0x0>;
clock-div = <0x1>;
clock-mult = <0x1>;
clocks = <0x3>;
clock-output-names = "apb0";
linux,phandle = <0x4>;
phandle = <0x4>;
};
clk@01f01428 {
compatible = "allwinner,sun8i-h3-apb0-gates-clk", "allwinner,sun4i-a10-gates-clk";
reg = <0x1f01428 0x4>;
#clock-cells = <0x1>;
clocks = <0x4>;
clock-indices = <0x0 0x1 0x6>;
clock-output-names = "apb0_pio", "apb0_ir", "apb0_i2c";
linux,phandle = <0x1c>;
phandle = <0x1c>;
};
ir_clk@01f01454 {
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1f01454 0x4>;
#clock-cells = <0x0>;
clocks = <0x5 0x3>;
clock-output-names = "ir";
linux,phandle = <0x1d>;
phandle = <0x1d>;
};
};
soc {
compatible = "simple-bus";
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
ethernet@1c30000 {
compatible = "allwinner,sun8i-h3-emac";
syscon = <0x6>;
reg = <0x1c30000 0x104>;
interrupts = <0x0 0x52 0x4>;
resets = <0x2 0xc>;
reset-names = "ahb";
clocks = <0x2 0x1b>;
clock-names = "ahb";
#address-cells = <0x1>;
#size-cells = <0x0>;
status = "okay";
pinctrl-names = "default";
phy-supply = <0x7>;
phy-handle = <0x8>;
phy-mode = "mii";
allwinner,leds-active-low;
linux,phandle = <0x28>;
phandle = <0x28>;
mdio {
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x29>;
phandle = <0x29>;
ethernet-phy@1 {
reg = <0x1>;
clocks = <0x2 0x43>;
resets = <0x2 0x27>;
linux,phandle = <0x8>;
phandle = <0x8>;
};
};
};
de-controller@01000000 {
compatible = "allwinner,sun8i-h3-display-engine";
reg = <0x1000000 0x400000>;
clocks = <0x2 0x30 0x2 0x65>;
clock-names = "bus", "clock";
resets = <0x2 0x22>;
ports = <0x9>;
status = "disabled";
linux,phandle = <0x2a>;
phandle = <0x2a>;
};
dma-controller@01c02000 {
compatible = "allwinner,sun8i-h3-dma";
reg = <0x1c02000 0x1000>;
interrupts = <0x0 0x32 0x4>;
clocks = <0x2 0x15>;
resets = <0x2 0x6>;
#dma-cells = <0x1>;
linux,phandle = <0x12>;
phandle = <0x12>;
};
lcd-controller@01c0c000 {
compatible = "allwinner,sun8i-a83t-tcon";
reg = <0x1c0c000 0x400>;
clocks = <0x2 0x2a 0x2 0x66>;
clock-names = "bus", "clock";
resets = <0x2 0x1b>;
interrupts = <0x0 0x56 0x4>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x2b>;
phandle = <0x2b>;
port {
linux,phandle = <0x9>;
phandle = <0x9>;
endpoint {
remote-endpoint = <0xa>;
linux,phandle = <0xb>;
phandle = <0xb>;
};
};
};
hdmi@01ee0000 {
compatible = "allwinner,sun8i-h3-hdmi";
reg = <0x1ee0000 0x20000>;
clocks = <0x2 0x2f 0x2 0x6f 0x2 0x70>;
clock-names = "bus", "clock", "ddc-clock";
resets = <0x2 0x20 0x2 0x21>;
reset-names = "hdmi0", "hdmi1";
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x2c>;
phandle = <0x2c>;
port@0 {
reg = <0x0>;
endpoint {
remote-endpoint = <0xb>;
linux,phandle = <0xa>;
phandle = <0xa>;
};
};
};
mmc@01c0f000 {
reg = <0x1c0f000 0x1000>;
resets = <0x2 0x7>;
reset-names = "ahb";
interrupts = <0x0 0x3c 0x4>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
compatible = "allwinner,sun7i-a20-mmc";
clocks = <0x2 0x16 0x2 0x47 0x2 0x49 0x2 0x48>;
clock-names = "ahb", "mmc", "output", "sample";
pinctrl-names = "default";
pinctrl-0 = <0xc>;
vmmc-supply = <0x7>;
bus-width = <0x4>;
cd-gpios = <0xd 0x5 0x6 0x0>;
cd-inverted;
linux,phandle = <0x2d>;
phandle = <0x2d>;
};
mmc@01c10000 {
reg = <0x1c10000 0x1000>;
resets = <0x2 0x8>;
reset-names = "ahb";
interrupts = <0x0 0x3d 0x4>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
compatible = "allwinner,sun7i-a20-mmc";
clocks = <0x2 0x17 0x2 0x4a 0x2 0x4c 0x2 0x4b>;
clock-names = "ahb", "mmc", "output", "sample";
pinctrl-names = "default";
pinctrl-0 = <0xe>;
vmmc-supply = <0xf>;
mmc-pwrseq = <0x10>;
bus-width = <0x4>;
non-removable;
linux,phandle = <0x2e>;
phandle = <0x2e>;
sdio_wifi@1 {
reg = <0x1>;
linux,phandle = <0x2f>;
phandle = <0x2f>;
};
};
mmc@01c11000 {
reg = <0x1c11000 0x1000>;
resets = <0x2 0x9>;
reset-names = "ahb";
interrupts = <0x0 0x3e 0x4>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
compatible = "allwinner,sun7i-a20-mmc";
clocks = <0x2 0x18 0x2 0x4d 0x2 0x4f 0x2 0x4e>;
clock-names = "ahb", "mmc", "output", "sample";
linux,phandle = <0x30>;
phandle = <0x30>;
};
usb@01c19000 {
compatible = "allwinner,sun8i-h3-musb";
reg = <0x1c19000 0x400>;
clocks = <0x2 0x20>;
resets = <0x2 0x11>;
interrupts = <0x0 0x47 0x4>;
interrupt-names = "mc";
phys = <0x11 0x0>;
phy-names = "usb";
extcon = <0x11 0x0>;
status = "okay";
dr_mode = "peripheral";
linux,phandle = <0x31>;
phandle = <0x31>;
};
phy@01c19400 {
compatible = "allwinner,sun8i-h3-usb-phy";
reg = <0x1c19400 0x2c 0x1c1a800 0x4 0x1c1b800 0x4 0x1c1c800 0x4 0x1c1d800 0x4>;
reg-names = "phy_ctrl", "pmu0", "pmu1", "pmu2", "pmu3";
clocks = <0x2 0x58 0x2 0x59 0x2 0x5a 0x2 0x5b>;
clock-names = "usb0_phy", "usb1_phy", "usb2_phy", "usb3_phy";
resets = <0x2 0x0 0x2 0x1 0x2 0x2 0x2 0x3>;
reset-names = "usb0_reset", "usb1_reset", "usb2_reset", "usb3_reset";
status = "okay";
#phy-cells = <0x1>;
usb0_id_det-gpios = <0xd 0x6 0xc 0x0>;
linux,phandle = <0x11>;
phandle = <0x11>;
};
usb@01c1a000 {
compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
reg = <0x1c1a000 0x100>;
interrupts = <0x0 0x48 0x4>;
clocks = <0x2 0x21 0x2 0x25>;
resets = <0x2 0x12 0x2 0x16>;
status = "okay";
linux,phandle = <0x32>;
phandle = <0x32>;
};
usb@01c1a400 {
compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
reg = <0x1c1a400 0x100>;
interrupts = <0x0 0x49 0x4>;
clocks = <0x2 0x21 0x2 0x25 0x2 0x5c>;
resets = <0x2 0x12 0x2 0x16>;
status = "okay";
linux,phandle = <0x33>;
phandle = <0x33>;
};
usb@01c1b000 {
compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
reg = <0x1c1b000 0x100>;
interrupts = <0x0 0x4a 0x4>;
clocks = <0x2 0x22 0x2 0x26>;
resets = <0x2 0x13 0x2 0x17>;
phys = <0x11 0x1>;
phy-names = "usb";
status = "okay";
linux,phandle = <0x34>;
phandle = <0x34>;
};
usb@01c1b400 {
compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
reg = <0x1c1b400 0x100>;
interrupts = <0x0 0x4b 0x4>;
clocks = <0x2 0x22 0x2 0x26 0x2 0x5d>;
resets = <0x2 0x13 0x2 0x17>;
phys = <0x11 0x1>;
phy-names = "usb";
status = "okay";
linux,phandle = <0x35>;
phandle = <0x35>;
};
usb@01c1c000 {
compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
reg = <0x1c1c000 0x100>;
interrupts = <0x0 0x4c 0x4>;
clocks = <0x2 0x23 0x2 0x27>;
resets = <0x2 0x14 0x2 0x18>;
phys = <0x11 0x2>;
phy-names = "usb";
status = "disabled";
linux,phandle = <0x36>;
phandle = <0x36>;
};
usb@01c1c400 {
compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
reg = <0x1c1c400 0x100>;
interrupts = <0x0 0x4d 0x4>;
clocks = <0x2 0x23 0x2 0x27 0x2 0x5e>;
resets = <0x2 0x14 0x2 0x18>;
phys = <0x11 0x2>;
phy-names = "usb";
status = "disabled";
linux,phandle = <0x37>;
phandle = <0x37>;
};
usb@01c1d000 {
compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
reg = <0x1c1d000 0x100>;
interrupts = <0x0 0x4e 0x4>;
clocks = <0x2 0x24 0x2 0x28>;
resets = <0x2 0x15 0x2 0x19>;
phys = <0x11 0x3>;
phy-names = "usb";
status = "disabled";
linux,phandle = <0x38>;
phandle = <0x38>;
};
usb@01c1d400 {
compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
reg = <0x1c1d400 0x100>;
interrupts = <0x0 0x4f 0x4>;
clocks = <0x2 0x24 0x2 0x28 0x2 0x5f>;
resets = <0x2 0x15 0x2 0x19>;
phys = <0x11 0x3>;
phy-names = "usb";
status = "disabled";
linux,phandle = <0x39>;
phandle = <0x39>;
};
clock@01c20000 {
reg = <0x1c20000 0x400>;
clocks = <0x3 0x5>;
clock-names = "hosc", "losc";
#clock-cells = <0x1>;
#reset-cells = <0x1>;
assigned-clocks = <0x2 0xd 0x2 0x65>;
assigned-clock-rates = <0x23c34600 0x11e1a300>;
compatible = "allwinner,sun8i-h3-ccu";
linux,phandle = <0x2>;
phandle = <0x2>;
};
pinctrl@01c20800 {
reg = <0x1c20800 0x400>;
interrupts = <0x0 0xb 0x4 0x0 0x11 0x4>;
clocks = <0x2 0x36 0x3 0x5>;
clock-names = "apb", "hosc", "losc";
gpio-controller;
#gpio-cells = <0x3>;
interrupt-controller;
#interrupt-cells = <0x3>;
compatible = "allwinner,sun8i-h3-pinctrl";
linux,phandle = <0xd>;
phandle = <0xd>;
emac0@0 {
pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD7", "PD8", "PD9", "PD10", "PD12", "PD13", "PD15", "PD16", "PD17";
function = "emac";
drive-strength = <0x28>;
linux,phandle = <0x3a>;
phandle = <0x3a>;
};
i2c0 {
pins = "PA11", "PA12";
function = "i2c0";
linux,phandle = <0x19>;
phandle = <0x19>;
};
i2c1 {
pins = "PA18", "PA19";
function = "i2c1";
linux,phandle = <0x1a>;
phandle = <0x1a>;
};
i2c2 {
pins = "PE12", "PE13";
function = "i2c2";
linux,phandle = <0x1b>;
phandle = <0x1b>;
};
mmc0@0 {
pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
function = "mmc0";
drive-strength = <0x1e>;
bias-pull-up;
linux,phandle = <0xc>;
phandle = <0xc>;
};
mmc0_cd_pin@0 {
pins = "PF6";
function = "gpio_in";
bias-pull-up;
linux,phandle = <0x3b>;
phandle = <0x3b>;
};
mmc1@0 {
pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
function = "mmc1";
drive-strength = <0x1e>;
bias-pull-up;
linux,phandle = <0xe>;
phandle = <0xe>;
};
mmc2_8bit {
pins = "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
function = "mmc2";
drive-strength = <0x1e>;
bias-pull-up;
linux,phandle = <0x3c>;
phandle = <0x3c>;
};
spdif@0 {
pins = "PA17";
function = "spdif";
linux,phandle = <0x3d>;
phandle = <0x3d>;
};
spi0 {
pins = "PC0", "PC1", "PC2", "PC3";
function = "spi0";
linux,phandle = <0x13>;
phandle = <0x13>;
};
spi1 {
pins = "PA15", "PA16", "PA14", "PA13";
function = "spi1";
linux,phandle = <0x14>;
phandle = <0x14>;
};
uart0@0 {
pins = "PA4", "PA5";
function = "uart0";
linux,phandle = <0x16>;
phandle = <0x16>;
};
uart1 {
pins = "PG6", "PG7";
function = "uart1";
linux,phandle = <0x17>;
phandle = <0x17>;
};
uart1_rts_cts {
pins = "PG8", "PG9";
function = "uart1";
linux,phandle = <0x3e>;
phandle = <0x3e>;
};
uart2 {
pins = "PA0", "PA1";
function = "uart2";
linux,phandle = <0x18>;
phandle = <0x18>;
};
uart2_rts_cts {
pins = "PA2", "PA3";
function = "uart2";
linux,phandle = <0x3f>;
phandle = <0x3f>;
};
uart3 {
pins = "PA13", "PA14";
function = "uart3";
linux,phandle = <0x40>;
phandle = <0x40>;
};
uart3_rts_cts {
pins = "PA15", "PA16";
function = "uart3";
linux,phandle = <0x41>;
phandle = <0x41>;
};
ahci_pwr_pin@0 {
pins = "PB8";
function = "gpio_out";
linux,phandle = <0x21>;
phandle = <0x21>;
};
usb0_vbus_pin@0 {
pins = "PB9";
function = "gpio_out";
linux,phandle = <0x22>;
phandle = <0x22>;
};
usb1_vbus_pin@0 {
pins = "PH6";
function = "gpio_out";
linux,phandle = <0x23>;
phandle = <0x23>;
};
usb2_vbus_pin@0 {
pins = "PH3";
function = "gpio_out";
linux,phandle = <0x24>;
phandle = <0x24>;
};
};
ths@01c25000 {
#thermal-sensor-cells = <0x0>;
compatible = "allwinner,sun8i-h3-ths";
reg = <0x1c25000 0x400 0x1c14234 0x4>;
interrupts = <0x0 0x1f 0x4>;
resets = <0x2 0x2a>;
reset-names = "ahb";
clocks = <0x2 0x37 0x2 0x45>;
clock-names = "ahb", "ths";
linux,phandle = <0x20>;
phandle = <0x20>;
};
timer@01c20c00 {
compatible = "allwinner,sun4i-a10-timer";
reg = <0x1c20c00 0xa0>;
interrupts = <0x0 0x12 0x4 0x0 0x13 0x4>;
clocks = <0x3>;
};
spi@01c68000 {
compatible = "allwinner,sun8i-h3-spi";
reg = <0x1c68000 0x1000>;
interrupts = <0x0 0x41 0x4>;
clocks = <0x2 0x1e 0x2 0x52>;
clock-names = "ahb", "mod";
dmas = <0x12 0x17 0x12 0x17>;
dma-names = "rx", "tx";
pinctrl-names = "default";
pinctrl-0 = <0x13>;
resets = <0x2 0xf>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x42>;
phandle = <0x42>;
spi-flash@0 {
#address-cells = <0x1>;
#size-cells = <0x0>;
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-max-frequency = <0x989680>;
status = "okay";
partitions {
compatible = "fixed-partitions";
#address-cells = <0x1>;
#size-cells = <0x1>;
partition@0 {
label = "uboot";
reg = <0x0 0x100000>;
};
partition@100000 {
label = "env";
reg = <0x100000 0x100000>;
};
partition@200000 {
label = "data";
reg = <0x200000 0x200000>;
};
};
};
};
spi@01c69000 {
compatible = "allwinner,sun8i-h3-spi";
reg = <0x1c69000 0x1000>;
interrupts = <0x0 0x42 0x4>;
clocks = <0x2 0x1f 0x2 0x53>;
clock-names = "ahb", "mod";
dmas = <0x12 0x18 0x12 0x18>;
dma-names = "rx", "tx";
pinctrl-names = "default";
pinctrl-0 = <0x14>;
resets = <0x2 0x10>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x43>;
phandle = <0x43>;
};
syscon@01c00000 {
compatible = "syscon", "allwinner,sun8i-h3-system-controller";
reg = <0x1c00000 0x1000>;
linux,phandle = <0x6>;
phandle = <0x6>;
};
watchdog@01c20ca0 {
compatible = "allwinner,sun6i-a31-wdt";
reg = <0x1c20ca0 0x20>;
interrupts = <0x0 0x19 0x4>;
linux,phandle = <0x44>;
phandle = <0x44>;
};
spdif@01c21000 {
#sound-dai-cells = <0x0>;
compatible = "allwinner,sun8i-h3-spdif";
reg = <0x1c21000 0x400>;
interrupts = <0x0 0xc 0x4>;
clocks = <0x2 0x35 0x2 0x57>;
resets = <0x2 0x29>;
clock-names = "apb", "spdif";
dmas = <0x12 0x2>;
dma-names = "tx";
status = "disabled";
linux,phandle = <0x45>;
phandle = <0x45>;
};
pwm@01c21400 {
compatible = "allwinner,sun8i-h3-pwm";
reg = <0x1c21400 0x8>;
clocks = <0x3>;
#pwm-cells = <0x3>;
status = "disabled";
linux,phandle = <0x46>;
phandle = <0x46>;
};
codec@01c22c00 {
#sound-dai-cells = <0x0>;
compatible = "allwinner,sun8i-h3-codec";
reg = <0x1c22c00 0x400>;
interrupts = <0x0 0x1d 0x4>;
clocks = <0x2 0x34 0x2 0x6d>;
clock-names = "apb", "codec";
resets = <0x2 0x28>;
dmas = <0x12 0xf 0x12 0xf>;
dma-names = "rx", "tx";
allwinner,codec-analog-controls = <0x15>;
status = "disabled";
linux,phandle = <0x47>;
phandle = <0x47>;
};
serial@01c28000 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28000 0x400>;
interrupts = <0x0 0x0 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x3e>;
resets = <0x2 0x31>;
dmas = <0x12 0x6 0x12 0x6>;
dma-names = "rx", "tx";
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x16>;
linux,phandle = <0x48>;
phandle = <0x48>;
};
serial@01c28400 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28400 0x400>;
interrupts = <0x0 0x1 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x3f>;
resets = <0x2 0x32>;
dmas = <0x12 0x7 0x12 0x7>;
dma-names = "rx", "tx";
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <0x17>;
linux,phandle = <0x49>;
phandle = <0x49>;
};
serial@01c28800 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28800 0x400>;
interrupts = <0x0 0x2 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x40>;
resets = <0x2 0x33>;
dmas = <0x12 0x8 0x12 0x8>;
dma-names = "rx", "tx";
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <0x18>;
linux,phandle = <0x4a>;
phandle = <0x4a>;
};
serial@01c28c00 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28c00 0x400>;
interrupts = <0x0 0x3 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x41>;
resets = <0x2 0x34>;
dmas = <0x12 0x9 0x12 0x9>;
dma-names = "rx", "tx";
status = "disabled";
linux,phandle = <0x4b>;
phandle = <0x4b>;
};
i2c@01c2ac00 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x1c2ac00 0x400>;
interrupts = <0x0 0x6 0x4>;
clocks = <0x2 0x3b>;
resets = <0x2 0x2e>;
pinctrl-names = "default";
pinctrl-0 = <0x19>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x4c>;
phandle = <0x4c>;
};
i2c@01c2b000 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x1c2b000 0x400>;
interrupts = <0x0 0x7 0x4>;
clocks = <0x2 0x3c>;
resets = <0x2 0x2f>;
pinctrl-names = "default";
pinctrl-0 = <0x1a>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x4d>;
phandle = <0x4d>;
};
i2c@01c2b400 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x1c2b400 0x400>;
interrupts = <0x0 0x8 0x4>;
clocks = <0x2 0x3d>;
resets = <0x2 0x30>;
pinctrl-names = "default";
pinctrl-0 = <0x1b>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x4e>;
phandle = <0x4e>;
};
interrupt-controller@01c81000 {
compatible = "arm,gic-400";
reg = <0x1c81000 0x1000 0x1c82000 0x2000 0x1c84000 0x2000 0x1c86000 0x2000>;
interrupt-controller;
#interrupt-cells = <0x3>;
interrupts = <0x1 0x9 0xf04>;
linux,phandle = <0x1>;
phandle = <0x1>;
};
rtc@01f00000 {
compatible = "allwinner,sun6i-a31-rtc";
reg = <0x1f00000 0x54>;
interrupts = <0x0 0x28 0x4 0x0 0x29 0x4>;
linux,phandle = <0x4f>;
phandle = <0x4f>;
};
reset@01f014b0 {
reg = <0x1f014b0 0x4>;
compatible = "allwinner,sun6i-a31-clock-reset";
#reset-cells = <0x1>;
linux,phandle = <0x1e>;
phandle = <0x1e>;
};
codec-analog@01f015c0 {
compatible = "allwinner,sun8i-h3-codec-analog";
reg = <0x1f015c0 0x4>;
linux,phandle = <0x15>;
phandle = <0x15>;
};
ir@01f02000 {
compatible = "allwinner,sun5i-a13-ir";
clocks = <0x1c 0x1 0x1d>;
clock-names = "apb", "ir";
resets = <0x1e 0x1>;
interrupts = <0x0 0x25 0x4>;
reg = <0x1f02000 0x40>;
status = "disabled";
linux,phandle = <0x50>;
phandle = <0x50>;
};
i2c@01f02400 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x1f02400 0x400>;
interrupts = <0x0 0x2c 0x4>;
pinctrl-names = "default";
pinctrl-0 = <0x1f>;
clocks = <0x1c 0x6>;
clock-frequency = <0x186a0>;
resets = <0x1e 0x6>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
linux,phandle = <0x51>;
phandle = <0x51>;
};
pinctrl@01f02c00 {
compatible = "allwinner,sun8i-h3-r-pinctrl";
reg = <0x1f02c00 0x400>;
interrupts = <0x0 0x2d 0x4>;
clocks = <0x1c 0x0 0x3 0x5>;
clock-names = "apb", "hosc", "losc";
resets = <0x1e 0x0>;
gpio-controller;
#gpio-cells = <0x3>;
interrupt-controller;
#interrupt-cells = <0x3>;
linux,phandle = <0x25>;
phandle = <0x25>;
ir@0 {
pins = "PL11";
function = "s_cir_rx";
linux,phandle = <0x52>;
phandle = <0x52>;
};
r_i2c@0 {
pins = "PL0", "PL1";
function = "s_twi";
linux,phandle = <0x1f>;
phandle = <0x1f>;
};
};
};
thermal-zones {
cpu_thermal {
polling-delay-passive = <0x14a>;
polling-delay = <0x3e8>;
thermal-sensors = <0x20 0x0>;
linux,phandle = <0x53>;
phandle = <0x53>;
};
};
aliases {
spi0 = "/soc/spi@01c68000";
spi1 = "/soc/spi@01c69000";
serial0 = "/soc/serial@01c28000";
ethernet1 = "/soc/mmc@01c10000/sdio_wifi@1";
ethernet0 = "/soc/ethernet@1c30000";
};
cpus {
#address-cells = <0x1>;
#size-cells = <0x0>;
cpu@0 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x0>;
clocks = <0x2 0xe>;
clock-latency = <0x3b9b0>;
clock-frequency = <0x47868c00>;
linux,phandle = <0x54>;
phandle = <0x54>;
};
cpu@1 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x1>;
clock-frequency = <0x47868c00>;
};
cpu@2 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x2>;
clock-frequency = <0x47868c00>;
};
cpu@3 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x3>;
clock-frequency = <0x47868c00>;
};
};
timer {
compatible = "arm,armv7-timer";
interrupts = <0x1 0xd 0xf08 0x1 0xe 0xf08 0x1 0xb 0xf08 0x1 0xa 0xf08>;
};
ahci-5v {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x21>;
regulator-name = "ahci-5v";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0xd 0x1 0x8 0x0>;
status = "disabled";
linux,phandle = <0x55>;
phandle = <0x55>;
};
usb0-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x22>;
regulator-name = "usb0-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
enable-active-high;
gpio = <0xd 0x1 0x9 0x0>;
status = "disabled";
linux,phandle = <0x56>;
phandle = <0x56>;
};
usb1-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x23>;
regulator-name = "usb1-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0xd 0x7 0x6 0x0>;
status = "disabled";
linux,phandle = <0x57>;
phandle = <0x57>;
};
usb2-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x24>;
regulator-name = "usb2-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0xd 0x7 0x3 0x0>;
status = "disabled";
linux,phandle = <0x58>;
phandle = <0x58>;
};
vcc3v0 {
compatible = "regulator-fixed";
regulator-name = "vcc3v0";
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
linux,phandle = <0x59>;
phandle = <0x59>;
};
vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc3v3";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
linux,phandle = <0x7>;
phandle = <0x7>;
};
vcc5v0 {
compatible = "regulator-fixed";
regulator-name = "vcc5v0";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
linux,phandle = <0x5a>;
phandle = <0x5a>;
};
leds {
compatible = "gpio-leds";
pwr_led {
label = "orangepi:green:pwr";
gpios = <0x25 0x0 0xa 0x0>;
default-state = "on";
};
status_led {
label = "orangepi:red:status";
gpios = <0xd 0x0 0x11 0x0>;
};
};
reg_vcc_wifi {
compatible = "regulator-fixed";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
regulator-name = "vcc-wifi";
enable-active-high;
gpio = <0xd 0x0 0x14 0x0>;
linux,phandle = <0xf>;
phandle = <0xf>;
};
wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <0x25 0x0 0x7 0x1>;
post-power-on-delay-ms = <0xc8>;
linux,phandle = <0x10>;
phandle = <0x10>;
};
__symbols__ {
simplefb_hdmi = "/chosen/framebuffer@0";
simplefb_tv = "/chosen/framebuffer@1";
osc24M = "/clocks/osc24M_clk";
osc32k = "/clocks/osc32k_clk";
apb0 = "/clocks/apb0_clk";
apb0_gates = "/clocks/clk@01f01428";
ir_clk = "/clocks/ir_clk@01f01454";
emac = "/soc/ethernet@1c30000";
mdio = "/soc/ethernet@1c30000/mdio";
int_mii_phy = "/soc/ethernet@1c30000/mdio/ethernet-phy@1";
de = "/soc/de-controller@01000000";
dma = "/soc/dma-controller@01c02000";
lcd0 = "/soc/lcd-controller@01c0c000";
lcd0_p = "/soc/lcd-controller@01c0c000/port";
lcd0_hdmi = "/soc/lcd-controller@01c0c000/port/endpoint";
hdmi = "/soc/hdmi@01ee0000";
hdmi_lcd0 = "/soc/hdmi@01ee0000/port@0/endpoint";
mmc0 = "/soc/mmc@01c0f000";
mmc1 = "/soc/mmc@01c10000";
xr819 = "/soc/mmc@01c10000/sdio_wifi@1";
mmc2 = "/soc/mmc@01c11000";
usb_otg = "/soc/usb@01c19000";
usbphy = "/soc/phy@01c19400";
ehci0 = "/soc/usb@01c1a000";
ohci0 = "/soc/usb@01c1a400";
ehci1 = "/soc/usb@01c1b000";
ohci1 = "/soc/usb@01c1b400";
ehci2 = "/soc/usb@01c1c000";
ohci2 = "/soc/usb@01c1c400";
ehci3 = "/soc/usb@01c1d000";
ohci3 = "/soc/usb@01c1d400";
ccu = "/soc/clock@01c20000";
pio = "/soc/pinctrl@01c20800";
emac_rgmii_pins = "/soc/pinctrl@01c20800/emac0@0";
i2c0_pins = "/soc/pinctrl@01c20800/i2c0";
i2c1_pins = "/soc/pinctrl@01c20800/i2c1";
i2c2_pins = "/soc/pinctrl@01c20800/i2c2";
mmc0_pins_a = "/soc/pinctrl@01c20800/mmc0@0";
mmc0_cd_pin = "/soc/pinctrl@01c20800/mmc0_cd_pin@0";
mmc1_pins_a = "/soc/pinctrl@01c20800/mmc1@0";
mmc2_8bit_pins = "/soc/pinctrl@01c20800/mmc2_8bit";
spdif_tx_pins_a = "/soc/pinctrl@01c20800/spdif@0";
spi0_pins = "/soc/pinctrl@01c20800/spi0";
spi1_pins = "/soc/pinctrl@01c20800/spi1";
uart0_pins_a = "/soc/pinctrl@01c20800/uart0@0";
uart1_pins = "/soc/pinctrl@01c20800/uart1";
uart1_rts_cts_pins = "/soc/pinctrl@01c20800/uart1_rts_cts";
uart2_pins = "/soc/pinctrl@01c20800/uart2";
uart2_rts_cts_pins = "/soc/pinctrl@01c20800/uart2_rts_cts";
uart3_pins = "/soc/pinctrl@01c20800/uart3";
uart3_rts_cts_pins = "/soc/pinctrl@01c20800/uart3_rts_cts";
ahci_pwr_pin_a = "/soc/pinctrl@01c20800/ahci_pwr_pin@0";
usb0_vbus_pin_a = "/soc/pinctrl@01c20800/usb0_vbus_pin@0";
usb1_vbus_pin_a = "/soc/pinctrl@01c20800/usb1_vbus_pin@0";
usb2_vbus_pin_a = "/soc/pinctrl@01c20800/usb2_vbus_pin@0";
ths = "/soc/ths@01c25000";
spi0 = "/soc/spi@01c68000";
spi1 = "/soc/spi@01c69000";
syscon = "/soc/syscon@01c00000";
wdt0 = "/soc/watchdog@01c20ca0";
spdif = "/soc/spdif@01c21000";
pwm = "/soc/pwm@01c21400";
codec = "/soc/codec@01c22c00";
uart0 = "/soc/serial@01c28000";
uart1 = "/soc/serial@01c28400";
uart2 = "/soc/serial@01c28800";
uart3 = "/soc/serial@01c28c00";
i2c0 = "/soc/i2c@01c2ac00";
i2c1 = "/soc/i2c@01c2b000";
i2c2 = "/soc/i2c@01c2b400";
gic = "/soc/interrupt-controller@01c81000";
rtc = "/soc/rtc@01f00000";
apb0_reset = "/soc/reset@01f014b0";
codec_analog = "/soc/codec-analog@01f015c0";
ir = "/soc/ir@01f02000";
r_i2c = "/soc/i2c@01f02400";
r_pio = "/soc/pinctrl@01f02c00";
ir_pins_a = "/soc/pinctrl@01f02c00/ir@0";
r_i2c_pins_a = "/soc/pinctrl@01f02c00/r_i2c@0";
cpu_thermal = "/thermal-zones/cpu_thermal";
cpu0 = "/cpus/cpu@0";
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";
wifi_pwrseq = "/wifi_pwrseq";
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment