kernel_samsung_a53x/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts
2024-06-15 16:25:47 -03:00

1121 lines
31 KiB
Text
Executable file

/dts-v1/;
/ {
compatible = "hisilicon,hi3670-hikey970", "hisilicon,hi3670";
interrupt-parent = <0x01>;
#address-cells = <0x02>;
#size-cells = <0x02>;
model = "HiKey970";
psci {
compatible = "arm,psci-0.2";
method = "smc";
};
cpus {
#address-cells = <0x02>;
#size-cells = <0x00>;
cpu-map {
cluster0 {
core0 {
cpu = <0x02>;
};
core1 {
cpu = <0x03>;
};
core2 {
cpu = <0x04>;
};
core3 {
cpu = <0x05>;
};
};
cluster1 {
core0 {
cpu = <0x06>;
};
core1 {
cpu = <0x07>;
};
core2 {
cpu = <0x08>;
};
core3 {
cpu = <0x09>;
};
};
};
cpu@0 {
compatible = "arm,cortex-a53";
device_type = "cpu";
reg = <0x00 0x00>;
enable-method = "psci";
phandle = <0x02>;
};
cpu@1 {
compatible = "arm,cortex-a53";
device_type = "cpu";
reg = <0x00 0x01>;
enable-method = "psci";
phandle = <0x03>;
};
cpu@2 {
compatible = "arm,cortex-a53";
device_type = "cpu";
reg = <0x00 0x02>;
enable-method = "psci";
phandle = <0x04>;
};
cpu@3 {
compatible = "arm,cortex-a53";
device_type = "cpu";
reg = <0x00 0x03>;
enable-method = "psci";
phandle = <0x05>;
};
cpu@100 {
compatible = "arm,cortex-a73";
device_type = "cpu";
reg = <0x00 0x100>;
enable-method = "psci";
phandle = <0x06>;
};
cpu@101 {
compatible = "arm,cortex-a73";
device_type = "cpu";
reg = <0x00 0x101>;
enable-method = "psci";
phandle = <0x07>;
};
cpu@102 {
compatible = "arm,cortex-a73";
device_type = "cpu";
reg = <0x00 0x102>;
enable-method = "psci";
phandle = <0x08>;
};
cpu@103 {
compatible = "arm,cortex-a73";
device_type = "cpu";
reg = <0x00 0x103>;
enable-method = "psci";
phandle = <0x09>;
};
};
interrupt-controller@e82b0000 {
compatible = "arm,gic-400";
reg = <0x00 0xe82b1000 0x00 0x1000 0x00 0xe82b2000 0x00 0x2000 0x00 0xe82b4000 0x00 0x2000 0x00 0xe82b6000 0x00 0x2000>;
#interrupt-cells = <0x03>;
#address-cells = <0x00>;
interrupts = <0x01 0x09 0xff04>;
interrupt-controller;
phandle = <0x01>;
};
timer {
compatible = "arm,armv8-timer";
interrupt-parent = <0x01>;
interrupts = <0x01 0x0d 0xff08 0x01 0x0e 0xff08 0x01 0x0b 0xff08 0x01 0x0a 0xff08>;
clock-frequency = <0x1d4c00>;
};
soc {
compatible = "simple-bus";
#address-cells = <0x02>;
#size-cells = <0x02>;
ranges;
crg_ctrl@fff35000 {
compatible = "hisilicon,hi3670-crgctrl", "syscon";
reg = <0x00 0xfff35000 0x00 0x1000>;
#clock-cells = <0x01>;
phandle = <0x0a>;
};
crg_rst_controller {
compatible = "hisilicon,hi3670-reset", "hisilicon,hi3660-reset";
#reset-cells = <0x02>;
hisi,rst-syscon = <0x0a>;
phandle = <0x1a>;
};
pctrl@e8a09000 {
compatible = "hisilicon,hi3670-pctrl", "syscon";
reg = <0x00 0xe8a09000 0x00 0x1000>;
#clock-cells = <0x01>;
phandle = <0x28>;
};
crg_ctrl@fff34000 {
compatible = "hisilicon,hi3670-pmuctrl", "syscon";
reg = <0x00 0xfff34000 0x00 0x1000>;
#clock-cells = <0x01>;
phandle = <0x29>;
};
sctrl@fff0a000 {
compatible = "hisilicon,hi3670-sctrl", "syscon";
reg = <0x00 0xfff0a000 0x00 0x1000>;
#clock-cells = <0x01>;
phandle = <0x18>;
};
iomcu@ffd7e000 {
compatible = "hisilicon,hi3670-iomcu", "syscon";
reg = <0x00 0xffd7e000 0x00 0x1000>;
#clock-cells = <0x01>;
phandle = <0x2a>;
};
media1_crgctrl@e87ff000 {
compatible = "hisilicon,hi3670-media1-crg", "syscon";
reg = <0x00 0xe87ff000 0x00 0x1000>;
#clock-cells = <0x01>;
phandle = <0x2b>;
};
media2_crgctrl@e8900000 {
compatible = "hisilicon,hi3670-media2-crg", "syscon";
reg = <0x00 0xe8900000 0x00 0x1000>;
#clock-cells = <0x01>;
phandle = <0x2c>;
};
serial@fdf02000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x00 0xfdf02000 0x00 0x1000>;
interrupts = <0x00 0x4a 0x04>;
clocks = <0x0a 0xb2 0x0a 0x0d>;
clock-names = "uartclk", "apb_pclk";
pinctrl-names = "default";
pinctrl-0 = <0x0b 0x0c>;
status = "okay";
label = "HS-UART0";
phandle = <0x2d>;
};
serial@fdf00000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x00 0xfdf00000 0x00 0x1000>;
interrupts = <0x00 0x4b 0x04>;
clocks = <0x0a 0xaa 0x0a 0x0d>;
clock-names = "uartclk", "apb_pclk";
pinctrl-names = "default";
status = "disabled";
phandle = <0x2e>;
};
serial@fdf03000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x00 0xfdf03000 0x00 0x1000>;
interrupts = <0x00 0x4c 0x04>;
clocks = <0x0a 0xae 0x0a 0x0d>;
clock-names = "uartclk", "apb_pclk";
pinctrl-names = "default";
pinctrl-0 = <0x0d 0x0e>;
status = "okay";
label = "LS-UART0";
phandle = <0x2f>;
};
serial@ffd74000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x00 0xffd74000 0x00 0x1000>;
interrupts = <0x00 0x72 0x04>;
clocks = <0x0a 0x05 0x0a 0x0d>;
clock-names = "uartclk", "apb_pclk";
pinctrl-names = "default";
pinctrl-0 = <0x0f 0x10>;
status = "disabled";
phandle = <0x30>;
};
serial@fdf01000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x00 0xfdf01000 0x00 0x1000>;
interrupts = <0x00 0x4d 0x04>;
clocks = <0x0a 0xab 0x0a 0x0d>;
clock-names = "uartclk", "apb_pclk";
pinctrl-names = "default";
pinctrl-0 = <0x11 0x12>;
status = "disabled";
phandle = <0x31>;
};
serial@fdf05000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x00 0xfdf05000 0x00 0x1000>;
interrupts = <0x00 0x4e 0x04>;
clocks = <0x0a 0xaf 0x0a 0x0d>;
clock-names = "uartclk", "apb_pclk";
pinctrl-names = "default";
status = "disabled";
phandle = <0x32>;
};
serial@fff32000 {
compatible = "arm,pl011", "arm,primecell";
reg = <0x00 0xfff32000 0x00 0x1000>;
interrupts = <0x00 0x4f 0x04>;
clocks = <0x0a 0x0f 0x0a 0x0d>;
clock-names = "uartclk", "apb_pclk";
pinctrl-names = "default";
pinctrl-0 = <0x13 0x14>;
status = "okay";
label = "LS-UART1";
phandle = <0x33>;
};
gpio@e8a0b000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a0b000 0x00 0x1000>;
interrupts = <0x00 0x54 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x01 0x00 0x01 0x15 0x03 0x01 0x05>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x7d>;
clock-names = "apb_pclk";
gpio-line-names = "", "TP901", "", "GPIO_003_USB_HUB_RESET_N", "NC", "[AP_GPS_REF_CLK]", "[I2C3_SCL]", "[I2C3_SDA]";
phandle = <0x34>;
};
gpio@e8a0c000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a0c000 0x00 0x1000>;
interrupts = <0x00 0x55 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x7e>;
clock-names = "apb_pclk";
gpio-line-names = "[UART0_CTS]", "[UART0_RTS]", "[UART0_TXD]", "[UART0_RXD]", "[USER_LED5]", "GPIO-I", "[USER_LED3]", "[USER_LED4]";
phandle = <0x35>;
};
gpio@e8a0d000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a0d000 0x00 0x1000>;
interrupts = <0x00 0x56 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x01 0x06 0x07>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x7f>;
clock-names = "apb_pclk";
gpio-line-names = "GPIO-G", "[CSI0_MCLK]", "[CSI1_MCLK]", "GPIO_019_BT_ACTIVE", "[I2C2_SCL]", "[I2C2_SDA]", "[I2C3_SCL]", "[I2C3_SDA]";
phandle = <0x36>;
};
gpio@e8a0e000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a0e000 0x00 0x1000>;
interrupts = <0x00 0x57 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x0d 0x04 0x15 0x07 0x11 0x01>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x80>;
clock-names = "apb_pclk";
gpio-line-names = "GPIO_024_WIFI_ACTIVE", "GPIO_025_PERST_M.2", "[I2C4_SCL]", "[I2C4_SDA]", "NC", "GPIO-H", "[USER_LED1]", "GPIO-L";
phandle = <0x37>;
};
gpio@e8a0f000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a0f000 0x00 0x1000>;
interrupts = <0x00 0x58 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x12 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x81>;
clock-names = "apb_pclk";
gpio-line-names = "GPIO-K", "GPIO_033_PMU1_EN", "GPIO_034_USBSW_SEL", "[SD_DAT1]", "[SD_DAT2]", "[UART1_RXD]", "[UART1_TXD]", "[SOC_GPS_UART3_CTS_N]";
phandle = <0x38>;
};
gpio@e8a10000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a10000 0x00 0x1000>;
interrupts = <0x00 0x59 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x1a 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x82>;
clock-names = "apb_pclk";
gpio-line-names = "[SOC_GPS_UART3_RTS_N]", "[SOC_GPS_UART3_RXD]", "[SOC_GPS_UART3_TXD]", "[SOC_BT_UART4_CTS_N]", "[SOC_BT_UART4_RTS_N]", "[SOC_BT_UART4_RXD]", "[SOC_BT_UART4_TXD]", "NC";
phandle = <0x39>;
};
gpio@e8a11000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a11000 0x00 0x1000>;
interrupts = <0x00 0x5a 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x01 0x22 0x07>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x83>;
clock-names = "apb_pclk";
gpio-line-names = "NC", "GPIO_049_USER_LED6", "GPIO_050_CAN_RST", "GPIO_051_WIFI_EN", "GPIO-D", "GPIO-J", "GPIO_054_BT_EN", "[GPIO_055_SEL]";
phandle = <0x27>;
};
gpio@e8a12000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a12000 0x00 0x1000>;
interrupts = <0x00 0x5b 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x29 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x84>;
clock-names = "apb_pclk";
gpio-line-names = "[PCIE_PERST_L]", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
phandle = <0x3a>;
};
gpio@e8a13000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a13000 0x00 0x1000>;
interrupts = <0x00 0x5c 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x31 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x85>;
clock-names = "apb_pclk";
gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
phandle = <0x3b>;
};
gpio@e8a14000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a14000 0x00 0x1000>;
interrupts = <0x00 0x5d 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x39 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x86>;
clock-names = "apb_pclk";
gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
phandle = <0x3c>;
};
gpio@e8a15000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a15000 0x00 0x1000>;
interrupts = <0x00 0x5e 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x41 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x87>;
clock-names = "apb_pclk";
gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
phandle = <0x3d>;
};
gpio@e8a16000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a16000 0x00 0x1000>;
interrupts = <0x00 0x5f 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x49 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x88>;
clock-names = "apb_pclk";
gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
phandle = <0x3e>;
};
gpio@e8a17000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a17000 0x00 0x1000>;
interrupts = <0x00 0x60 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x15 0x00 0x51 0x01>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x89>;
clock-names = "apb_pclk";
gpio-line-names = [4e 43 00 00 00 00 00 00 00 00];
phandle = <0x3f>;
};
gpio@e8a18000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a18000 0x00 0x1000>;
interrupts = <0x00 0x61 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x8a>;
clock-names = "apb_pclk";
gpio-line-names = <0x00 0x00>;
phandle = <0x40>;
};
gpio@e8a19000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a19000 0x00 0x1000>;
interrupts = <0x00 0x62 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x8b>;
clock-names = "apb_pclk";
gpio-line-names = <0x00 0x00>;
phandle = <0x41>;
};
gpio@e8a1a000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a1a000 0x00 0x1000>;
interrupts = <0x00 0x63 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x8c>;
clock-names = "apb_pclk";
gpio-line-names = <0x00 0x00>;
phandle = <0x42>;
};
gpio@e8a1b000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a1b000 0x00 0x1000>;
interrupts = <0x00 0x64 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x16 0x00 0x00 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x8d>;
clock-names = "apb_pclk";
gpio-line-names = "[WL_SDIO_CLK]", "[WL_SDIO_CMD]", "[WL_SDIO_DATA0]", "[WL_SDIO_DATA1]", "[WL_SDIO_DATA2]", "[WL_SDIO_DATA3]", "[ETH_ISOLATE]", "NC";
phandle = <0x43>;
};
gpio@e8a1c000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a1c000 0x00 0x1000>;
interrupts = <0x00 0x65 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x16 0x00 0x08 0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x8e>;
clock-names = "apb_pclk";
gpio-line-names = "[MINI1CLK_EN]", "NC", "", "", "", "", "", "";
phandle = <0x44>;
};
gpio@fff28000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff28000 0x00 0x1000>;
interrupts = <0x00 0x66 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x04 0x2a 0x04>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x12>;
clock-names = "apb_pclk";
gpio-line-names = "[SPI1_SCLK]", "[SPI1_DIN]", "[SPI1_DOUT]", "[SPI1_CS]", "[POWER_INT_N]", "[CDMA_GPS_SYNC]", "GPIO_150_PEX_INTA", "GPIO_151_CAN_INT";
phandle = <0x45>;
};
gpio@fff29000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff29000 0x00 0x1000>;
interrupts = <0x00 0x67 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x00 0x3d 0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x13>;
clock-names = "apb_pclk";
gpio-line-names = <0x00 0x00>;
phandle = <0x46>;
};
gpio@e8a1f000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a1f000 0x00 0x1000>;
interrupts = <0x00 0x68 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x19 0x00 0x00 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x8f>;
clock-names = "apb_pclk";
gpio-line-names = "[SD_CLK]", "[SD_CMD]", "[SD_DATA0]", "[SD_DATA1]", "[SD_DATA2]", "[SD_DATA3]", "GPIO_166_ETHCLK_EN", "GPIO_167_USER_LED2";
phandle = <0x47>;
};
gpio@e8a20000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xe8a20000 0x00 0x1000>;
interrupts = <0x00 0x69 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x19 0x00 0x08 0x04>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x0a 0x90>;
clock-names = "apb_pclk";
gpio-line-names = "GPIO_168_GPS_EN", "GPIO-C", "GPIO-E", "GPIO-B", "", "", "", "", "";
phandle = <0x48>;
};
gpio@fff0b000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff0b000 0x00 0x1000>;
interrupts = <0x00 0x6a 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x02 0x00 0x06>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x18>;
clock-names = "apb_pclk";
gpio-line-names = "[PMU_PWR_HOLD]", "GPIO_177_WL_WAKEUP_AP", "[JTAG_TCK]", "[JTAG_TMS]", "[JTAG_TDI]", "[JTAG_TMS]", "GPIO_182_FATAL_ERR", "NC";
phandle = <0x25>;
};
gpio@fff0c000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff0c000 0x00 0x1000>;
interrupts = <0x00 0x6b 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x00 0x06 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x19>;
clock-names = "apb_pclk";
gpio-line-names = "GPIO_184_JTAG_SEL", "GPIO-F", "[I2C0_SCL]", "[I2C0_SDA]", "[GPIO_188_I2C1_SCL]", "[GPIO_189_I2C1_SDA]", "[I2C1_SCL]", "[I2C2_SDA]";
phandle = <0x49>;
};
gpio@fff0d000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff0d000 0x00 0x1000>;
interrupts = <0x00 0x6c 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x00 0x0e 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x1a>;
clock-names = "apb_pclk";
gpio-line-names = "[SD_LED]", "NC", "[PCM_DI]", "[PCM_DO]", "[PCM_CLK]", "[PCM_FS]", "", "[I2S2_DO]";
phandle = <0x4a>;
};
gpio@fff0e000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff0e000 0x00 0x1000>;
interrupts = <0x00 0x6d 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x00 0x16 0x08>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x1b>;
clock-names = "apb_pclk";
gpio-line-names = "[I2S2_XCLK]", "[I2S2_XFS]", "GPIO_202_PERST_ETH", "GPIO_203_PWRON_DET", "GPIO_204_PMU1_IRQ_N", "GPIO_205_SD_DET", "GPIO_206_GPS_MOTION_INT", "GPIO_207_HDMI_SEL";
phandle = <0x1b>;
};
gpio@fff0f000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff0f000 0x00 0x1000>;
interrupts = <0x00 0x6e 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x00 0x1e 0x01>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x1c>;
clock-names = "apb_pclk";
gpio-line-names = "GPIO-A", "GPIO_209_VBUS_TYPEC", "NC", "NC", "NC", "[SPI0_SCLK]", "[SPI0_DIN]", "[SPI0_DOUT]";
phandle = <0x4b>;
};
gpio@fff10000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff10000 0x00 0x1000>;
interrupts = <0x00 0x6f 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x04 0x1f 0x04>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x1d>;
clock-names = "apb_pclk";
gpio-line-names = "[SPI0_CS]", "GPIO_217_HDMI_PD", "GPIO_218_GPS_WAKEUP_AP", "GPIO_219_M.2CLK_EN", "GPIO_220_PERST_MINI", "GPIO_221_CC_INT", "[PCIE_CLKREQ_L]", "NC";
phandle = <0x4c>;
};
gpio@fff1d000 {
compatible = "arm,pl061", "arm,primecell";
reg = <0x00 0xfff1d000 0x00 0x1000>;
interrupts = <0x00 0x8d 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
gpio-ranges = <0x17 0x01 0x23 0x07>;
interrupt-controller;
#interrupt-cells = <0x02>;
clocks = <0x18 0x1e>;
clock-names = "apb_pclk";
gpio-line-names = "[PMU0_INT]", "[SPMI_DATA]", "[SPMI_CLK]", "[CAN_SPI_CLK]", "[CAN_SPI_DI]", "[CAN_SPI_DO]", "[CAN_SPI_CS]", "GPIO_231_HDMI_INT";
phandle = <0x4d>;
};
ufs@ff3c0000 {
compatible = "hisilicon,hi3670-ufs", "jedec,ufs-2.1";
reg = <0x00 0xff3c0000 0x00 0x1000 0x00 0xff3e0000 0x00 0x1000>;
interrupt-parent = <0x01>;
interrupts = <0x00 0x116 0x04>;
clocks = <0x0a 0x17 0x0a 0x16>;
clock-names = "ref_clk", "phy_clk";
freq-table-hz = <0x00 0x00 0x00 0x00>;
resets = <0x1a 0x84 0x0c>;
reset-names = "rst";
phandle = <0x4e>;
};
dwmmc1@ff37f000 {
compatible = "hisilicon,hi3670-dw-mshc", "hisilicon,hi3660-dw-mshc";
reg = <0x00 0xff37f000 0x00 0x1000>;
#address-cells = <0x01>;
#size-cells = <0x00>;
interrupts = <0x00 0x8b 0x04>;
clocks = <0x0a 0x9f 0x0a 0xa0>;
clock-names = "ciu", "biu";
clock-frequency = <0x30d400>;
resets = <0x1a 0x94 0x12>;
reset-names = "reset";
hisilicon,peripheral-syscon = <0x18>;
card-detect-delay = <0xc8>;
status = "okay";
bus-width = <0x04>;
sd-uhs-sdr12;
sd-uhs-sdr25;
sd-uhs-sdr50;
sd-uhs-sdr104;
cap-sd-highspeed;
disable-wp;
cd-inverted;
cd-gpios = <0x1b 0x05 0x00>;
pinctrl-names = "default";
pinctrl-0 = <0x1c 0x1d 0x1e>;
vmmc-supply = <0x1f>;
vqmmc-supply = <0x20>;
phandle = <0x4f>;
};
dwmmc2@fc183000 {
compatible = "hisilicon,hi3670-dw-mshc", "hisilicon,hi3660-dw-mshc";
reg = <0x00 0xfc183000 0x00 0x1000>;
#address-cells = <0x01>;
#size-cells = <0x00>;
interrupts = <0x00 0x8c 0x04>;
clocks = <0x0a 0xa1 0x0a 0x95>;
clock-names = "ciu", "biu";
clock-frequency = <0x30d400>;
resets = <0x1a 0x94 0x14>;
reset-names = "reset";
card-detect-delay = <0xc8>;
status = "okay";
bus-width = <0x04>;
non-removable;
broken-cd;
cap-power-off-card;
pinctrl-names = "default";
pinctrl-0 = <0x21 0x22 0x23>;
vmmc-supply = <0x24>;
phandle = <0x50>;
wlcore@2 {
compatible = "ti,wl1837";
reg = <0x02>;
interrupt-parent = <0x25>;
interrupts = <0x01 0x01>;
phandle = <0x51>;
};
};
gpio-range {
#pinctrl-single,gpio-range-cells = <0x03>;
phandle = <0x26>;
};
pinmux@e896c000 {
compatible = "pinctrl-single";
reg = <0x00 0xe896c000 0x00 0x72c>;
#pinctrl-cells = <0x01>;
#gpio-range-cells = <0x03>;
pinctrl-single,register-width = <0x20>;
pinctrl-single,function-mask = <0x07>;
pinctrl-single,gpio-range = <0x26 0x00 0x52 0x00>;
phandle = <0x15>;
uart0_pmx_func {
pinctrl-single,pins = <0x54 0x02 0x58 0x02>;
phandle = <0x0b>;
};
uart2_pmx_func {
pinctrl-single,pins = <0x700 0x02 0x704 0x02 0x708 0x02 0x70c 0x02>;
phandle = <0x0d>;
};
uart3_pmx_func {
pinctrl-single,pins = <0x64 0x01 0x68 0x01 0x6c 0x01 0x70 0x01>;
phandle = <0x0f>;
};
uart4_pmx_func {
pinctrl-single,pins = <0x74 0x01 0x78 0x01 0x7c 0x01 0x80 0x01>;
phandle = <0x11>;
};
uart6_pmx_func {
pinctrl-single,pins = <0x5c 0x01 0x60 0x01>;
phandle = <0x13>;
};
};
pinmux@e896c800 {
compatible = "pinconf-single";
reg = <0x00 0xe896c800 0x00 0x72c>;
#pinctrl-cells = <0x01>;
pinctrl-single,register-width = <0x20>;
phandle = <0x52>;
uart0_cfg_func {
pinctrl-single,pins = <0x58 0x00 0x5c 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x00 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0x10 0xf0>;
phandle = <0x0c>;
};
uart2_cfg_func {
pinctrl-single,pins = <0x700 0x00 0x704 0x00 0x708 0x00 0x70c 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x00 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0x10 0xf0>;
phandle = <0x0e>;
};
uart3_cfg_func {
pinctrl-single,pins = <0x68 0x00 0x6c 0x00 0x70 0x00 0x74 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x00 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0x10 0xf0>;
phandle = <0x10>;
};
uart4_cfg_func {
pinctrl-single,pins = <0x78 0x00 0x7c 0x00 0x80 0x00 0x84 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x00 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0x10 0xf0>;
phandle = <0x12>;
};
uart6_cfg_func {
pinctrl-single,pins = <0x60 0x00 0x64 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x00 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0x00 0xf0>;
phandle = <0x14>;
};
};
pinmux@fc182000 {
compatible = "pinctrl-single";
reg = <0x00 0xfc182000 0x00 0x28>;
#gpio-range-cells = <0x03>;
#pinctrl-cells = <0x01>;
pinctrl-single,register-width = <0x20>;
pinctrl-single,function-mask = <0x07>;
pinctrl-single,gpio-range = <0x26 0x00 0x0a 0x00>;
phandle = <0x16>;
sdio_pmx_func {
pinctrl-single,pins = <0x00 0x01 0x04 0x01 0x08 0x01 0x0c 0x01 0x10 0x01 0x14 0x01>;
phandle = <0x21>;
};
};
pinmux@fc182800 {
compatible = "pinconf-single";
reg = <0x00 0xfc182800 0x00 0x28>;
#pinctrl-cells = <0x01>;
pinctrl-single,register-width = <0x20>;
phandle = <0x53>;
sdio_clk_cfg_func {
pinctrl-single,pins = <0x00 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x00 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0xf0 0xf0>;
phandle = <0x22>;
};
sdio_cfg_func {
pinctrl-single,pins = <0x04 0x00 0x08 0x00 0x0c 0x00 0x10 0x00 0x14 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x01 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0x80 0xf0>;
phandle = <0x23>;
};
};
pinmux@ff37e000 {
compatible = "pinctrl-single";
reg = <0x00 0xff37e000 0x00 0x30>;
#gpio-range-cells = <0x03>;
#pinctrl-cells = <0x01>;
pinctrl-single,register-width = <0x20>;
pinctrl-single,function-mask = <0x07>;
pinctrl-single,gpio-range = <0x26 0x00 0x0c 0x00>;
phandle = <0x19>;
sd_pmx_func {
pinctrl-single,pins = <0x00 0x01 0x04 0x01 0x08 0x01 0x0c 0x01 0x10 0x01 0x14 0x01>;
phandle = <0x1c>;
};
};
pinmux@ff37e800 {
compatible = "pinconf-single";
reg = <0x00 0xff37e800 0x00 0x30>;
#pinctrl-cells = <0x01>;
pinctrl-single,register-width = <0x20>;
phandle = <0x54>;
sd_clk_cfg_func {
pinctrl-single,pins = <0x00 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x00 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0xf0 0xf0>;
phandle = <0x1d>;
};
sd_cfg_func {
pinctrl-single,pins = <0x04 0x00 0x08 0x00 0x0c 0x00 0x10 0x00 0x14 0x00>;
pinctrl-single,bias-pulldown = <0x00 0x02 0x00 0x02>;
pinctrl-single,bias-pullup = <0x01 0x01 0x00 0x01>;
pinctrl-single,drive-strength = <0x80 0xf0>;
phandle = <0x1e>;
};
};
pinmux@fff11000 {
compatible = "pinctrl-single";
reg = <0x00 0xfff11000 0x00 0x73c>;
#gpio-range-cells = <0x03>;
#pinctrl-cells = <0x01>;
pinctrl-single,register-width = <0x20>;
pinctrl-single,function-mask = <0x07>;
pinctrl-single,gpio-range = <0x26 0x00 0x2e 0x00>;
phandle = <0x17>;
};
pinmux@fff11800 {
compatible = "pinconf-single";
reg = <0x00 0xfff11800 0x00 0x73c>;
#pinctrl-cells = <0x01>;
pinctrl-single,register-width = <0x20>;
phandle = <0x55>;
};
};
aliases {
mshc1 = "/soc/dwmmc1@ff37f000";
mshc2 = "/soc/dwmmc2@fc183000";
serial0 = "/soc/serial@fdf02000";
serial1 = "/soc/serial@fdf00000";
serial2 = "/soc/serial@fdf03000";
serial3 = "/soc/serial@ffd74000";
serial4 = "/soc/serial@fdf01000";
serial5 = "/soc/serial@fdf05000";
serial6 = "/soc/serial@fff32000";
};
chosen {
stdout-path = "serial6:115200n8";
};
memory@0 {
device_type = "memory";
reg = <0x00 0x00 0x00 0x00>;
};
regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <0x1b7740>;
regulator-max-microvolt = <0x1b7740>;
regulator-always-on;
phandle = <0x20>;
};
regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "fixed-3.3V";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
regulator-boot-on;
regulator-always-on;
phandle = <0x1f>;
};
wlan-en-1-8v {
compatible = "regulator-fixed";
regulator-name = "wlan-en-regulator";
regulator-min-microvolt = <0x1b7740>;
regulator-max-microvolt = <0x1b7740>;
gpio = <0x27 0x03 0x00>;
startup-delay-us = <0x11170>;
enable-active-high;
phandle = <0x24>;
};
__symbols__ {
cpu0 = "/cpus/cpu@0";
cpu1 = "/cpus/cpu@1";
cpu2 = "/cpus/cpu@2";
cpu3 = "/cpus/cpu@3";
cpu4 = "/cpus/cpu@100";
cpu5 = "/cpus/cpu@101";
cpu6 = "/cpus/cpu@102";
cpu7 = "/cpus/cpu@103";
gic = "/interrupt-controller@e82b0000";
crg_ctrl = "/soc/crg_ctrl@fff35000";
crg_rst = "/soc/crg_rst_controller";
pctrl = "/soc/pctrl@e8a09000";
pmuctrl = "/soc/crg_ctrl@fff34000";
sctrl = "/soc/sctrl@fff0a000";
iomcu = "/soc/iomcu@ffd7e000";
media1_crg = "/soc/media1_crgctrl@e87ff000";
media2_crg = "/soc/media2_crgctrl@e8900000";
uart0 = "/soc/serial@fdf02000";
uart1 = "/soc/serial@fdf00000";
uart2 = "/soc/serial@fdf03000";
uart3 = "/soc/serial@ffd74000";
uart4 = "/soc/serial@fdf01000";
uart5 = "/soc/serial@fdf05000";
uart6 = "/soc/serial@fff32000";
gpio0 = "/soc/gpio@e8a0b000";
gpio1 = "/soc/gpio@e8a0c000";
gpio2 = "/soc/gpio@e8a0d000";
gpio3 = "/soc/gpio@e8a0e000";
gpio4 = "/soc/gpio@e8a0f000";
gpio5 = "/soc/gpio@e8a10000";
gpio6 = "/soc/gpio@e8a11000";
gpio7 = "/soc/gpio@e8a12000";
gpio8 = "/soc/gpio@e8a13000";
gpio9 = "/soc/gpio@e8a14000";
gpio10 = "/soc/gpio@e8a15000";
gpio11 = "/soc/gpio@e8a16000";
gpio12 = "/soc/gpio@e8a17000";
gpio13 = "/soc/gpio@e8a18000";
gpio14 = "/soc/gpio@e8a19000";
gpio15 = "/soc/gpio@e8a1a000";
gpio16 = "/soc/gpio@e8a1b000";
gpio17 = "/soc/gpio@e8a1c000";
gpio18 = "/soc/gpio@fff28000";
gpio19 = "/soc/gpio@fff29000";
gpio20 = "/soc/gpio@e8a1f000";
gpio21 = "/soc/gpio@e8a20000";
gpio22 = "/soc/gpio@fff0b000";
gpio23 = "/soc/gpio@fff0c000";
gpio24 = "/soc/gpio@fff0d000";
gpio25 = "/soc/gpio@fff0e000";
gpio26 = "/soc/gpio@fff0f000";
gpio27 = "/soc/gpio@fff10000";
gpio28 = "/soc/gpio@fff1d000";
ufs = "/soc/ufs@ff3c0000";
dwmmc1 = "/soc/dwmmc1@ff37f000";
dwmmc2 = "/soc/dwmmc2@fc183000";
wlcore = "/soc/dwmmc2@fc183000/wlcore@2";
range = "/soc/gpio-range";
pmx0 = "/soc/pinmux@e896c000";
uart0_pmx_func = "/soc/pinmux@e896c000/uart0_pmx_func";
uart2_pmx_func = "/soc/pinmux@e896c000/uart2_pmx_func";
uart3_pmx_func = "/soc/pinmux@e896c000/uart3_pmx_func";
uart4_pmx_func = "/soc/pinmux@e896c000/uart4_pmx_func";
uart6_pmx_func = "/soc/pinmux@e896c000/uart6_pmx_func";
pmx2 = "/soc/pinmux@e896c800";
uart0_cfg_func = "/soc/pinmux@e896c800/uart0_cfg_func";
uart2_cfg_func = "/soc/pinmux@e896c800/uart2_cfg_func";
uart3_cfg_func = "/soc/pinmux@e896c800/uart3_cfg_func";
uart4_cfg_func = "/soc/pinmux@e896c800/uart4_cfg_func";
uart6_cfg_func = "/soc/pinmux@e896c800/uart6_cfg_func";
pmx5 = "/soc/pinmux@fc182000";
sdio_pmx_func = "/soc/pinmux@fc182000/sdio_pmx_func";
pmx6 = "/soc/pinmux@fc182800";
sdio_clk_cfg_func = "/soc/pinmux@fc182800/sdio_clk_cfg_func";
sdio_cfg_func = "/soc/pinmux@fc182800/sdio_cfg_func";
pmx7 = "/soc/pinmux@ff37e000";
sd_pmx_func = "/soc/pinmux@ff37e000/sd_pmx_func";
pmx8 = "/soc/pinmux@ff37e800";
sd_clk_cfg_func = "/soc/pinmux@ff37e800/sd_clk_cfg_func";
sd_cfg_func = "/soc/pinmux@ff37e800/sd_cfg_func";
pmx1 = "/soc/pinmux@fff11000";
pmx16 = "/soc/pinmux@fff11800";
sd_1v8 = "/regulator-1v8";
sd_3v3 = "/regulator-3v3";
wlan_en = "/wlan-en-1-8v";
};
};