| /* |
| * Copyright (c) 2017 Piotr Mienkowski |
| * Copyright (c) 2017 Justin Watson |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| #include <arm/armv7-m.dtsi> |
| #include <dt-bindings/i2c/i2c.h> |
| #include <dt-bindings/gpio/gpio.h> |
| |
| #include "same70-pinctrl.dtsi" |
| |
| / { |
| aliases { |
| watchdog0 = &wdt; |
| }; |
| |
| chosen { |
| zephyr,flash-controller = &eefc; |
| }; |
| |
| chosen { |
| zephyr,entropy = &trng; |
| }; |
| |
| cpus { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| cpu0: cpu@0 { |
| device_type = "cpu"; |
| compatible = "arm,cortex-m7"; |
| reg = <0>; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| mpu: mpu@e000ed90 { |
| compatible = "arm,armv7m-mpu"; |
| reg = <0xe000ed90 0x40>; |
| arm,num-mpu-regions = <16>; |
| }; |
| }; |
| }; |
| |
| sram0: memory@20400000 { |
| compatible = "mmio-sram"; |
| }; |
| |
| soc { |
| eefc: flash-controller@400e0c00 { |
| compatible = "atmel,sam-flash-controller"; |
| label = "FLASH_CTRL"; |
| reg = <0x400e0c00 0x200>; |
| interrupts = <6 0>; |
| peripheral-id = <6>; |
| |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| flash0: flash@400000 { |
| compatible = "soc-nv-flash"; |
| label = "FLASH_E70"; |
| |
| write-block-size = <16>; |
| erase-block-size = <8192>; |
| }; |
| |
| }; |
| |
| wdt: watchdog@400e1850 { |
| compatible = "atmel,sam-watchdog"; |
| reg = <0x400e1850 0xc>; |
| interrupts = <4 0>; |
| peripheral-id = <4>; |
| label = "WATCHDOG_0"; |
| status = "disabled"; |
| }; |
| |
| twihs0: i2c@40018000 { |
| compatible = "atmel,sam-i2c-twihs"; |
| clock-frequency = <I2C_BITRATE_STANDARD>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0x40018000 0x12B>; |
| interrupts = <19 0>; |
| peripheral-id = <19>; |
| label = "I2C_0"; |
| status = "disabled"; |
| pinctrl-0 = <&pa4a_twihs0_twck0 &pa3a_twihs0_twd0>; |
| }; |
| |
| twihs1: i2c@4001c000 { |
| compatible = "atmel,sam-i2c-twihs"; |
| clock-frequency = <I2C_BITRATE_STANDARD>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0x4001c000 0x12B>; |
| interrupts = <20 0>; |
| peripheral-id = <20>; |
| label = "I2C_1"; |
| status = "disabled"; |
| pinctrl-0 = <&pb5a_twihs1_twck1 &pb4a_twihs1_twd1>; |
| }; |
| |
| twihs2: i2c@40060000 { |
| compatible = "atmel,sam-i2c-twihs"; |
| clock-frequency = <I2C_BITRATE_STANDARD>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0x40060000 0x12B>; |
| interrupts = <41 0>; |
| peripheral-id = <41>; |
| label = "I2C_2"; |
| status = "disabled"; |
| pinctrl-0 = <&pd28c_twihs2_twck2 &pd27c_twihs2_twd2>; |
| }; |
| |
| spi0: spi@40008000 { |
| compatible = "atmel,sam-spi"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0x40008000 0x4000>; |
| interrupts = <21 0>; |
| peripheral-id = <21>; |
| label = "SPI_0"; |
| status = "disabled"; |
| pinctrl-0 = <&pd20b_spi0_miso &pd21b_spi0_mosi &pd22b_spi0_spck>; |
| }; |
| |
| spi1: spi@40058000 { |
| compatible = "atmel,sam-spi"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0x40058000 0x4000>; |
| interrupts = <42 0>; |
| peripheral-id = <42>; |
| label = "SPI_1"; |
| status = "disabled"; |
| pinctrl-0 = <&pc26c_spi1_miso &pc27c_spi1_mosi &pc24c_spi1_spck>; |
| }; |
| |
| uart0: uart@400e0800 { |
| compatible = "atmel,sam-uart"; |
| reg = <0x400e0800 0x100>; |
| interrupts = <7 1>; |
| peripheral-id = <7>; |
| status = "disabled"; |
| label = "UART_0"; |
| pinctrl-0 = <&pa9a_uart0_urxd0 &pa10a_uart0_utxd0>; |
| }; |
| |
| uart1: uart@400e0a00 { |
| compatible = "atmel,sam-uart"; |
| reg = <0x400e0a00 0x100>; |
| interrupts = <8 1>; |
| peripheral-id = <8>; |
| status = "disabled"; |
| label = "UART_1"; |
| }; |
| |
| uart2: uart@400e1a00 { |
| compatible = "atmel,sam-uart"; |
| reg = <0x400e1a00 0x100>; |
| interrupts = <44 1>; |
| peripheral-id = <44>; |
| status = "disabled"; |
| label = "UART_2"; |
| }; |
| |
| uart3: uart@400e1c00 { |
| compatible = "atmel,sam-uart"; |
| reg = <0x400e1c00 0x100>; |
| interrupts = <45 1>; |
| peripheral-id = <45>; |
| status = "disabled"; |
| label = "UART_3"; |
| }; |
| |
| uart4: uart@400e1e00 { |
| compatible = "atmel,sam-uart"; |
| reg = <0x400e1e00 0x100>; |
| interrupts = <46 1>; |
| peripheral-id = <46>; |
| status = "disabled"; |
| label = "UART_4"; |
| }; |
| |
| usart0: usart@40024000 { |
| compatible = "atmel,sam-usart"; |
| reg = <0x40024000 0x100>; |
| interrupts = <13 0>; |
| peripheral-id = <13>; |
| status = "disabled"; |
| label = "USART_0"; |
| pinctrl-0 = <&pb0c_usart0_rxd0 &pb1c_usart0_txd0>; |
| }; |
| |
| usart1: usart@40028000 { |
| compatible = "atmel,sam-usart"; |
| reg = <0x40028000 0x100>; |
| interrupts = <14 0>; |
| peripheral-id = <14>; |
| status = "disabled"; |
| label = "USART_1"; |
| pinctrl-0 = <&pa21a_usart1_rxd1 &pb4d_usart1_txd1>; |
| }; |
| |
| usart2: usart@4002c000 { |
| compatible = "atmel,sam-usart"; |
| reg = <0x4002c000 0x100>; |
| interrupts = <15 0>; |
| peripheral-id = <15>; |
| status = "disabled"; |
| label = "USART_2"; |
| pinctrl-0 = <&pd15b_usart2_rxd2 &pd16b_usart2_txd2>; |
| }; |
| |
| afec0: adc@4003c000 { |
| compatible = "atmel,sam-afec"; |
| reg = <0x4003c000 0x100>; |
| interrupts = <29 0>; |
| peripheral-id = <29>; |
| status = "disabled"; |
| label = "ADC_0"; |
| #io-channel-cells = <1>; |
| pinctrl-0 = <&pa8b_afec0_adtrg>; |
| }; |
| |
| afec1: adc@40064000 { |
| compatible = "atmel,sam-afec"; |
| reg = <0x40064000 0x100>; |
| interrupts = <40 0>; |
| peripheral-id = <40>; |
| status = "disabled"; |
| label = "ADC_1"; |
| #io-channel-cells = <1>; |
| pinctrl-0 = <&pd9c_afec1_adtrg>; |
| }; |
| |
| pinctrl@400e0e00 { |
| compatible = "atmel,sam-pinctrl"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| ranges = <0x400e0e00 0x400e0e00 0xa00>; |
| |
| pioa: gpio@400e0e00 { |
| compatible = "atmel,sam-gpio"; |
| reg = <0x400e0e00 0x190>; |
| interrupts = <10 1>; |
| peripheral-id = <10>; |
| label = "PORTA"; |
| gpio-controller; |
| #gpio-cells = <2>; |
| #atmel,pin-cells = <2>; |
| }; |
| |
| piob: gpio@400e1000 { |
| compatible = "atmel,sam-gpio"; |
| reg = <0x400e1000 0x190>; |
| interrupts = <11 1>; |
| peripheral-id = <11>; |
| label = "PORTB"; |
| gpio-controller; |
| #gpio-cells = <2>; |
| #atmel,pin-cells = <2>; |
| }; |
| |
| pioc: gpio@400e1200 { |
| compatible = "atmel,sam-gpio"; |
| reg = <0x400e1200 0x190>; |
| interrupts = <12 1>; |
| peripheral-id = <12>; |
| label = "PORTC"; |
| gpio-controller; |
| #gpio-cells = <2>; |
| #atmel,pin-cells = <2>; |
| }; |
| |
| piod: gpio@400e1400 { |
| compatible = "atmel,sam-gpio"; |
| reg = <0x400e1400 0x190>; |
| interrupts = <16 1>; |
| peripheral-id = <16>; |
| label = "PORTD"; |
| gpio-controller; |
| #gpio-cells = <2>; |
| #atmel,pin-cells = <2>; |
| }; |
| |
| pioe: gpio@400e1600 { |
| compatible = "atmel,sam-gpio"; |
| reg = <0x400e1600 0x190>; |
| interrupts = <17 1>; |
| peripheral-id = <17>; |
| label = "PORTE"; |
| gpio-controller; |
| #gpio-cells = <2>; |
| #atmel,pin-cells = <2>; |
| }; |
| }; |
| |
| pwm0: pwm0@40020000 { |
| compatible = "atmel,sam-pwm"; |
| reg = <0x40020000 0x4000>; |
| interrupts = <31 0>; |
| peripheral-id = <31>; |
| status = "disabled"; |
| label = "PWM_0"; |
| prescaler = <10>; |
| divider = <1>; |
| #pwm-cells = <2>; |
| }; |
| |
| pwm1: pwm1@4005c000 { |
| compatible = "atmel,sam-pwm"; |
| reg = <0x4005c000 0x4000>; |
| interrupts = <60 0>; |
| peripheral-id = <60>; |
| status = "disabled"; |
| label = "PWM_1"; |
| prescaler = <10>; |
| divider = <1>; |
| #pwm-cells = <2>; |
| }; |
| |
| usbhs: usbd@40038000 { |
| compatible = "atmel,sam-usbhs"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0x40038000 0x4000>; |
| interrupts = <34 0>; |
| interrupt-names = "usbhs"; |
| maximum-speed = "full-speed"; |
| num-bidir-endpoints = <10>; |
| peripheral-id = <34>; |
| status = "disabled"; |
| label = "USBHS"; |
| }; |
| |
| gmac: ethernet@40050088 { |
| compatible = "atmel,sam-gmac"; |
| reg = <0x40050088 0x4000>; |
| interrupts = <39 0>, <66 0>, <67 0>; |
| interrupt-names = "gmac", "q1", "q2"; |
| num-queues = <3>; |
| local-mac-address = [00 00 00 00 00 00]; |
| label = "GMAC"; |
| status = "disabled"; |
| /* Default to RMII config */ |
| pinctrl-0 = <&pd0a_gmac_gtxck &pd1a_gmac_gtxen |
| &pd2a_gmac_gtx0 &pd3a_gmac_gtx1 |
| &pd4a_gmac_grxdv &pd5a_gmac_grx0 |
| &pd6a_gmac_grx1 &pd7a_gmac_grxer |
| &pd8a_gmac_gmdc &pd9a_gmac_gmdio>; |
| }; |
| |
| tc0: tc@4000c000 { |
| compatible = "atmel,sam-tc"; |
| reg = <0x4000c000 0x100>; |
| interrupts = <23 0 |
| 24 0 |
| 25 0>; |
| peripheral-id = <23 24 25>; |
| status = "disabled"; |
| label = "TC0"; |
| }; |
| |
| tc1: tc@40010000 { |
| compatible = "atmel,sam-tc"; |
| reg = <0x40010000 0x100>; |
| interrupts = <26 0 |
| 27 0 |
| 28 0>; |
| peripheral-id = <26 27 28>; |
| status = "disabled"; |
| label = "TC1"; |
| }; |
| |
| tc2: tc@40014000 { |
| compatible = "atmel,sam-tc"; |
| reg = <0x40014000 0x100>; |
| interrupts = <47 0 |
| 48 0 |
| 49 0>; |
| peripheral-id = <47 48 49>; |
| status = "disabled"; |
| label = "TC2"; |
| }; |
| |
| tc3: tc@40054000 { |
| compatible = "atmel,sam-tc"; |
| reg = <0x40054000 0x100>; |
| interrupts = <50 0 |
| 51 0 |
| 52 0>; |
| peripheral-id = <50 51 52>; |
| status = "disabled"; |
| label = "TC3"; |
| }; |
| |
| trng: random@40070000 { |
| compatible = "atmel,sam-trng"; |
| reg = <0x40070000 0x4000>; |
| interrupts = <57 0>; |
| peripheral-id = <57>; |
| status = "okay"; |
| label = "TRNG"; |
| }; |
| |
| xdmac: dma-controller@40078000 { |
| compatible = "atmel,sam-xdmac"; |
| reg = <0x40078000 0x400>; |
| interrupts = <58 0>; |
| peripheral-id = <58>; |
| label = "DMA_0"; |
| #dma-cells = <2>; |
| }; |
| |
| ssc: ssc@40004000 { |
| compatible = "atmel,sam-ssc"; |
| reg = <0x40004000 0x400>; |
| interrupts = <22 0>; |
| peripheral-id = <22>; |
| label = "SSC_0"; |
| status = "disabled"; |
| }; |
| }; |
| }; |
| |
| &nvic { |
| arm,num-irq-priority-bits = <3>; |
| }; |