252 lines
5.4 KiB
Plaintext
252 lines
5.4 KiB
Plaintext
/*
|
|
* Copyright (c) 2019 Brett Witherspoon
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include <arm/armv7-m.dtsi>
|
|
#include <zephyr/dt-bindings/adc/adc.h>
|
|
#include <zephyr/dt-bindings/i2c/i2c.h>
|
|
#include <zephyr/dt-bindings/gpio/gpio.h>
|
|
#include <zephyr/dt-bindings/pwm/pwm.h>
|
|
|
|
/ {
|
|
chosen {
|
|
zephyr,entropy = &trng;
|
|
zephyr,flash-controller = &flash_controller;
|
|
};
|
|
|
|
cpus {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
cpu0: cpu@0 {
|
|
device_type = "cpu";
|
|
compatible = "arm,cortex-m4";
|
|
reg = <0>;
|
|
cpu-power-states = <&idle &standby>;
|
|
};
|
|
|
|
power-states {
|
|
idle: idle {
|
|
compatible = "zephyr,power-state";
|
|
power-state-name = "suspend-to-idle";
|
|
min-residency-us = <1000>;
|
|
};
|
|
|
|
standby: standby {
|
|
compatible = "zephyr,power-state";
|
|
power-state-name = "standby";
|
|
min-residency-us = <5000>;
|
|
exit-latency-us = <240>;
|
|
};
|
|
};
|
|
};
|
|
|
|
sram0: memory@20000000 {
|
|
compatible = "mmio-sram";
|
|
};
|
|
|
|
/* VIMS RAM configurable in CCFG as GPRAM or cache for FLASH (default) */
|
|
sram1: memory@11000000 {
|
|
compatible = "zephyr,memory-region", "mmio-sram";
|
|
reg = <0x11000000 0x2000>;
|
|
zephyr,memory-region = "SRAM1";
|
|
};
|
|
|
|
sysclk: system-clock {
|
|
compatible = "fixed-clock";
|
|
clock-frequency = <48000000>;
|
|
#clock-cells = <0>;
|
|
};
|
|
|
|
soc {
|
|
pinctrl: pinctrl@40081000 {
|
|
compatible = "ti,cc13xx-cc26xx-pinctrl";
|
|
reg = <0x40081000 0x1000>;
|
|
};
|
|
|
|
gpio0: gpio@40022000 {
|
|
compatible = "ti,cc13xx-cc26xx-gpio";
|
|
reg = <0x40022000 0x400>;
|
|
interrupts = <0 0>;
|
|
status = "disabled";
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
};
|
|
|
|
trng: random@40028000 {
|
|
compatible = "ti,cc13xx-cc26xx-trng";
|
|
reg = <0x40028000 0x2000>;
|
|
interrupts = <33 0>;
|
|
status = "disabled";
|
|
};
|
|
|
|
flash_controller: flash-controller@40030000 {
|
|
compatible = "ti,cc13xx-cc26xx-flash-controller";
|
|
reg = <0x40030000 0x4000>;
|
|
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
flash0: flash@0 {
|
|
compatible = "soc-nv-flash";
|
|
erase-block-size = <DT_SIZE_K(8)>;
|
|
write-block-size = <1>;
|
|
};
|
|
};
|
|
|
|
gpt0: timer@40010000 {
|
|
compatible = "ti,cc13xx-cc26xx-timer";
|
|
reg = <0x40010000 0x1000>;
|
|
interrupts = <15 0 16 0>;
|
|
interrupt-names = "gpt0a", "gpt0b";
|
|
status = "disabled";
|
|
|
|
pwm0: pwm {
|
|
compatible = "ti,cc13xx-cc26xx-timer-pwm";
|
|
#pwm-cells = <1>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
gpt1: timer@40011000 {
|
|
compatible = "ti,cc13xx-cc26xx-timer";
|
|
reg = <0x40011000 0x1000>;
|
|
interrupts = <17 0 18 0>;
|
|
interrupt-names = "gpt1a", "gpt1b";
|
|
status = "disabled";
|
|
|
|
pwm1: pwm {
|
|
compatible = "ti,cc13xx-cc26xx-timer-pwm";
|
|
#pwm-cells = <1>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
gpt2: timer@40012000 {
|
|
compatible = "ti,cc13xx-cc26xx-timer";
|
|
reg = <0x40012000 0x1000>;
|
|
interrupts = <19 0 20 0>;
|
|
interrupt-names = "gpt2a", "gpt2b";
|
|
status = "disabled";
|
|
|
|
pwm2: pwm {
|
|
compatible = "ti,cc13xx-cc26xx-timer-pwm";
|
|
#pwm-cells = <1>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
gpt3: timer@40013000 {
|
|
compatible = "ti,cc13xx-cc26xx-timer";
|
|
reg = <0x40013000 0x1000>;
|
|
interrupts = <21 0 22 0>;
|
|
interrupt-names = "gpt3a", "gpt3b";
|
|
status = "disabled";
|
|
|
|
pwm3: pwm {
|
|
compatible = "ti,cc13xx-cc26xx-timer-pwm";
|
|
#pwm-cells = <1>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
uart0: uart@40001000 {
|
|
compatible = "ti,cc13xx-cc26xx-uart";
|
|
reg = <0x40001000 0x1000>;
|
|
interrupts = <5 0>;
|
|
clocks = <&sysclk>;
|
|
status = "disabled";
|
|
};
|
|
|
|
uart1: uart@4000b000 {
|
|
compatible = "ti,cc13xx-cc26xx-uart";
|
|
reg = <0x4000b000 0x1000>;
|
|
interrupts = <36 0>;
|
|
clocks = <&sysclk>;
|
|
status = "disabled";
|
|
};
|
|
|
|
i2c0: i2c@40002000 {
|
|
compatible = "ti,cc13xx-cc26xx-i2c";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x40002000 0x1000>;
|
|
interrupts = <1 0>;
|
|
clock-frequency = <I2C_BITRATE_STANDARD>;
|
|
status = "disabled";
|
|
};
|
|
|
|
spi0: spi@40000000 {
|
|
compatible = "ti,cc13xx-cc26xx-spi";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x40000000 0x1000>;
|
|
interrupts = <7 0>;
|
|
status = "disabled";
|
|
};
|
|
|
|
spi1: spi@40008000 {
|
|
compatible = "ti,cc13xx-cc26xx-spi";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x40008000 0x1000>;
|
|
interrupts = <8 0>;
|
|
status = "disabled";
|
|
};
|
|
|
|
/* The RTC peripheral backs the kernel system clock and tick timer. */
|
|
rtc: rtc@40092000 {
|
|
compatible = "ti,cc13xx-cc26xx-rtc-timer";
|
|
reg = <0x40092000 0x1000>;
|
|
interrupts = <4 0>; /* interrupt #20 = 4 + 16 */
|
|
status = "okay"; /* the system clock timer is mandatory */
|
|
};
|
|
|
|
radio: radio@40040000 {
|
|
compatible = "ti,cc13xx-cc26xx-radio";
|
|
status = "disabled";
|
|
|
|
reg = <0x40040000 0x1000
|
|
0x40041000 0x2000
|
|
0x40043000 0x1000
|
|
0x40044000 0x1000>;
|
|
reg-names = "RFC_PWR", "RFC_DBELL", "RFC_RAT", "RFC_FSCA";
|
|
|
|
ieee802154: ieee802154 {
|
|
compatible = "ti,cc13xx-cc26xx-ieee802154";
|
|
status = "disabled";
|
|
};
|
|
|
|
ieee802154g: ieee802154g {
|
|
compatible = "ti,cc13xx-cc26xx-ieee802154-subghz";
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
wdt0: watchdog@40080000 {
|
|
compatible = "ti,cc13xx-cc26xx-watchdog";
|
|
reg = <0x40080000 0x1000>;
|
|
interrupts = <14 0>; /* interrupt #30 = 14 + 16 */
|
|
status = "disabled";
|
|
};
|
|
|
|
adc0: adc@400cb008 {
|
|
compatible = "ti,cc13xx-cc26xx-adc";
|
|
reg = <0x400cb008 0x1>;
|
|
interrupts = <32 0>; /* interrupt #48 = 32 + 16 */
|
|
status = "disabled";
|
|
#io-channel-cells = <1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&nvic {
|
|
arm,num-irq-priority-bits = <3>;
|
|
};
|
|
|
|
&systick {
|
|
status = "disabled";
|
|
};
|