9f9b4a8afa
The old CONFIG_UART_NS16550_ACCESS_IOPORT has been used to indicate whether to access the NS16550 UART via IO port before device tree is used to describe hardware. Now we have device tree, and we can specify whether a particular UART needs to be accessed via IO port using property io-mapped. Therefore, CONFIG_UART_NS16550_ACCESS_IOPORT is no longer needed (and thus also CONFIG_UART_NS16550_SIMULT_ACCESS). Remove these two kconfigs and modify code to use device tree to figure out how to access the UART hardware. Signed-off-by: Daniel Leung <daniel.leung@intel.com>
269 lines
5.2 KiB
Plaintext
269 lines
5.2 KiB
Plaintext
/*
|
|
* Copyright (c) 2018, Synopsys, Inc. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include "skeleton.dtsi"
|
|
|
|
#include <zephyr/dt-bindings/i2c/i2c.h>
|
|
#include <zephyr/dt-bindings/gpio/gpio.h>
|
|
|
|
/ {
|
|
cpus {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
cpu0: cpu@0 {
|
|
device_type = "cpu";
|
|
compatible = "snps,arcem";
|
|
reg = <0>;
|
|
};
|
|
};
|
|
|
|
intc: arcv2-intc {
|
|
compatible = "snps,arcv2-intc";
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
};
|
|
|
|
timer0: timer0 {
|
|
compatible = "snps,arc-timer";
|
|
interrupts = <16 1>;
|
|
interrupt-parent = <&intc>;
|
|
};
|
|
|
|
sysconf: system-configuration@f000a000 {
|
|
compatible = "snps,arc-iot-sysconf";
|
|
reg = <0xf000a000 0x90>;
|
|
};
|
|
|
|
iccm0: iccm@20000000 {
|
|
compatible = "arc,iccm";
|
|
reg = <0x20000000 0x40000>;
|
|
};
|
|
|
|
dccm0: dccm@80000000 {
|
|
compatible = "arc,dccm";
|
|
reg = <0x80000000 0x20000>;
|
|
};
|
|
|
|
|
|
sram: memory@30000000 {
|
|
compatible = "mmio-sram";
|
|
reg = <0x30000000 0x20000>;
|
|
};
|
|
|
|
flash0: flash@0 {
|
|
compatible = "soc-nv-flash";
|
|
reg = <0x0 0x40000>;
|
|
};
|
|
|
|
sysclk: system-clock {
|
|
compatible = "fixed-clock";
|
|
clock-frequency = <144000000>;
|
|
#clock-cells = <0>;
|
|
};
|
|
|
|
soc {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
compatible = "simple-bus";
|
|
ranges;
|
|
|
|
|
|
uart0: uart@80014000 {
|
|
compatible = "ns16550";
|
|
clock-frequency = <16000000>;
|
|
reg = <0x80014000 0x100>;
|
|
io-mapped;
|
|
interrupts = <86 0>;
|
|
interrupt-parent = <&intc>;
|
|
dlf = <0x01>;
|
|
reg-shift = <2>;
|
|
};
|
|
|
|
uart1: uart@80014100 {
|
|
compatible = "ns16550";
|
|
clock-frequency = <16000000>;
|
|
reg = <0x80014100 0x100>;
|
|
io-mapped;
|
|
interrupts = <87 0>;
|
|
interrupt-parent = <&intc>;
|
|
reg-shift = <2>;
|
|
status = "disabled";
|
|
};
|
|
|
|
uart2: uart@80014200 {
|
|
compatible = "ns16550";
|
|
clock-frequency = <16000000>;
|
|
reg = <0x80014200 0x1000>;
|
|
io-mapped;
|
|
interrupts = <88 0>;
|
|
interrupt-parent = <&intc>;
|
|
reg-shift = <2>;
|
|
status = "disabled";
|
|
};
|
|
|
|
uart3: uart@80014300 {
|
|
compatible = "ns16550";
|
|
clock-frequency = <144000000>;
|
|
reg = <0x80014300 0x100>;
|
|
io-mapped;
|
|
interrupts = <89 0>;
|
|
interrupt-parent = <&intc>;
|
|
reg-shift = <2>;
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio8b0: gpio@80017800 {
|
|
reg = <0x80017800 0x100>;
|
|
interrupts = <54 1>;
|
|
interrupt-parent = <&intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio8b1: gpio@80017900 {
|
|
reg = <0x80017900 0x100>;
|
|
interrupts = <55 1>;
|
|
interrupt-parent = <&intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio8b2: gpio@80017a00 {
|
|
reg = <0x80017a00 0x100>;
|
|
interrupts = <56 1>;
|
|
interrupt-parent = <&intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio8b3: gpio@80017b00 {
|
|
reg = <0x80017b00 0x100>;
|
|
interrupts = <57 1>;
|
|
interrupt-parent = <&intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio4b0: gpio@80017c00 {
|
|
reg = <0x80017c00 0x100>;
|
|
interrupts = <19 1>;
|
|
interrupt-parent = <&intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
};
|
|
|
|
gpio4b1: gpio@80017d00 {
|
|
reg = <0x80017d00 0x100>;
|
|
interrupts = <52 1>;
|
|
interrupt-parent = <&intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio4b2: gpio@80017e00 {
|
|
reg = <0x80017e00 0x100>;
|
|
interrupts = <53 1>;
|
|
interrupt-parent = <&intc>;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
|
|
i2c0: i2c@80012000 {
|
|
clock-frequency = <I2C_BITRATE_STANDARD>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x80012000 0x100>;
|
|
interrupts = <58 1>, <61 1>, <60 1>, <59 1>;
|
|
interrupt-names = "error", "stop", "tx", "rx";
|
|
interrupt-parent = <&intc>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
i2c1: i2c@80012100 {
|
|
clock-frequency = <I2C_BITRATE_STANDARD>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x80012100 0x100>;
|
|
interrupts = <62 1>, <65 1>, <64 1>, <63 1>;
|
|
interrupt-names = "error", "stop", "tx", "rx";
|
|
interrupt-parent = <&intc>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
i2c2: i2c@80012200 {
|
|
clock-frequency = <I2C_BITRATE_STANDARD>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x80012200 0x100>;
|
|
interrupts = <66 1>, <69 1>, <68 1>, <67 1>;
|
|
interrupt-names = "error", "stop", "tx", "rx";
|
|
interrupt-parent = <&intc>;
|
|
|
|
status = "disabled";
|
|
};
|
|
|
|
spi0: spi@80010000 {
|
|
compatible = "snps,designware-spi";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x80010000 0x100>;
|
|
clocks = <&sysclk>;
|
|
interrupts = <70 2>, <71 2>, <72 2>;
|
|
interrupt-names = "err-int", "rx-avail", "tx-req";
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
};
|
|
|
|
spi1: spi@80010100 {
|
|
compatible = "snps,designware-spi";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x80010100 0x100>;
|
|
clocks = <&sysclk>;
|
|
interrupts = <74 2>, <75 2>, <76 2>;
|
|
interrupt-names = "err-int", "rx-avail", "tx-req";
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
};
|
|
|
|
spi2: spi@80010200 {
|
|
compatible = "snps,designware-spi";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x80010200 0x100>;
|
|
clocks = <&sysclk>;
|
|
interrupts = <78 2>, <79 2>, <80 2>;
|
|
interrupt-names = "err-int", "rx-avail", "tx-req";
|
|
interrupt-parent = <&intc>;
|
|
status = "disabled";
|
|
};
|
|
|
|
};
|
|
};
|