blob: d14dc7e98d808d45d1b84ace862eb6716d35e8a9 [file] [log] [blame]
/*
* Copyright (c) 2023 ENE Technology Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <freq.h>
#include <arm/armv7-m.dtsi>
/ {
chosen {
zephyr,sram = &sram0;
zephyr,flash = &flash0;
};
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-m4";
reg = <0>;
clock-frequency = <DT_FREQ_M(48)>;
};
};
sram0: memory@20040000 {
compatible = "mmio-sram";
reg = <0x20040000 0x10000>;
};
soc {
flash-controller@50100000 {
compatible = "ene,kb1200-flash-controller";
reg = <0x50100000 0x2000>;
#address-cells = <1>;
#size-cells = <1>;
flash0: flash@10000000 {
compatible = "soc-nv-flash";
reg = <0x10000000 0x40000>;
};
};
pmu: pmu@40010000 {
compatible = "ene,kb1200-pmu";
reg = <0x40010000 0x100>;
};
gcfg: gcfg@40000000 {
compatible = "ene,kb1200-gcfg";
reg = <0x40000000 0x100>;
};
pinctrl: pin-controller@50000000 {
compatible = "ene,kb1200-pinctrl";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x50000000 0x100>;
status = "okay";
gpio0x1x: gpio@50000000 {
compatible = "ene,kb1200-gpio";
reg = <0x50000000 0x04>, <0x50010000 0x04>;
interrupts = <2 3>, <3 3>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <32>;
status = "disabled";
};
gpio2x3x: gpio@50000004 {
compatible = "ene,kb1200-gpio";
reg = <0x50000004 0x04>, <0x50010004 0x04>;
interrupts = <4 3>, <5 3>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <32>;
status = "disabled";
};
gpio4x5x: gpio@50000008 {
compatible = "ene,kb1200-gpio";
reg = <0x50000008 0x04>, <0x50010008 0x04>;
interrupts = <6 3>, <7 3>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <32>;
status = "disabled";
};
gpio6x7x: gpio@5000000c {
compatible = "ene,kb1200-gpio";
reg = <0x5000000C 0x04>, <0x5001000C 0x04>;
interrupts = <8 3>, <9 3>;
gpio-controller;
#gpio-cells = <2>;
ngpios = <32>;
status = "disabled";
};
};
uart0: serial@40310000 {
compatible = "ene,kb1200-uart";
reg = <0x40310000 0x4c>;
interrupts = <20 3>;
current-speed = <115200>;
status = "disabled";
};
uart1: serial@40310020 {
compatible = "ene,kb1200-uart";
reg = <0x40310020 0x4c>;
interrupts = <20 3>;
current-speed = <115200>;
status = "disabled";
};
uart2: serial@40310040 {
compatible = "ene,kb1200-uart";
reg = <0x40310040 0x4c>;
interrupts = <20 3>;
current-speed = <115200>;
status = "disabled";
};
adc0: adc0@40130000 {
compatible = "ene,kb1200-adc";
reg = <0x40130000 0x100>;
status = "disabled";
#io-channel-cells = <1>;
};
pwm0: pwm@40210000 {
compatible = "ene,kb1200-pwm";
reg = <0x40210000 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm1: pwm@40210010 {
compatible = "ene,kb1200-pwm";
reg = <0x40210010 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm2: pwm@40210020 {
compatible = "ene,kb1200-pwm";
reg = <0x40210020 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm3: pwm@40210030 {
compatible = "ene,kb1200-pwm";
reg = <0x40210030 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm4: pwm@40210040 {
compatible = "ene,kb1200-pwm";
reg = <0x40210040 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm5: pwm@40210050 {
compatible = "ene,kb1200-pwm";
reg = <0x40210050 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm6: pwm@40210060 {
compatible = "ene,kb1200-pwm";
reg = <0x40210060 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm7: pwm@40210070 {
compatible = "ene,kb1200-pwm";
reg = <0x40210070 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm8: pwm@40210080 {
compatible = "ene,kb1200-pwm";
reg = <0x40210080 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
pwm9: pwm@40210090 {
compatible = "ene,kb1200-pwm";
reg = <0x40210090 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
fanpwm0: pwm@40200000 {
compatible = "ene,kb1200-pwm";
reg = <0x40200000 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
fanpwm1: pwm@40200010 {
compatible = "ene,kb1200-pwm";
reg = <0x40200010 0x10>;
#pwm-cells = <3>;
status = "disabled";
};
tach0: tach@40100000 {
compatible = "ene,kb1200-tach";
reg = <0x40100000 0x10>;
status = "disabled";
};
tach1: tach@40100010 {
compatible = "ene,kb1200-tach";
reg = <0x40100010 0x10>;
status = "disabled";
};
tach2: tach@40100020 {
compatible = "ene,kb1200-tach";
reg = <0x40100020 0x10>;
status = "disabled";
};
tach3: tach@40100030 {
compatible = "ene,kb1200-tach";
reg = <0x40100030 0x10>;
status = "disabled";
};
wdt0: watchdog@40060000 {
compatible = "ene,kb1200-watchdog";
reg = <0x40060000 0x100>;
interrupts = <0 0>;
status = "disabled";
};
i2c0: i2c@40340000 {
compatible = "ene,kb1200-i2c";
reg = <0x40340000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c1: i2c@40341000 {
compatible = "ene,kb1200-i2c";
reg = <0x40341000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c2: i2c@40342000 {
compatible = "ene,kb1200-i2c";
reg = <0x40342000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c3: i2c@40343000 {
compatible = "ene,kb1200-i2c";
reg = <0x40343000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c4: i2c@40344000 {
compatible = "ene,kb1200-i2c";
reg = <0x40344000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c5: i2c@40345000 {
compatible = "ene,kb1200-i2c";
reg = <0x40345000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c6: i2c@40346000 {
compatible = "ene,kb1200-i2c";
reg = <0x40346000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c7: i2c@40347000 {
compatible = "ene,kb1200-i2c";
reg = <0x40347000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c8: i2c@40348000 {
compatible = "ene,kb1200-i2c";
reg = <0x40348000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
i2c9: i2c@40349000 {
compatible = "ene,kb1200-i2c";
reg = <0x40349000 0x1000>;
interrupts = <17 1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
};
};
&nvic {
arm,num-irq-priority-bits = <3>;
};