/* * Copyright (c) 2019 Nordic Semiconductor ASA * * SPDX-License-Identifier: Apache-2.0 */ #include #include "nrf_common.dtsi" / { chosen { zephyr,entropy = &rng; zephyr,flash-controller = &flash_controller; }; cpus { #address-cells = <1>; #size-cells = <0>; cpu@1 { device_type = "cpu"; compatible = "arm,cortex-m33"; reg = <1>; #address-cells = <1>; #size-cells = <1>; mpu: mpu@e000ed90 { compatible = "arm,armv8m-mpu"; reg = <0xe000ed90 0x40>; }; }; }; soc { ficr: ficr@1ff0000 { compatible = "nordic,nrf-ficr"; reg = <0x01ff0000 0x1000>; status = "okay"; }; uicr: uicr@1ff8000 { compatible = "nordic,nrf-uicr"; reg = <0x01ff8000 0x1000>; status = "okay"; }; sram0: memory@20000000 { compatible = "mmio-sram"; }; sram1: memory@21000000 { compatible = "zephyr,memory-region", "mmio-sram"; zephyr,memory-region = "SRAM1"; }; clock: clock@41005000 { compatible = "nordic,nrf-clock"; reg = <0x41005000 0x1000>; interrupts = <5 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "CLOCK"; }; power: power@41005000 { compatible = "nordic,nrf-power"; reg = <0x41005000 0x1000>; interrupts = <5 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; }; radio: radio@41008000 { compatible = "nordic,nrf-radio"; reg = <0x41008000 0x1000>; interrupts = <8 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; dfe-supported; ieee802154-supported; ble-2mbps-supported; ble-coded-phy-supported; }; rng: random@41009000 { compatible = "nordic,nrf-rng"; reg = <0x41009000 0x1000>; interrupts = <9 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "RNG"; }; gpiote: gpiote@4100a000 { compatible = "nordic,nrf-gpiote"; reg = <0x4100a000 0x1000>; interrupts = <10 5>; status = "disabled"; label = "GPIOTE_0"; }; wdt: wdt0: watchdog@4100b000 { compatible = "nordic,nrf-wdt"; reg = <0x4100b000 0x1000>; interrupts = <11 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "WDT"; }; timer0: timer@4100c000 { compatible = "nordic,nrf-timer"; status = "disabled"; reg = <0x4100c000 0x1000>; cc-num = <8>; interrupts = <12 NRF_DEFAULT_IRQ_PRIORITY>; prescaler = <0>; label = "TIMER0"; }; ecb: ecb@4100d000 { compatible = "nordic,nrf-ecb"; reg = <0x4100d000 0x1000>; interrupts = <13 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "ECB"; }; ccm: ccm@4100e000 { compatible = "nordic,nrf-ccm"; reg = <0x4100e000 0x1000>; interrupts = <14 NRF_DEFAULT_IRQ_PRIORITY>; length-field-length-8-bits; status = "okay"; }; dppic: dppic@4100f000 { compatible = "nordic,nrf-dppic"; reg = <0x4100f000 0x1000>; status = "okay"; label = "DPPIC"; }; temp: temp@41010000 { compatible = "nordic,nrf-temp"; reg = <0x41010000 0x1000>; interrupts = <16 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "TEMP_0"; }; rtc0: rtc@41011000 { compatible = "nordic,nrf-rtc"; reg = <0x41011000 0x1000>; cc-num = <4>; interrupts = <17 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "RTC_0"; }; mbox: ipc: mbox@41012000 { compatible = "nordic,mbox-nrf-ipc", "nordic,nrf-ipc"; reg = <0x41012000 0x1000>; tx-mask = <0x0000ffff>; rx-mask = <0x0000ffff>; interrupts = <18 NRF_DEFAULT_IRQ_PRIORITY>; #mbox-cells = <1>; status = "okay"; }; i2c0: i2c@41013000 { /* * This i2c node can be TWIM or TWIS, * for the user to pick: * compatible = "nordic,nrf-twim" or * "nordic,nrf-twis". */ compatible = "nordic,nrf-twim"; #address-cells = <1>; #size-cells = <0>; reg = <0x41013000 0x1000>; clock-frequency = ; interrupts = <19 NRF_DEFAULT_IRQ_PRIORITY>; status = "disabled"; label = "I2C_0"; }; spi0: spi@41013000 { /* * This spi node can be SPIM or SPIS, * for the user to pick: * compatible = "nordic,nrf-spim" or * "nordic,nrf-spis". */ compatible = "nordic,nrf-spim"; #address-cells = <1>; #size-cells = <0>; reg = <0x41013000 0x1000>; interrupts = <19 NRF_DEFAULT_IRQ_PRIORITY>; status = "disabled"; label = "SPI_0"; }; uart0: uart@41013000 { compatible = "nordic,nrf-uarte"; reg = <0x41013000 0x1000>; interrupts = <19 NRF_DEFAULT_IRQ_PRIORITY>; status = "disabled"; label = "UART_0"; }; egu0: egu@41014000 { compatible = "nordic,nrf-egu"; reg = <0x41014000 0x1000>; interrupts = <20 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "EGU_0"; }; rtc1: rtc@41016000 { compatible = "nordic,nrf-rtc"; reg = <0x41016000 0x1000>; cc-num = <4>; interrupts = <22 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; label = "RTC_1"; }; timer1: timer@41018000 { compatible = "nordic,nrf-timer"; status = "disabled"; reg = <0x41018000 0x1000>; cc-num = <8>; interrupts = <24 NRF_DEFAULT_IRQ_PRIORITY>; prescaler = <0>; label = "TIMER1"; }; timer2: timer@41019000 { compatible = "nordic,nrf-timer"; status = "disabled"; reg = <0x41019000 0x1000>; cc-num = <8>; interrupts = <25 NRF_DEFAULT_IRQ_PRIORITY>; prescaler = <0>; label = "TIMER2"; }; swi0: swi@4101a000 { compatible = "nordic,nrf-swi"; reg = <0x4101a000 0x1000>; interrupts = <26 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; }; swi1: swi@4101b000 { compatible = "nordic,nrf-swi"; reg = <0x4101b000 0x1000>; interrupts = <27 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; }; swi2: swi@4101c000 { compatible = "nordic,nrf-swi"; reg = <0x4101c000 0x1000>; interrupts = <28 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; }; swi3: swi@4101d000 { compatible = "nordic,nrf-swi"; reg = <0x4101d000 0x1000>; interrupts = <29 NRF_DEFAULT_IRQ_PRIORITY>; status = "okay"; }; acl: acl@41080000 { compatible = "nordic,nrf-acl"; reg = <0x41080000 0x1000>; status = "okay"; }; flash_controller: flash-controller@41080000 { compatible = "nordic,nrf53-flash-controller"; reg = <0x41080000 0x1000>; partial-erase; #address-cells = <1>; #size-cells = <1>; label="NRF_FLASH_DRV_NAME"; flash1: flash@1000000 { compatible = "soc-nv-flash"; label = "NRF_FLASH"; erase-block-size = <2048>; write-block-size = <4>; }; }; vmc: vmc@41081000 { compatible = "nordic,nrf-vmc"; reg = <0x41081000 0x1000>; status = "okay"; }; gpio0: gpio@418c0500 { compatible = "nordic,nrf-gpio"; gpio-controller; reg = <0x418c0500 0x300>; #gpio-cells = <2>; label = "GPIO_0"; status = "disabled"; port = <0>; }; gpio1: gpio@418c0800 { compatible = "nordic,nrf-gpio"; gpio-controller; reg = <0x418c0800 0x300>; #gpio-cells = <2>; ngpios = <16>; label = "GPIO_1"; status = "disabled"; port = <1>; }; }; /* Default IPC description */ ipc { ipc0: ipc0 { compatible = "zephyr,ipc-openamp-static-vrings"; memory-region = <&sram0_shared>; mboxes = <&mbox 0>, <&mbox 1>; mbox-names = "rx", "tx"; role = "remote"; status = "okay"; }; }; }; &nvic { arm,num-irq-priority-bits = <3>; };