Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Allwinner Technology CO., Ltd. sun50iw10p1 platform
- *
- * modify base on juno.dts
- */
- /dts-v1/;
- #include <dt-bindings/interrupt-controller/arm-gic.h>
- #include <dt-bindings/gpio/gpio.h>
- /*#include "sun50iw10p1-pinctrl.dtsi"*/
- #include <dt-bindings/thermal/thermal.h>
- #include <media_bus_format.h>
- #include <drm/drm_mipi_dsi.h>
- #include <dt-bindings/phy/phy.h>
- #include <dt-bindings/clock/sun55iw3-ccu.h>
- #include <dt-bindings/clock/sun55iw3-rtc.h>
- #include <dt-bindings/clock/sun55iw3-r-ccu.h>
- #include <dt-bindings/clock/sun55iw3-mcu-ccu.h>
- #include <dt-bindings/clock/sun55iw3-displl-ccu.h>
- #include <dt-bindings/reset/sun55iw3-ccu.h>
- #include <dt-bindings/reset/sun55iw3-r-ccu.h>
- #include <dt-bindings/reset/sun55iw3-mcu-ccu.h>
- #include <dt-bindings/spi/sunxi-spi.h>
- #include <dt-bindings/clock/sunxi-ccu.h>
- / {
- model = "sun55iw3";
- compatible = "allwinner,a523", "arm,sun55iw3p1";
- #address-cells = <2>;
- #size-cells = <2>;
- aliases: aliases
- {
- nand0 = &nand0;
- twi6 = &twi6;
- disp = &disp;
- lcd0 = &lcd0;
- lcd1 = &lcd1;
- lcd2 = &lcd2;
- eink = &eink;
- hdmi = &hdmi;
- pwm = &pwm;
- pwm0 = &pwm0;
- pwm1 = &pwm1;
- pwm2 = &pwm2;
- pwm3 = &pwm3;
- pwm4 = &pwm4;
- pwm5 = &pwm5;
- s_pwm = &s_pwm;
- spwm0 = &spwm0;
- spi0 = &spi0;
- spif = &spif;
- edp0 = &edp0;
- ir0 = &s_cir0;
- pcie = &pcie;
- gpio0 = &pio;
- };
- dcxo24M: dcxo24M_clk {
- #clock-cells = <0>;
- compatible = "fixed-clock";
- clock-frequency = <24000000>;
- clock-output-names = "dcxo24M";
- };
- rc_16m: rc16m_clk {
- #clock-cells = <0>;
- compatible = "fixed-clock";
- clock-frequency = <16000000>;
- clock-accuracy = <300000000>;
- clock-output-names = "rc-16m";
- };
- ccu: ccu@2001000 {
- compatible = "allwinner,sun55iw3-ccu";
- reg = <0x0 0x02001000 0x0 0x1000>;
- clocks = <&dcxo24M>, <&rtc_ccu CLK_OSC32K>, <&rc_16m>;
- clock-names = "hosc", "losc", "iosc";
- #clock-cells = <1>;
- #reset-cells = <1>;
- };
- rtc_ccu: rtc_ccu@7090000 {
- compatible = "allwinner,sun55iw3-rtc-ccu";
- reg = <0x0 0x07090000 0x0 0x400>;
- #clock-cells = <1>;
- #reset-cells = <1>;
- };
- soc: soc@29000000 {
- compatible = "simple-bus";
- #address-cells = <2>;
- #size-cells = <2>;
- r_pio: pinctrl@07022000 {
- gpio-controller;
- #gpio-cells = <3>;
- s_twi0_pins_a: s_twi0@0 {
- allwinner,pins = "PL0", "PL1";
- allwinner,pname = "s_twi0_scl", "s_twi0_sda";
- allwinner,function = "s_twi0";
- allwinner,muxsel = <2>;
- allwinner,drive = <1>;
- allwinner,pull = <1>;
- };
- s_twi0_pins_b: s_twi0@1 {
- allwinner,pins = "PL0", "PL1";
- allwinner,function = "gpio_out";
- allwinner,muxsel = <1>;
- allwinner,drive = <1>;
- allwinner,pull = <1>;
- };
- pcie_pwren_pins: pcie-pwren-pins {
- allwinner,pins = "PL11";
- allwinner,function = "gpio_out";
- allwinner,muxsel = <1>;
- allwinner,drive = <1>;
- allwinner,pull = <0>;
- };
- };
- twi6: s_twi@0x07081400 {
- };
- pck: power-controller@7060000 {
- compatible = "allwinner,a523-pck-600";
- reg = <0x00 0x7060000 0x00 0x8000>;
- #power-domain-cells = <1>;
- clocks = <&ccu 0x15>; /* CLK_PCK */
- resets = <&ccu 0x0c>; /* RST_PCK */
- clock-names = "pck";
- reset-names = "pck_rst";
- };
- s_twi0@7081400 {
- #address-cells = <0x01>;
- #size-cells = <0x00>;
- compatible = "allwinner,sunxi-twi-v101";
- device_type = "twi6";
- reg = <0x00 0x7081400 0x00 0x400>;
- interrupts = <0x00 0xa4 0x04>;
- clocks = <0x19 0x13>;
- clock-names = "bus";
- resets = <0x19 0x0a>;
- dmas = <0x9e 0x09 0x9e 0x09>;
- dma-names = "tx\0rx";
- interrupt-parent = <&gic>;
- status = "okay";
- clock-frequency = <0x61a80>;
- pinctrl-0 = <0x9f>;
- pinctrl-1 = <0xa0>;
- pinctrl-names = "default\0sleep";
- twi_drv_used = <0x01>;
- no_suspend = <0x01>;
- phandle = <0x19b>;
- axp1530@36 {
- compatible = "ext,axp1530";
- status = "okay";
- reg = <0x36>;
- wakeup-source;
- phandle = <0x19c>;
- regulators {
- dcdc1 {
- regulator-name = "axp1530-dcdc1";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x33e140>;
- regulator-step-delay-us = <0x19>;
- regulator-final-delay-us = <0x32>;
- regulator-always-on;
- phandle = <0x08>;
- };
- dcdc2 {
- regulator-name = "axp1530-dcdc2";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x177fa0>;
- regulator-step-delay-us = <0x19>;
- regulator-final-delay-us = <0x32>;
- regulator-ramp-delay = <0xc8>;
- regulator-always-on;
- phandle = <0xa1>;
- };
- dcdc3 {
- regulator-name = "axp1530-dcdc3";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x1c1380>;
- regulator-step-delay-us = <0x19>;
- regulator-final-delay-us = <0x32>;
- regulator-always-on;
- phandle = <0xa2>;
- };
- ldo1 {
- regulator-name = "axp1530-aldo1";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-step-delay-us = <0x19>;
- regulator-final-delay-us = <0x32>;
- phandle = <0xa3>;
- };
- ldo2 {
- regulator-name = "axp1530-dldo1";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-step-delay-us = <0x19>;
- regulator-final-delay-us = <0x32>;
- phandle = <0xa4>;
- };
- };
- virtual-ext-dcdc1 {
- compatible = "xpower-vregulator,ext-dcdc1";
- dcdc1-supply = <0x08>;
- };
- virtual-ext-dcdc2 {
- compatible = "xpower-vregulator,ext-dcdc2";
- dcdc2-supply = <0xa1>;
- };
- virtual-ext-dcdc3 {
- compatible = "xpower-vregulator,ext-dcdc3";
- dcdc3-supply = <0xa2>;
- };
- virtual-ext-aldo1 {
- compatible = "xpower-vregulator,ext-aldo1";
- aldo1-supply = <0xa3>;
- };
- virtual-ext-dldo1 {
- compatible = "xpower-vregulator,ext-dldo1";
- dldo1-supply = <0xa4>;
- };
- };
- pmu@34 {
- compatible = "x-powers,axp2202";
- reg = <0x34>;
- status = "okay";
- interrupts = <0x00 0x08>;
- interrupt-parent = <0xa5>;
- x-powers,drive-vbus-en;
- pmu_reset = <0x00>;
- pmu_irq_wakeup = <0x01>;
- pmu_hot_shutdown = <0x01>;
- wakeup-source;
- phandle = <0x19d>;
- usb_power_supply {
- compatible = "x-powers,axp2202-usb-power-supply";
- status = "okay";
- pmu_usbpc_vol = <0x11f8>;
- pmu_usbpc_cur = <0x1f4>;
- pmu_usbad_vol = <0xfa0>;
- pmu_usbad_cur = <0x9c4>;
- pmu_usb_typec_used = <0x01>;
- wakeup_usb_in;
- wakeup_usb_out;
- det_acin_supply = <0xa6>;
- pmu_acin_usbid_drv = <0x59 0x07 0x0c 0x01>;
- pmu_vbus_det_gpio = <0x59 0x07 0x0d 0x01>;
- phandle = <0xa7>;
- };
- gpio_power_supply {
- compatible = "x-powers,gpio-supply";
- status = "disabled";
- pmu_acin_det_gpio = <0x59 0x07 0x0e 0x01>;
- det_usb_supply = <0xa7>;
- phandle = <0xa6>;
- };
- powerkey@0 {
- status = "okay";
- compatible = "x-powers,axp2101-pek";
- pmu_powkey_off_time = <0x1770>;
- pmu_powkey_off_func = <0x00>;
- pmu_powkey_off_en = <0x01>;
- pmu_powkey_long_time = <0x5dc>;
- pmu_powkey_on_time = <0x200>;
- wakeup_rising;
- wakeup_falling;
- phandle = <0x19e>;
- };
- regulators@0 {
- phandle = <0x19f>;
- dcdc1 {
- regulator-name = "axp2202-dcdc1";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x177fa0>;
- regulator-ramp-delay = <0xfa>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0x06>;
- };
- dcdc2 {
- regulator-name = "axp2202-dcdc2";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x33e140>;
- regulator-ramp-delay = <0xfa>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0x20>;
- };
- dcdc3 {
- regulator-name = "axp2202-dcdc3";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x1c1380>;
- regulator-ramp-delay = <0xfa>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-always-on;
- phandle = <0xa9>;
- };
- dcdc4 {
- regulator-name = "axp2202-dcdc4";
- regulator-min-microvolt = <0xf4240>;
- regulator-max-microvolt = <0x387520>;
- regulator-ramp-delay = <0xfa>;
- regulator-enable-ramp-delay = <0x3e8>;
- phandle = <0xaa>;
- };
- rtcldo {
- regulator-name = "axp2202-rtcldo";
- regulator-min-microvolt = <0x1b7740>;
- regulator-max-microvolt = <0x1b7740>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0xab>;
- };
- aldo1 {
- regulator-name = "axp2202-aldo1";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- phandle = <0xac>;
- };
- aldo2 {
- regulator-name = "axp2202-aldo2";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- phandle = <0xad>;
- };
- aldo3 {
- regulator-name = "axp2202-aldo3";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-always-on;
- regulator-boot-on;
- phandle = <0xae>;
- };
- aldo4 {
- regulator-name = "axp2202-aldo4";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-always-on;
- regulator-boot-on;
- phandle = <0xaf>;
- };
- bldo1 {
- regulator-name = "axp2202-bldo1";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0xb0>;
- };
- bldo2 {
- regulator-name = "axp2202-bldo2";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0xb1>;
- };
- bldo3 {
- regulator-name = "axp2202-bldo3";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0xb2>;
- };
- bldo4 {
- regulator-name = "axp2202-bldo4";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- phandle = <0xb3>;
- };
- cldo1 {
- regulator-name = "axp2202-cldo1";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- phandle = <0x4f>;
- };
- cldo2 {
- regulator-name = "axp2202-cldo2";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- phandle = <0xb4>;
- };
- cldo3 {
- regulator-name = "axp2202-cldo3";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-ramp-delay = <0x9c4>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0x5d>;
- };
- cldo4 {
- regulator-name = "axp2202-cldo4";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x3567e0>;
- regulator-enable-ramp-delay = <0x3e8>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0xb5>;
- };
- cpusldo {
- regulator-name = "axp2202-cpusldo";
- regulator-min-microvolt = <0x7a120>;
- regulator-max-microvolt = <0x155cc0>;
- regulator-boot-on;
- regulator-always-on;
- phandle = <0xb6>;
- };
- vmid {
- regulator-name = "axp2202-vmid";
- regulator-enable-ramp-delay = <0x3e8>;
- phandle = <0xa8>;
- };
- drivevbus {
- regulator-name = "axp2202-drivevbus";
- regulator-enable-ramp-delay = <0x3e8>;
- drivevbusin-supply = <0xa8>;
- phandle = <0xb7>;
- };
- };
- virtual-dcdc1 {
- compatible = "xpower-vregulator,dcdc1";
- dcdc1-supply = <0x06>;
- };
- virtual-dcdc2 {
- compatible = "xpower-vregulator,dcdc2";
- dcdc2-supply = <0x20>;
- };
- virtual-dcdc3 {
- compatible = "xpower-vregulator,dcdc3";
- dcdc3-supply = <0xa9>;
- };
- virtual-dcdc4 {
- compatible = "xpower-vregulator,dcdc4";
- dcdc4-supply = <0xaa>;
- };
- virtual-rtcldo {
- compatible = "xpower-vregulator,rtcldo";
- rtcldo-supply = <0xab>;
- };
- virtual-aldo1 {
- compatible = "xpower-vregulator,aldo1";
- aldo1-supply = <0xac>;
- };
- virtual-aldo2 {
- compatible = "xpower-vregulator,aldo2";
- aldo2-supply = <0xad>;
- };
- virtual-aldo3 {
- compatible = "xpower-vregulator,aldo3";
- aldo3-supply = <0xae>;
- };
- virtual-aldo4 {
- compatible = "xpower-vregulator,aldo4";
- aldo4-supply = <0xaf>;
- };
- virtual-bldo1 {
- compatible = "xpower-vregulator,bldo1";
- bldo1-supply = <0xb0>;
- };
- virtual-bldo2 {
- compatible = "xpower-vregulator,bldo2";
- bldo2-supply = <0xb1>;
- };
- virtual-bldo3 {
- compatible = "xpower-vregulator,bldo3";
- bldo3-supply = <0xb2>;
- };
- virtual-bldo4 {
- compatible = "xpower-vregulator,bldo4";
- bldo4-supply = <0xb3>;
- };
- virtual-cldo1 {
- compatible = "xpower-vregulator,cldo1";
- cldo1-supply = <0x4f>;
- };
- virtual-cldo2 {
- compatible = "xpower-vregulator,cldo2";
- cldo2-supply = <0xb4>;
- };
- virtual-cldo3 {
- compatible = "xpower-vregulator,cldo3";
- cldo3-supply = <0x5d>;
- };
- virtual-cldo4 {
- compatible = "xpower-vregulator,cldo4";
- cldo4-supply = <0xb5>;
- };
- virtual-cpusldo {
- compatible = "xpower-vregulator,cpusldo";
- cpusldo-supply = <0xb6>;
- };
- virtual-drivevbus {
- compatible = "xpower-vregulator,drivevbus";
- drivevbus-supply = <0xb7>;
- };
- axp_gpio@0 {
- gpio-controller;
- #size-cells = <0x00>;
- #gpio-cells = <0x06>;
- status = "okay";
- phandle = <0x1a0>;
- };
- };
- };
- s_twi1@7081800 {
- #address-cells = <0x01>;
- #size-cells = <0x00>;
- compatible = "allwinner,sunxi-twi-v101";
- device_type = "twi7";
- reg = <0x00 0x7081800 0x00 0x400>;
- interrupts = <0x00 0xa5 0x04>;
- clocks = <0x19 0x12>;
- clock-names = "bus";
- resets = <0x19 0x09>;
- dmas = <0x9e 0x0a 0x9e 0x0a>;
- dma-names = "tx\0rx";
- status = "disabled";
- phandle = <0x1a1>;
- };
- s_twi2@7081c00 {
- #address-cells = <0x01>;
- #size-cells = <0x00>;
- compatible = "allwinner,sunxi-twi-v101";
- device_type = "twi8";
- reg = <0x00 0x7081c00 0x00 0x400>;
- interrupts = <0x00 0x9c 0x04>;
- clocks = <0x19 0x11>;
- clock-names = "bus";
- resets = <0x19 0x08>;
- dmas = <0x9e 0x0e 0x9e 0x0e>;
- dma-names = "tx\0rx";
- status = "disabled";
- phandle = <0x1a2>;
- };
- power_sply:power_sply@4500000c {
- device_type = "power_sply";
- };
- power_delay:power_delay@4500024 {
- device_type = "power_delay";
- };
- platform:platform@45000004 {
- device_type = "platform";
- };
- target:target@45000008 {
- device_type = "target";
- advert_enable = <1>;
- };
- charger0:charger0@45000010 {
- device_type = "charger0";
- };
- card_boot:card_boot@45000014 {
- device_type = "card_boot";
- logical_start = <40960>;
- /* sprite_gpio0 = <&pio PC 7 1 0xffffffff 0xffffffff 1>; */
- sprite_gpio0 = <&pio 0x2 0x7 0x1 0xffffffff 0xffffffff 0x1>;
- };
- gpio_bias:gpio_bias@45000018 {
- device_type = "gpio_bias";
- };
- fastboot_key:fastboot_key@4500001c {
- device_type = "fastboot_key";
- key_max = <42>;
- key_min = <38>;
- };
- recovery_key:recovery_key@45000020 {
- device_type = "recovery_key";
- key_max = <31>;
- key_min = <28>;
- };
- adc_boot_recovery:adc_boot_recovery@45000024 {
- device_type = "adc_boot_recovery";
- };
- reg_pfo: regulator_pfo {
- compatible = "regulator-fixed";
- regulator-name = "vcc-pfo";
- regulator-min-microvolt = <3300000>; /* 3.3V */
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- reg_pc: regulator_pc {
- compatible = "regulator-fixed";
- regulator-name = "vcc-pc";
- regulator-min-microvolt = <3300000>; /* 3.3V */
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- reg_pf: regulator_pf {
- compatible = "regulator-fixed";
- regulator-name = "vcc-pf";
- regulator-min-microvolt = <3300000>; /* 3.3V */
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- reg_pg: regulator_pg {
- compatible = "regulator-fixed";
- regulator-name = "vcc-pg";
- regulator-min-microvolt = <3300000>; /* 3.3V */
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- pio: pinctrl@0300b000 {
- compatible = "allwinner,sun55iw3-pinctrl";
- device_type = "pio";
- reg = <0x00 0x02000000 0x00 0x800>,
- <0x00 0x07010374 0x00 0x04>,
- <0x00 0x07010378 0x00 0x04>;
- reg-names = "pio", "i2s0", "dmic";
- gpio-controller;
- #size-cells = <0>;
- #gpio-cells = <6>;
- input-debounce = <0 0 0 0 0 0 0 0 0>;
- interrupt-controller;
- #interrupt-cells = <3>;
- clocks = <&ccu 0x1a>, <&ccu 0x30>, <&rtc_ccu 0x04>;
- clock-names = "apb", "hosc", "losc";
- vcc-pf-supply = <®_pf>;
- vcc-pg-supply = <®_pg>;
- vcc-pc-supply = <®_pc>;
- vcc-pfo-supply = <®_pfo>;
- phandle = <0x59>;
- status = "okay";
- gma340_mux_pin: gma340-mux-pin {
- pins = "PB6";
- function = "gpio_out";
- drive-strength = <10>;
- bias-disable;
- power-source = <3300>;
- };
- pcie0_pins_ph: pcie0-ph {
- pins = "PH11", "PH12", "PH19";
- function = "pcie0";
- drive-strength = <20>;
- bias-pull-up;
- power-source = <3300>;
- };
- /* TODO: add jtag pin */
- sdc0_pins_d: sdc0@3 {
- pins = "PF2", "PF4";
- function = "uart0";
- drive-strength = <10>;
- bias-pull-up;
- power-source = <3300>;
- };
- sdc0_pins_e: sdc0@4 {
- pins = "PF0", "PF1", "PF3",
- "PF5";
- function = "jtag";
- drive-strength = <10>;
- bias-pull-up;
- power-source = <3300>;
- };
- sdc1_pins_a: sdc1@0 {
- pins = "PG1", "PG2",
- "PG3", "PG4", "PG5";
- function = "sdc1";
- drive-strength = <20>;
- bias-pull-up;
- };
- sdc1_pins_b: sdc1@1 {
- pins = "PG0", "PG1", "PG2",
- "PG3", "PG4", "PG5";
- function = "gpio_in";
- };
- sdc1_pins_c: sdc1@2 {
- pins = "PG0";
- function = "sdc1";
- drive-strength = <30>;
- bias-pull-up;
- };
- sdc0_pins_a: sdc0@0 {
- };
- sdc0_pins_b: sdc0@1 {
- };
- sdc0_pins_c: sdc0@2 {
- };
- sdc2_pins_a: sdc2@0 {
- };
- sdc2_pins_b: sdc2@1 {
- };
- sdc2_pins_c: sdc2@2 {
- };
- nand0_pins_a: nand0@0 {
- };
- nand0_pins_b: nand0@1 {
- };
- nand0_pins_c: nand0@2 {
- };
- spi0_pins_a: spi0@0 {
- };
- spi0_pins_b: spi0@1 {
- };
- spi0_pins_c: spi0@2 {
- };
- spif_pins_a: spif@0 {
- };
- spif_pins_b: spif@1 {
- };
- spif_pins_c: spif@2 {
- };
- lvds0_pins_a: lvds0@0 {
- };
- lvds0_pins_b: lvds0@1 {
- };
- lvds1_pins_a: lvds1@0 {
- };
- lvds1_pins_b: lvds1@1 {
- };
- lvds2_pins_a: lvds2@0 {
- };
- lvds2_pins_b: lvds2@1 {
- };
- lvds3_pins_a: lvds3@0 {
- };
- lvds3_pins_b: lvds3@1 {
- };
- lcd1_lvds2link_pins_a: lcd1_lvds2link@0 {
- };
- lcd1_lvds2link_pins_b: lcd1_lvds2link@1 {
- };
- lvds2link_pins_a: lvds2link@0 {
- };
- lvds2link_pins_b: lvds2link@1 {
- };
- rgb24_pins_a: rgb24@0 {
- };
- rgb24_pins_b: rgb24@1 {
- };
- rgb18_pins_a: rgb18@0 {
- };
- rgb18_pins_b: rgb18@1 {
- };
- eink_pins_a: eink@0 {
- };
- eink_pins_b: eink@1 {
- };
- dsi4lane_pins_a: dsi4lane@0{
- }; /* avoid compile err */
- dsi4lane_pins_b: dsi4lane@1{
- }; /* avoid compile err */
- dsi0_4lane_pins_a: dsi0_4lane@0 {
- };
- dsi0_4lane_pins_b: dsi0_4lane@1 {
- };
- dsi1_4lane_pins_a: dsi1_4lane@0 {
- };
- dsi1_4lane_pins_b: dsi1_4lane@1 {
- };
- pwm0_pin_a: pwm0@0 {
- };
- pwm0_pin_b: pwm0@1 {
- };
- pwm1_pin_a: pwm1@0 {
- };
- pwm1_pin_b: pwm1@1 {
- };
- pwm2_pin_a: pwm2@0 {
- };
- pwm2_pin_b: pwm2@1 {
- };
- pwm3_pin_a: pwm3@0 {
- };
- pwm3_pin_b: pwm3@1 {
- };
- pwm4_pin_a: pwm4@0 {
- };
- pwm4_pin_b: pwm4@1 {
- };
- pwm5_pin_a: pwm5@0 {
- };
- pwm5_pin_b: pwm5@1 {
- };
- spwm0_pin_active: spwm0@0 {
- };
- spwm0_pin_sleep: spwm0@1 {
- };
- s_cir0_pins_a: s_cir0@0 {
- };
- s_cir0_pins_b: s_cir0@1 {
- };
- };
- ir_boot_recovery:ir_boot_recovery@45000024 {
- device_type = "ir_boot_recovery";
- };
- key_boot_recovery:key_boot_recovery@45000028 {
- device_type = "key_boot_recovery";
- };
- pwm: pwm@2000c00 {
- #pwm-cells = <0x3>;
- #clock-cells = <0>;
- #reset-cells = <0>;
- compatible = "allwinner,sunxi-pwm";
- reg = <0x0 0x02000c00 0x0 0x3ff>;
- pwm-number = <16>;
- pwm-base = <0x0>;
- sunxi-pwms = <&pwm0>, <&pwm1>, <&pwm2>, <&pwm3>, <&pwm4>,
- <&pwm5>, <&pwm6>, <&pwm7>, <&pwm8>, <&pwm9>,
- <&pwm10>, <&pwm11>, <&pwm12>, <&pwm13>,
- <&pwm14>, <&pwm15>;
- };
- pwm0: pwm0@2000c10 {
- compatible = "allwinner,sunxi-pwm0";
- reg = <0x0 0x02000c10 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm1: pwm1@2000c11 {
- compatible = "allwinner,sunxi-pwm1";
- reg = <0x0 0x02000c11 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm2: pwm2@2000c12 {
- compatible = "allwinner,sunxi-pwm2";
- reg = <0x0 0x02000c12 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm3: pwm3@2000c13 {
- compatible = "allwinner,sunxi-pwm3";
- reg = <0x0 0x02000c13 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm4: pwm4@2000c14 {
- compatible = "allwinner,sunxi-pwm4";
- reg = <0x0 0x02000c14 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm5: pwm5@2000c15 {
- compatible = "allwinner,sunxi-pwm5";
- reg = <0x0 0x02000c15 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm6: pwm6@2000c16 {
- compatible = "allwinner,sunxi-pwm6";
- reg = <0x0 0x02000c16 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm7: pwm7@2000c17 {
- compatible = "allwinner,sunxi-pwm7";
- reg = <0x0 0x02000c17 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm8: pwm8@2000c18 {
- compatible = "allwinner,sunxi-pwm8";
- reg = <0x0 0x02000c18 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm9: pwm9@2000c19 {
- compatible = "allwinner,sunxi-pwm9";
- reg = <0x0 0x02000c19 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm10: pwm10@2000c1a {
- compatible = "allwinner,sunxi-pwm10";
- reg = <0x0 0x02000c1a 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm11: pwm11@2000c1b {
- compatible = "allwinner,sunxi-pwm11";
- reg = <0x0 0x02000c1b 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm12: pwm12@2000c1c {
- compatible = "allwinner,sunxi-pwm12";
- reg = <0x0 0x02000c1c 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm13: pwm13@2000c1d {
- compatible = "allwinner,sunxi-pwm13";
- reg = <0x0 0x02000c1d 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm14: pwm14@2000c1e {
- compatible = "allwinner,sunxi-pwm14";
- reg = <0x0 0x02000c1e 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- pwm15: pwm15@2000c1f {
- compatible = "allwinner,sunxi-pwm15";
- reg = <0x0 0x02000c1f 0x0 0x4>;
- reg_base = <0x02000c00>;
- status = "disabled";
- };
- s_pwm: spwm@2051010 {
- #pwm-cells = <0x3>;
- compatible = "allwinner,sunxi-pwm";
- reg = <0x0 0x02000c00 0x0 0x3ff>;
- pwm-number = <4>;
- pwm-base = <0x10>;
- sunxi-pwms = <&spwm0>, <&spwm1>, <&spwm2>, <&spwm3>;
- };
- spwm0: spwm0@2051010 {
- compatible = "allwinner,sunxi-pwm16";
- pinctrl-names = "active", "sleep";
- reg = <0x0 0x02051010 0x0 0x4>;
- reg_base = <0x02051000>;
- status = "disabled";
- };
- spwm1: spwm1@2051011 {
- compatible = "allwinner,sunxi-pwm17";
- pinctrl-names = "active", "sleep";
- reg = <0x0 0x02051011 0x0 0x4>;
- reg_base = <0x02051000>;
- status = "disabled";
- };
- spwm2: spwm2@2051012 {
- compatible = "allwinner,sunxi-pwm18";
- pinctrl-names = "active", "sleep";
- reg = <0x0 0x02051012 0x0 0x4>;
- reg_base = <0x02051000>;
- status = "disabled";
- };
- spwm3: spwm3@2051013 {
- compatible = "allwinner,sunxi-pwm19";
- pinctrl-names = "active", "sleep";
- reg = <0x0 0x02051013 0x0 0x4>;
- reg_base = <0x02051000>;
- status = "disabled";
- };
- card0_boot_para:card0_boot_para@2 {
- device_type = "card0_boot_para";
- };
- card2_boot_para:card2_boot_para@3 {
- device_type = "card2_boot_para";
- };
- nand0:nand0@04011000 {
- device_type = "nand0";
- };
- sdc2: sdmmc@4022000 {
- compatible = "allwinner,sunxi-mmc-v4p6x";
- device_type = "sdc2";
- reg = <0x0 0x04022000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&dcxo24M>,
- <&ccu CLK_PLL_PERI1_800M>,
- <&ccu CLK_PLL_PERI1_600M>,
- <&ccu CLK_SMHC2>,
- <&ccu CLK_BUS_SMHC2>;
- clock-names = "osc24m","pll_periph","pll_periph_2","mmc","ahb";
- resets = <&ccu RST_BUS_SMHC2>;
- reset-names = "rst";
- pinctrl-names = "default","sleep";
- pinctrl-0 = <&sdc2_pins_a &sdc2_pins_c>;
- pinctrl-1 = <&sdc2_pins_b>;
- bus-width = <8>;
- req-page-count = <2>;
- cap-mmc-highspeed;
- cap-cmd23;
- mmc-cache-ctrl;
- non-removable;
- /*max-frequency = <200000000>;*/
- max-frequency = <50000000>;
- cap-erase;
- mmc-high-capacity-erase-size;
- no-sdio;
- no-sd;
- /*-- speed mode --*/
- /*sm0: DS26_SDR12*/
- /*sm1: HSSDR52_SDR25*/
- /*sm2: HSDDR52_DDR50*/
- /*sm3: HS200_SDR104*/
- /*sm4: HS400*/
- /*-- frequency point --*/
- /*f0: CLK_400K*/
- /*f1: CLK_25M*/
- /*f2: CLK_50M*/
- /*f3: CLK_100M*/
- /*f4: CLK_150M*/
- /*f5: CLK_200M*/
- ctl-spec-caps = <0x328>;
- sdc_tm4_sm0_freq0 = <0>;
- sdc_tm4_sm0_freq1 = <0>;
- sdc_tm4_sm1_freq0 = <0x00000000>;
- sdc_tm4_sm1_freq1 = <0>;
- sdc_tm4_sm2_freq0 = <0x00000000>;
- sdc_tm4_sm2_freq1 = <0>;
- sdc_tm4_sm3_freq0 = <0x05000000>;
- sdc_tm4_sm3_freq1 = <0x00000005>;
- sdc_tm4_sm4_freq0 = <0x00050000>;
- sdc_tm4_sm4_freq1 = <0x00000004>;
- sdc_tm4_sm4_freq0_cmd = <0>;
- sdc_tm4_sm4_freq1_cmd = <0>;
- /*vmmc-supply = <®_3p3v>;*/
- /*vqmc-supply = <®_3p3v>;*/
- /*vdmc-supply = <®_3p3v>;*/
- /*vmmc = "vcc-card";*/
- /*vqmc = "";*/
- /*vdmc = "";*/
- /*sunxi-power-save-mode;*/
- };
- sdc0: sdmmc@4020000 {
- compatible = "allwinner,sunxi-mmc-v5p3x";
- device_type = "sdc0";
- reg = <0x0 0x04020000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&dcxo24M>,
- <&ccu CLK_PLL_PERI1_400M>,
- <&ccu CLK_PLL_PERI1_300M>,
- <&ccu CLK_SMHC0>,
- <&ccu CLK_BUS_SMHC0>;
- clock-names = "osc24m","pll_periph","pll_periph_2","mmc","ahb";
- resets = <&ccu RST_BUS_SMHC0>;
- reset-names = "rst";
- pinctrl-names = "default","mmc_1v8","sleep","uart_jtag";
- pinctrl-0 = <&sdc0_pins_a>;
- pinctrl-1 = <&sdc0_pins_b>;
- pinctrl-2 = <&sdc0_pins_c>;
- pinctrl-3 = <&sdc0_pins_d &sdc0_pins_e>;
- max-frequency = <50000000>;
- bus-width = <4>;
- req-page-count = <2>;
- /*non-removable;*/
- /*broken-cd;*/
- /*cd-inverted*/
- /*cd-gpios = <&pio PF 6 GPIO_ACTIVE_LOW>;*/
- /* vmmc-supply = <®_3p3v>;*/
- /* vqmc-supply = <®_3p3v>;*/
- /* vdmc-supply = <®_3p3v>;*/
- /*vmmc = "vcc-card";*/
- /*vqmc = "";*/
- /*vdmc = "";*/
- cap-sd-highspeed;
- cap-wait-while-busy;
- /*sd-uhs-sdr50;*/
- /*sd-uhs-ddr50;*/
- /*cap-sdio-irq;*/
- /*keep-power-in-suspend;*/
- /*ignore-pm-notify;*/
- /*sunxi-power-save-mode;*/
- /*sunxi-dly-400k = <1 0 0 0>; */
- /*sunxi-dly-26M = <1 0 0 0>;*/
- /*sunxi-dly-52M = <1 0 0 0>;*/
- /*sunxi-dly-52M-ddr4 = <1 0 0 0>;*/
- /*sunxi-dly-52M-ddr8 = <1 0 0 0>;*/
- /*sunxi-dly-104M = <1 0 0 0>;*/
- /*sunxi-dly-208M = <1 0 0 0>;*/
- /*sunxi-dly-104M-ddr = <1 0 0 0>;*/
- /*sunxi-dly-208M-ddr = <1 0 0 0>;*/
- ctl-spec-caps = <0x428>;
- status = "okay";
- };
- sdc1: sdmmc@4021000 {
- compatible = "allwinner,sunxi-mmc-v5p3x";
- device_type = "sdc1";
- reg = <0x0 0x04021000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&dcxo24M>,
- <&ccu CLK_PLL_PERI1_400M>,
- <&ccu CLK_PLL_PERI1_300M>,
- <&ccu CLK_SMHC1>,
- <&ccu CLK_BUS_SMHC1>;
- clock-names = "osc24m","pll_periph","pll_periph_2","mmc","ahb";
- resets = <&ccu RST_BUS_SMHC1>;
- reset-names = "rst";
- pinctrl-names = "default","sleep";
- pinctrl-0 = <&sdc1_pins_a &sdc1_pins_c>;
- pinctrl-1 = <&sdc1_pins_b>;
- max-frequency = <50000000>;
- bus-width = <4>;
- /*broken-cd;*/
- /*cd-inverted*/
- /*cd-gpios = <&pio PG 6 6 1 2 0>;*/
- /* vmmc-supply = <®_3p3v>;*/
- /* vqmc-supply = <®_3p3v>;*/
- /* vdmc-supply = <®_3p3v>;*/
- /*vmmc = "vcc-card";*/
- /*vqmc = "";*/
- /*vdmc = "";*/
- cap-sd-highspeed;
- cap-sdio-irq;
- ignore-pm-notify;
- /*sd-uhs-sdr50;*/
- /*sd-uhs-ddr50;*/
- /*sd-uhs-sdr104;*/
- /*cap-sdio-irq;*/
- keep-power-in-suspend;
- execute_tuning_in_kernel;
- /*ignore-pm-notify;*/
- /*sunxi-power-save-mode;*/
- /*sunxi-dly-400k = <0xff 0xff 0xff 0xff 0xff 0xff>; */
- /*sunxi-dly-26M = <0xff 0xff 0xff 0xff 0xff 0xff>;*/
- /*sunxi-dly-52M = <0xff 0xff 0xff 0xff 0xff 0xff>;*/
- /*sunxi-dly-52M-ddr4 = <0xff 0xff 0xff 0xff 0xff 0xff>;*/
- /*sunxi-dly-52M-ddr8 = <0xff 0xff 0xff 0xff 0xff 0xff>;*/
- /*sunxi-dly-104M = <0xff 0xff 0xff 0xff 0xff 0xff>;*/
- /*sunxi-dly-208M = <0xff 0xff 0xff 0xff 0xff 0xff> ;*/
- /*sunxi-dly-104M-ddr = <0xff 0xff 0xff 0xff 0xff 0xff>;*/
- /*sunxi-dly-208M-ddr = <0xff 0xff 0xff 0xff 0xff 0xff>;*/
- sunxi-dly-208M = <0xff 0x1 0xff 0xff 0xff 0xff>;
- ctl-spec-caps = <0x428>;
- status = "okay";
- };
- spi0: spi@4025000 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "allwinner,sun55i-spi";
- device_type = "spi0";
- reg = <0x0 0x04025000 0x0 0x1000>;
- //interrupts-extended = <&plic0 31 IRQ_TYPE_LEVEL_HIGH>;
- //clocks = <&ccu CLK_PLL_PERIPH0>, <&ccu CLK_SPI0>, <&ccu CLK_BUS_SPI0>;
- //clock-names = "pll", "mod", "bus";
- //resets = <&ccu RST_BUS_SPI0>;
- };
- spif: spif@4f00000 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "allwinner,sun55i-spif";
- device_type = "spif";
- reg = <0x0 0x047f0000 0x0 0x1000>;
- //interrupts-extended = <&plic0 19 IRQ_TYPE_LEVEL_HIGH>;
- //clocks = <&ccu CLK_PLL_PERIPH0>, <&ccu CLK_SPIF>, <&ccu CLK_BUS_SPIF>;
- //clock-names = "pll", "mod", "bus";
- //resets = <&ccu RST_BUS_SPIF>;
- };
- sunxi_drm: sunxi-drm {
- compatible = "allwinner,sunxi-drm";
- status = "okay";
- route {
- disp0_lvds0: disp0_lvds0 {
- status = "disabled";
- endpoints = <&disp0_out_tcon0 &tcon0_out_lvds0>;
- logo,uboot = "bootlogo.bmp";
- };
- disp0_rgb0: disp0_rgb0 {
- status = "disabled";
- endpoints = <&disp0_out_tcon0 &tcon0_out_rgb0>;
- logo,uboot = "bootlogo.bmp";
- };
- disp0_dsi0: disp0_dsi0 {
- status = "disabled";
- endpoints = <&disp0_out_tcon0 &tcon0_out_dsi0>;
- logo,uboot = "bootlogo.bmp";
- };
- disp0_lvds1: disp0_lvds1 {
- status = "disabled";
- endpoints = <&disp0_out_tcon4 &tcon4_out_lvds1>;
- logo,uboot = "bootlogo.bmp";
- };
- disp0_rgb1: disp0_rgb1 {
- status = "disabled";
- endpoints = <&disp0_out_tcon4 &tcon4_out_rgb1>;
- logo,uboot = "bootlogo.bmp";
- };
- disp0_dsi1: disp0_dsi1 {
- status = "disabled";
- endpoints = <&disp0_out_tcon1 &tcon1_out_dsi1>;
- logo,uboot = "bootlogo.bmp";
- };
- disp0_edp: disp0_edp {
- status = "disabled";
- endpoints = <&disp0_out_tcon3 &tcon3_out_edp>;
- logo,uboot = "bootlogo.bmp";
- };
- disp0_hdmi: disp0_hdmi {
- status = "disabled";
- endpoints = <&disp0_out_tcon2 &tcon2_out_hdmi>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_lvds0: disp1_lvds0 {
- status = "disabled";
- endpoints = <&disp1_out_tcon0 &tcon0_out_lvds0>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_rgb0: disp1_rgb0 {
- status = "disabled";
- endpoints = <&disp1_out_tcon0 &tcon0_out_rgb0>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_dsi0: disp1_dsi0 {
- status = "disabled";
- endpoints = <&disp1_out_tcon0 &tcon0_out_dsi0>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_lvds1: disp1_lvds1 {
- status = "disabled";
- endpoints = <&disp1_out_tcon4 &tcon4_out_lvds1>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_rgb1: disp1_rgb1 {
- status = "disabled";
- endpoints = <&disp1_out_tcon4 &tcon4_out_rgb1>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_dsi1: disp1_dsi1 {
- status = "disabled";
- endpoints = <&disp1_out_tcon1 &tcon1_out_dsi1>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_edp: disp1_edp {
- status = "disabled";
- endpoints = <&disp1_out_tcon3 &tcon3_out_edp>;
- logo,uboot = "bootlogo.bmp";
- };
- disp1_hdmi: disp1_hdmi {
- status = "disabled";
- endpoints = <&disp1_out_tcon2 &tcon2_out_hdmi>;
- logo,uboot = "bootlogo.bmp";
- };
- };
- };
- de: de@5000000 {
- compatible = "allwinner,display-engine-v350";
- reg = <0x0 0x5000000 0x0 0x400000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_de0>;
- clock-names = "clk_de";
- status = "okay";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- disp0: port@0 {
- reg = <0>;
- #address-cells = <1>;
- #size-cells = <0>;
- disp0_out_tcon0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon0_in_disp0>;
- };
- disp0_out_tcon1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&tcon1_in_disp0>;
- };
- disp0_out_tcon2: endpoint@2 {
- reg = <2>;
- remote-endpoint = <&tcon2_in_disp0>;
- };
- disp0_out_tcon3: endpoint@3 {
- reg = <3>;
- remote-endpoint = <&tcon3_in_disp0>;
- };
- disp0_out_tcon4: endpoint@4 {
- reg = <4>;
- remote-endpoint = <&tcon4_in_disp0>;
- };
- };
- disp1: port@1 {
- reg = <1>;
- #address-cells = <1>;
- #size-cells = <0>;
- disp1_out_tcon0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon0_in_disp1>;
- };
- disp1_out_tcon1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&tcon1_in_disp1>;
- };
- disp1_out_tcon2: endpoint@2 {
- reg = <2>;
- remote-endpoint = <&tcon2_in_disp1>;
- };
- disp1_out_tcon3: endpoint@3 {
- reg = <3>;
- remote-endpoint = <&tcon3_in_disp1>;
- };
- disp1_out_tcon4: endpoint@4 {
- reg = <4>;
- remote-endpoint = <&tcon4_in_disp1>;
- };
- };
- };
- };
- vo0: vo0@5500000 {
- compatible = "allwinner,tcon-top0";
- reg = <0x0 0x05500000 0x0 0xfff>;
- clocks = <&clk_dpss_top0>;
- clock-names = "clk_bus_dpss_top";
- status = "disabled";
- };
- vo1: vo1@5730000 {
- compatible = "allwinner,tcon-top1";
- reg = <0x0 0x05730000 0x0 0xfff>;
- status = "disabled";
- };
- dlcd0: tcon0@5501000 {
- compatible = "allwinner,tcon-lcd";
- reg = <0x0 0x05501000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_tcon_lcd0>;
- clock-names = "clk_tcon";
- top = <&vo0>;
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- tcon0_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- tcon0_in_disp0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&disp0_out_tcon0>;
- };
- tcon0_in_disp1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&disp1_out_tcon0>;
- };
- };
- tcon0_out: port@1 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <1>;
- tcon0_out_lvds0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&lvds0_in_tcon0>;
- };
- tcon0_out_dsi0: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&dsi0_in_tcon0>;
- };
- tcon0_out_dsi1: endpoint@2 {
- reg = <2>;
- remote-endpoint = <&dsi1_in_tcon0>;
- };
- tcon0_out_rgb0: endpoint@3 {
- reg = <3>;
- remote-endpoint = <&rgb0_in_tcon0>;
- };
- };
- };
- };
- dlcd1: tcon1@5502000 {
- compatible = "allwinner,tcon-lcd";
- reg = <0x0 0x05502000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_tcon_lcd1>;
- clock-names = "clk_tcon";
- top = <&vo0>;
- status = "disabled";
- // TODO find panel used of_graph?
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- tcon1_in: port@0 {
- reg = <0>;
- #address-cells = <1>;
- #size-cells = <0>;
- tcon1_in_disp0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&disp0_out_tcon1>;
- };
- tcon1_in_disp1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&disp1_out_tcon1>;
- };
- };
- tcon1_out: port@1 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <1>;
- tcon1_out_dsi1: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&dsi1_in_tcon1>;
- };
- };
- };
- };
- dlcd2: tcon4@5731000 {
- compatible = "allwinner,tcon-lcd";
- reg = <0x0 0x05731000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_tcon_lcd2>;
- clock-names = "clk_tcon";
- top = <&vo1>;
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- tcon4_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- tcon4_in_disp0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&disp0_out_tcon4>;
- };
- tcon4_in_disp1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&disp1_out_tcon4>;
- };
- };
- tcon4_out: port@1 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <1>;
- tcon4_out_lvds1: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&lvds1_in_tcon4>;
- };
- tcon4_out_rgb1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&rgb1_in_tcon4>;
- };
- };
- };
- };
- lvds0: lvds0@0001000 {
- compatible = "allwinner,lvds0";
- /* resets = <&ccu RST_BUS_LVDS0>;
- reset-names = "rst_bus_lvds";*/
- clocks = <&clk_lvds0>;
- clock-names = "clk_lvds";
- phys = <&dsi0combophy>, <&dsi1combophy>;
- phy-names = "combophy0", "combophy1";
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- lvds0_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- lvds0_in_tcon0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon0_out_lvds0>;
- };
- };
- };
- };
- lvds1: lvds1@0001000 {
- compatible = "allwinner,lvds1";
- reg = <0>;
- clocks = <&clk_lvds1>;
- clock-names = "clk_lvds";
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- lvds1_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- lvds1_in_tcon4: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon4_out_lvds1>;
- };
- };
- };
- };
- rgb0: rgb0@0001000 {
- compatible = "allwinner,rgb0";
- reg = <0>;
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- rgb0_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- rgb0_in_tcon0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon0_out_rgb0>;
- };
- };
- };
- };
- rgb1: rgb1@0001000 {
- compatible = "allwinner,rgb1";
- reg = <0>;
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- rgb1_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- rgb1_in_tcon4: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon4_out_rgb1>;
- };
- };
- };
- };
- dsi0combophy: phy@5507000 {
- compatible = "allwinner,sunxi-dsi-combo-phy0";
- reg = <0x0 0x05507000 0x0 0x1ff>;
- clocks = <&clk_mipi_dsi_combphy0>,
- <&clk_mipi_dsi0>;
- clock-names = "phy_gating_clk",
- "phy_clk";
- #phy-cells = <0>;
- status = "okay";
- };
- dsi0: dsi0@5506000 {
- compatible = "allwinner,dsi0";
- reg = <0x0 0x05506000 0x0 0xfff>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_mipi_dsi0>;
- clock-names = "dsi_clk";
- phys = <&dsi0combophy>;
- phy-names = "combophy";
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- dsi0_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- dsi0_in_tcon0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon0_out_dsi0>;
- };
- };
- };
- };
- dsi1combophy: phy@5509000 {
- compatible = "allwinner,sunxi-dsi-combo-phy1";
- reg = <0x0 0x05509000 0x0 0x1ff>;
- clocks = <&clk_mipi_dsi_combphy1>,
- <&clk_mipi_dsi0>;
- clock-names = "phy_gating_clk",
- "phy_clk";
- #phy-cells = <0>;
- status = "disabled";
- };
- dsi1: dsi1@5508000 {
- compatible = "allwinner,dsi1";
- reg = <0x0 0x05508000 0x0 0xfff>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_mipi_dsi1>;
- clock-names = "dsi_clk";
- phys = <&dsi1combophy>;
- phy-names = "combophy";
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- dsi1_in: port@0 {
- reg = <0>;
- #address-cells = <1>;
- #size-cells = <0>;
- dsi1_in_tcon1: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon1_out_dsi1>;
- };
- dsi1_in_tcon0: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&tcon0_out_dsi1>;
- };
- };
- };
- };
- tv0: tcon2@5503000 {
- compatible = "allwinner,tcon-tv";
- reg = <0x0 0x05503000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_tcon_tv0>;
- clock-names = "clk_tcon";
- top = <&vo0>;
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- tcon2_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- tcon2_in_disp0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&disp0_out_tcon2>;
- };
- tcon2_in_disp1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&disp1_out_tcon2>;
- };
- };
- tcon2_out: port@1 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <1>;
- tcon2_out_hdmi: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&hdmi_in_tcon2>;
- };
- };
- };
- };
- tv1: tcon3@5504000 {
- compatible = "allwinner,tcon-tv";
- reg = <0x0 0x05504000 0x0 0x1000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_tcon_tv1>;
- clock-names = "clk_tcon";
- top = <&vo0>;
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- tcon3_in: port@0 {
- reg = <0>;
- #address-cells = <1>;
- #size-cells = <0>;
- tcon3_in_disp0: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&disp0_out_tcon3>;
- };
- tcon3_in_disp1: endpoint@1 {
- reg = <1>;
- remote-endpoint = <&disp1_out_tcon3>;
- };
- };
- tcon3_out: port@1 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <1>;
- tcon3_out_edp: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&edp_in_tcon3>;
- };
- };
- };
- };
- drm_edp: drm_edp@5720000 {
- compatible = "allwinner,drm-edp";
- reg = <0x0 0x05720000 0x0 0x4000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_edp>, <&clk_edp_24m>;
- clock-names = "clk_edp", "clk_24m_edp";
- //FIXME
- status = "disabled";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- edp_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- edp_in_tcon3: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon3_out_edp>;
- };
- };
- edp_out: port@1 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <1>;
- edp_out_panel: endpoint@0 {
- reg = <0>;
- };
- };
- };
- };
- disp: disp@5000000 {
- compatible = "allwinner,sunxi-disp";
- reg = <0x0 0x05000000 0x0 0x400000>, /*de*/
- <0x0 0x05500000 0x0 0x1000>, /* display_if_top */
- <0x0 0x05501000 0x0 0x1000>, /* tcon_lcd0 */
- <0x0 0x05502000 0x0 0x1000>, /* tcon_lcd1 */
- <0x0 0x05503000 0x0 0x1000>, /* tcon_tv0 */
- <0x0 0x05504000 0x0 0x1000>, /* tcon_tv1 */
- <0x0 0x05731000 0x0 0x1000>, /* tcon_lcd2 */
- <0x0 0x05506000 0x0 0x1fff>, /* dsi0 */
- <0x0 0x05508000 0x0 0x1fff>; /* dsi1 */
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>, /* DE */
- <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>, /* tcon_lcd0 */
- <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, /* tcon_lcd1 */
- <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, /* tcon_tv0 */
- <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, /* tcon_tv1 */
- <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, /* tcon_lcd2 */
- <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>, /* dsi0 */
- <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; /* dsi1 */
- clocks = <&clk_de0>,
- // <&clk_de1>,
- <&clk_dpss_top0>,
- <&clk_tcon_lcd0>, /* tcon lcd */
- <&clk_tcon_lcd1>,
- <&clk_tcon_tv0>, /* tcon tv */
- <&clk_tcon_tv1>,
- <&clk_tcon_lcd2>,
- <&clk_lvds0>,
- <&clk_lvds1>,
- <&clk_mipi_dsi0>,
- <&clk_mipi_dsi1>,
- <&clk_mipi_dsi_combphy0>,
- <&clk_mipi_dsi_combphy1>;
- // interrupt-parent = <&gic>;
- boot_disp = <0>;
- boot_disp1 = <0>;
- boot_disp2 = <0>;
- fb_base = <0>;
- status = "okay";
- };
- hdmi: hdmi@5520000 {
- compatible = "allwinner,sunxi-hdmi";
- reg = <0x0 0x05520000 0x0 0x100000>;
- clocks = <&clk_tcon_tv0>, <&clk_hdmi>, <&clk_hdmi_24m>,
- <&clk_hdmi_sub>;
- clock-names = "clk_tcon_tv",
- "clk_hdmi",
- "clk_hdmi_24M",
- "rst_main";
- status = "okay";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- hdmi_in: port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- hdmi_in_tcon2: endpoint@0 {
- reg = <0>;
- remote-endpoint = <&tcon2_out_hdmi>;
- };
- };
- };
- };
- codec:codec@7110000 {
- #address-cells = <2>;
- #size-cells = <2>;
- ranges;
- compatible = "allwinner,sunxi-internal-codec";
- reg = <0x0 0x07110000 0x0 0x2C0>,
- <0x0 0x07110300 0x0 0x048>;
- lineout_vol =<0x1F>;
- /* Pa enabled about */
- pa_level =<0x01>;
- pa_pwr_level =<0x01>;
- gpio-spk = <&pio PH 6 GPIO_ACTIVE_HIGH>;
- status = "okay";
- };
- boottone:boottone {
- device_type = "boottone";
- status = "okay";
- };
- edp0: edp0@5720000 {
- compatible = "allwinner,sunxi-edp0";
- reg = <0x0 0x05720000 0x0 0x4000>;
- interrupt-parent = <&gic>;
- interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_edp>, <&clk_edp_24m>;
- reset-names = "rst_bus_edp";
- status = "okay";
- };
- lcd0: lcd0@1c0c000 {
- // #address-cells = <2>;
- // #size-cells = <2>;
- compatible = "allwinner,sunxi-lcd0";
- // reg = <0x0 0x1c0c000 0x0 0x0>; /* Fake registers to avoid dtc compiling warnings */
- pinctrl-names = "active","sleep";
- status = "okay";
- };
- lcd0_1: lcd0_1@1c0c000 {
- };
- lcd1: lcd1@0 {
- compatible = "allwinner,sunxi-lcd1";
- // reg = <0x0 0x1c0c000 0x0 0x0>; /* Fake registers to avoid dtc compiling warnings */
- pinctrl-names = "active","sleep";
- status = "okay";
- };
- lcd1_1: lcd1_1@1 {
- };
- lcd1_2: lcd1_2@2 {
- };
- lcd2: lcd2@1c0c000 {
- compatible = "allwinner,sunxi-lcd2";
- /* Fake registers to avoid dtc compiling warnings */
- // reg = <0x0 0x1c0c000 0x0 0x0>;
- pinctrl-names = "active","sleep";
- status = "okay";
- };
- eink: eink@6400000 {
- compatible = "allwinner,sunxi-eink";
- pinctrl-names = "active","sleep";
- reg = <0x0 0x06400000 0x0 0x01ffff>,/* eink */
- <0x0 0x06000000 0x0 0x3fffff>;/* de */
- interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>, /* eink */
- <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; /* de */
- clocks = <&clk_de0>,
- <&clk_ee>,
- <&clk_panel>;
- /* iommus = <&mmu_aw 6 1>; */
- interrupt-parent = <&gic>;
- status = "okay";
- };
- s_cir0: s_cir@07040000 {
- compatible = "allwinner,s_cir";
- };
- clk_test: clk_test@0x12345 {
- clocks = <&clk_sdmmc0_mod>,
- <&clk_sdmmc0_rst>,
- <&clk_sdmmc0_bus>,
- <&clk_sdmmc2_mod>,
- <&clk_sdmmc2_rst>,
- <&clk_sdmmc2_bus>;
- status = "okay";
- };
- combophy: phy@4f00000 {
- compatible = "allwinner,inno-combphy";
- reg = <0x0 0x04f00000 0x0 0x80000>, /* Sub-System Application Registers */
- <0x0 0x04f80000 0x0 0x80000>; /* Combo INNO PHY Registers */
- reg-names = "phy-ctl", "phy-clk";
- #phy-cells = <1>;
- status = "disabled";
- };
- gma340_pcie: gma340-pcie {
- compatible = "regulator-fixed";
- regulator-name = "gma340-pcie";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- gpio = <&pio PB 6 GPIO_ACTIVE_HIGH>;
- enable-active-high;
- };
- pcie_pwren_reg: pcie-pwren {
- compatible = "regulator-fixed";
- regulator-name = "pcie-pwren";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- gpio = <&r_pio 11 0>; // PL11, GPIO_ACTIVE_HIGH
- enable-active-high;
- regulator-always-on;
- regulator-boot-on;
- pinctrl-names = "default";
- pinctrl-0 = <&pcie_pwren_pins>;
- };
- pcie: pcie@4800000 {
- compatible = "allwinner,sunxi-pcie-v210-rc";
- #address-cells = <3>;
- #size-cells = <2>;
- bus-range = <0x0 0xff>;
- reg = <0 0x04800000 0 0x480000>;
- reg-names = "dbi";
- device_type = "pci";
- ranges = <0x00000800 0 0x20000000 0x0 0x20000000 0 0x01000000
- 0x81000000 0 0x21000000 0x0 0x21000000 0 0x01000000
- 0x82000000 0 0x22000000 0x0 0x22000000 0 0x0e000000>;
- num-lanes = <1>;
- phys = <&combophy PHY_TYPE_PCIE>;
- phy-names = "pcie-phy";
- #interrupt-cells = <1>;
- num-edma = <4>;
- max-link-speed = <2>;
- num-ib-windows = <8>;
- num-ob-windows = <8>;
- linux,pci-domain = <0>;
- clocks = <&ccu 0x1a>, <&ccu 0x94>; // "hosc", "pclk_aux"
- clock-names = "hosc", "pclk_aux";
- reset-gpios = <&pio 7 11 GPIO_ACTIVE_LOW>; // PH11, PCIE0-PERST#
- wake-gpios = <&pio 7 12 GPIO_ACTIVE_LOW>; // PH12, PCIE0-WAKE#
- power-domains = <&pck 0x07>;
- gma340-pcie-supply = <&gma340_pcie>;
- status = "okay";
- };
- };
- gic: interrupt-controller@3020000 {
- compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
- #interrupt-cells = <3>;
- #address-cells = <0>;
- device_type = "gic";
- interrupt-controller;
- reg = <0x0 0x03021000 0 0x1000>, /* GIC Dist */
- <0x0 0x03022000 0 0x2000>, /* GIC CPU */
- <0x0 0x03024000 0 0x2000>, /* GIC VCPU Control */
- <0x0 0x03026000 0 0x2000>; /* GIC VCPU */
- interrupts = <GIC_PPI 9 0xf04>; /* GIC Maintenence IRQ */
- interrupt-parent = <&gic>;
- };
- };
- #include "sun55iw3p1-clk.dtsi"
- #include ".board-uboot.dts"
Advertisement
Add Comment
Please, Sign In to add comment