227 lines
5.3 KiB
Plaintext
227 lines
5.3 KiB
Plaintext
/*
|
|
* Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
|
* Copyright (c) 2019-2020 Jyunlin Chen <jyunlin.chen@ite.com.tw>
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include <mem.h>
|
|
#include <dt-bindings/irq.h>
|
|
#include <dt-bindings/i2c/i2c.h>
|
|
|
|
/ {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
cpus {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
cpu@0 {
|
|
compatible = "ite,riscv-ite";
|
|
device_type = "cpu";
|
|
reg = <0>;
|
|
};
|
|
};
|
|
|
|
soc {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges;
|
|
|
|
flashctrl: flash-controller@80000000 {
|
|
compatible = "ite,it8xxx2-flash-controller";
|
|
reg = <0x80000000 0x100>;
|
|
label = "fspi";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
flash0: flash@80000000 {
|
|
compatible = "soc-nv-flash";
|
|
reg = <0x80000000 DT_SIZE_K(512)>;
|
|
erase-block-size = <1024>;
|
|
write-block-size = <1>;
|
|
};
|
|
};
|
|
pinmux: pinmux@f016f0 {
|
|
compatible = "ite,it8xxx2-pinmux";
|
|
reg = <0x00f016f0 0x0010>;
|
|
label = "PINMUX";
|
|
};
|
|
sram0: memory@80080000 {
|
|
compatible = "mmio-sram";
|
|
reg = <0x80080000 DT_SIZE_K(60)>;
|
|
};
|
|
intc: interrupt-controller@f03f00 {
|
|
#interrupt-cells = <2>;
|
|
compatible = "ite,it8xxx2-intc";
|
|
interrupt-controller;
|
|
reg = <0x00f03f00 0x0100>;
|
|
};
|
|
uart1: uart@f02700 {
|
|
compatible = "ns16550";
|
|
reg = <0x00f02700 0x0020>;
|
|
label = "console";
|
|
current-speed = <115200>;
|
|
clock-frequency = <1804800>;
|
|
interrupts = <38 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-parent = <&intc>;
|
|
};
|
|
uart2: uart@f02800 {
|
|
compatible = "ns16550";
|
|
reg = <0x00f02800 0x0020>;
|
|
label = "UART_2";
|
|
current-speed = <460800>;
|
|
clock-frequency = <1804800>;
|
|
interrupts = <39 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-parent = <&intc>;
|
|
};
|
|
timer: timer@f01f00 {
|
|
compatible = "ite,it8xxx2-timer";
|
|
reg = <0x00f01f00 0x0062>;
|
|
label = "sys_clock";
|
|
interrupts = <0 IRQ_TYPE_NONE
|
|
30 IRQ_TYPE_EDGE_RISING
|
|
58 IRQ_TYPE_EDGE_RISING
|
|
155 IRQ_TYPE_EDGE_FALLING
|
|
156 IRQ_TYPE_EDGE_FALLING
|
|
157 IRQ_TYPE_EDGE_FALLING
|
|
158 IRQ_TYPE_EDGE_FALLING
|
|
159 IRQ_TYPE_EDGE_FALLING
|
|
80 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-parent = <&intc>;
|
|
};
|
|
gpiob: gpio@f01602 {
|
|
compatible = "ite,it8xxx2-gpio";
|
|
reg = <0x00f01602 0x0001>;
|
|
ngpios = <8>;
|
|
label = "GPDRB";
|
|
status = "disabled";
|
|
gpio-controller;
|
|
interrupts = <106 IRQ_TYPE_LEVEL_HIGH
|
|
107 IRQ_TYPE_LEVEL_HIGH
|
|
92 IRQ_TYPE_LEVEL_HIGH
|
|
108 IRQ_TYPE_LEVEL_HIGH
|
|
99 IRQ_TYPE_LEVEL_HIGH
|
|
109 IRQ_TYPE_LEVEL_HIGH
|
|
110 IRQ_TYPE_LEVEL_HIGH
|
|
111 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-parent = <&intc>;
|
|
#gpio-cells = <2>;
|
|
};
|
|
gpiof: gpio@f01606 {
|
|
compatible = "ite,it8xxx2-gpio";
|
|
reg = <0x00f01606 0x0001>;
|
|
ngpios = <8>;
|
|
label = "GPDRF";
|
|
status = "disabled";
|
|
gpio-controller;
|
|
interrupts = <101 IRQ_TYPE_LEVEL_HIGH
|
|
102 IRQ_TYPE_LEVEL_HIGH
|
|
103 IRQ_TYPE_LEVEL_HIGH
|
|
104 IRQ_TYPE_LEVEL_HIGH
|
|
52 IRQ_TYPE_LEVEL_HIGH
|
|
53 IRQ_TYPE_LEVEL_HIGH
|
|
54 IRQ_TYPE_LEVEL_HIGH
|
|
55 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-parent = <&intc>;
|
|
#gpio-cells = <2>;
|
|
};
|
|
gpiom: gpio@f0160D {
|
|
compatible = "ite,it8xxx2-gpio";
|
|
reg = <0x00f0160D 0x0001>;
|
|
ngpios = <8>;
|
|
label = "GPDRM";
|
|
status = "disabled";
|
|
gpio-controller;
|
|
interrupt-parent = <&intc>;
|
|
#gpio-cells = <2>;
|
|
};
|
|
spi0:spi@f02600 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "ite,it8xxx2-sspi";
|
|
reg = <0x00f02600 0x40>;
|
|
label = "SPI0";
|
|
interrupt-parent = <&intc>;
|
|
interrupts = <37 IRQ_TYPE_EDGE_RISING>;
|
|
clock-frequency = <115200>;
|
|
};
|
|
spi1:spi@f02640 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "ite,it8xxx2-sspi";
|
|
reg = <0x00f02640 0x40>;
|
|
label = "SPI1";
|
|
interrupts = <37 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-parent = <&intc>;
|
|
status = "okay";
|
|
};
|
|
i2c0: i2c@f01c40 {
|
|
compatible = "ite,it8xxx2-i2c";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00f01c40 0x0040>;
|
|
interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
label = "I2C_0";
|
|
port-num = <0>;
|
|
};
|
|
i2c1: i2c@f01c80 {
|
|
compatible = "ite,it8xxx2-i2c";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00f01c80 0x0040>;
|
|
interrupts = <10 IRQ_TYPE_EDGE_FALLING>;
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
label = "I2C_1";
|
|
port-num = <1>;
|
|
};
|
|
i2c2: i2c@f01cc0 {
|
|
compatible = "ite,it8xxx2-i2c";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00f01cc0 0x0040>;
|
|
interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
label = "I2C_2";
|
|
port-num = <2>;
|
|
};
|
|
i2c3: i2c@f03680 {
|
|
compatible = "ite,it8xxx2-i2c";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00f03680 0x0080>;
|
|
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
label = "I2C_3";
|
|
port-num = <3>;
|
|
};
|
|
i2c4: i2c@f03500 {
|
|
compatible = "ite,it8xxx2-i2c";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00f03500 0x0080>;
|
|
interrupts = <152 IRQ_TYPE_EDGE_FALLING>;
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
label = "I2C_4";
|
|
port-num = <4>;
|
|
};
|
|
i2c5: i2c@f03580 {
|
|
compatible = "ite,it8xxx2-i2c";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x00f03580 0x0080>;
|
|
interrupts = <153 IRQ_TYPE_EDGE_FALLING>;
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
label = "I2C_5";
|
|
port-num = <5>;
|
|
};
|
|
};
|
|
};
|