271 lines
5.4 KiB
Plaintext
271 lines
5.4 KiB
Plaintext
/* SPDX-License-Identifier: Apache-2.0 */
|
|
|
|
#include <xtensa/xtensa.dtsi>
|
|
#include <zephyr/dt-bindings/i2c/i2c.h>
|
|
#include <zephyr/dt-bindings/gpio/gpio.h>
|
|
#include <mem.h>
|
|
#include <zephyr/dt-bindings/interrupt-controller/intel-ioapic.h>
|
|
|
|
|
|
/ {
|
|
cpus {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
cpu0: cpu@0 {
|
|
device_type = "cpu";
|
|
compatible = "cdns,tensilica-xtensa-lx6";
|
|
reg = <0>;
|
|
};
|
|
|
|
cpu1: cpu@1 {
|
|
device_type = "cpu";
|
|
compatible = "cdns,tensilica-xtensa-lx6";
|
|
reg = <1>;
|
|
};
|
|
};
|
|
|
|
sram0: memory@be000000 {
|
|
compatible = "mmio-sram";
|
|
reg = <0xbe000000 DT_SIZE_M(4)>;
|
|
};
|
|
|
|
sram1: memory@be800000 {
|
|
compatible = "mmio-sram";
|
|
reg = <0xbe800000 DT_SIZE_K(64)>;
|
|
};
|
|
|
|
sysclk: system-clock {
|
|
compatible = "fixed-clock";
|
|
clock-frequency = <400000000>;
|
|
#clock-cells = <0>;
|
|
};
|
|
|
|
soc {
|
|
core_intc: core_intc@0 {
|
|
compatible = "cdns,xtensa-core-intc";
|
|
reg = <0x00 0x400>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <3>;
|
|
};
|
|
|
|
shim: shim@71f00 {
|
|
compatible = "intel,cavs-shim";
|
|
reg = <0x71f00 0x100>;
|
|
};
|
|
|
|
cavs0: cavs@78800 {
|
|
compatible = "intel,cavs-intc";
|
|
reg = <0x78800 0x10>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <3>;
|
|
interrupts = <6 0 0>;
|
|
interrupt-parent = <&core_intc>;
|
|
label = "CAVS_0";
|
|
};
|
|
|
|
cavs1: cavs@78810 {
|
|
compatible = "intel,cavs-intc";
|
|
reg = <0x78810 0x10>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <3>;
|
|
interrupts = <0xA 0 0>;
|
|
interrupt-parent = <&core_intc>;
|
|
label = "CAVS_1";
|
|
};
|
|
|
|
cavs2: cavs@78820 {
|
|
compatible = "intel,cavs-intc";
|
|
reg = <0x78820 0x10>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <3>;
|
|
interrupts = <0XD 0 0>;
|
|
interrupt-parent = <&core_intc>;
|
|
label = "CAVS_2";
|
|
};
|
|
|
|
cavs3: cavs@78830 {
|
|
compatible = "intel,cavs-intc";
|
|
reg = <0x78830 0x10>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <3>;
|
|
interrupts = <0x10 0 0>;
|
|
interrupt-parent = <&core_intc>;
|
|
label = "CAVS_3";
|
|
};
|
|
|
|
idc: idc@1200 {
|
|
compatible = "intel,cavs-idc";
|
|
label = "CAVS_IDC";
|
|
reg = <0x1200 0x80>;
|
|
interrupts = <8 0 0>;
|
|
interrupt-parent = <&cavs0>;
|
|
};
|
|
|
|
dw_intc: intc@81800 {
|
|
compatible = "snps,designware-intc";
|
|
reg = <0x00081800 0x400>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <3>;
|
|
interrupts = <6 0 0>;
|
|
num-irqs = <9>;
|
|
interrupt-parent = <&cavs0>;
|
|
label = "DW_INTC";
|
|
};
|
|
|
|
gpio0: gpio@80c00 {
|
|
compatible = "snps,designware-gpio";
|
|
reg = <0x00080c00 0x400>;
|
|
ngpios = <32>;
|
|
label = "GPIO";
|
|
interrupts = <3 1 0>;
|
|
interrupt-parent = <&dw_intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
};
|
|
|
|
pinmux: pinmux@81c30 {
|
|
compatible = "intel,s1000-pinmux";
|
|
reg = <0x00081c30 0xC>;
|
|
};
|
|
|
|
uart0: uart@80800 {
|
|
compatible = "ns16550";
|
|
reg = <0x80800 0x400>;
|
|
label = "UART_0";
|
|
clock-frequency = <38400000>;
|
|
interrupts = <2 0 0>;
|
|
interrupt-parent = <&dw_intc>;
|
|
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
i2c0: i2c@80400 {
|
|
compatible = "snps,designware-i2c";
|
|
clock-frequency = <I2C_BITRATE_STANDARD>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x80400 0x400>;
|
|
interrupts = <1 0 0>;
|
|
interrupt-parent = <&dw_intc>;
|
|
label = "I2C_0";
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
spi0: spi@e000 {
|
|
compatible = "snps,designware-spi";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x0000E000 0x400>;
|
|
clocks = <&sysclk>;
|
|
interrupts = <6 0 0>;
|
|
interrupt-parent = <&dw_intc>;
|
|
label = "SPI_0";
|
|
};
|
|
|
|
dma0: dma@7c000 {
|
|
compatible = "snps,designware-dma";
|
|
#dma-cells = <1>;
|
|
reg = <0x0007C000 0x1000>;
|
|
interrupts = <0x10 0 0>;
|
|
interrupt-parent = <&cavs3>;
|
|
label = "DMA_0";
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
dma1: dma@7d000 {
|
|
compatible = "snps,designware-dma";
|
|
#dma-cells = <1>;
|
|
reg = <0x0007D000 0x1000>;
|
|
interrupts = <0x00 0 0>;
|
|
interrupt-parent = <&cavs1>;
|
|
label = "DMA_1";
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
dma2: dma@7e000 {
|
|
compatible = "snps,designware-dma";
|
|
#dma-cells = <1>;
|
|
reg = <0x0007E000 0x1000>;
|
|
interrupts = <0x00 0 0>;
|
|
interrupt-parent = <&cavs2>;
|
|
label = "DMA_2";
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
usb: usb@a0000 {
|
|
compatible = "snps,designware-usb";
|
|
reg = <0x000A0000 0x1000>;
|
|
interrupts = <0x07 IRQ_TYPE_LOWEST_EDGE_RISING 3>;
|
|
interrupt-parent = <&cavs0>;
|
|
num-bidir-endpoints = <6>;
|
|
label = "USB_0";
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
i2s1: i2s@77200 {
|
|
compatible = "intel,cavs-i2s";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00077200 0x200
|
|
0x00078D08 0x008>;
|
|
interrupts = <0x01 0 0>;
|
|
interrupt-parent = <&cavs3>;
|
|
dmas = <&dma0 2
|
|
&dma0 3>;
|
|
dma-names = "tx", "rx";
|
|
label = "I2S_1";
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
i2s2: i2s@77400 {
|
|
compatible = "intel,cavs-i2s";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00077400 0x200
|
|
0x00078D10 0x008>;
|
|
interrupts = <0x02 0 0>;
|
|
interrupt-parent = <&cavs3>;
|
|
dmas = <&dma0 4
|
|
&dma0 5>;
|
|
dma-names = "tx", "rx";
|
|
label = "I2S_2";
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
i2s3: i2s@77600 {
|
|
compatible = "intel,cavs-i2s";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00077600 0x200
|
|
0x00078D18 0x008>;
|
|
interrupts = <0x03 0 0>;
|
|
interrupt-parent = <&cavs3>;
|
|
dmas = <&dma0 6
|
|
&dma0 7>;
|
|
dma-names = "tx", "rx";
|
|
label = "I2S_3";
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
gna: gna@e800 {
|
|
compatible = "intel,gna";
|
|
reg = <0x0000E800 0x100>;
|
|
interrupt-controller;
|
|
interrupts = <5 0 0>;
|
|
interrupt-parent = <&cavs0>;
|
|
label = "GNA0";
|
|
};
|
|
};
|
|
};
|