123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731 |
- // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
- /*
- * sam9x60.dtsi - Device Tree Include file for Microchip SAM9X60 SoC
- *
- * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries
- *
- * Author: Sandeep Sheriker M <[email protected]>
- */
- #include <dt-bindings/dma/at91.h>
- #include <dt-bindings/pinctrl/at91.h>
- #include <dt-bindings/interrupt-controller/irq.h>
- #include <dt-bindings/gpio/gpio.h>
- #include <dt-bindings/clock/at91.h>
- #include <dt-bindings/mfd/at91-usart.h>
- #include <dt-bindings/mfd/atmel-flexcom.h>
- / {
- #address-cells = <1>;
- #size-cells = <1>;
- model = "Microchip SAM9X60 SoC";
- compatible = "microchip,sam9x60";
- interrupt-parent = <&aic>;
- aliases {
- serial0 = &dbgu;
- gpio0 = &pioA;
- gpio1 = &pioB;
- gpio2 = &pioC;
- gpio3 = &pioD;
- tcb0 = &tcb0;
- tcb1 = &tcb1;
- };
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
- cpu@0 {
- compatible = "arm,arm926ej-s";
- device_type = "cpu";
- reg = <0>;
- };
- };
- memory@20000000 {
- device_type = "memory";
- reg = <0x20000000 0x10000000>;
- };
- clocks {
- slow_xtal: slow_xtal {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- };
- main_xtal: main_xtal {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- };
- };
- sram: sram@300000 {
- compatible = "mmio-sram";
- reg = <0x00300000 0x100000>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0 0x00300000 0x100000>;
- };
- ahb {
- compatible = "simple-bus";
- #address-cells = <1>;
- #size-cells = <1>;
- ranges;
- usb0: gadget@500000 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "microchip,sam9x60-udc";
- reg = <0x00500000 0x100000
- 0xf803c000 0x400>;
- interrupts = <23 IRQ_TYPE_LEVEL_HIGH 2>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 23>, <&pmc PMC_TYPE_CORE PMC_UTMI>;
- clock-names = "pclk", "hclk";
- assigned-clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>;
- assigned-clock-rates = <480000000>;
- status = "disabled";
- };
- usb1: ohci@600000 {
- compatible = "atmel,at91rm9200-ohci", "usb-ohci";
- reg = <0x00600000 0x100000>;
- interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 22>, <&pmc PMC_TYPE_PERIPHERAL 22>, <&pmc PMC_TYPE_SYSTEM 6>;
- clock-names = "ohci_clk", "hclk", "uhpck";
- status = "disabled";
- };
- usb2: ehci@700000 {
- compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
- reg = <0x00700000 0x100000>;
- interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
- clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>, <&pmc PMC_TYPE_PERIPHERAL 22>;
- clock-names = "usb_clk", "ehci_clk";
- assigned-clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>;
- assigned-clock-rates = <480000000>;
- status = "disabled";
- };
- ebi: ebi@10000000 {
- compatible = "microchip,sam9x60-ebi";
- #address-cells = <2>;
- #size-cells = <1>;
- atmel,smc = <&smc>;
- microchip,sfr = <&sfr>;
- reg = <0x10000000 0x60000000>;
- ranges = <0x0 0x0 0x10000000 0x10000000
- 0x1 0x0 0x20000000 0x10000000
- 0x2 0x0 0x30000000 0x10000000
- 0x3 0x0 0x40000000 0x10000000
- 0x4 0x0 0x50000000 0x10000000
- 0x5 0x0 0x60000000 0x10000000>;
- clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
- status = "disabled";
- nand_controller: nand-controller {
- compatible = "microchip,sam9x60-nand-controller";
- ecc-engine = <&pmecc>;
- #address-cells = <2>;
- #size-cells = <1>;
- ranges;
- status = "disabled";
- };
- };
- sdmmc0: sdio-host@80000000 {
- compatible = "microchip,sam9x60-sdhci";
- reg = <0x80000000 0x300>;
- interrupts = <12 IRQ_TYPE_LEVEL_HIGH 0>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 12>, <&pmc PMC_TYPE_GCK 12>;
- clock-names = "hclock", "multclk";
- assigned-clocks = <&pmc PMC_TYPE_GCK 12>;
- assigned-clock-rates = <100000000>;
- status = "disabled";
- };
- sdmmc1: sdio-host@90000000 {
- compatible = "microchip,sam9x60-sdhci";
- reg = <0x90000000 0x300>;
- interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 26>, <&pmc PMC_TYPE_GCK 26>;
- clock-names = "hclock", "multclk";
- assigned-clocks = <&pmc PMC_TYPE_GCK 26>;
- assigned-clock-rates = <100000000>;
- status = "disabled";
- };
- apb {
- compatible = "simple-bus";
- #address-cells = <1>;
- #size-cells = <1>;
- ranges;
- flx4: flexcom@f0000000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf0000000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf0000000 0x800>;
- status = "disabled";
- };
- flx5: flexcom@f0004000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf0004000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 14>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf0004000 0x800>;
- status = "disabled";
- };
- dma0: dma-controller@f0008000 {
- compatible = "microchip,sam9x60-dma", "atmel,sama5d4-dma";
- reg = <0xf0008000 0x1000>;
- interrupts = <20 IRQ_TYPE_LEVEL_HIGH 0>;
- #dma-cells = <1>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 20>;
- clock-names = "dma_clk";
- };
- ssc: ssc@f0010000 {
- compatible = "atmel,at91sam9g45-ssc";
- reg = <0xf0010000 0x4000>;
- interrupts = <28 IRQ_TYPE_LEVEL_HIGH 5>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(38))>,
- <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(39))>;
- dma-names = "tx", "rx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 28>;
- clock-names = "pclk";
- status = "disabled";
- };
- qspi: spi@f0014000 {
- compatible = "microchip,sam9x60-qspi";
- reg = <0xf0014000 0x100>, <0x70000000 0x10000000>;
- reg-names = "qspi_base", "qspi_mmap";
- interrupts = <35 IRQ_TYPE_LEVEL_HIGH 7>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(26))>,
- <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(27))>;
- dma-names = "tx", "rx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 35>, <&pmc PMC_TYPE_SYSTEM 19>;
- clock-names = "pclk", "qspick";
- atmel,pmc = <&pmc>;
- #address-cells = <1>;
- #size-cells = <0>;
- status = "disabled";
- };
- i2s: i2s@f001c000 {
- compatible = "microchip,sam9x60-i2smcc";
- reg = <0xf001c000 0x100>;
- interrupts = <34 IRQ_TYPE_LEVEL_HIGH 7>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(36))>,
- <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(37))>;
- dma-names = "tx", "rx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 34>, <&pmc PMC_TYPE_GCK 34>;
- clock-names = "pclk", "gclk";
- status = "disabled";
- };
- flx11: flexcom@f0020000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf0020000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 32>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf0020000 0x800>;
- status = "disabled";
- };
- flx12: flexcom@f0024000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf0024000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 33>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf0024000 0x800>;
- status = "disabled";
- };
- pit64b: timer@f0028000 {
- compatible = "microchip,sam9x60-pit64b";
- reg = <0xf0028000 0x100>;
- interrupts = <37 IRQ_TYPE_LEVEL_HIGH 7>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 37>, <&pmc PMC_TYPE_GCK 37>;
- clock-names = "pclk", "gclk";
- };
- sha: crypto@f002c000 {
- compatible = "atmel,at91sam9g46-sha";
- reg = <0xf002c000 0x100>;
- interrupts = <41 IRQ_TYPE_LEVEL_HIGH 0>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(34))>;
- dma-names = "tx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 41>;
- clock-names = "sha_clk";
- };
- trng: trng@f0030000 {
- compatible = "microchip,sam9x60-trng";
- reg = <0xf0030000 0x100>;
- interrupts = <38 IRQ_TYPE_LEVEL_HIGH 0>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 38>;
- };
- aes: crypto@f0034000 {
- compatible = "atmel,at91sam9g46-aes";
- reg = <0xf0034000 0x100>;
- interrupts = <39 IRQ_TYPE_LEVEL_HIGH 0>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(32))>,
- <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(33))>;
- dma-names = "tx", "rx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 39>;
- clock-names = "aes_clk";
- };
- tdes: crypto@f0038000 {
- compatible = "atmel,at91sam9g46-tdes";
- reg = <0xf0038000 0x100>;
- interrupts = <40 IRQ_TYPE_LEVEL_HIGH 0>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(31))>,
- <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(30))>;
- dma-names = "tx", "rx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 40>;
- clock-names = "tdes_clk";
- };
- classd: classd@f003c000 {
- compatible = "atmel,sama5d2-classd";
- reg = <0xf003c000 0x100>;
- interrupts = <42 IRQ_TYPE_LEVEL_HIGH 7>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(35))>;
- dma-names = "tx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 42>, <&pmc PMC_TYPE_GCK 42>;
- clock-names = "pclk", "gclk";
- status = "disabled";
- };
- can0: can@f8000000 {
- compatible = "microchip,sam9x60-can", "atmel,at91sam9x5-can";
- reg = <0xf8000000 0x300>;
- interrupts = <29 IRQ_TYPE_LEVEL_HIGH 3>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 29>;
- clock-names = "can_clk";
- status = "disabled";
- };
- can1: can@f8004000 {
- compatible = "microchip,sam9x60-can", "atmel,at91sam9x5-can";
- reg = <0xf8004000 0x300>;
- interrupts = <30 IRQ_TYPE_LEVEL_HIGH 3>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 30>;
- clock-names = "can_clk";
- status = "disabled";
- };
- tcb0: timer@f8008000 {
- compatible = "microchip,sam9x60-tcb", "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0xf8008000 0x100>;
- interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 17>, <&clk32k 0>;
- clock-names = "t0_clk", "slow_clk";
- };
- tcb1: timer@f800c000 {
- compatible = "microchip,sam9x60-tcb", "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0xf800c000 0x100>;
- interrupts = <45 IRQ_TYPE_LEVEL_HIGH 0>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 45>, <&clk32k 0>;
- clock-names = "t0_clk", "slow_clk";
- };
- flx6: flexcom@f8010000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8010000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8010000 0x800>;
- status = "disabled";
- };
- flx7: flexcom@f8014000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8014000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 10>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8014000 0x800>;
- status = "disabled";
- };
- flx8: flexcom@f8018000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8018000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8018000 0x800>;
- status = "disabled";
- };
- flx0: flexcom@f801c000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf801c000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 5>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf801c000 0x800>;
- status = "disabled";
- };
- flx1: flexcom@f8020000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8020000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 6>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8020000 0x800>;
- status = "disabled";
- };
- flx2: flexcom@f8024000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8024000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 7>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8024000 0x800>;
- status = "disabled";
- };
- flx3: flexcom@f8028000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8028000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 8>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8028000 0x800>;
- status = "disabled";
- };
- macb0: ethernet@f802c000 {
- compatible = "cdns,sam9x60-macb", "cdns,macb";
- reg = <0xf802c000 0x1000>;
- interrupts = <24 IRQ_TYPE_LEVEL_HIGH 3>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 24>, <&pmc PMC_TYPE_PERIPHERAL 24>;
- clock-names = "hclk", "pclk";
- status = "disabled";
- };
- macb1: ethernet@f8030000 {
- compatible = "cdns,sam9x60-macb", "cdns,macb";
- reg = <0xf8030000 0x1000>;
- interrupts = <27 IRQ_TYPE_LEVEL_HIGH 3>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 27>, <&pmc PMC_TYPE_PERIPHERAL 27>;
- clock-names = "hclk", "pclk";
- status = "disabled";
- };
- pwm0: pwm@f8034000 {
- compatible = "microchip,sam9x60-pwm";
- reg = <0xf8034000 0x300>;
- interrupts = <18 IRQ_TYPE_LEVEL_HIGH 4>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 18>;
- #pwm-cells = <3>;
- status = "disabled";
- };
- hlcdc: hlcdc@f8038000 {
- compatible = "microchip,sam9x60-hlcdc";
- reg = <0xf8038000 0x4000>;
- interrupts = <25 IRQ_TYPE_LEVEL_HIGH 0>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 25>, <&pmc PMC_TYPE_GCK 25>, <&clk32k 1>;
- clock-names = "periph_clk","sys_clk", "slow_clk";
- assigned-clocks = <&pmc PMC_TYPE_GCK 25>;
- assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_MCK>;
- status = "disabled";
- hlcdc-display-controller {
- compatible = "atmel,hlcdc-display-controller";
- #address-cells = <1>;
- #size-cells = <0>;
- port@0 {
- #address-cells = <1>;
- #size-cells = <0>;
- reg = <0>;
- };
- };
- hlcdc_pwm: hlcdc-pwm {
- compatible = "atmel,hlcdc-pwm";
- #pwm-cells = <3>;
- };
- };
- flx9: flexcom@f8040000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8040000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 15>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8040000 0x800>;
- status = "disabled";
- };
- flx10: flexcom@f8044000 {
- compatible = "atmel,sama5d2-flexcom";
- reg = <0xf8044000 0x200>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 16>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x0 0xf8044000 0x800>;
- status = "disabled";
- };
- isi: isi@f8048000 {
- compatible = "microchip,sam9x60-isi", "atmel,at91sam9g45-isi";
- reg = <0xf8048000 0x100>;
- interrupts = <43 IRQ_TYPE_LEVEL_HIGH 5>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 43>;
- clock-names = "isi_clk";
- status = "disabled";
- port {
- #address-cells = <1>;
- #size-cells = <0>;
- };
- };
- adc: adc@f804c000 {
- compatible = "microchip,sam9x60-adc", "atmel,sama5d2-adc";
- reg = <0xf804c000 0x100>;
- interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 19>;
- clock-names = "adc_clk";
- dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(40))>;
- dma-names = "rx";
- atmel,min-sample-rate-hz = <200000>;
- atmel,max-sample-rate-hz = <20000000>;
- atmel,startup-time-ms = <4>;
- atmel,trigger-edge-type = <IRQ_TYPE_EDGE_RISING>;
- #io-channel-cells = <1>;
- status = "disabled";
- };
- sfr: sfr@f8050000 {
- compatible = "microchip,sam9x60-sfr", "syscon";
- reg = <0xf8050000 0x100>;
- };
- matrix: matrix@ffffde00 {
- compatible = "microchip,sam9x60-matrix", "atmel,at91sam9x5-matrix", "syscon";
- reg = <0xffffde00 0x200>;
- };
- pmecc: ecc-engine@ffffe000 {
- compatible = "microchip,sam9x60-pmecc", "atmel,at91sam9g45-pmecc";
- reg = <0xffffe000 0x300>,
- <0xffffe600 0x100>;
- };
- mpddrc: mpddrc@ffffe800 {
- compatible = "microchip,sam9x60-ddramc", "atmel,sama5d3-ddramc";
- reg = <0xffffe800 0x200>;
- clocks = <&pmc PMC_TYPE_SYSTEM 2>, <&pmc PMC_TYPE_PERIPHERAL 49>;
- clock-names = "ddrck", "mpddr";
- };
- smc: smc@ffffea00 {
- compatible = "microchip,sam9x60-smc", "atmel,at91sam9260-smc", "syscon";
- reg = <0xffffea00 0x100>;
- };
- aic: interrupt-controller@fffff100 {
- compatible = "microchip,sam9x60-aic";
- #interrupt-cells = <3>;
- interrupt-controller;
- reg = <0xfffff100 0x100>;
- atmel,external-irqs = <31>;
- };
- dbgu: serial@fffff200 {
- compatible = "microchip,sam9x60-dbgu", "microchip,sam9x60-usart", "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart";
- reg = <0xfffff200 0x200>;
- atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
- interrupts = <47 IRQ_TYPE_LEVEL_HIGH 7>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(28))>,
- <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
- AT91_XDMAC_DT_PERID(29))>;
- dma-names = "tx", "rx";
- clocks = <&pmc PMC_TYPE_PERIPHERAL 47>;
- clock-names = "usart";
- status = "disabled";
- };
- pinctrl: pinctrl@fffff400 {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "microchip,sam9x60-pinctrl", "atmel,at91sam9x5-pinctrl", "atmel,at91rm9200-pinctrl", "simple-bus";
- ranges = <0xfffff400 0xfffff400 0x800>;
- /* mux-mask corresponding to sam9x60 SoC in TFBGA228L package */
- atmel,mux-mask = <
- /* A B C */
- 0xffffffff 0xffe03fff 0xef00019d /* pioA */
- 0x03ffffff 0x02fc7e7f 0x00780000 /* pioB */
- 0xffffffff 0xffffffff 0xf83fffff /* pioC */
- 0x003fffff 0x003f8000 0x00000000 /* pioD */
- >;
- pioA: gpio@fffff400 {
- compatible = "microchip,sam9x60-gpio", "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio";
- reg = <0xfffff400 0x200>;
- interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
- #gpio-cells = <2>;
- gpio-controller;
- interrupt-controller;
- #interrupt-cells = <2>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 2>;
- };
- pioB: gpio@fffff600 {
- compatible = "microchip,sam9x60-gpio", "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio";
- reg = <0xfffff600 0x200>;
- interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>;
- #gpio-cells = <2>;
- gpio-controller;
- #gpio-lines = <26>;
- interrupt-controller;
- #interrupt-cells = <2>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 3>;
- };
- pioC: gpio@fffff800 {
- compatible = "microchip,sam9x60-gpio", "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio";
- reg = <0xfffff800 0x200>;
- interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
- #gpio-cells = <2>;
- gpio-controller;
- interrupt-controller;
- #interrupt-cells = <2>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 4>;
- };
- pioD: gpio@fffffa00 {
- compatible = "microchip,sam9x60-gpio", "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio";
- reg = <0xfffffa00 0x200>;
- interrupts = <44 IRQ_TYPE_LEVEL_HIGH 1>;
- #gpio-cells = <2>;
- gpio-controller;
- #gpio-lines = <22>;
- interrupt-controller;
- #interrupt-cells = <2>;
- clocks = <&pmc PMC_TYPE_PERIPHERAL 44>;
- };
- };
- pmc: pmc@fffffc00 {
- compatible = "microchip,sam9x60-pmc", "syscon";
- reg = <0xfffffc00 0x200>;
- interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
- #clock-cells = <2>;
- clocks = <&clk32k 1>, <&clk32k 0>, <&main_xtal>;
- clock-names = "td_slck", "md_slck", "main_xtal";
- };
- reset_controller: reset-controller@fffffe00 {
- compatible = "microchip,sam9x60-rstc";
- reg = <0xfffffe00 0x10>;
- clocks = <&clk32k 0>;
- };
- shutdown_controller: shdwc@fffffe10 {
- compatible = "microchip,sam9x60-shdwc";
- reg = <0xfffffe10 0x10>;
- clocks = <&clk32k 0>;
- #address-cells = <1>;
- #size-cells = <0>;
- atmel,wakeup-rtc-timer;
- atmel,wakeup-rtt-timer;
- status = "disabled";
- };
- rtt: rtc@fffffe20 {
- compatible = "microchip,sam9x60-rtt", "atmel,at91sam9260-rtt";
- reg = <0xfffffe20 0x20>;
- interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
- clocks = <&clk32k 0>;
- };
- pit: timer@fffffe40 {
- compatible = "atmel,at91sam9260-pit";
- reg = <0xfffffe40 0x10>;
- interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
- clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
- };
- clk32k: sckc@fffffe50 {
- compatible = "microchip,sam9x60-sckc";
- reg = <0xfffffe50 0x4>;
- clocks = <&slow_xtal>;
- #clock-cells = <1>;
- };
- gpbr: syscon@fffffe60 {
- compatible = "microchip,sam9x60-gpbr", "atmel,at91sam9260-gpbr", "syscon";
- reg = <0xfffffe60 0x10>;
- };
- rtc: rtc@fffffea8 {
- compatible = "microchip,sam9x60-rtc", "atmel,at91sam9x5-rtc";
- reg = <0xfffffea8 0x100>;
- interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
- clocks = <&clk32k 0>;
- };
- watchdog: watchdog@ffffff80 {
- compatible = "microchip,sam9x60-wdt";
- reg = <0xffffff80 0x24>;
- interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
- clocks = <&clk32k 0>;
- status = "disabled";
- };
- };
- };
- };
|