1/* 2 * Copyright (c) 2019 Nordic Semiconductor ASA 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7dcnf: dcnf@0 { 8 compatible = "nordic,nrf-dcnf"; 9 reg = <0x0 0x1000>; 10 status = "okay"; 11}; 12 13oscillators: oscillator@4000 { 14 compatible = "nordic,nrf-oscillators"; 15 reg = <0x4000 0x1000>; 16 status = "okay"; 17}; 18 19regulators: regulator@4000 { 20 compatible = "nordic,nrf-regulators"; 21 reg = <0x4000 0x1000>; 22 status = "okay"; 23}; 24 25clock: clock@5000 { 26 compatible = "nordic,nrf-clock"; 27 reg = <0x5000 0x1000>; 28 interrupts = <5 NRF_DEFAULT_IRQ_PRIORITY>; 29 status = "okay"; 30}; 31 32power: power@5000 { 33 compatible = "nordic,nrf-power"; 34 reg = <0x5000 0x1000>; 35 ranges = <0x0 0x5000 0x1000>; 36 interrupts = <5 NRF_DEFAULT_IRQ_PRIORITY>; 37 status = "okay"; 38 #address-cells = <1>; 39 #size-cells = <1>; 40 41 gpregret1: gpregret1@51c { 42 #address-cells = <1>; 43 #size-cells = <1>; 44 compatible = "nordic,nrf-gpregret"; 45 reg = <0x51c 0x1>; 46 status = "okay"; 47 }; 48 49 gpregret2: gpregret2@520 { 50 #address-cells = <1>; 51 #size-cells = <1>; 52 compatible = "nordic,nrf-gpregret"; 53 reg = <0x520 0x1>; 54 status = "okay"; 55 }; 56}; 57 58reset: reset-controller@5000 { 59 compatible = "nordic,nrf-reset"; 60 reg = <0x5000 0x1000>; 61 status = "okay"; 62}; 63 64ctrlap: ctrlap@6000 { 65 compatible = "nordic,nrf-ctrlapperi"; 66 reg = <0x6000 0x1000>; 67 status = "okay"; 68}; 69 70i2c0: i2c@8000 { 71 /* 72 * This i2c node can be either TWIM or TWIS, for the user to pick: 73 * compatible = "nordic,nrf-twim" or 74 * "nordic,nrf-twis". 75 */ 76 compatible = "nordic,nrf-twim"; 77 #address-cells = <1>; 78 #size-cells = <0>; 79 reg = <0x8000 0x1000>; 80 clock-frequency = <I2C_BITRATE_STANDARD>; 81 interrupts = <8 NRF_DEFAULT_IRQ_PRIORITY>; 82 easydma-maxcnt-bits = <16>; 83 status = "disabled"; 84}; 85 86spi0: spi@8000 { 87 /* 88 * This spi node can be either SPIM or SPIS, 89 * for the user to pick: 90 * compatible = "nordic,nrf-spim" or 91 * "nordic,nrf-spis". 92 */ 93 compatible = "nordic,nrf-spim"; 94 #address-cells = <1>; 95 #size-cells = <0>; 96 reg = <0x8000 0x1000>; 97 interrupts = <8 NRF_DEFAULT_IRQ_PRIORITY>; 98 max-frequency = <DT_FREQ_M(8)>; 99 easydma-maxcnt-bits = <16>; 100 status = "disabled"; 101}; 102 103uart0: uart@8000 { 104 compatible = "nordic,nrf-uarte"; 105 reg = <0x8000 0x1000>; 106 interrupts = <8 NRF_DEFAULT_IRQ_PRIORITY>; 107 status = "disabled"; 108}; 109 110i2c1: i2c@9000 { 111 /* 112 * This i2c node can be TWIM or TWIS, 113 * for the user to pick: 114 * compatible = "nordic,nrf-twim" or 115 * "nordic,nrf-twis". 116 */ 117 compatible = "nordic,nrf-twim"; 118 #address-cells = <1>; 119 #size-cells = <0>; 120 reg = <0x9000 0x1000>; 121 clock-frequency = <I2C_BITRATE_STANDARD>; 122 interrupts = <9 NRF_DEFAULT_IRQ_PRIORITY>; 123 easydma-maxcnt-bits = <16>; 124 status = "disabled"; 125}; 126 127spi1: spi@9000 { 128 /* 129 * This spi node can be either SPIM or SPIS, 130 * for the user to pick: 131 * compatible = "nordic,nrf-spim" or 132 * "nordic,nrf-spis". 133 */ 134 compatible = "nordic,nrf-spim"; 135 #address-cells = <1>; 136 #size-cells = <0>; 137 reg = <0x9000 0x1000>; 138 interrupts = <9 NRF_DEFAULT_IRQ_PRIORITY>; 139 max-frequency = <DT_FREQ_M(8)>; 140 easydma-maxcnt-bits = <16>; 141 status = "disabled"; 142}; 143 144uart1: uart@9000 { 145 compatible = "nordic,nrf-uarte"; 146 reg = <0x9000 0x1000>; 147 interrupts = <9 NRF_DEFAULT_IRQ_PRIORITY>; 148 status = "disabled"; 149}; 150 151spi4: spi@a000 { 152 compatible = "nordic,nrf-spim"; 153 #address-cells = <1>; 154 #size-cells = <0>; 155 reg = <0xa000 0x1000>; 156 interrupts = <10 NRF_DEFAULT_IRQ_PRIORITY>; 157 max-frequency = <DT_FREQ_M(32)>; 158 easydma-maxcnt-bits = <16>; 159 rx-delay-supported; 160 rx-delay = <2>; 161 status = "disabled"; 162}; 163 164i2c2: i2c@b000 { 165 /* 166 * This i2c node can be TWIM or TWIS, 167 * for the user to pick: 168 * compatible = "nordic,nrf-twim" or 169 * "nordic,nrf-twis". 170 */ 171 compatible = "nordic,nrf-twim"; 172 #address-cells = <1>; 173 #size-cells = <0>; 174 reg = <0xb000 0x1000>; 175 clock-frequency = <I2C_BITRATE_STANDARD>; 176 interrupts = <11 NRF_DEFAULT_IRQ_PRIORITY>; 177 easydma-maxcnt-bits = <16>; 178 status = "disabled"; 179}; 180 181spi2: spi@b000 { 182 /* 183 * This spi node can be either SPIM or SPIS, 184 * for the user to pick: 185 * compatible = "nordic,nrf-spim" or 186 * "nordic,nrf-spis". 187 */ 188 compatible = "nordic,nrf-spim"; 189 #address-cells = <1>; 190 #size-cells = <0>; 191 reg = <0xb000 0x1000>; 192 interrupts = <11 NRF_DEFAULT_IRQ_PRIORITY>; 193 max-frequency = <DT_FREQ_M(8)>; 194 easydma-maxcnt-bits = <16>; 195 status = "disabled"; 196}; 197 198uart2: uart@b000 { 199 compatible = "nordic,nrf-uarte"; 200 reg = <0xb000 0x1000>; 201 interrupts = <11 NRF_DEFAULT_IRQ_PRIORITY>; 202 status = "disabled"; 203}; 204 205i2c3: i2c@c000 { 206 /* 207 * This i2c node can be TWIM or TWIS, 208 * for the user to pick: 209 * compatible = "nordic,nrf-twim" or 210 * "nordic,nrf-twis". 211 */ 212 compatible = "nordic,nrf-twim"; 213 #address-cells = <1>; 214 #size-cells = <0>; 215 reg = <0xc000 0x1000>; 216 clock-frequency = <I2C_BITRATE_STANDARD>; 217 interrupts = <12 NRF_DEFAULT_IRQ_PRIORITY>; 218 easydma-maxcnt-bits = <16>; 219 status = "disabled"; 220}; 221 222spi3: spi@c000 { 223 /* 224 * This spi node can be either SPIM or SPIS, 225 * for the user to pick: 226 * compatible = "nordic,nrf-spim" or 227 * "nordic,nrf-spis". 228 */ 229 compatible = "nordic,nrf-spim"; 230 #address-cells = <1>; 231 #size-cells = <0>; 232 reg = <0xc000 0x1000>; 233 interrupts = <12 NRF_DEFAULT_IRQ_PRIORITY>; 234 max-frequency = <DT_FREQ_M(8)>; 235 easydma-maxcnt-bits = <16>; 236 status = "disabled"; 237}; 238 239uart3: uart@c000 { 240 compatible = "nordic,nrf-uarte"; 241 reg = <0xc000 0x1000>; 242 interrupts = <12 NRF_DEFAULT_IRQ_PRIORITY>; 243 status = "disabled"; 244}; 245 246adc: adc@e000 { 247 compatible = "nordic,nrf-saadc"; 248 reg = <0xe000 0x1000>; 249 interrupts = <14 NRF_DEFAULT_IRQ_PRIORITY>; 250 status = "disabled"; 251 #io-channel-cells = <1>; 252}; 253 254timer0: timer@f000 { 255 compatible = "nordic,nrf-timer"; 256 status = "disabled"; 257 reg = <0xf000 0x1000>; 258 cc-num = <6>; 259 max-bit-width = <32>; 260 interrupts = <15 NRF_DEFAULT_IRQ_PRIORITY>; 261 prescaler = <0>; 262}; 263 264timer1: timer@10000 { 265 compatible = "nordic,nrf-timer"; 266 status = "disabled"; 267 reg = <0x10000 0x1000>; 268 cc-num = <6>; 269 max-bit-width = <32>; 270 interrupts = <16 NRF_DEFAULT_IRQ_PRIORITY>; 271 prescaler = <0>; 272}; 273 274timer2: timer@11000 { 275 compatible = "nordic,nrf-timer"; 276 status = "disabled"; 277 reg = <0x11000 0x1000>; 278 cc-num = <6>; 279 max-bit-width = <32>; 280 interrupts = <17 NRF_DEFAULT_IRQ_PRIORITY>; 281 prescaler = <0>; 282}; 283 284rtc0: rtc@14000 { 285 compatible = "nordic,nrf-rtc"; 286 reg = <0x14000 0x1000>; 287 cc-num = <4>; 288 interrupts = <20 NRF_DEFAULT_IRQ_PRIORITY>; 289 status = "disabled"; 290 clock-frequency = <32768>; 291 prescaler = <1>; 292}; 293 294rtc1: rtc@15000 { 295 compatible = "nordic,nrf-rtc"; 296 reg = <0x15000 0x1000>; 297 cc-num = <4>; 298 interrupts = <21 NRF_DEFAULT_IRQ_PRIORITY>; 299 status = "disabled"; 300 clock-frequency = <32768>; 301 prescaler = <1>; 302}; 303 304dppic: dppic@17000 { 305 compatible = "nordic,nrf-dppic"; 306 reg = <0x17000 0x1000>; 307 status = "okay"; 308}; 309 310wdt: wdt0: watchdog@18000 { 311 compatible = "nordic,nrf-wdt"; 312 reg = <0x18000 0x1000>; 313 interrupts = <24 NRF_DEFAULT_IRQ_PRIORITY>; 314 status = "okay"; 315}; 316 317wdt1: watchdog@19000 { 318 compatible = "nordic,nrf-wdt"; 319 reg = <0x19000 0x1000>; 320 interrupts = <25 NRF_DEFAULT_IRQ_PRIORITY>; 321 status = "disabled"; 322}; 323 324comp: comparator@1a000 { 325 /* 326 * This comparator node can be COMP or LPCOMP, 327 * for the user to pick: 328 * compatible = "nordic,nrf-comp" or 329 * "nordic,nrf-lpcomp". 330 */ 331 compatible = "nordic,nrf-comp"; 332 reg = <0x1a000 0x1000>; 333 interrupts = <26 NRF_DEFAULT_IRQ_PRIORITY>; 334 status = "disabled"; 335 #io-channel-cells = <1>; 336}; 337 338egu0: egu@1b000 { 339 compatible = "nordic,nrf-egu"; 340 reg = <0x1b000 0x1000>; 341 interrupts = <27 NRF_DEFAULT_IRQ_PRIORITY>; 342 status = "okay"; 343}; 344 345egu1: egu@1c000 { 346 compatible = "nordic,nrf-egu"; 347 reg = <0x1c000 0x1000>; 348 interrupts = <28 NRF_DEFAULT_IRQ_PRIORITY>; 349 status = "okay"; 350}; 351 352egu2: egu@1d000 { 353 compatible = "nordic,nrf-egu"; 354 reg = <0x1d000 0x1000>; 355 interrupts = <29 NRF_DEFAULT_IRQ_PRIORITY>; 356 status = "okay"; 357}; 358 359egu3: egu@1e000 { 360 compatible = "nordic,nrf-egu"; 361 reg = <0x1e000 0x1000>; 362 interrupts = <30 NRF_DEFAULT_IRQ_PRIORITY>; 363 status = "okay"; 364}; 365 366egu4: egu@1f000 { 367 compatible = "nordic,nrf-egu"; 368 reg = <0x1f000 0x1000>; 369 interrupts = <31 NRF_DEFAULT_IRQ_PRIORITY>; 370 status = "okay"; 371}; 372 373egu5: egu@20000 { 374 compatible = "nordic,nrf-egu"; 375 reg = <0x20000 0x1000>; 376 interrupts = <32 NRF_DEFAULT_IRQ_PRIORITY>; 377 status = "okay"; 378}; 379 380pwm0: pwm@21000 { 381 compatible = "nordic,nrf-pwm"; 382 reg = <0x21000 0x1000>; 383 interrupts = <33 NRF_DEFAULT_IRQ_PRIORITY>; 384 status = "disabled"; 385 #pwm-cells = <3>; 386}; 387 388pwm1: pwm@22000 { 389 compatible = "nordic,nrf-pwm"; 390 reg = <0x22000 0x1000>; 391 interrupts = <34 NRF_DEFAULT_IRQ_PRIORITY>; 392 status = "disabled"; 393 #pwm-cells = <3>; 394}; 395 396pwm2: pwm@23000 { 397 compatible = "nordic,nrf-pwm"; 398 reg = <0x23000 0x1000>; 399 interrupts = <35 NRF_DEFAULT_IRQ_PRIORITY>; 400 status = "disabled"; 401 #pwm-cells = <3>; 402}; 403 404pwm3: pwm@24000 { 405 compatible = "nordic,nrf-pwm"; 406 reg = <0x24000 0x1000>; 407 interrupts = <36 NRF_DEFAULT_IRQ_PRIORITY>; 408 status = "disabled"; 409 #pwm-cells = <3>; 410}; 411 412pdm0: pdm@26000 { 413 compatible = "nordic,nrf-pdm"; 414 reg = <0x26000 0x1000>; 415 interrupts = <38 NRF_DEFAULT_IRQ_PRIORITY>; 416 status = "disabled"; 417}; 418 419i2s0: i2s@28000 { 420 compatible = "nordic,nrf-i2s"; 421 #address-cells = <1>; 422 #size-cells = <0>; 423 reg = <0x28000 0x1000>; 424 interrupts = <40 NRF_DEFAULT_IRQ_PRIORITY>; 425 status = "disabled"; 426}; 427 428mbox: ipc: mbox@2a000 { 429 compatible = "nordic,mbox-nrf-ipc", "nordic,nrf-ipc"; 430 reg = <0x2a000 0x1000>; 431 tx-mask = <0x0000ffff>; 432 rx-mask = <0x0000ffff>; 433 interrupts = <42 NRF_DEFAULT_IRQ_PRIORITY>; 434 #mbox-cells = <1>; 435 status = "okay"; 436}; 437 438qspi: qspi@2b000 { 439 compatible = "nordic,nrf-qspi"; 440 #address-cells = <1>; 441 #size-cells = <0>; 442 reg = <0x2b000 0x1000>, <0x10000000 0x10000000>; 443 reg-names = "qspi", "qspi_mm"; 444 interrupts = <43 NRF_DEFAULT_IRQ_PRIORITY>; 445 status = "disabled"; 446}; 447 448nfct: nfct@2d000 { 449 compatible = "nordic,nrf-nfct"; 450 reg = <0x2d000 0x1000>; 451 interrupts = <45 NRF_DEFAULT_IRQ_PRIORITY>; 452 status = "disabled"; 453}; 454 455mutex: mutex@30000 { 456 compatible = "nordic,nrf-mutex"; 457 reg = <0x30000 0x1000>; 458 status = "okay"; 459}; 460 461qdec0: qdec@33000 { 462 compatible = "nordic,nrf-qdec"; 463 reg = <0x33000 0x1000>; 464 interrupts = <51 NRF_DEFAULT_IRQ_PRIORITY>; 465 status = "disabled"; 466}; 467 468qdec1: qdec@34000 { 469 compatible = "nordic,nrf-qdec"; 470 reg = <0x34000 0x1000>; 471 interrupts = <52 NRF_DEFAULT_IRQ_PRIORITY>; 472 status = "disabled"; 473}; 474 475usbd: usbd@36000 { 476 compatible = "nordic,nrf-usbd"; 477 reg = <0x36000 0x1000>; 478 interrupts = <54 NRF_DEFAULT_IRQ_PRIORITY>; 479 num-bidir-endpoints = <1>; 480 num-in-endpoints = <7>; 481 num-out-endpoints = <7>; 482 num-isoin-endpoints = <1>; 483 num-isoout-endpoints = <1>; 484 status = "disabled"; 485}; 486 487usbreg: regulator@37000 { 488 compatible = "nordic,nrf-usbreg"; 489 reg = <0x37000 0x1000>; 490 interrupts = <55 NRF_DEFAULT_IRQ_PRIORITY>; 491 status = "okay"; 492}; 493 494flash_controller: flash-controller@39000 { 495 compatible = "nordic,nrf53-flash-controller"; 496 reg = <0x39000 0x1000>; 497 partial-erase; 498 499 #address-cells = <1>; 500 #size-cells = <1>; 501 502 503 flash0: flash@0 { 504 compatible = "soc-nv-flash"; 505 erase-block-size = <4096>; 506 write-block-size = <4>; 507 }; 508}; 509 510kmu: kmu@39000 { 511 compatible = "nordic,nrf-kmu"; 512 reg = <0x39000 0x1000>; 513 interrupts = <57 NRF_DEFAULT_IRQ_PRIORITY>; 514 status = "okay"; 515}; 516 517vmc: vmc@81000 { 518 compatible = "nordic,nrf-vmc"; 519 reg = <0x81000 0x1000>; 520 status = "okay"; 521}; 522 523gpio0: gpio@842500 { 524 compatible = "nordic,nrf-gpio"; 525 gpio-controller; 526 reg = <0x842500 0x300>; 527 #gpio-cells = <2>; 528 status = "disabled"; 529 port = <0>; 530 gpiote-instance = <&gpiote>; 531}; 532 533gpio1: gpio@842800 { 534 compatible = "nordic,nrf-gpio"; 535 gpio-controller; 536 reg = <0x842800 0x300>; 537 #gpio-cells = <2>; 538 ngpios = <16>; 539 status = "disabled"; 540 port = <1>; 541 gpiote-instance = <&gpiote>; 542}; 543 544ieee802154: ieee802154 { 545 compatible = "nordic,nrf-ieee802154"; 546 status = "disabled"; 547}; 548