/* * Copyright (c) 2019 Gerson Fernando Budke * * SPDX-License-Identifier: Apache-2.0 */ #include #include #include #include #include / { aliases { watchdog0 = &wdt; }; chosen { zephyr,flash-controller = &eefc; }; cpus { #address-cells = <1>; #size-cells = <0>; cpu0: cpu@0 { device_type = "cpu"; compatible = "arm,cortex-m4f"; reg = <0>; #address-cells = <1>; #size-cells = <1>; mpu: mpu@e000ed90 { compatible = "arm,armv7m-mpu"; reg = <0xe000ed90 0x40>; arm,num-mpu-regions = <8>; }; }; }; soc { pmc: pmc@400e0400 { compatible = "atmel,sam-pmc"; reg = <0x400e0400 0x200>; interrupts = <5 0>; #clock-cells = <2>; status = "okay"; }; sram0: memory@20000000 { compatible = "mmio-sram"; }; afec0: adc@400b0000 { compatible = "atmel,sam-afec"; reg = <0x400b0000 0x4000>; interrupts = <30 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 30>; status = "disabled"; #io-channel-cells = <1>; }; afec1: adc@400b4000 { compatible = "atmel,sam-afec"; reg = <0x400b4000 0x4000>; interrupts = <31 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 31>; status = "disabled"; #io-channel-cells = <1>; }; eefc: flash-controller@400e0a00 { compatible = "atmel,sam-flash-controller"; reg = <0x400e0a00 0x200>; clocks = <&pmc PMC_TYPE_PERIPHERAL 6>; #address-cells = <1>; #size-cells = <1>; flash0: flash@400000 { compatible = "soc-nv-flash"; write-block-size = <16>; erase-block-size = <8192>; }; }; wdt: watchdog@400e1850 { compatible = "atmel,sam-watchdog"; reg = <0x400e1850 0x10>; interrupts = <4 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 4>; status = "disabled"; }; twi0: i2c@400a8000 { compatible = "atmel,sam-i2c-twi"; clock-frequency = ; reg = <0x400a8000 0x4000>; interrupts = <17 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 17>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; }; twi1: i2c@400ac000 { compatible = "atmel,sam-i2c-twi"; clock-frequency = ; reg = <0x400ac000 0x4000>; interrupts = <18 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 18>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; }; spi0: spi@40088000 { compatible = "atmel,sam-spi"; #address-cells = <1>; #size-cells = <0>; reg = <0x40088000 0x4000>; interrupts = <19 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 19>; status = "disabled"; }; uart0: uart@400e0600 { compatible = "atmel,sam-uart"; reg = <0x400e0600 0x140>; interrupts = <7 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 7>; status = "disabled"; }; uart1: uart@40060600 { compatible = "atmel,sam-uart"; reg = <0x40060600 0x200>; interrupts = <45 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 45>; status = "disabled"; }; usart0: usart@400a0000 { compatible = "atmel,sam-usart"; reg = <0x400a0000 0x4000>; interrupts = <14 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 14>; status = "disabled"; }; usart1: usart@400a4000 { compatible = "atmel,sam-usart"; reg = <0x400a4000 0x4000>; interrupts = <15 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 15>; status = "disabled"; }; gmac: ethernet@40034000 { compatible = "atmel,sam-gmac"; reg = <0x40034000 0x4000>; clocks = <&pmc PMC_TYPE_PERIPHERAL 44>; interrupts = <44 0>; interrupt-names = "gmac"; num-queues = <1>; phy-connection-type = "mii"; status = "disabled"; }; mdio: mdio@40034000 { compatible = "atmel,sam-mdio"; reg = <0x40034000 0x4000>; status = "disabled"; #address-cells = <1>; #size-cells = <0>; }; pinctrl: pinctrl@400e0e00 { compatible = "atmel,sam-pinctrl"; #address-cells = <1>; #size-cells = <1>; ranges = <0x400e0e00 0x400e0e00 0xa00>; status = "okay"; pioa: gpio@400e0e00 { compatible = "atmel,sam-gpio"; reg = <0x400e0e00 0x200>; interrupts = <9 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 9>; gpio-controller; #gpio-cells = <2>; #atmel,pin-cells = <2>; }; piob: gpio@400e1000 { compatible = "atmel,sam-gpio"; reg = <0x400e1000 0x200>; interrupts = <10 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 10>; gpio-controller; #gpio-cells = <2>; #atmel,pin-cells = <2>; }; pioc: gpio@400e1200 { compatible = "atmel,sam-gpio"; reg = <0x400e1200 0x200>; interrupts = <11 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 11>; gpio-controller; #gpio-cells = <2>; #atmel,pin-cells = <2>; }; piod: gpio@400e1400 { compatible = "atmel,sam-gpio"; reg = <0x400e1400 0x200>; interrupts = <12 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 12>; gpio-controller; #gpio-cells = <2>; #atmel,pin-cells = <2>; }; pioe: gpio@400e1600 { compatible = "atmel,sam-gpio"; reg = <0x400e1600 0x200>; interrupts = <13 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 13>; gpio-controller; #gpio-cells = <2>; #atmel,pin-cells = <2>; }; }; tc0: tc@40090000 { compatible = "atmel,sam-tc"; reg = <0x40090000 0x100>; interrupts = <21 0 22 0 23 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 21>, <&pmc PMC_TYPE_PERIPHERAL 22>, <&pmc PMC_TYPE_PERIPHERAL 23>; status = "disabled"; }; tc1: tc@40094000 { compatible = "atmel,sam-tc"; reg = <0x40094000 0x100>; interrupts = <24 0 25 0 26 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 24>, <&pmc PMC_TYPE_PERIPHERAL 25>, <&pmc PMC_TYPE_PERIPHERAL 26>; status = "disabled"; }; tc2: tc@40098000 { compatible = "atmel,sam-tc"; reg = <0x40098000 0x100>; interrupts = <27 0 28 0 29 0>; clocks = <&pmc PMC_TYPE_PERIPHERAL 27>, <&pmc PMC_TYPE_PERIPHERAL 28>, <&pmc PMC_TYPE_PERIPHERAL 29>; status = "disabled"; }; pwm0: pwm@40000000 { compatible = "atmel,sam-pwm"; reg = <0x40000000 0x4000>; interrupts = <36 1>; clocks = <&pmc PMC_TYPE_PERIPHERAL 36>; prescaler = <10>; divider = <1>; #pwm-cells = <3>; status = "disabled"; }; rstc: rstc@400e1800 { compatible = "atmel,sam-rstc"; reg = <0x400e1800 0x10>; clocks = <&pmc PMC_TYPE_PERIPHERAL 1>; user-nrst; }; smc: smc@40060000 { compatible = "atmel,sam-smc"; #address-cells = <1>; #size-cells = <0>; reg = <0x40060000 0x200>; clocks = <&pmc PMC_TYPE_PERIPHERAL 8>; status = "disabled"; }; hsmci: hsmci@40080000 { compatible = "atmel,sam-hsmci"; reg = <0x40080000 0x1000>; clocks = <&pmc PMC_TYPE_PERIPHERAL 16>; status = "disabled"; }; }; }; &nvic { arm,num-irq-priority-bits = <4>; };