Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
/dts-v1/;
/ {
#address-cells = <0x1>;
#size-cells = <0x1>;
interrupt-parent = <0x1>;
model = "Clockwork CPI3";
compatible = "clockwork,clockworkpi-cpi3", "allwinner,sun8i-a33";
chosen {
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
stdout-path = "serial0:115200n8";
framebuffer@0 {
compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
allwinner,pipeline = "de_be0-lcd0";
clocks = <0x2 0x26 0x2 0x28 0x2 0x57 0x2 0x55 0x2 0x54 0x2 0x62>;
status = "disabled";
};
};
aliases {
serial0 = "/soc@01c00000/serial@01c28000";
};
memory {
device_type = "memory";
reg = <0x40000000 0x80000000>;
};
timer {
compatible = "arm,armv7-timer";
interrupts = <0x1 0xd 0xf08 0x1 0xe 0xf08 0x1 0xb 0xf08 0x1 0xa 0xf08>;
clock-frequency = <0x16e3600>;
arm,cpu-registers-not-fw-configured;
};
cpus {
enable-method = "allwinner,sun8i-a23";
#address-cells = <0x1>;
#size-cells = <0x0>;
cpu@0 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x0>;
clocks = <0x2 0x12>;
clock-names = "cpu";
operating-points-v2 = <0x3>;
#cooling-cells = <0x2>;
linux,phandle = <0x30>;
phandle = <0x30>;
};
cpu@1 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x1>;
operating-points-v2 = <0x3>;
};
cpu@2 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x2>;
operating-points-v2 = <0x3>;
};
cpu@3 {
compatible = "arm,cortex-a7";
device_type = "cpu";
reg = <0x3>;
operating-points-v2 = <0x3>;
};
};
clocks {
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
osc24M_clk {
#clock-cells = <0x0>;
compatible = "fixed-clock";
clock-frequency = <0x16e3600>;
clock-accuracy = <0xc350>;
clock-output-names = "osc24M";
linux,phandle = <0x12>;
phandle = <0x12>;
};
ext_osc32k_clk {
#clock-cells = <0x0>;
compatible = "fixed-clock";
clock-frequency = <0x8000>;
clock-accuracy = <0xc350>;
clock-output-names = "ext-osc32k";
linux,phandle = <0x19>;
phandle = <0x19>;
};
};
soc@01c00000 {
compatible = "simple-bus";
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
dma-controller@01c02000 {
compatible = "allwinner,sun8i-a23-dma";
reg = <0x1c02000 0x1000>;
interrupts = <0x0 0x32 0x4>;
clocks = <0x2 0x19>;
resets = <0x2 0x6>;
#dma-cells = <0x1>;
linux,phandle = <0x15>;
phandle = <0x15>;
};
mmc@01c0f000 {
compatible = "allwinner,sun7i-a20-mmc";
reg = <0x1c0f000 0x1000>;
clocks = <0x2 0x1a 0x2 0x3c 0x2 0x3e 0x2 0x3d>;
clock-names = "ahb", "mmc", "output", "sample";
resets = <0x2 0x7>;
reset-names = "ahb";
interrupts = <0x0 0x3c 0x4>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
pinctrl-names = "default";
pinctrl-0 = <0x4 0x5>;
vmmc-supply = <0x6>;
cd-gpios = <0x7 0x1 0x3 0x1>;
bus-width = <0x4>;
};
mmc@01c10000 {
compatible = "allwinner,sun7i-a20-mmc";
reg = <0x1c10000 0x1000>;
clocks = <0x2 0x1b 0x2 0x3f 0x2 0x41 0x2 0x40>;
clock-names = "ahb", "mmc", "output", "sample";
resets = <0x2 0x8>;
reset-names = "ahb";
interrupts = <0x0 0x3d 0x4>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
pinctrl-names = "default";
pinctrl-0 = <0x8 0x9>;
vmmc-supply = <0xa>;
mmc-pwrseq = <0xb>;
bus-width = <0x4>;
non-removable;
keep-power-in-suspend;
};
mmc@01c11000 {
compatible = "allwinner,sun7i-a20-mmc";
reg = <0x1c11000 0x1000>;
clocks = <0x2 0x1c 0x2 0x42 0x2 0x44 0x2 0x43>;
clock-names = "ahb", "mmc", "output", "sample";
resets = <0x2 0x9>;
reset-names = "ahb";
interrupts = <0x0 0x3e 0x4>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};
nand@01c03000 {
compatible = "allwinner,sun4i-a10-nand";
reg = <0x1c03000 0x1000>;
interrupts = <0x0 0x46 0x4>;
clocks = <0x2 0x1d 0x2 0x3b>;
clock-names = "ahb", "mod";
resets = <0x2 0xa>;
reset-names = "ahb";
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};
usb@01c19000 {
reg = <0x1c19000 0x400>;
clocks = <0x2 0x22>;
resets = <0x2 0xf>;
interrupts = <0x0 0x47 0x4>;
interrupt-names = "mc";
phys = <0xc 0x0>;
phy-names = "usb";
extcon = <0xc 0x0>;
status = "okay";
compatible = "allwinner,sun8i-a33-musb";
dr_mode = "otg";
};
phy@01c19400 {
clocks = <0x2 0x4a 0x2 0x4b>;
clock-names = "usb0_phy", "usb1_phy";
resets = <0x2 0x0 0x2 0x1>;
reset-names = "usb0_reset", "usb1_reset";
status = "okay";
#phy-cells = <0x1>;
compatible = "allwinner,sun8i-a33-usb-phy";
reg = <0x1c19400 0x14 0x1c1a800 0x4>;
reg-names = "phy_ctrl", "pmu1";
pinctrl-names = "default";
pinctrl-0 = <0xd>;
usb0_vbus-supply = <0xe>;
usb0_id_det-gpios = <0xf 0x0 0x4 0x0>;
usb0_vbus_power-supply = <0x10>;
usb1_vbus-supply = <0x11>;
linux,phandle = <0xc>;
phandle = <0xc>;
};
usb@01c1a000 {
compatible = "allwinner,sun8i-a23-ehci", "generic-ehci";
reg = <0x1c1a000 0x100>;
interrupts = <0x0 0x48 0x4>;
clocks = <0x2 0x23>;
resets = <0x2 0x10>;
phys = <0xc 0x1>;
phy-names = "usb";
status = "okay";
};
usb@01c1a400 {
compatible = "allwinner,sun8i-a23-ohci", "generic-ohci";
reg = <0x1c1a400 0x100>;
interrupts = <0x0 0x49 0x4>;
clocks = <0x2 0x24 0x2 0x4e>;
resets = <0x2 0x11>;
phys = <0xc 0x1>;
phy-names = "usb";
status = "okay";
};
clock@01c20000 {
reg = <0x1c20000 0x400>;
clocks = <0x12 0x13 0x0>;
clock-names = "hosc", "losc";
#clock-cells = <0x1>;
#reset-cells = <0x1>;
compatible = "allwinner,sun8i-a33-ccu";
linux,phandle = <0x2>;
phandle = <0x2>;
};
pinctrl@01c20800 {
reg = <0x1c20800 0x400>;
clocks = <0x2 0x30 0x12 0x13 0x0>;
clock-names = "apb", "hosc", "losc";
gpio-controller;
interrupt-controller;
#interrupt-cells = <0x3>;
#gpio-cells = <0x3>;
compatible = "allwinner,sun8i-a33-pinctrl";
interrupts = <0x0 0xf 0x4 0x0 0x11 0x4>;
linux,phandle = <0x7>;
phandle = <0x7>;
uart0@0 {
pins = "PF2", "PF4";
function = "uart0";
};
uart1@0 {
pins = "PG6", "PG7";
function = "uart1";
};
uart1-cts-rts@0 {
pins = "PG8", "PG9";
function = "uart1";
};
mmc0@0 {
pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
function = "mmc0";
drive-strength = <0x1e>;
bias-pull-up;
linux,phandle = <0x4>;
phandle = <0x4>;
};
mmc1@0 {
pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5";
function = "mmc1";
drive-strength = <0x1e>;
bias-pull-up;
linux,phandle = <0x8>;
phandle = <0x8>;
};
mmc2_8bit {
pins = "PC5", "PC6", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16";
function = "mmc2";
drive-strength = <0x1e>;
bias-pull-up;
};
pwm0 {
pins = "PH0";
function = "pwm0";
};
i2c0@0 {
pins = "PH2", "PH3";
function = "i2c0";
};
i2c1@0 {
pins = "PH4", "PH5";
function = "i2c1";
linux,phandle = <0x17>;
phandle = <0x17>;
};
i2c2@0 {
pins = "PE12", "PE13";
function = "i2c2";
};
lcd-rgb666@0 {
pins = "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", "PD24", "PD25", "PD26", "PD27";
function = "lcd0";
};
uart0@1 {
pins = "PB0", "PB1";
function = "uart0";
linux,phandle = <0x16>;
phandle = <0x16>;
};
mmc0_cd_pin@0 {
pins = "PB3";
function = "gpio_in";
bias-pull-up;
linux,phandle = <0x5>;
phandle = <0x5>;
};
led_pins@0 {
pins = "PB7";
function = "gpio_out";
linux,phandle = <0x36>;
phandle = <0x36>;
};
backlight_control_pin@0 {
pins = "PH1";
function = "gpio_out";
linux,phandle = <0x37>;
phandle = <0x37>;
};
};
timer@01c20c00 {
compatible = "allwinner,sun4i-a10-timer";
reg = <0x1c20c00 0xa0>;
interrupts = <0x0 0x12 0x4 0x0 0x13 0x4>;
clocks = <0x12>;
};
watchdog@01c20ca0 {
compatible = "allwinner,sun6i-a31-wdt";
reg = <0x1c20ca0 0x20>;
interrupts = <0x0 0x19 0x4>;
};
pwm@01c21400 {
compatible = "allwinner,sun7i-a20-pwm";
reg = <0x1c21400 0xc>;
clocks = <0x12>;
#pwm-cells = <0x3>;
status = "disabled";
};
lradc@01c22800 {
compatible = "allwinner,sun4i-a10-lradc-keys";
reg = <0x1c22800 0x100>;
interrupts = <0x0 0x1e 0x4>;
status = "okay";
vref-supply = <0x14>;
button@0 {
label = "V+";
linux,code = <0x73>;
channel = <0x0>;
voltage = <0x2e630>;
};
button@1 {
label = "V-";
linux,code = <0x72>;
channel = <0x0>;
voltage = <0x5f370>;
};
};
serial@01c28000 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28000 0x400>;
interrupts = <0x0 0x0 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x36>;
resets = <0x2 0x23>;
dmas = <0x15 0x6 0x15 0x6>;
dma-names = "rx", "tx";
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x16>;
};
serial@01c28400 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28400 0x400>;
interrupts = <0x0 0x1 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x37>;
resets = <0x2 0x24>;
dmas = <0x15 0x7 0x15 0x7>;
dma-names = "rx", "tx";
status = "disabled";
};
serial@01c28800 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28800 0x400>;
interrupts = <0x0 0x2 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x38>;
resets = <0x2 0x25>;
dmas = <0x15 0x8 0x15 0x8>;
dma-names = "rx", "tx";
status = "disabled";
};
serial@01c28c00 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28c00 0x400>;
interrupts = <0x0 0x3 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x39>;
resets = <0x2 0x26>;
dmas = <0x15 0x9 0x15 0x9>;
dma-names = "rx", "tx";
status = "disabled";
};
serial@01c29000 {
compatible = "snps,dw-apb-uart";
reg = <0x1c29000 0x400>;
interrupts = <0x0 0x4 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x2 0x3a>;
resets = <0x2 0x27>;
dmas = <0x15 0xa 0x15 0xa>;
dma-names = "rx", "tx";
status = "disabled";
};
i2c@01c2ac00 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x1c2ac00 0x400>;
interrupts = <0x0 0x6 0x4>;
clocks = <0x2 0x33>;
resets = <0x2 0x20>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};
i2c@01c2b000 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x1c2b000 0x400>;
interrupts = <0x0 0x7 0x4>;
clocks = <0x2 0x34>;
resets = <0x2 0x21>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
pinctrl-names = "default";
pinctrl-0 = <0x17>;
};
i2c@01c2b400 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x1c2b400 0x400>;
interrupts = <0x0 0x8 0x4>;
clocks = <0x2 0x35>;
resets = <0x2 0x22>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};
gpu@1c40000 {
compatible = "allwinner,sun8i-a23-mali", "allwinner,sun7i-a20-mali", "arm,mali-400";
reg = <0x1c40000 0x10000>;
interrupts = <0x0 0x61 0x4 0x0 0x62 0x4 0x0 0x63 0x4 0x0 0x64 0x4 0x0 0x66 0x4 0x0 0x67 0x4 0x0 0x65 0x4>;
interrupt-names = "gp", "gpmmu", "pp0", "ppmmu0", "pp1", "ppmmu1", "pmu";
clocks = <0x2 0x2a 0x2 0x63>;
clock-names = "bus", "core";
resets = <0x2 0x17>;
#cooling-cells = <0x2>;
assigned-clocks = <0x2 0x63>;
assigned-clock-rates = <0x16e36000>;
operating-points-v2 = <0x18>;
linux,phandle = <0x33>;
phandle = <0x33>;
};
interrupt-controller@01c81000 {
compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic";
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>;
clock-output-names = "osc32k";
clocks = <0x19>;
#clock-cells = <0x1>;
linux,phandle = <0x13>;
phandle = <0x13>;
};
interrupt-controller@1f00c00 {
compatible = "allwinner,sun6i-a31-r-intc";
interrupt-controller;
#interrupt-cells = <0x2>;
reg = <0x1f00c00 0x400>;
interrupts = <0x0 0x20 0x4>;
linux,phandle = <0x21>;
phandle = <0x21>;
};
prcm@01f01400 {
compatible = "allwinner,sun8i-a23-prcm";
reg = <0x1f01400 0x200>;
ar100_clk {
compatible = "fixed-factor-clock";
#clock-cells = <0x0>;
clock-div = <0x1>;
clock-mult = <0x1>;
clocks = <0x12>;
clock-output-names = "ar100";
linux,phandle = <0x1a>;
phandle = <0x1a>;
};
ahb0_clk {
compatible = "fixed-factor-clock";
#clock-cells = <0x0>;
clock-div = <0x1>;
clock-mult = <0x1>;
clocks = <0x1a>;
clock-output-names = "ahb0";
linux,phandle = <0x1b>;
phandle = <0x1b>;
};
apb0_clk {
compatible = "allwinner,sun8i-a23-apb0-clk";
#clock-cells = <0x0>;
clocks = <0x1b>;
clock-output-names = "apb0";
linux,phandle = <0x1c>;
phandle = <0x1c>;
};
apb0_gates_clk {
compatible = "allwinner,sun8i-a23-apb0-gates-clk";
#clock-cells = <0x1>;
clocks = <0x1c>;
clock-output-names = "apb0_pio", "apb0_timer", "apb0_rsb", "apb0_uart", "apb0_i2c";
linux,phandle = <0x1e>;
phandle = <0x1e>;
};
apb0_rst {
compatible = "allwinner,sun6i-a31-clock-reset";
#reset-cells = <0x1>;
linux,phandle = <0x1f>;
phandle = <0x1f>;
};
codec-analog {
compatible = "allwinner,sun8i-a23-codec-analog";
pinctrl-names = "default";
pinctrl-0 = <0x1d>;
speaker-amplifier-gpios = <0xf 0x0 0x3 0x0>;
interrupts = <0x0 0x2e 0x4>;
linux,phandle = <0x2c>;
phandle = <0x2c>;
};
};
cpucfg@01f01c00 {
compatible = "allwinner,sun8i-a23-cpuconfig";
reg = <0x1f01c00 0x300>;
};
serial@01f02800 {
compatible = "snps,dw-apb-uart";
reg = <0x1f02800 0x400>;
interrupts = <0x0 0x26 0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x1e 0x4>;
resets = <0x1f 0x4>;
status = "disabled";
};
pinctrl@01f02c00 {
compatible = "allwinner,sun8i-a23-r-pinctrl";
reg = <0x1f02c00 0x400>;
interrupts = <0x0 0x2d 0x4>;
clocks = <0x1e 0x0 0x12 0x13 0x0>;
clock-names = "apb", "hosc", "losc";
resets = <0x1f 0x0>;
gpio-controller;
interrupt-controller;
#interrupt-cells = <0x3>;
#address-cells = <0x1>;
#size-cells = <0x0>;
#gpio-cells = <0x3>;
linux,phandle = <0xf>;
phandle = <0xf>;
r_rsb {
pins = "PL0", "PL1";
function = "s_rsb";
drive-strength = <0x14>;
bias-pull-up;
linux,phandle = <0x20>;
phandle = <0x20>;
};
r_uart@0 {
pins = "PL2", "PL3";
function = "s_uart";
};
usb1_vbus_pin@0 {
pins = "PL2";
function = "gpio_out";
linux,phandle = <0x35>;
phandle = <0x35>;
};
speaker_amplifier_pin@0 {
pins = "PL3";
function = "gpio_out";
linux,phandle = <0x1d>;
phandle = <0x1d>;
};
usb0_id_detect_pin@0 {
pins = "PL4";
function = "gpio_in";
bias-pull-up;
linux,phandle = <0xd>;
phandle = <0xd>;
};
wifi_reset_pin@0 {
pins = "PL6";
function = "gpio_out";
linux,phandle = <0x9>;
phandle = <0x9>;
};
headset_det@0 {
pins = "PL11";
function = "gpio_in";
};
};
rsb@01f03400 {
compatible = "allwinner,sun8i-a23-rsb";
reg = <0x1f03400 0x400>;
interrupts = <0x0 0x27 0x4>;
clocks = <0x1e 0x3>;
clock-frequency = <0x2dc6c0>;
resets = <0x1f 0x3>;
pinctrl-names = "default";
pinctrl-0 = <0x20>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
pmic@3a3 {
compatible = "x-powers,axp223";
reg = <0x3a3>;
interrupt-parent = <0x21>;
interrupts = <0x0 0x8>;
drivevbus-supply = <0x22>;
x-powers,drive-vbus-en;
interrupt-controller;
#interrupt-cells = <0x1>;
ac-power-supply {
compatible = "x-powers,axp221-ac-power-supply";
status = "disabled";
};
battery-power-supply {
compatible = "x-powers,axp221-battery-power-supply";
status = "okay";
};
regulators {
x-powers,dcdc-freq = <0xbb8>;
dcdc1 {
regulator-name = "vcc-3v0";
regulator-always-on;
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
linux,phandle = <0x6>;
phandle = <0x6>;
};
dcdc2 {
regulator-name = "vdd-sys";
regulator-always-on;
regulator-min-microvolt = <0x10c8e0>;
regulator-max-microvolt = <0x10c8e0>;
};
dcdc3 {
regulator-name = "vdd-cpu";
regulator-always-on;
regulator-min-microvolt = <0x124f80>;
regulator-max-microvolt = <0x124f80>;
};
dcdc4 {
regulator-name = "dcdc4";
};
dcdc5 {
regulator-name = "vcc-dram";
regulator-always-on;
regulator-min-microvolt = <0x16e360>;
regulator-max-microvolt = <0x16e360>;
};
dc1sw {
regulator-name = "dc1sw";
};
dc5ldo {
regulator-name = "vdd-cpus";
regulator-always-on;
regulator-min-microvolt = <0x10c8e0>;
regulator-max-microvolt = <0x10c8e0>;
};
aldo1 {
regulator-name = "vcc-io";
regulator-always-on;
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
linux,phandle = <0xa>;
phandle = <0xa>;
};
aldo2 {
regulator-name = "vdd-dll";
regulator-always-on;
regulator-min-microvolt = <0x2625a0>;
regulator-max-microvolt = <0x2625a0>;
};
aldo3 {
regulator-name = "vcc-pll-avcc";
regulator-always-on;
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
linux,phandle = <0x14>;
phandle = <0x14>;
};
dldo1 {
regulator-name = "vcc-wifi0";
regulator-always-on;
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
};
dldo2 {
regulator-name = "vcc-wifi1";
regulator-always-on;
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
};
dldo3 {
regulator-name = "vcc-3v0-csi";
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
};
dldo4 {
regulator-name = "dldo4";
};
eldo1 {
regulator-name = "vcc-1v2-hsic";
regulator-min-microvolt = <0x124f80>;
regulator-max-microvolt = <0x124f80>;
};
eldo2 {
regulator-name = "vcc-dsp";
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
};
eldo3 {
regulator-name = "eldo3";
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
};
ldo_io0 {
regulator-name = "ldo_io0";
status = "disabled";
};
ldo_io1 {
regulator-name = "ldo_io1";
status = "disabled";
};
rtc_ldo {
regulator-always-on;
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
regulator-name = "rtc_ldo";
};
drivevbus {
regulator-name = "usb0-vbus";
status = "okay";
linux,phandle = <0xe>;
phandle = <0xe>;
};
};
usb_power_supply {
compatible = "x-powers,axp223-usb-power-supply";
status = "okay";
linux,phandle = <0x10>;
phandle = <0x10>;
};
};
};
lcd-controller@01c0c000 {
compatible = "allwinner,sun8i-a33-tcon";
reg = <0x1c0c000 0x1000>;
interrupts = <0x0 0x56 0x4>;
clocks = <0x2 0x26 0x2 0x57>;
clock-names = "ahb", "tcon-ch0";
clock-output-names = "tcon-pixel-clock";
resets = <0x2 0x13>;
reset-names = "lcd";
status = "disabled";
ports {
#address-cells = <0x1>;
#size-cells = <0x0>;
port@0 {
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x0>;
endpoint@0 {
reg = <0x0>;
remote-endpoint = <0x23>;
linux,phandle = <0x28>;
phandle = <0x28>;
};
};
port@1 {
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x1>;
};
};
};
crypto-engine@01c15000 {
compatible = "allwinner,sun4i-a10-crypto";
reg = <0x1c15000 0x1000>;
interrupts = <0x0 0x50 0x4>;
clocks = <0x2 0x18 0x2 0x45>;
clock-names = "ahb", "mod";
resets = <0x2 0x5>;
reset-names = "ahb";
};
dai@01c22c00 {
#sound-dai-cells = <0x0>;
compatible = "allwinner,sun6i-a31-i2s";
reg = <0x1c22c00 0x200>;
interrupts = <0x0 0x1d 0x4>;
clocks = <0x2 0x2f 0x2 0x5c>;
clock-names = "apb", "mod";
resets = <0x2 0x1d>;
dmas = <0x15 0xf 0x15 0xf>;
dma-names = "rx", "tx";
status = "okay";
linux,phandle = <0x2d>;
phandle = <0x2d>;
};
codec@01c22e00 {
#sound-dai-cells = <0x0>;
compatible = "allwinner,sun8i-a33-codec";
reg = <0x1c22e00 0x400>;
interrupts = <0x0 0x1d 0x4>;
clocks = <0x2 0x2f 0x2 0x5c>;
clock-names = "bus", "mod";
status = "okay";
linux,phandle = <0x2e>;
phandle = <0x2e>;
};
ths@01c25000 {
compatible = "allwinner,sun8i-a33-ths";
reg = <0x1c25000 0x100>;
#thermal-sensor-cells = <0x0>;
#io-channel-cells = <0x0>;
linux,phandle = <0x2a>;
phandle = <0x2a>;
};
display-frontend@01e00000 {
compatible = "allwinner,sun8i-a33-display-frontend";
reg = <0x1e00000 0x20000>;
interrupts = <0x0 0x5d 0x4>;
clocks = <0x2 0x29 0x2 0x56 0x2 0x53>;
clock-names = "ahb", "mod", "ram";
resets = <0x2 0x16>;
status = "disabled";
linux,phandle = <0x29>;
phandle = <0x29>;
ports {
#address-cells = <0x1>;
#size-cells = <0x0>;
port@1 {
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x1>;
endpoint@0 {
reg = <0x0>;
remote-endpoint = <0x24>;
linux,phandle = <0x25>;
phandle = <0x25>;
};
};
};
};
display-backend@01e60000 {
compatible = "allwinner,sun8i-a33-display-backend";
reg = <0x1e60000 0x10000 0x1e80000 0x1000>;
reg-names = "be", "sat";
interrupts = <0x0 0x5f 0x4>;
clocks = <0x2 0x28 0x2 0x55 0x2 0x54 0x2 0x2e>;
clock-names = "ahb", "mod", "ram", "sat";
resets = <0x2 0x15 0x2 0x1b>;
reset-names = "be", "sat";
assigned-clocks = <0x2 0x55>;
assigned-clock-rates = <0x11e1a300>;
ports {
#address-cells = <0x1>;
#size-cells = <0x0>;
port@0 {
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x0>;
endpoint@0 {
reg = <0x0>;
remote-endpoint = <0x25>;
linux,phandle = <0x24>;
phandle = <0x24>;
};
};
port@1 {
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x1>;
endpoint@0 {
reg = <0x0>;
remote-endpoint = <0x26>;
linux,phandle = <0x27>;
phandle = <0x27>;
};
};
};
};
drc@01e70000 {
compatible = "allwinner,sun8i-a33-drc";
reg = <0x1e70000 0x10000>;
interrupts = <0x0 0x5b 0x4>;
clocks = <0x2 0x2d 0x2 0x62 0x2 0x52>;
clock-names = "ahb", "mod", "ram";
resets = <0x2 0x1a>;
assigned-clocks = <0x2 0x62>;
assigned-clock-rates = <0x11e1a300>;
ports {
#address-cells = <0x1>;
#size-cells = <0x0>;
port@0 {
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x0>;
endpoint@0 {
reg = <0x0>;
remote-endpoint = <0x27>;
linux,phandle = <0x26>;
phandle = <0x26>;
};
};
port@1 {
#address-cells = <0x1>;
#size-cells = <0x0>;
reg = <0x1>;
endpoint@0 {
reg = <0x0>;
remote-endpoint = <0x28>;
linux,phandle = <0x23>;
phandle = <0x23>;
};
};
};
};
};
opp_table0 {
compatible = "operating-points-v2";
opp-shared;
linux,phandle = <0x3>;
phandle = <0x3>;
opp-120000000 {
opp-hz = <0x0 0x7270e00>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-240000000 {
opp-hz = <0x0 0xe4e1c00>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-312000000 {
opp-hz = <0x0 0x1298be00>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-408000000 {
opp-hz = <0x0 0x18519600>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-480000000 {
opp-hz = <0x0 0x1c9c3800>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-504000000 {
opp-hz = <0x0 0x1e0a6e00>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-600000000 {
opp-hz = <0x0 0x23c34600>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-648000000 {
opp-hz = <0x0 0x269fb200>;
opp-microvolt = <0xfde80>;
clock-latency-ns = <0x3b9b0>;
};
opp-720000000 {
opp-hz = <0x0 0x2aea5400>;
opp-microvolt = <0x10c8e0>;
clock-latency-ns = <0x3b9b0>;
};
opp-816000000 {
opp-hz = <0x0 0x30a32c00>;
opp-microvolt = <0x10c8e0>;
clock-latency-ns = <0x3b9b0>;
};
opp-912000000 {
opp-hz = <0x0 0x365c0400>;
opp-microvolt = <0x124f80>;
clock-latency-ns = <0x3b9b0>;
};
opp-1008000000 {
opp-hz = <0x0 0x3c14dc00>;
opp-microvolt = <0x124f80>;
clock-latency-ns = <0x3b9b0>;
};
};
display-engine {
compatible = "allwinner,sun8i-a33-display-engine";
allwinner,pipelines = <0x29>;
status = "disabled";
};
iio-hwmon {
compatible = "iio-hwmon";
io-channels = <0x2a>;
};
gpu-opp-table {
compatible = "operating-points-v2";
linux,phandle = <0x18>;
phandle = <0x18>;
opp-144000000 {
opp-hz = <0x0 0x8954400>;
};
opp-240000000 {
opp-hz = <0x0 0xe4e1c00>;
};
opp-384000000 {
opp-hz = <0x0 0x16e36000>;
};
};
sound {
compatible = "simple-audio-card";
simple-audio-card,name = "sun8i-a33-audio";
simple-audio-card,format = "i2s";
simple-audio-card,frame-master = <0x2b>;
simple-audio-card,bitclock-master = <0x2b>;
simple-audio-card,mclk-fs = <0x200>;
simple-audio-card,aux-devs = <0x2c>;
simple-audio-card,routing = "Left DAC", "AIF1 Slot 0 Left", "Right DAC", "AIF1 Slot 0 Right";
status = "okay";
simple-audio-card,cpu {
sound-dai = <0x2d>;
};
simple-audio-card,codec {
sound-dai = <0x2e>;
linux,phandle = <0x2b>;
phandle = <0x2b>;
};
};
thermal-zones {
cpu_thermal {
polling-delay-passive = <0xfa>;
polling-delay = <0x3e8>;
thermal-sensors = <0x2a>;
cooling-maps {
map0 {
trip = <0x2f>;
cooling-device = <0x30 0xffffffff 0xffffffff>;
};
map1 {
trip = <0x31>;
cooling-device = <0x30 0xffffffff 0xffffffff>;
};
map2 {
trip = <0x32>;
cooling-device = <0x33 0x1 0xffffffff>;
};
map3 {
trip = <0x34>;
cooling-device = <0x33 0x2 0xffffffff>;
};
};
trips {
cpu_alert0 {
temperature = <0x124f8>;
hysteresis = <0x7d0>;
type = "passive";
linux,phandle = <0x2f>;
phandle = <0x2f>;
};
gpu_alert0 {
temperature = <0x14c08>;
hysteresis = <0x7d0>;
type = "passive";
linux,phandle = <0x32>;
phandle = <0x32>;
};
cpu_alert1 {
temperature = <0x15f90>;
hysteresis = <0x7d0>;
type = "hot";
linux,phandle = <0x31>;
phandle = <0x31>;
};
gpu_alert1 {
temperature = <0x17318>;
hysteresis = <0x7d0>;
type = "hot";
linux,phandle = <0x34>;
phandle = <0x34>;
};
cpu_crit {
temperature = <0x1adb0>;
hysteresis = <0x7d0>;
type = "critical";
};
};
};
};
ahci-5v {
compatible = "regulator-fixed";
regulator-name = "ahci-5v";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0x7 0x1 0x8 0x0>;
status = "disabled";
};
usb0-vbus {
compatible = "regulator-fixed";
regulator-name = "usb0-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
enable-active-high;
gpio = <0x7 0x1 0x9 0x0>;
status = "disabled";
};
usb1-vbus {
compatible = "regulator-fixed";
regulator-name = "usb1-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0xf 0x0 0x2 0x0>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x35>;
linux,phandle = <0x11>;
phandle = <0x11>;
};
usb2-vbus {
compatible = "regulator-fixed";
regulator-name = "usb2-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0x7 0x7 0x3 0x0>;
status = "disabled";
};
vcc3v0 {
compatible = "regulator-fixed";
regulator-name = "vcc3v0";
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
};
vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc3v3";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
};
vcc5v0 {
compatible = "regulator-fixed";
regulator-name = "vcc5v0";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
linux,phandle = <0x22>;
phandle = <0x22>;
};
leds {
compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <0x36>;
led1 {
label = "led1";
gpio = <0x7 0x1 0x7 0x1>;
};
};
wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <0xf 0x0 0x6 0x1>;
linux,phandle = <0xb>;
phandle = <0xb>;
};
backlight {
compatible = "ocp8178-backlight";
pinctrl-names = "default";
pinctrl-0 = <0x37>;
backlight-control-gpios = <0x7 0x7 0x1 0x0>;
default-brightness = <0x5>;
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment