1033 lines
21 KiB
Plaintext
Executable File
1033 lines
21 KiB
Plaintext
Executable File
/dts-v1/;
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include "a210-soc-core.dtsi"
|
|
#include "a210-soc-peri.dtsi"
|
|
#include "a210-platform-dev.dtsi"
|
|
|
|
#define SOUND_CARD_LINK(REG, FMT, CPU, M, CODEC, N) \
|
|
simple-audio-card,dai-link@##REG { \
|
|
reg = <REG>; \
|
|
format = #FMT; \
|
|
cpu { \
|
|
sound-dai = <&audio_##CPU M>; \
|
|
}; \
|
|
codec { \
|
|
sound-dai = <&codec_##CODEC N>; \
|
|
}; \
|
|
}
|
|
|
|
/ {
|
|
model = "A210 DEV configuration";
|
|
|
|
aliases {
|
|
ethernet0 = &gmac0;
|
|
ethernet1 = &gmac1;
|
|
|
|
gpio0 = &ao_gpio0;
|
|
gpio1 = &ao_gpio1;
|
|
gpio2 = &gpio0;
|
|
gpio3 = &gpio1;
|
|
gpio4 = &gpio2;
|
|
gpio5 = &gpio3;
|
|
gpio6 = &gpio4;
|
|
gpio7 = &aw9535_0;
|
|
gpio8 = &aw9535_1;
|
|
|
|
i2c0 = &i2c0;
|
|
i2c1 = &i2c1;
|
|
i2c2 = &i2c2;
|
|
i2c3 = &i2c3;
|
|
i2c4 = &i2c4;
|
|
i2c5 = &i2c5;
|
|
i2c6 = &i2c6;
|
|
i2c7 = &i2c7;
|
|
i2c8 = &aoi2c1;
|
|
|
|
can0 = &can0;
|
|
can1 = &can1;
|
|
can2 = &can2;
|
|
|
|
mmc0 = &emmc;
|
|
mmc1 = &sdhci0;
|
|
serial0 = &uart0;
|
|
serial1 = &uart1;
|
|
serial2 = &uart2;
|
|
serial3 = &uart3;
|
|
serial4 = &uart4;
|
|
serial5 = &uart5;
|
|
serial6 = &uart6;
|
|
serial7 = &uart7;
|
|
serial8 = &uart8;
|
|
serial9 = &uart9;
|
|
spi0 = &qspi0;
|
|
spi1 = &qspi1;
|
|
spi2 = &spi0;
|
|
spi3 = &spi1;
|
|
pcie3x4 = &dm3x4;
|
|
pcie3x1 = &rp3x1;
|
|
};
|
|
|
|
/* The actual capacity will be adjusted through SPL */
|
|
memory@0 {
|
|
device_type = "memory";
|
|
reg = <0x00 0x80000000 0x01 0x00000000>; /* 4G */
|
|
numa-node-id = <0>;
|
|
};
|
|
|
|
reserved-memory {
|
|
#address-cells = <2>;
|
|
#size-cells = <2>;
|
|
ranges;
|
|
|
|
linux,cma {
|
|
compatible = "shared-dma-pool";
|
|
reusable;
|
|
size = <0x00 0x40000000>;
|
|
alloc-ranges = <0x00 0x90000000 0x00 0x40000000>;
|
|
linux,cma-default;
|
|
};
|
|
|
|
memory@1c000000 {
|
|
reg = <0x00 0x1c000000 0x00 0x2000000>;
|
|
no-map;
|
|
};
|
|
|
|
framebuffer: framebuffer@10000000 {
|
|
reg = <0x01 0x00 0x00 0x5000000>;
|
|
no-map;
|
|
};
|
|
|
|
npu_mmu_memory@130000000 {
|
|
reg = <0x01 0x30000000 0x00 0x04000000>;
|
|
no-map;
|
|
};
|
|
|
|
memblock-memory@17b800000 {
|
|
reg = <0x01 0x7b800000 0x00 0x04000000>;
|
|
no-map;
|
|
};
|
|
};
|
|
|
|
Sound_Card@0 {
|
|
compatible = "simple-audio-card";
|
|
simple-audio-card,name = "Sound-Card-I2S0";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
status = "okay";
|
|
|
|
SOUND_CARD_LINK(0, i2s, i2s1, 0, es8156_dac0, 0); /* I2S1 <-> es8156_dac0 */
|
|
SOUND_CARD_LINK(1, i2s, i2s1, 0, es7210_adc0, 0); /* I2S1 <-> es7210_adc0 */
|
|
};
|
|
|
|
Sound_Card@1 {
|
|
compatible = "simple-audio-card";
|
|
simple-audio-card,name = "Sound-Card-I2S1";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
status = "disabled";
|
|
|
|
simple-audio-card,widgets = "Speaker", "Speaker";
|
|
simple-audio-card,routing =
|
|
"Speaker", "AW87565_PA2 VO",
|
|
"AW87565_PA2 IN", "ES8156_DAC1 LOUT";
|
|
simple-audio-card,aux-devs = <&audio_aw87565_pa2>;
|
|
SOUND_CARD_LINK(0, i2s, i2s1, 0, es8156_dac1, 0);
|
|
SOUND_CARD_LINK(1, i2s, i2s1, 0, es7210_adc1, 0);
|
|
};
|
|
|
|
wcn_wifi: wireless-wlan {
|
|
compatible = "wlan-platdata";
|
|
WIFI,poweren-gpios = <&aw9535_1 11 GPIO_ACTIVE_HIGH>,
|
|
<&aw9535_1 12 GPIO_ACTIVE_HIGH>,
|
|
<&gpio0_porta 14 GPIO_ACTIVE_HIGH>;
|
|
power_on_after_init;
|
|
power_on_when_resume;
|
|
status = "okay";
|
|
};
|
|
|
|
wcn_bt: wireless-bluetooth {
|
|
compatible = "bluetooth-platdata";
|
|
BT,power-gpios = <&ao_gpio1_porta 4 GPIO_ACTIVE_HIGH>,
|
|
<&aw9535_1 15 GPIO_ACTIVE_HIGH>;
|
|
status = "okay";
|
|
};
|
|
|
|
/* The bootargs in U-Boot will override the configuration set here. */
|
|
chosen {
|
|
stdout-path = "serial4";
|
|
};
|
|
|
|
lcd0_backlight: pwm-backlight@0 {
|
|
compatible = "pwm-backlight";
|
|
status = "okay";
|
|
pwms = <&pwm1 2 100000 0>;
|
|
brightness-levels = <0 4 8 16 32 64 128 255>;
|
|
default-brightness-level = <7>;
|
|
enable-gpios = <&aw9535_1 15 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
reg_vdd33_lcd0: regulator-vdd33-lcd0 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "lcd0_vdd33";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
gpio = <&aw9535_1 5 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
|
|
reg_vddtp33_lcd0: regulator-vddtp33-lcd0 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "lcd0_vddtp33";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
gpio = <&aw9535_1 14 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
};
|
|
|
|
&aon {
|
|
regulators {
|
|
compatible = "zhihe,a210-aon-regulator";
|
|
|
|
avdd33_emmc_reg: avdd33_emmc {
|
|
regulator-name = "avdd33_emmc";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
avdd33_usb2_reg: avdd33_usb2 {
|
|
regulator-name = "avdd33_usb2";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd08_aon_reg: dvdd08_aon {
|
|
regulator-name = "dvdd08_aon";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
avdd18_aon_reg: avdd18_aon {
|
|
regulator-name = "avdd18_aon";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
avdd18_emmc_usb2_reg: avdd18_emmc_usb2 {
|
|
regulator-name = "avdd18_emmc_usb2";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
avdd18_emmc_peri_reg: avdd18_emmc_peri {
|
|
regulator-name = "avdd18_emmc_peri";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
avdd18_top_reg: avdd18_top {
|
|
regulator-name = "avdd18_top";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
avdd18_pll_reg: avdd18_pll {
|
|
regulator-name = "avdd18_pll";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
avdd18_reg: avdd18 {
|
|
regulator-name = "avdd18";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd18_ddr_vaa_reg: dvdd18_ddr_vaa {
|
|
regulator-name = "dvdd18_ddr_vaa";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
p3v3_reg: p3v3 {
|
|
regulator-name = "p3v3";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd08_top_reg: dvdd08_top {
|
|
regulator-name = "dvdd08_top";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd06_ddr_vddqlp_reg: dvdd06_ddr_vddqlp {
|
|
regulator-name = "dvdd06_ddr_vddqlp";
|
|
regulator-type = "voltage";
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd08_ddr_reg: dvdd08_ddr {
|
|
regulator-name = "dvdd08_ddr";
|
|
regulator-type = "voltage";
|
|
regulator-settling-time-us = <1000>;
|
|
regulator-min-microvolt = <750000>;
|
|
regulator-max-microvolt = <800000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd_cpu_reg: dvdd_cpu {
|
|
regulator-name = "dvdd_cpu";
|
|
regulator-type = "voltage";
|
|
regulator-settling-time-us = <1000>;
|
|
regulator-min-microvolt = <600000>;
|
|
regulator-max-microvolt = <1000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvddm_cpu_reg: dvddm_cpu {
|
|
regulator-name = "dvddm_cpu";
|
|
regulator-type = "voltage";
|
|
regulator-settling-time-us = <1000>;
|
|
regulator-min-microvolt = <800000>;
|
|
regulator-max-microvolt = <1000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd_vp_reg: dvdd_vp {
|
|
regulator-name = "dvdd_vp";
|
|
regulator-type = "voltage";
|
|
regulator-settling-time-us = <1000>;
|
|
regulator-min-microvolt = <750000>;
|
|
regulator-max-microvolt = <800000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd_npu_vip_reg: dvdd_npu_vip {
|
|
regulator-name = "dvdd_npu_vip";
|
|
regulator-type = "voltage";
|
|
regulator-settling-time-us = <1000>;
|
|
regulator-min-microvolt = <750000>;
|
|
regulator-max-microvolt = <1000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd_cpu_p_reg: dvdd_cpu_p {
|
|
regulator-name = "dvdd_cpu_p";
|
|
regulator-type = "voltage";
|
|
regulator-settling-time-us = <1000>;
|
|
regulator-min-microvolt = <800000>;
|
|
regulator-max-microvolt = <1000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
dvdd_gpu_reg: dvdd_gpu {
|
|
regulator-name = "dvdd_gpu";
|
|
regulator-type = "voltage";
|
|
regulator-settling-time-us = <1000>;
|
|
regulator-min-microvolt = <750000>;
|
|
regulator-max-microvolt = <800000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
};
|
|
};
|
|
|
|
&aon_padctrl {
|
|
rtc_pins: rtc {
|
|
rtc-pins {
|
|
pins = "AOGPIO0_27";
|
|
function = "aogpio0";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-enable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
aoi2c1_pins: aoi2c1-0 {
|
|
i2c-pins {
|
|
pins = "AOI2C1_SCL", "AOI2C1_SDA";
|
|
function = "aoi2c1";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&peri1_padctrl {
|
|
gmac0_pins: gmac0-0 {
|
|
txclk-pins {
|
|
pins = "GPIO0_0", /* GMAC0_TX_CLK */
|
|
"GPIO0_12"; /* GMAC0_MDC */
|
|
function = "gmac0";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
|
|
tx-pins {
|
|
pins = "GPIO0_2", /* GMAC0_TXEN */
|
|
"GPIO0_3", /* GMAC0_TXD0 */
|
|
"GPIO0_4", /* GMAC0_TXD1 */
|
|
"GPIO0_5", /* GMAC0_TXD2 */
|
|
"GPIO0_6"; /* GMAC0_TXD3 */
|
|
function = "gmac0";
|
|
bias-disable;
|
|
drive-strength = <20>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
|
|
rx-pins {
|
|
pins = "GPIO0_1", /* GMAC0_RX_CLK */
|
|
"GPIO0_7", /* GMAC0_RXDV */
|
|
"GPIO0_8", /* GMAC0_RXD0 */
|
|
"GPIO0_9", /* GMAC0_RXD1 */
|
|
"GPIO0_10", /* GMAC0_RXD2 */
|
|
"GPIO0_11", /* GMAC0_RXD3 */
|
|
"GPIO0_13"; /* GMAC0_MDIO */
|
|
function = "gmac0";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-enable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
qspi0_pins: qspi0-0 {
|
|
qspi-pins {
|
|
pins = "GPIO0_18", "GPIO0_20", "GPIO0_21", "GPIO0_22", "GPIO0_23";
|
|
function = "qspi0";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
can0_pins: can0-0 {
|
|
tx-pins {
|
|
pins = "GPIO0_25";
|
|
function = "can0";
|
|
bias-disable;
|
|
drive-strength = <5>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <1>;
|
|
};
|
|
|
|
rx-pins {
|
|
pins = "GPIO0_24";
|
|
function = "can0";
|
|
bias-disable;
|
|
drive-strength = <1>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
pcie_x1_pins: pcie_x1-1 {
|
|
pcie_x1-pins {
|
|
pins = "GPIO0_18", "GPIO0_19", "GPIO0_20", "GPIO0_21";
|
|
function = "pcie_x1";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
pcie_x4_pins: pcie_x4-1 {
|
|
pcie_x4-pins {
|
|
pins = "GPIO0_28", "GPIO0_29", "GPIO0_31";
|
|
function = "pcie_x4";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
pwm0_pins: pwm0-1 {
|
|
pwm0-pins {
|
|
pins = "GPIO0_30"; // PWM0_CH2
|
|
function = "pwm0";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
gmac1_pins: gmac1-0 {
|
|
txclk-pins {
|
|
pins = "GPIO1_2", /* GMAC1_TX_CLK */
|
|
"GPIO1_14"; /* GMAC1_MDC */
|
|
function = "gmac1";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
tx-pins {
|
|
pins = "GPIO1_4", /* GMAC1_TXEN */
|
|
"GPIO1_5", /* GMAC1_TXD0 */
|
|
"GPIO1_6", /* GMAC1_TXD1 */
|
|
"GPIO1_7", /* GMAC1_TXD2 */
|
|
"GPIO1_8"; /* GMAC1_TXD3 */
|
|
function = "gmac1";
|
|
bias-disable;
|
|
drive-strength = <20>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
rx-pins {
|
|
pins = "GPIO1_3", /* GMAC1_RX_CLK */
|
|
"GPIO1_9", /* GMAC1_RXDV */
|
|
"GPIO1_10", /* GMAC1_RXD0 */
|
|
"GPIO1_11", /* GMAC1_RXD1 */
|
|
"GPIO1_12", /* GMAC1_RXD2 */
|
|
"GPIO1_13", /* GMAC1_RXD3 */
|
|
"GPIO1_15"; /* GMAC1_MDIO */
|
|
function = "gmac1";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-enable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
sdhci_pins: sdhci0-1 {
|
|
sd-pins {
|
|
pins = "GPIO1_1";
|
|
function = "sdio";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
usb3_pins: usb3-1 {
|
|
usb3-pins {
|
|
pins = "GPIO0_27";
|
|
function = "gpio0";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&peri2_padctrl {
|
|
uart4_pins: uart4-0 {
|
|
tx-pins {
|
|
pins = "GPIO2_0";
|
|
function = "uart4";
|
|
bias-disable;
|
|
drive-strength = <3>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
|
|
rx-pins {
|
|
pins = "GPIO2_1";
|
|
function = "uart4";
|
|
bias-disable;
|
|
drive-strength = <1>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
i2c5_pins: i2c5-1 {
|
|
i2c-pins {
|
|
pins = "GPIO2_28", "GPIO2_29";
|
|
function = "i2c5";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
uart5_pins: uart5-1 {
|
|
tx-pins {
|
|
pins = "GPIO2_18", "GPIO3_10"; // TXD, RTSN
|
|
function = "uart5";
|
|
bias-disable;
|
|
drive-strength = <3>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
|
|
rx-pins {
|
|
pins = "GPIO2_19", "GPIO3_9"; // RXD, CTSN
|
|
function = "uart5";
|
|
bias-disable;
|
|
drive-strength = <1>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
i2c6_pins: i2c6-1 {
|
|
i2c-pins {
|
|
pins = "GPIO2_8", "GPIO2_9";
|
|
function = "i2c6";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
i2s1_pins: i2s1-0 {
|
|
i2s-pins {
|
|
pins = "GPIO2_2", "GPIO2_3", "GPIO2_4", "GPIO2_5", "GPIO2_6";
|
|
function = "i2s1";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
i2c7_pins: i2c7-0 {
|
|
i2c-pins {
|
|
pins = "GPIO2_10", "GPIO2_11";
|
|
function = "i2c7";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
i2c4_pins: i2c4-2 {
|
|
i2c-pins {
|
|
pins = "GPIO2_26", "GPIO2_27";
|
|
function = "i2c4";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
pwm1_pins: pwm1-1 {
|
|
pwm1-pins {
|
|
pins = "GPIO2_12"; // PWM1_CH2
|
|
function = "pwm1";
|
|
bias-disable;
|
|
drive-strength = <13>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
hdmi_pins: hdmi-0 {
|
|
hdmi-pins {
|
|
pins = "GPIO2_25", "GPIO2_30", "GPIO2_31";
|
|
function = "hdmi";
|
|
bias-disable;
|
|
drive-strength = <3>;
|
|
input-enable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
sen_vclk_pins: sen_vclk-1 {
|
|
sen_vclk-pins {
|
|
pins = "GPIO3_0", "GPIO3_1";
|
|
function = "sen_vclk";
|
|
bias-disable;
|
|
drive-strength = <7>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
uart8_pins: uart8-1 {
|
|
tx-pins {
|
|
pins = "GPIO3_2"; // TXD
|
|
function = "uart8";
|
|
bias-disable;
|
|
drive-strength = <3>;
|
|
input-disable;
|
|
input-schmitt-disable;
|
|
slew-rate = <0>;
|
|
};
|
|
|
|
rx-pins {
|
|
pins = "GPIO3_3"; // RXD
|
|
function = "uart8";
|
|
bias-disable;
|
|
drive-strength = <1>;
|
|
input-enable;
|
|
input-schmitt-enable;
|
|
slew-rate = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&gmac0 {
|
|
phy-mode = "rgmii-id";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&gmac0_pins>;
|
|
rx-clk-delay = <0x00>; /* for RGMII */
|
|
tx-clk-delay = <0x00>; /* for RGMII */
|
|
phy-handle = <&phy0>;
|
|
};
|
|
|
|
&mdio0 {
|
|
phy0: ethernet-phy@0 {
|
|
reg = <0x0>;
|
|
};
|
|
};
|
|
|
|
&gmac1 {
|
|
phy-mode = "rgmii-id";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&gmac1_pins>;
|
|
phy-handle = <&phy1>;
|
|
};
|
|
|
|
&mdio1 {
|
|
phy1: ethernet-phy@1 {
|
|
reg = <0x0>;
|
|
};
|
|
};
|
|
|
|
&qspi0 {
|
|
cs-gpios = <&gpio0_porta 19 0>;
|
|
rx-sample-dly = <2>;
|
|
spi-swap-data = <1>;
|
|
spi-max-frequency = <55000000>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&qspi0_pins>;
|
|
status = "disabled";
|
|
|
|
spi_norflash@0 {
|
|
compatible = "jedec,spi-nor";
|
|
spi-max-frequency = <55000000>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
spi-tx-bus-width = <4>;
|
|
spi-rx-bus-width = <4>;
|
|
reg = <0>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
&i2c4 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c4_pins>;
|
|
clock-frequency = <400000>;
|
|
|
|
pcf8563: rtc@51 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&rtc_pins>;
|
|
compatible = "nxp,pcf8563";
|
|
reg = <0x51>;
|
|
};
|
|
};
|
|
|
|
&i2c5 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c5_pins>;
|
|
clock-frequency = <400000>;
|
|
|
|
codec_es8156_dac0: es8156@8 {
|
|
compatible = "everest,es8156";
|
|
reg = <0x8>;
|
|
#sound-dai-cells = <1>;
|
|
sound-name-prefix = "ES8156_DAC0";
|
|
mclk-sclk-ratio = <4>;
|
|
audio-3v3-pwren-gpios = <&aw9535_1 1 GPIO_ACTIVE_HIGH>;
|
|
audio-1v8-pwren-gpios = <&aw9535_1 2 GPIO_ACTIVE_HIGH>;
|
|
audio-hp-ctl-gpios = <&aw9535_0 11 GPIO_ACTIVE_HIGH>;
|
|
status = "okay";
|
|
};
|
|
|
|
codec_es7210_adc0: es7210@40 {
|
|
compatible = "MicArray_0";
|
|
reg = <0x40>;
|
|
#sound-dai-cells = <1>;
|
|
work-mode = "ES7210_NORMAL_I2S";
|
|
channels-max = <2>;
|
|
mclk-sclk-ratio = <4>;
|
|
sound-name-prefix = "ES7210_ADC0";
|
|
status = "okay";
|
|
};
|
|
|
|
codec_es8156_dac1: es8156@9 {
|
|
compatible = "everest,es8156";
|
|
reg = <0x9>;
|
|
#sound-dai-cells = <1>;
|
|
sound-name-prefix = "ES8156_DAC1";
|
|
mclk-sclk-ratio = <4>;
|
|
status = "disabled";
|
|
};
|
|
|
|
codec_es7210_adc1: es7210@41 {
|
|
compatible = "MicArray_0";
|
|
reg = <0x41>;
|
|
#sound-dai-cells = <1>;
|
|
work-mode = "ES7210_NORMAL_I2S";
|
|
channels-max = <2>;
|
|
mclk-sclk-ratio = <4>;
|
|
sound-name-prefix = "ES7210_ADC1";
|
|
status = "disabled";
|
|
};
|
|
|
|
audio_aw87565_pa2: audio_pa2@5b {
|
|
compatible = "awinic,aw87565_pa";
|
|
reg = <0x5b>;
|
|
sound-name-prefix = "AW87565_PA2";
|
|
reset-gpios = <&aw9535_0 8 GPIO_ACTIVE_LOW>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
&i2c6 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c6_pins>;
|
|
clock-frequency = <400000>;
|
|
};
|
|
|
|
&i2c7 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c7_pins>;
|
|
clock-frequency = <400000>;
|
|
};
|
|
|
|
&aoi2c1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&aoi2c1_pins>;
|
|
clock-frequency = <400000>;
|
|
status = "okay";
|
|
|
|
aw9535_0: gpio@20 {
|
|
compatible = "awinic,aw9535";
|
|
reg = <0x20>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
ngpios = <16>;
|
|
interrupt-parent = <&ao_gpio1>;
|
|
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
|
gpio-line-names =
|
|
"CSI1_PWDN_IO0", "CSI1_RST_IO1", "CSI1_FSIN_IO2", "CSI0_PWDN_IO3", // index 0..3
|
|
"CSI0_RST_IO4", "CSI0_FSIN_IO5", "MINPCIE_1V5POWER_EN_I06", "MINPCIE_3V3_PWREN_I07",// index 4..7
|
|
"NULL_I08", "M2_SATA_EN_IO9", "AUDIO_ADC0_INT_IO10", "HP_CTL_H_IO11", // index 8..11
|
|
"PI6C557_EN_IO12","DISP_RST_IO13","M2_SATA_3V3_PWREN_IO14","MINPCIE_PERST_IO15"; // index 12..15
|
|
};
|
|
|
|
aw9535_1: gpio@21 {
|
|
compatible = "awinic,aw9535";
|
|
reg = <0x21>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
ngpios = <16>;
|
|
gpio-line-names =
|
|
"PCIE_ETH_PERSTB_IO0", "AUDIO_3V3_PWREN_IO1", "AUDIO_1V8_PWREN_IO2", "MIPI_CSI0_PWREN_IO3", // index 0..3
|
|
"MIPI_CSI1_PWREN_IO4", "MIPI_TP_PWREN_IO5", "PCIE_ETH_3V3_PWREN_IO6", "NULL_IO7", // index 4..7
|
|
"USBCON_PWREN_IO8", "USBCON1_PWREN_IO9", "NULL_IO10", "SDIO_3V3_PWREN_IO11", // index 8..11
|
|
"SDIO_1V8_PWREN_IO12","PI6C557_PWREN_IO13","MIPI_DSI_PWREN_IO14","BL_EN_IO15"; // index 12..15
|
|
};
|
|
};
|
|
|
|
&uart4 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart4_pins>;
|
|
};
|
|
|
|
&uart5 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart5_pins>;
|
|
};
|
|
|
|
&uart8 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart8_pins>;
|
|
};
|
|
|
|
&rp3x1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pcie_x1_pins>;
|
|
minipcie-1v5-pwren-gpios = <&aw9535_0 6 GPIO_ACTIVE_HIGH>;
|
|
minipcie-3v3-pwren-gpios = <&aw9535_0 7 GPIO_ACTIVE_HIGH>;
|
|
minipcie-perst-gpios = <&aw9535_0 15 GPIO_ACTIVE_HIGH>;
|
|
pcie-clk-en-gpios = <&aw9535_0 12 GPIO_ACTIVE_HIGH>;
|
|
pcie-clk-pwren-gpios = <&aw9535_1 13 GPIO_ACTIVE_HIGH>;
|
|
status = "okay";
|
|
};
|
|
|
|
&dm3x4 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pcie_x4_pins>;
|
|
};
|
|
|
|
&audio_i2s1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2s1_pins>;
|
|
};
|
|
|
|
&adc {
|
|
vref-supply = <®_vref_1v8>;
|
|
#io-channel-cells = <1>;
|
|
sampling-frequency = <1000000>;
|
|
resolution = <12>;
|
|
};
|
|
|
|
&pwm0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pwm0_pins>;
|
|
};
|
|
|
|
&pwm1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pwm1_pins>;
|
|
};
|
|
|
|
&can0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&can0_pins>;
|
|
};
|
|
|
|
&hdmi_tx {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&hdmi_pins>;
|
|
};
|
|
|
|
&vidmem {
|
|
memory-region = <&framebuffer>;
|
|
};
|
|
|
|
&emmc {
|
|
max-frequency = <196608000>;
|
|
non-removable;
|
|
mmc-ddr-1_8v;
|
|
mmc-hs200-1_8v;
|
|
mmc-hs400-1_8v;
|
|
cap-mmc-highspeed;
|
|
io_fixed_1v8;
|
|
is_emmc;
|
|
no-sdio;
|
|
no-sd;
|
|
pull_up;
|
|
bus-width = <8>;
|
|
};
|
|
|
|
&sdhci0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&sdhci_pins>;
|
|
max-frequency = <196608000>;
|
|
cap-sd-highspeed;
|
|
bus-width = <4>;
|
|
sd-uhs-sdr104;
|
|
pull_up;
|
|
no-sd;
|
|
no-mmc;
|
|
non-removable;
|
|
io_fixed_1v8;
|
|
post-power-on-delay-ms = <200>;
|
|
wprtn_ignore;
|
|
wakeup-source;
|
|
};
|
|
|
|
&usb20_zhihe {
|
|
usb21-pwren-gpios = <&aw9535_1 8 GPIO_ACTIVE_HIGH>;
|
|
usb20-pwren-gpios = <&aw9535_1 9 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
&usb3 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&usb3_pins>;
|
|
typec-pwren-gpios = <&gpio0_porta 27 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
&sata {
|
|
m2-sata-3v3-pwren-gpios = <&aw9535_0 14 GPIO_ACTIVE_HIGH>;
|
|
m2-sata-en-gpios = <&aw9535_0 9 GPIO_ACTIVE_HIGH>;
|
|
sata-clk-en-gpios = <&aw9535_0 12 GPIO_ACTIVE_HIGH>;
|
|
sata-clk-pwren-gpios = <&aw9535_1 13 GPIO_ACTIVE_HIGH>;
|
|
status = "disabled";
|
|
};
|
|
|
|
&mipi0_csi0 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&mipi0_csi1 {
|
|
//combination 4lane mode: host addr; aphy ctrl addr; bphy ctrl addr; mipi_ctrl addr
|
|
reg = < 0x00 0x06310000 0x0 0x10000
|
|
0x00 0x063a0020 0x0 0x4
|
|
0x00 0x063a0024 0x0 0x4
|
|
0x00 0x063a0028 0x0 0x4>;
|
|
phy_name = "CSI_4LANE"; //combination 4lane
|
|
};
|
|
|
|
//config dsi display: dpu_disp0->dup_enc0->dsi0->lcd_plane
|
|
|
|
&dpu_enc0 {
|
|
status = "disabled";
|
|
ports {
|
|
/* output */
|
|
port@1 {
|
|
reg = <1>;
|
|
enc0_out: endpoint {
|
|
remote-endpoint = <&dsi0_in>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&dhost_0 {
|
|
status = "disabled";
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
port@0 {
|
|
reg = <0>;
|
|
dsi0_in: endpoint {
|
|
remote-endpoint = <&enc0_out>;
|
|
};
|
|
};
|
|
port@1 {
|
|
reg = <1>;
|
|
dsi0_out: endpoint {
|
|
remote-endpoint = <&panel0_in>;
|
|
};
|
|
};
|
|
};
|
|
|
|
panel0@0 {
|
|
compatible = "jadard,jd9365da-h3";
|
|
reg = <0>;
|
|
backlight = <&lcd0_backlight>;
|
|
reset-gpio = <&aw9535_0 13 0>; /* active low */
|
|
hsvcc-supply = <®_vdd33_lcd0>;
|
|
vspn3v3-supply = <®_vddtp33_lcd0>;
|
|
|
|
port {
|
|
panel0_in: endpoint {
|
|
remote-endpoint = <&dsi0_out>;
|
|
};
|
|
};
|
|
};
|
|
};
|