1d6a0fc9bSTony Han// SPDX-License-Identifier: BSD-2-Clause 2d6a0fc9bSTony Han/* 3d6a0fc9bSTony Han * sama7g5.dtsi - Device Tree Include file for SAMA7G5 family SoC 4d6a0fc9bSTony Han * 5d6a0fc9bSTony Han * Copyright (C) 2020 Microchip Technology, Inc. and its subsidiaries 6d6a0fc9bSTony Han * 7d6a0fc9bSTony Han * Author: Eugen Hristev <eugen.hristev@microchip.com> 8d6a0fc9bSTony Han * Author: Claudiu Beznea <claudiu.beznea@microchip.com> 9d6a0fc9bSTony Han */ 10d6a0fc9bSTony Han 11d6a0fc9bSTony Han#include <dt-bindings/clock/at91.h> 12d6a0fc9bSTony Han#include <dt-bindings/dma/at91.h> 13d6a0fc9bSTony Han#include <dt-bindings/gpio/gpio.h> 14d6a0fc9bSTony Han#include <dt-bindings/iio/adc/at91-sama5d2_adc.h> 15d6a0fc9bSTony Han#include <dt-bindings/interrupt-controller/arm-gic.h> 16d6a0fc9bSTony Han#include <dt-bindings/interrupt-controller/irq.h> 17d6a0fc9bSTony Han 18d6a0fc9bSTony Han/ { 19d6a0fc9bSTony Han model = "Microchip SAMA7G5 family SoC"; 20d6a0fc9bSTony Han compatible = "microchip,sama7g5"; 21d6a0fc9bSTony Han #address-cells = <1>; 22d6a0fc9bSTony Han #size-cells = <1>; 23d6a0fc9bSTony Han interrupt-parent = <&gic>; 24d6a0fc9bSTony Han 25d6a0fc9bSTony Han cpus { 26d6a0fc9bSTony Han #address-cells = <1>; 27d6a0fc9bSTony Han #size-cells = <0>; 28d6a0fc9bSTony Han 29d6a0fc9bSTony Han cpu0: cpu@0 { 30d6a0fc9bSTony Han device_type = "cpu"; 31d6a0fc9bSTony Han compatible = "arm,cortex-a7"; 32d6a0fc9bSTony Han reg = <0x0>; 33d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_CORE PMC_CPUPLL>; 34d6a0fc9bSTony Han clock-names = "cpu"; 35d6a0fc9bSTony Han operating-points-v2 = <&cpu_opp_table>; 36d6a0fc9bSTony Han #cooling-cells = <2>; /* min followed by max */ 37d6a0fc9bSTony Han }; 38d6a0fc9bSTony Han }; 39d6a0fc9bSTony Han 40d6a0fc9bSTony Han cpu_opp_table: opp-table { 41d6a0fc9bSTony Han compatible = "operating-points-v2"; 42d6a0fc9bSTony Han 43d6a0fc9bSTony Han opp-90000000 { 44d6a0fc9bSTony Han opp-hz = /bits/ 64 <90000000>; 45d6a0fc9bSTony Han opp-microvolt = <1050000 1050000 1225000>; 46d6a0fc9bSTony Han clock-latency-ns = <320000>; 47d6a0fc9bSTony Han }; 48d6a0fc9bSTony Han 49d6a0fc9bSTony Han opp-250000000 { 50d6a0fc9bSTony Han opp-hz = /bits/ 64 <250000000>; 51d6a0fc9bSTony Han opp-microvolt = <1050000 1050000 1225000>; 52d6a0fc9bSTony Han clock-latency-ns = <320000>; 53d6a0fc9bSTony Han }; 54d6a0fc9bSTony Han 55d6a0fc9bSTony Han opp-600000000 { 56d6a0fc9bSTony Han opp-hz = /bits/ 64 <600000000>; 57d6a0fc9bSTony Han opp-microvolt = <1050000 1050000 1225000>; 58d6a0fc9bSTony Han clock-latency-ns = <320000>; 59d6a0fc9bSTony Han opp-suspend; 60d6a0fc9bSTony Han }; 61d6a0fc9bSTony Han 62d6a0fc9bSTony Han opp-800000000 { 63d6a0fc9bSTony Han opp-hz = /bits/ 64 <800000000>; 64d6a0fc9bSTony Han opp-microvolt = <1150000 1125000 1225000>; 65d6a0fc9bSTony Han clock-latency-ns = <320000>; 66d6a0fc9bSTony Han }; 67d6a0fc9bSTony Han 68d6a0fc9bSTony Han opp-1000000002 { 69d6a0fc9bSTony Han opp-hz = /bits/ 64 <1000000002>; 70d6a0fc9bSTony Han opp-microvolt = <1250000 1225000 1300000>; 71d6a0fc9bSTony Han clock-latency-ns = <320000>; 72d6a0fc9bSTony Han }; 73d6a0fc9bSTony Han }; 74d6a0fc9bSTony Han 75d6a0fc9bSTony Han thermal-zones { 76d6a0fc9bSTony Han cpu_thermal: cpu-thermal { 77d6a0fc9bSTony Han polling-delay-passive = <1000>; 78d6a0fc9bSTony Han polling-delay = <5000>; 79d6a0fc9bSTony Han thermal-sensors = <&thermal_sensor>; 80d6a0fc9bSTony Han 81d6a0fc9bSTony Han trips { 82d6a0fc9bSTony Han cpu_normal: cpu-alert0 { 83d6a0fc9bSTony Han temperature = <90000>; 84d6a0fc9bSTony Han hysteresis = <0>; 85d6a0fc9bSTony Han type = "passive"; 86d6a0fc9bSTony Han }; 87d6a0fc9bSTony Han 88d6a0fc9bSTony Han cpu_hot: cpu-alert1 { 89d6a0fc9bSTony Han temperature = <95000>; 90d6a0fc9bSTony Han hysteresis = <0>; 91d6a0fc9bSTony Han type = "passive"; 92d6a0fc9bSTony Han }; 93d6a0fc9bSTony Han 94d6a0fc9bSTony Han cpu_critical: cpu-critical { 95d6a0fc9bSTony Han temperature = <100000>; 96d6a0fc9bSTony Han hysteresis = <0>; 97d6a0fc9bSTony Han type = "critical"; 98d6a0fc9bSTony Han }; 99d6a0fc9bSTony Han }; 100d6a0fc9bSTony Han 101d6a0fc9bSTony Han cooling-maps { 102d6a0fc9bSTony Han map0 { 103d6a0fc9bSTony Han trip = <&cpu_normal>; 104d6a0fc9bSTony Han }; 105d6a0fc9bSTony Han 106d6a0fc9bSTony Han map1 { 107d6a0fc9bSTony Han trip = <&cpu_hot>; 108d6a0fc9bSTony Han }; 109d6a0fc9bSTony Han }; 110d6a0fc9bSTony Han }; 111d6a0fc9bSTony Han }; 112d6a0fc9bSTony Han 113d6a0fc9bSTony Han clocks { 114d6a0fc9bSTony Han slow_xtal: slow_xtal { 115d6a0fc9bSTony Han compatible = "fixed-clock"; 116d6a0fc9bSTony Han #clock-cells = <0>; 117d6a0fc9bSTony Han }; 118d6a0fc9bSTony Han 119d6a0fc9bSTony Han main_xtal: main_xtal { 120d6a0fc9bSTony Han compatible = "fixed-clock"; 121d6a0fc9bSTony Han #clock-cells = <0>; 122d6a0fc9bSTony Han }; 123d6a0fc9bSTony Han 124d6a0fc9bSTony Han usb_clk: usb_clk { 125d6a0fc9bSTony Han compatible = "fixed-clock"; 126d6a0fc9bSTony Han #clock-cells = <0>; 127d6a0fc9bSTony Han clock-frequency = <48000000>; 128d6a0fc9bSTony Han }; 129d6a0fc9bSTony Han }; 130d6a0fc9bSTony Han 131d6a0fc9bSTony Han utmi_clk: utmi-clk { 132d6a0fc9bSTony Han compatible = "microchip,sama7g5-utmi-clk"; 133d6a0fc9bSTony Han sfr-phandle = <&sfr>; 134d6a0fc9bSTony Han #clock-cells = <1>; 135d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>; 136d6a0fc9bSTony Han clock-names = "utmi_clk"; 137d6a0fc9bSTony Han reset-names = "usb0_reset", "usb1_reset", "usb2_reset"; 138d6a0fc9bSTony Han status = "disabled"; 139d6a0fc9bSTony Han }; 140d6a0fc9bSTony Han 141d6a0fc9bSTony Han utmi { 142d6a0fc9bSTony Han compatible = "simple-bus"; 143d6a0fc9bSTony Han #address-cells = <1>; 144d6a0fc9bSTony Han #size-cells = <0>; 145d6a0fc9bSTony Han 146d6a0fc9bSTony Han usb_phy0: phy@0 { 147d6a0fc9bSTony Han compatible = "microchip,sama7g5-usb-phy"; 148d6a0fc9bSTony Han sfr-phandle = <&sfr>; 149d6a0fc9bSTony Han reg = <0>; 150d6a0fc9bSTony Han clock-names = "utmi_clk"; 151d6a0fc9bSTony Han status = "disabled"; 152d6a0fc9bSTony Han #phy-cells = <0>; 153d6a0fc9bSTony Han }; 154d6a0fc9bSTony Han 155d6a0fc9bSTony Han usb_phy1: phy@1 { 156d6a0fc9bSTony Han compatible = "microchip,sama7g5-usb-phy"; 157d6a0fc9bSTony Han sfr-phandle = <&sfr>; 158d6a0fc9bSTony Han reg = <1>; 159d6a0fc9bSTony Han clock-names = "utmi_clk"; 160d6a0fc9bSTony Han status = "disabled"; 161d6a0fc9bSTony Han #phy-cells = <0>; 162d6a0fc9bSTony Han }; 163d6a0fc9bSTony Han 164d6a0fc9bSTony Han usb_phy2: phy@2 { 165d6a0fc9bSTony Han compatible = "microchip,sama7g5-usb-phy"; 166d6a0fc9bSTony Han sfr-phandle = <&sfr>; 167d6a0fc9bSTony Han reg = <2>; 168d6a0fc9bSTony Han clock-names = "utmi_clk"; 169d6a0fc9bSTony Han status = "disabled"; 170d6a0fc9bSTony Han #phy-cells = <0>; 171d6a0fc9bSTony Han }; 172d6a0fc9bSTony Han }; 173d6a0fc9bSTony Han 174d6a0fc9bSTony Han vddout25: fixed-regulator-vddout25 { 175d6a0fc9bSTony Han compatible = "regulator-fixed"; 176d6a0fc9bSTony Han 177d6a0fc9bSTony Han regulator-name = "VDDOUT25"; 178d6a0fc9bSTony Han regulator-min-microvolt = <2500000>; 179d6a0fc9bSTony Han regulator-max-microvolt = <2500000>; 180d6a0fc9bSTony Han regulator-boot-on; 181d6a0fc9bSTony Han status = "disabled"; 182d6a0fc9bSTony Han }; 183d6a0fc9bSTony Han 184d6a0fc9bSTony Han ns_sram: sram@100000 { 185d6a0fc9bSTony Han compatible = "atmel,sama5d2-sram", "mmio-sram"; 186d6a0fc9bSTony Han #address-cells = <1>; 187d6a0fc9bSTony Han #size-cells = <1>; 188d6a0fc9bSTony Han reg = <0x100000 0x3400>; 189d6a0fc9bSTony Han ranges; 190d6a0fc9bSTony Han status = "disabled"; 191d6a0fc9bSTony Han secure-status = "okay"; 192d6a0fc9bSTony Han }; 193d6a0fc9bSTony Han 194d6a0fc9bSTony Han thermal_sensor: thermal-sensor { 195d6a0fc9bSTony Han compatible = "generic-adc-thermal"; 196d6a0fc9bSTony Han #thermal-sensor-cells = <0>; 197d6a0fc9bSTony Han io-channel-names = "sensor-channel"; 198d6a0fc9bSTony Han status = "disabled"; 199d6a0fc9bSTony Han }; 200d6a0fc9bSTony Han 201d6a0fc9bSTony Han soc { 202d6a0fc9bSTony Han compatible = "simple-bus"; 203d6a0fc9bSTony Han #address-cells = <1>; 204d6a0fc9bSTony Han #size-cells = <1>; 205d6a0fc9bSTony Han ranges; 206d6a0fc9bSTony Han 207d6a0fc9bSTony Han usb0: gadget@200000 { 208d6a0fc9bSTony Han #address-cells = <1>; 209d6a0fc9bSTony Han #size-cells = <0>; 210d6a0fc9bSTony Han compatible = "microchip,sama7g5-udc"; 211d6a0fc9bSTony Han reg = <0x00200000 0x100000 212d6a0fc9bSTony Han 0xe0814000 0x400>; 213d6a0fc9bSTony Han interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 214d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 104>, <&usb_clk>; 215d6a0fc9bSTony Han clock-names = "pclk", "hclk"; 216d6a0fc9bSTony Han status = "disabled"; 217d6a0fc9bSTony Han }; 218d6a0fc9bSTony Han 219d6a0fc9bSTony Han usb1: gadget@300000 { 220d6a0fc9bSTony Han #address-cells = <1>; 221d6a0fc9bSTony Han #size-cells = <0>; 222d6a0fc9bSTony Han compatible = "microchip,sama7g5-udc"; 223d6a0fc9bSTony Han reg = <0x00300000 0x100000 224d6a0fc9bSTony Han 0xe0818000 0x400>; 225d6a0fc9bSTony Han interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 226d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 105>, <&usb_clk>; 227d6a0fc9bSTony Han clock-names = "pclk", "hclk"; 228d6a0fc9bSTony Han status = "disabled"; 229d6a0fc9bSTony Han }; 230d6a0fc9bSTony Han 231d6a0fc9bSTony Han usb2: ohci@400000 { 232d6a0fc9bSTony Han compatible = "microchip,sama7g5-ohci", "usb-ohci"; 233d6a0fc9bSTony Han reg = <0x00400000 0x100000>; 234d6a0fc9bSTony Han interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 235d6a0fc9bSTony Han clock-names = "ohci_clk", "hclk", "uhpck"; 236d6a0fc9bSTony Han status = "disabled"; 237d6a0fc9bSTony Han }; 238d6a0fc9bSTony Han 239d6a0fc9bSTony Han usb3: ehci@500000 { 240d6a0fc9bSTony Han compatible = "atmel,at91sam9g45-ehci", "usb-ehci"; 241d6a0fc9bSTony Han reg = <0x00500000 0x100000>; 242d6a0fc9bSTony Han interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 243d6a0fc9bSTony Han clocks = <&usb_clk>, <&pmc PMC_TYPE_PERIPHERAL 106>; 244d6a0fc9bSTony Han clock-names = "usb_clk", "ehci_clk"; 245d6a0fc9bSTony Han status = "disabled"; 246d6a0fc9bSTony Han }; 247d6a0fc9bSTony Han 248d6a0fc9bSTony Han nfc_sram: sram@600000 { 249d6a0fc9bSTony Han compatible = "mmio-sram"; 250d6a0fc9bSTony Han no-memory-wc; 251d6a0fc9bSTony Han reg = <0x00600000 0x2400>; 252d6a0fc9bSTony Han #address-cells = <1>; 253d6a0fc9bSTony Han #size-cells = <1>; 254d6a0fc9bSTony Han ranges = <0 0x00600000 0x2400>; 255d6a0fc9bSTony Han }; 256d6a0fc9bSTony Han 257d6a0fc9bSTony Han nfc_io: nfc-io@10000000 { 258d6a0fc9bSTony Han compatible = "atmel,sama5d3-nfc-io", "syscon"; 259d6a0fc9bSTony Han reg = <0x10000000 0x8000000>; 260d6a0fc9bSTony Han }; 261d6a0fc9bSTony Han 262d6a0fc9bSTony Han ebi: ebi@40000000 { 263d6a0fc9bSTony Han compatible = "atmel,sama5d3-ebi"; 264d6a0fc9bSTony Han #address-cells = <2>; 265d6a0fc9bSTony Han #size-cells = <1>; 266d6a0fc9bSTony Han atmel,smc = <&hsmc>; 267d6a0fc9bSTony Han reg = <0x40000000 0x20000000>; 268d6a0fc9bSTony Han ranges = <0x0 0x0 0x40000000 0x8000000 269d6a0fc9bSTony Han 0x1 0x0 0x48000000 0x8000000 270d6a0fc9bSTony Han 0x2 0x0 0x50000000 0x8000000 271d6a0fc9bSTony Han 0x3 0x0 0x58000000 0x8000000>; 272d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_CORE PMC_MCK1>; 273d6a0fc9bSTony Han status = "disabled"; 274d6a0fc9bSTony Han 275d6a0fc9bSTony Han nand_controller: nand-controller { 276d6a0fc9bSTony Han compatible = "atmel,sama5d3-nand-controller"; 277d6a0fc9bSTony Han atmel,nfc-sram = <&nfc_sram>; 278d6a0fc9bSTony Han atmel,nfc-io = <&nfc_io>; 279d6a0fc9bSTony Han ecc-engine = <&pmecc>; 280d6a0fc9bSTony Han #address-cells = <2>; 281d6a0fc9bSTony Han #size-cells = <1>; 282d6a0fc9bSTony Han ranges; 283d6a0fc9bSTony Han status = "disabled"; 284d6a0fc9bSTony Han }; 285d6a0fc9bSTony Han }; 286d6a0fc9bSTony Han 287d6a0fc9bSTony Han securam: sram@e0000000 { 288d6a0fc9bSTony Han compatible = "microchip,sama7g5-securam", "atmel,sama5d2-securam", "mmio-sram"; 289d6a0fc9bSTony Han reg = <0xe0000000 0x4000>; 290d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 18>; 291d6a0fc9bSTony Han #address-cells = <1>; 292d6a0fc9bSTony Han #size-cells = <1>; 293d6a0fc9bSTony Han ranges = <0 0xe0000000 0x4000>; 294d6a0fc9bSTony Han no-memory-wc; 295d6a0fc9bSTony Han status = "disabled"; 296d6a0fc9bSTony Han secure-status = "okay"; 297d6a0fc9bSTony Han }; 298d6a0fc9bSTony Han 299d6a0fc9bSTony Han secumod: secumod@e0004000 { 300d6a0fc9bSTony Han compatible = "microchip,sama7g5-secumod", "atmel,sama5d2-secumod", "syscon"; 301d6a0fc9bSTony Han reg = <0xe0004000 0x4000>; 302d6a0fc9bSTony Han gpio-controller; 303d6a0fc9bSTony Han #gpio-cells = <2>; 304d6a0fc9bSTony Han status = "disabled"; 305d6a0fc9bSTony Han secure-status = "okay"; 306d6a0fc9bSTony Han }; 307d6a0fc9bSTony Han 308d6a0fc9bSTony Han sfrbu: sfr@e0008000 { 309d6a0fc9bSTony Han compatible = "microchip,sama7g5-sfrbu", "atmel,sama5d2-sfrbu", "syscon"; 310d6a0fc9bSTony Han reg = <0xe0008000 0x20>; 311d6a0fc9bSTony Han }; 312d6a0fc9bSTony Han 313d6a0fc9bSTony Han pioA: pinctrl@e0014000 { 314d6a0fc9bSTony Han compatible = "microchip,sama7g5-pinctrl"; 315d6a0fc9bSTony Han reg = <0xe0014000 0x800>; 316d6a0fc9bSTony Han interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 317d6a0fc9bSTony Han <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 318d6a0fc9bSTony Han <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>, 319d6a0fc9bSTony Han <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>, 320d6a0fc9bSTony Han <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 321d6a0fc9bSTony Han interrupt-controller; 322d6a0fc9bSTony Han #interrupt-cells = <2>; 323d6a0fc9bSTony Han gpio-controller; 324d6a0fc9bSTony Han #gpio-cells = <2>; 325d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 11>; 326d6a0fc9bSTony Han status = "disabled"; 327d6a0fc9bSTony Han secure-status = "okay"; 328d6a0fc9bSTony Han }; 329d6a0fc9bSTony Han 330d6a0fc9bSTony Han pmc: pmc@e0018000 { 331d6a0fc9bSTony Han compatible = "microchip,sama7g5-pmc", "syscon"; 332d6a0fc9bSTony Han reg = <0xe0018000 0x200>; 333d6a0fc9bSTony Han interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 334d6a0fc9bSTony Han #clock-cells = <2>; 335d6a0fc9bSTony Han clocks = <&clk32k 1>, <&clk32k 0>, <&main_xtal>; 336d6a0fc9bSTony Han clock-names = "td_slck", "md_slck", "main_xtal"; 337d6a0fc9bSTony Han status = "disabled"; 338d6a0fc9bSTony Han secure-status = "okay"; 339d6a0fc9bSTony Han }; 340d6a0fc9bSTony Han 341d6a0fc9bSTony Han reset_controller: reset-controller@e001d000 { 342d6a0fc9bSTony Han compatible = "microchip,sama7g5-rstc"; 343d6a0fc9bSTony Han reg = <0xe001d000 0xc>, <0xe001d0e4 0x4>; 344d6a0fc9bSTony Han #reset-cells = <1>; 345d6a0fc9bSTony Han clocks = <&clk32k 0>; 346d6a0fc9bSTony Han status = "disabled"; 347d6a0fc9bSTony Han secure-status = "okay"; 348d6a0fc9bSTony Han }; 349d6a0fc9bSTony Han 350d6a0fc9bSTony Han shdwc: shdwc@e001d010 { 351d6a0fc9bSTony Han compatible = "microchip,sama7g5-shdwc", "syscon"; 352d6a0fc9bSTony Han reg = <0xe001d010 0x10>; 353d6a0fc9bSTony Han clocks = <&clk32k 0>; 354d6a0fc9bSTony Han #address-cells = <1>; 355d6a0fc9bSTony Han #size-cells = <0>; 356d6a0fc9bSTony Han atmel,wakeup-rtc-timer; 357d6a0fc9bSTony Han atmel,wakeup-rtt-timer; 358d6a0fc9bSTony Han status = "disabled"; 359d6a0fc9bSTony Han secure-status = "okay"; 360d6a0fc9bSTony Han }; 361d6a0fc9bSTony Han 362d6a0fc9bSTony Han rtt: rtc@e001d020 { 363d6a0fc9bSTony Han compatible = "microchip,sama7g5-rtt", "microchip,sam9x60-rtt", "atmel,at91sam9260-rtt"; 364d6a0fc9bSTony Han reg = <0xe001d020 0x30>; 365d6a0fc9bSTony Han interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 366d6a0fc9bSTony Han clocks = <&clk32k 0>; 367d6a0fc9bSTony Han }; 368d6a0fc9bSTony Han 369d6a0fc9bSTony Han clk32k: clock-controller@e001d050 { 370d6a0fc9bSTony Han compatible = "microchip,sama7g5-sckc", "microchip,sam9x60-sckc"; 371d6a0fc9bSTony Han reg = <0xe001d050 0x4>; 372d6a0fc9bSTony Han clocks = <&slow_xtal>; 373d6a0fc9bSTony Han #clock-cells = <1>; 374d6a0fc9bSTony Han status = "disabled"; 375d6a0fc9bSTony Han secure-status = "okay"; 376d6a0fc9bSTony Han }; 377d6a0fc9bSTony Han 378d6a0fc9bSTony Han gpbr: gpbr@e001d060 { 379d6a0fc9bSTony Han compatible = "microchip,sama7g5-gpbr", "syscon"; 380d6a0fc9bSTony Han reg = <0xe001d060 0x48>; 381d6a0fc9bSTony Han }; 382d6a0fc9bSTony Han 383d6a0fc9bSTony Han rtc: rtc@e001d0a8 { 384d6a0fc9bSTony Han compatible = "microchip,sama7g5-rtc", "microchip,sam9x60-rtc"; 385d6a0fc9bSTony Han reg = <0xe001d0a8 0x30>; 386d6a0fc9bSTony Han interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 387d6a0fc9bSTony Han clocks = <&clk32k 1>; 388d6a0fc9bSTony Han status = "disabled"; 389d6a0fc9bSTony Han secure-status = "okay"; 390d6a0fc9bSTony Han }; 391d6a0fc9bSTony Han 392d6a0fc9bSTony Han ps_wdt: watchdog@e001d180 { 393d6a0fc9bSTony Han compatible = "microchip,sama7g5-wdt"; 394d6a0fc9bSTony Han reg = <0xe001d180 0x24>; 395d6a0fc9bSTony Han interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 396d6a0fc9bSTony Han clocks = <&clk32k 0>; 397d6a0fc9bSTony Han status = "disabled"; 398d6a0fc9bSTony Han secure-status = "okay"; 399d6a0fc9bSTony Han }; 400d6a0fc9bSTony Han 401d6a0fc9bSTony Han chipid@e0020000 { 402d6a0fc9bSTony Han compatible = "microchip,sama7g5-chipid"; 403d6a0fc9bSTony Han reg = <0xe0020000 0x8>; 404d6a0fc9bSTony Han }; 405d6a0fc9bSTony Han 406d6a0fc9bSTony Han tcb1: timer@e0800000 { 407d6a0fc9bSTony Han compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon"; 408d6a0fc9bSTony Han #address-cells = <1>; 409d6a0fc9bSTony Han #size-cells = <0>; 410d6a0fc9bSTony Han reg = <0xe0800000 0x100>; 411d6a0fc9bSTony Han interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 412d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 91>, <&pmc PMC_TYPE_PERIPHERAL 92>, <&pmc PMC_TYPE_PERIPHERAL 93>, <&clk32k 1>; 413d6a0fc9bSTony Han clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk"; 414d6a0fc9bSTony Han status = "disabled"; 415d6a0fc9bSTony Han secure-status = "okay"; 416d6a0fc9bSTony Han }; 417d6a0fc9bSTony Han 418d6a0fc9bSTony Han hsmc: hsmc@e0808000 { 419d6a0fc9bSTony Han compatible = "atmel,sama5d2-smc", "syscon", "simple-mfd"; 420d6a0fc9bSTony Han reg = <0xe0808000 0x1000>; 421d6a0fc9bSTony Han interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 422d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 21>; 423d6a0fc9bSTony Han #address-cells = <1>; 424d6a0fc9bSTony Han #size-cells = <1>; 425d6a0fc9bSTony Han ranges; 426d6a0fc9bSTony Han 427d6a0fc9bSTony Han pmecc: ecc-engine@e0808070 { 428d6a0fc9bSTony Han compatible = "atmel,sama5d2-pmecc"; 429d6a0fc9bSTony Han reg = <0xe0808070 0x490>, 430d6a0fc9bSTony Han <0xe0808500 0x200>; 431d6a0fc9bSTony Han }; 432d6a0fc9bSTony Han }; 433d6a0fc9bSTony Han 434d6a0fc9bSTony Han qspi0: spi@e080c000 { 435d6a0fc9bSTony Han compatible = "microchip,sama7g5-ospi"; 436d6a0fc9bSTony Han reg = <0xe080c000 0x400>, <0x20000000 0x10000000>; 437d6a0fc9bSTony Han reg-names = "qspi_base", "qspi_mmap"; 438d6a0fc9bSTony Han interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 439d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(41)>, 440d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(40)>; 441d6a0fc9bSTony Han dma-names = "tx", "rx"; 442d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 78>, <&pmc PMC_TYPE_GCK 78>; 443d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 444*932a3e11STony Han assigned-clocks = <&pmc PMC_TYPE_GCK 78>; 445*932a3e11STony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 446*932a3e11STony Han assigned-clock-rates = <133000000>; 447d6a0fc9bSTony Han #address-cells = <1>; 448d6a0fc9bSTony Han #size-cells = <0>; 449d6a0fc9bSTony Han status = "disabled"; 450d6a0fc9bSTony Han }; 451d6a0fc9bSTony Han 452d6a0fc9bSTony Han qspi1: spi@e0810000 { 453d6a0fc9bSTony Han compatible = "microchip,sama7g5-qspi"; 454d6a0fc9bSTony Han reg = <0xe0810000 0x400>, <0x30000000 0x10000000>; 455d6a0fc9bSTony Han reg-names = "qspi_base", "qspi_mmap"; 456d6a0fc9bSTony Han interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 457d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(43)>, 458d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(42)>; 459d6a0fc9bSTony Han dma-names = "tx", "rx"; 460d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 79>, <&pmc PMC_TYPE_GCK 79>; 461d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 462d6a0fc9bSTony Han #address-cells = <1>; 463d6a0fc9bSTony Han #size-cells = <0>; 464d6a0fc9bSTony Han status = "disabled"; 465d6a0fc9bSTony Han }; 466d6a0fc9bSTony Han 467d6a0fc9bSTony Han can0: can@e0828000 { 468d6a0fc9bSTony Han compatible = "bosch,m_can"; 469d6a0fc9bSTony Han reg = <0xe0828000 0x100>, <0x100000 0x7800>; 470d6a0fc9bSTony Han reg-names = "m_can", "message_ram"; 471d6a0fc9bSTony Han interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH 472d6a0fc9bSTony Han GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 473d6a0fc9bSTony Han interrupt-names = "int0", "int1"; 474d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 61>, <&pmc PMC_TYPE_GCK 61>; 475d6a0fc9bSTony Han clock-names = "hclk", "cclk"; 476d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 61>; 477d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 478d6a0fc9bSTony Han assigned-clock-rates = <40000000>; 479d6a0fc9bSTony Han bosch,mram-cfg = <0x3400 0 0 64 0 0 32 32>; 480d6a0fc9bSTony Han status = "disabled"; 481d6a0fc9bSTony Han }; 482d6a0fc9bSTony Han 483d6a0fc9bSTony Han can1: can@e082c000 { 484d6a0fc9bSTony Han compatible = "bosch,m_can"; 485d6a0fc9bSTony Han reg = <0xe082c000 0x100>, <0x100000 0xbc00>; 486d6a0fc9bSTony Han reg-names = "m_can", "message_ram"; 487d6a0fc9bSTony Han interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH 488d6a0fc9bSTony Han GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>; 489d6a0fc9bSTony Han interrupt-names = "int0", "int1"; 490d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 62>, <&pmc PMC_TYPE_GCK 62>; 491d6a0fc9bSTony Han clock-names = "hclk", "cclk"; 492d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 62>; 493d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 494d6a0fc9bSTony Han assigned-clock-rates = <40000000>; 495d6a0fc9bSTony Han bosch,mram-cfg = <0x7800 0 0 64 0 0 32 32>; 496d6a0fc9bSTony Han status = "disabled"; 497d6a0fc9bSTony Han }; 498d6a0fc9bSTony Han 499d6a0fc9bSTony Han can2: can@e0830000 { 500d6a0fc9bSTony Han compatible = "bosch,m_can"; 501d6a0fc9bSTony Han reg = <0xe0830000 0x100>, <0x100000 0x10000>; 502d6a0fc9bSTony Han reg-names = "m_can", "message_ram"; 503d6a0fc9bSTony Han interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH 504d6a0fc9bSTony Han GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; 505d6a0fc9bSTony Han interrupt-names = "int0", "int1"; 506d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 63>, <&pmc PMC_TYPE_GCK 63>; 507d6a0fc9bSTony Han clock-names = "hclk", "cclk"; 508d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 63>; 509d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 510d6a0fc9bSTony Han assigned-clock-rates = <40000000>; 511d6a0fc9bSTony Han bosch,mram-cfg = <0xbc00 0 0 64 0 0 32 32>; 512d6a0fc9bSTony Han status = "disabled"; 513d6a0fc9bSTony Han }; 514d6a0fc9bSTony Han 515d6a0fc9bSTony Han can3: can@e0834000 { 516d6a0fc9bSTony Han compatible = "bosch,m_can"; 517d6a0fc9bSTony Han reg = <0xe0834000 0x100>, <0x110000 0x4400>; 518d6a0fc9bSTony Han reg-names = "m_can", "message_ram"; 519d6a0fc9bSTony Han interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH 520d6a0fc9bSTony Han GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>; 521d6a0fc9bSTony Han interrupt-names = "int0", "int1"; 522d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 64>, <&pmc PMC_TYPE_GCK 64>; 523d6a0fc9bSTony Han clock-names = "hclk", "cclk"; 524d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 64>; 525d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 526d6a0fc9bSTony Han assigned-clock-rates = <40000000>; 527d6a0fc9bSTony Han bosch,mram-cfg = <0x0 0 0 64 0 0 32 32>; 528d6a0fc9bSTony Han status = "disabled"; 529d6a0fc9bSTony Han }; 530d6a0fc9bSTony Han 531d6a0fc9bSTony Han can4: can@e0838000 { 532d6a0fc9bSTony Han compatible = "bosch,m_can"; 533d6a0fc9bSTony Han reg = <0xe0838000 0x100>, <0x110000 0x8800>; 534d6a0fc9bSTony Han reg-names = "m_can", "message_ram"; 535d6a0fc9bSTony Han interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH 536d6a0fc9bSTony Han GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 537d6a0fc9bSTony Han interrupt-names = "int0", "int1"; 538d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 65>, <&pmc PMC_TYPE_GCK 65>; 539d6a0fc9bSTony Han clock-names = "hclk", "cclk"; 540d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 65>; 541d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 542d6a0fc9bSTony Han assigned-clock-rates = <40000000>; 543d6a0fc9bSTony Han bosch,mram-cfg = <0x4400 0 0 64 0 0 32 32>; 544d6a0fc9bSTony Han status = "disabled"; 545d6a0fc9bSTony Han }; 546d6a0fc9bSTony Han 547d6a0fc9bSTony Han can5: can@e083c000 { 548d6a0fc9bSTony Han compatible = "bosch,m_can"; 549d6a0fc9bSTony Han reg = <0xe083c000 0x100>, <0x110000 0xcc00>; 550d6a0fc9bSTony Han reg-names = "m_can", "message_ram"; 551d6a0fc9bSTony Han interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH 552d6a0fc9bSTony Han GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>; 553d6a0fc9bSTony Han interrupt-names = "int0", "int1"; 554d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 66>, <&pmc PMC_TYPE_GCK 66>; 555d6a0fc9bSTony Han clock-names = "hclk", "cclk"; 556d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 66>; 557d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 558d6a0fc9bSTony Han assigned-clock-rates = <40000000>; 559d6a0fc9bSTony Han bosch,mram-cfg = <0x8800 0 0 64 0 0 32 32>; 560d6a0fc9bSTony Han status = "disabled"; 561d6a0fc9bSTony Han }; 562d6a0fc9bSTony Han 563d6a0fc9bSTony Han adc: adc@e1000000 { 564d6a0fc9bSTony Han compatible = "microchip,sama7g5-adc"; 565d6a0fc9bSTony Han reg = <0xe1000000 0x200>; 566d6a0fc9bSTony Han interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 567d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_GCK 26>; 568d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 26>; 569d6a0fc9bSTony Han assigned-clock-rates = <100000000>; 570d6a0fc9bSTony Han clock-names = "adc_clk"; 571d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(0)>; 572d6a0fc9bSTony Han dma-names = "rx"; 573d6a0fc9bSTony Han atmel,min-sample-rate-hz = <200000>; 574d6a0fc9bSTony Han atmel,max-sample-rate-hz = <20000000>; 575d6a0fc9bSTony Han atmel,startup-time-ms = <4>; 576d6a0fc9bSTony Han #io-channel-cells = <1>; 577d6a0fc9bSTony Han nvmem-cells = <&temperature_calib>; 578d6a0fc9bSTony Han nvmem-cell-names = "temperature_calib"; 579d6a0fc9bSTony Han status = "disabled"; 580d6a0fc9bSTony Han }; 581d6a0fc9bSTony Han 582d6a0fc9bSTony Han sdmmc0: mmc@e1204000 { 583d6a0fc9bSTony Han compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci"; 584d6a0fc9bSTony Han reg = <0xe1204000 0x4000>; 585d6a0fc9bSTony Han interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 586d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 80>, <&pmc PMC_TYPE_GCK 80>; 587d6a0fc9bSTony Han clock-names = "hclock", "multclk"; 588d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 589d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 80>; 590d6a0fc9bSTony Han assigned-clock-rates = <200000000>; 591d6a0fc9bSTony Han microchip,sdcal-inverted; 592d6a0fc9bSTony Han status = "disabled"; 593d6a0fc9bSTony Han }; 594d6a0fc9bSTony Han 595d6a0fc9bSTony Han sdmmc1: mmc@e1208000 { 596d6a0fc9bSTony Han compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci"; 597d6a0fc9bSTony Han reg = <0xe1208000 0x4000>; 598d6a0fc9bSTony Han interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 599d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 81>, <&pmc PMC_TYPE_GCK 81>; 600d6a0fc9bSTony Han clock-names = "hclock", "multclk"; 601d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 602d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 81>; 603d6a0fc9bSTony Han assigned-clock-rates = <200000000>; 604d6a0fc9bSTony Han microchip,sdcal-inverted; 605d6a0fc9bSTony Han status = "disabled"; 606d6a0fc9bSTony Han }; 607d6a0fc9bSTony Han 608d6a0fc9bSTony Han sdmmc2: mmc@e120c000 { 609d6a0fc9bSTony Han compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci"; 610d6a0fc9bSTony Han reg = <0xe120c000 0x4000>; 611d6a0fc9bSTony Han interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 612d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 82>, <&pmc PMC_TYPE_GCK 82>; 613d6a0fc9bSTony Han clock-names = "hclock", "multclk"; 614d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>; 615d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 82>; 616d6a0fc9bSTony Han assigned-clock-rates = <200000000>; 617d6a0fc9bSTony Han microchip,sdcal-inverted; 618d6a0fc9bSTony Han status = "disabled"; 619d6a0fc9bSTony Han }; 620d6a0fc9bSTony Han 621d6a0fc9bSTony Han csi2host: csi2host@e1400000 { 622d6a0fc9bSTony Han compatible = "snps,dw-csi"; 623d6a0fc9bSTony Han #address-cells = <1>; 624d6a0fc9bSTony Han #size-cells = <0>; 625d6a0fc9bSTony Han reg = <0xe1400000 0x7FF>; 626d6a0fc9bSTony Han interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 627d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 33>, <&pmc PMC_TYPE_GCK 33>; 628d6a0fc9bSTony Han clock-names = "perclk", "phyclk"; 629d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 33>; 630d6a0fc9bSTony Han assigned-clock-rates = <26600000>; 631d6a0fc9bSTony Han snps,output-type = <1>; 632d6a0fc9bSTony Han phys = <&csi_dphy>; 633d6a0fc9bSTony Han status = "disabled"; 634d6a0fc9bSTony Han 635d6a0fc9bSTony Han port@1 { 636d6a0fc9bSTony Han reg = <1>; 637d6a0fc9bSTony Han csi2host_in: endpoint { 638d6a0fc9bSTony Han }; 639d6a0fc9bSTony Han }; 640d6a0fc9bSTony Han 641d6a0fc9bSTony Han port@2 { 642d6a0fc9bSTony Han reg = <2>; 643d6a0fc9bSTony Han csi2host_out: endpoint { 644d6a0fc9bSTony Han }; 645d6a0fc9bSTony Han }; 646d6a0fc9bSTony Han }; 647d6a0fc9bSTony Han 648d6a0fc9bSTony Han csi_dphy: dphy@e1400040 { 649d6a0fc9bSTony Han compatible = "snps,dw-dphy-rx"; 650d6a0fc9bSTony Han #phy-cells = <0>; 651d6a0fc9bSTony Han bus-width = <8>; 652d6a0fc9bSTony Han snps,dphy-frequency = <900000>; 653d6a0fc9bSTony Han snps,phy_type = <0>; 654d6a0fc9bSTony Han reg = <0xe1400040 0x20>; 655d6a0fc9bSTony Han status = "disabled"; 656d6a0fc9bSTony Han }; 657d6a0fc9bSTony Han 658d6a0fc9bSTony Han csi2dc: csi2dc@e1404000 { 659d6a0fc9bSTony Han compatible = "microchip,sama7g5-csi2dc"; 660d6a0fc9bSTony Han reg = <0xe1404000 0x500>; 661d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 34>, <&xisc>; 662d6a0fc9bSTony Han clock-names = "pclk", "scck"; 663d6a0fc9bSTony Han assigned-clocks = <&xisc>; 664d6a0fc9bSTony Han assigned-clock-rates = <266000000>; 665d6a0fc9bSTony Han status = "disabled"; 666d6a0fc9bSTony Han 667d6a0fc9bSTony Han ports { 668d6a0fc9bSTony Han #address-cells = <1>; 669d6a0fc9bSTony Han #size-cells = <0>; 670d6a0fc9bSTony Han port@0 { 671d6a0fc9bSTony Han reg = <0>; 672d6a0fc9bSTony Han csi2dc_in: endpoint { 673d6a0fc9bSTony Han }; 674d6a0fc9bSTony Han }; 675d6a0fc9bSTony Han 676d6a0fc9bSTony Han port@1 { 677d6a0fc9bSTony Han reg = <1>; 678d6a0fc9bSTony Han csi2dc_out: endpoint { 679d6a0fc9bSTony Han bus-width = <14>; 680d6a0fc9bSTony Han hsync-active = <1>; 681d6a0fc9bSTony Han vsync-active = <1>; 682d6a0fc9bSTony Han remote-endpoint = <&xisc_in>; 683d6a0fc9bSTony Han }; 684d6a0fc9bSTony Han }; 685d6a0fc9bSTony Han }; 686d6a0fc9bSTony Han }; 687d6a0fc9bSTony Han 688d6a0fc9bSTony Han xisc: xisc@e1408000 { 689d6a0fc9bSTony Han compatible = "microchip,sama7g5-isc"; 690d6a0fc9bSTony Han reg = <0xe1408000 0x2000>; 691d6a0fc9bSTony Han interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>; 692d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 56>; 693d6a0fc9bSTony Han clock-names = "hclock"; 694d6a0fc9bSTony Han #clock-cells = <0>; 695d6a0fc9bSTony Han clock-output-names = "isc-mck"; 696d6a0fc9bSTony Han status = "disabled"; 697d6a0fc9bSTony Han 698d6a0fc9bSTony Han port { 699d6a0fc9bSTony Han xisc_in: endpoint { 700d6a0fc9bSTony Han bus-type = <5>; /* Parallel */ 701d6a0fc9bSTony Han bus-width = <14>; 702d6a0fc9bSTony Han hsync-active = <1>; 703d6a0fc9bSTony Han vsync-active = <1>; 704d6a0fc9bSTony Han remote-endpoint = <&csi2dc_out>; 705d6a0fc9bSTony Han }; 706d6a0fc9bSTony Han }; 707d6a0fc9bSTony Han }; 708d6a0fc9bSTony Han 709d6a0fc9bSTony Han pwm: pwm@e1604000 { 710d6a0fc9bSTony Han compatible = "microchip,sama7g5-pwm", "atmel,sama5d2-pwm"; 711d6a0fc9bSTony Han reg = <0xe1604000 0x4000>; 712d6a0fc9bSTony Han interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 713d6a0fc9bSTony Han #pwm-cells = <3>; 714d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 77>; 715d6a0fc9bSTony Han status = "disabled"; 716d6a0fc9bSTony Han }; 717d6a0fc9bSTony Han 718d6a0fc9bSTony Han pdmc0: sound@e1608000 { 719d6a0fc9bSTony Han compatible = "microchip,sama7g5-pdmc"; 720d6a0fc9bSTony Han reg = <0xe1608000 0x1000>; 721d6a0fc9bSTony Han interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 722d6a0fc9bSTony Han #sound-dai-cells = <0>; 723d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(37)>; 724d6a0fc9bSTony Han dma-names = "rx"; 725d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 68>, <&pmc PMC_TYPE_GCK 68>; 726d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 727d6a0fc9bSTony Han sound-name-prefix = "PDMC0"; 728d6a0fc9bSTony Han status = "disabled"; 729d6a0fc9bSTony Han }; 730d6a0fc9bSTony Han 731d6a0fc9bSTony Han pdmc1: sound@e160c000 { 732d6a0fc9bSTony Han compatible = "microchip,sama7g5-pdmc"; 733d6a0fc9bSTony Han reg = <0xe160c000 0x1000>; 734d6a0fc9bSTony Han interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 735d6a0fc9bSTony Han #sound-dai-cells = <0>; 736d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(38)>; 737d6a0fc9bSTony Han dma-names = "rx"; 738d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 69>, <&pmc PMC_TYPE_GCK 69>; 739d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 740d6a0fc9bSTony Han sound-name-prefix = "PDMC1"; 741d6a0fc9bSTony Han status = "disabled"; 742d6a0fc9bSTony Han }; 743d6a0fc9bSTony Han 744d6a0fc9bSTony Han asrc: sound@e1610000 { 745d6a0fc9bSTony Han compatible = "microchip,sama7g5-asrc"; 746d6a0fc9bSTony Han reg = <0xe1610000 0x1000>; 747d6a0fc9bSTony Han interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 748d6a0fc9bSTony Han #sound-dai-cells = <1>; 749d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(55)>, 750d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(56)>, 751d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(57)>, 752d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(58)>, 753d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(59)>, 754d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(60)>, 755d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(61)>, 756d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(62)>; 757d6a0fc9bSTony Han dma-names = "rx0", "tx0", "rx1", "tx1", 758d6a0fc9bSTony Han "rx2", "tx2", "rx3", "tx3"; 759d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 30>, <&pmc PMC_TYPE_GCK 30>; 760d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 761d6a0fc9bSTony Han microchip,triggers = <&i2s0>, <&i2s1>, <&pdmc0>, <&pdmc1>, 762d6a0fc9bSTony Han <&ssc0>, <&ssc1>, <&spdiftx>, <&spdifrx>; 763d6a0fc9bSTony Han microchip,trigger-indexes = <1>, <2>, <3>, <4>, <5>, <8>, <9>, <10>; 764d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 30>; 765d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_AUDIOPMCPLL>; 766d6a0fc9bSTony Han status = "disabled"; 767d6a0fc9bSTony Han }; 768d6a0fc9bSTony Han 769d6a0fc9bSTony Han spdifrx: spdifrx@e1614000 { 770d6a0fc9bSTony Han #sound-dai-cells = <0>; 771d6a0fc9bSTony Han compatible = "microchip,sama7g5-spdifrx"; 772d6a0fc9bSTony Han reg = <0xe1614000 0x4000>; 773d6a0fc9bSTony Han interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 774d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(49)>; 775d6a0fc9bSTony Han dma-names = "rx"; 776d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 84>, <&pmc PMC_TYPE_GCK 84>; 777d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 778d6a0fc9bSTony Han status = "disabled"; 779d6a0fc9bSTony Han sound-name-prefix = "SPDIFRX0"; 780d6a0fc9bSTony Han }; 781d6a0fc9bSTony Han 782d6a0fc9bSTony Han spdiftx: spdiftx@e1618000 { 783d6a0fc9bSTony Han #sound-dai-cells = <0>; 784d6a0fc9bSTony Han compatible = "microchip,sama7g5-spdiftx"; 785d6a0fc9bSTony Han reg = <0xe1618000 0x4000>; 786d6a0fc9bSTony Han interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 787d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(50)>; 788d6a0fc9bSTony Han dma-names = "tx"; 789d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 85>, <&pmc PMC_TYPE_GCK 85>; 790d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 791d6a0fc9bSTony Han sound-name-prefix = "SPDIFTX0"; 792d6a0fc9bSTony Han }; 793d6a0fc9bSTony Han 794d6a0fc9bSTony Han i2s0: i2s@e161c000 { 795d6a0fc9bSTony Han compatible = "microchip,sama7g5-i2smcc"; 796d6a0fc9bSTony Han #sound-dai-cells = <0>; 797d6a0fc9bSTony Han reg = <0xe161c000 0x4000>; 798d6a0fc9bSTony Han interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; 799d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(34)>, <&dma0 AT91_XDMAC_DT_PERID(33)>; 800d6a0fc9bSTony Han dma-names = "tx", "rx"; 801d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 57>, <&pmc PMC_TYPE_GCK 57>; 802d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 803d6a0fc9bSTony Han sound-name-prefix = "I2SMCC0"; 804d6a0fc9bSTony Han status = "disabled"; 805d6a0fc9bSTony Han }; 806d6a0fc9bSTony Han 807d6a0fc9bSTony Han i2s1: i2s@e1620000 { 808d6a0fc9bSTony Han compatible = "microchip,sama7g5-i2smcc"; 809d6a0fc9bSTony Han #sound-dai-cells = <0>; 810d6a0fc9bSTony Han reg = <0xe1620000 0x4000>; 811d6a0fc9bSTony Han interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>; 812d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(36)>, <&dma0 AT91_XDMAC_DT_PERID(35)>; 813d6a0fc9bSTony Han dma-names = "tx", "rx"; 814d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 58>, <&pmc PMC_TYPE_GCK 58>; 815d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 816d6a0fc9bSTony Han sound-name-prefix = "I2SMCC1"; 817d6a0fc9bSTony Han status = "disabled"; 818d6a0fc9bSTony Han }; 819d6a0fc9bSTony Han 820d6a0fc9bSTony Han sfr: sfr@e1624000 { 821d6a0fc9bSTony Han compatible = "microchip,sama7g5-sfr", "syscon"; 822d6a0fc9bSTony Han reg = <0xe1624000 0x4000>; 823d6a0fc9bSTony Han }; 824d6a0fc9bSTony Han 825d6a0fc9bSTony Han eic: interrupt-controller@e1628000 { 826d6a0fc9bSTony Han compatible = "microchip,sama7g5-eic"; 827d6a0fc9bSTony Han reg = <0xe1628000 0xec>; 828d6a0fc9bSTony Han interrupt-parent = <&gic>; 829d6a0fc9bSTony Han interrupt-controller; 830d6a0fc9bSTony Han #interrupt-cells = <2>; 831d6a0fc9bSTony Han interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 832d6a0fc9bSTony Han <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>; 833d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 37>; 834d6a0fc9bSTony Han clock-names = "pclk"; 835d6a0fc9bSTony Han status = "disabled"; 836d6a0fc9bSTony Han }; 837d6a0fc9bSTony Han 838d6a0fc9bSTony Han pit64b0: timer@e1800000 { 839d6a0fc9bSTony Han compatible = "microchip,sama7g5-pit64b", "microchip,sam9x60-pit64b"; 840d6a0fc9bSTony Han reg = <0xe1800000 0x4000>; 841d6a0fc9bSTony Han interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 842d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 70>, <&pmc PMC_TYPE_GCK 70>; 843d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 844d6a0fc9bSTony Han }; 845d6a0fc9bSTony Han 846d6a0fc9bSTony Han pit64b1: timer@e1804000 { 847d6a0fc9bSTony Han compatible = "microchip,sama7g5-pit64b", "microchip,sam9x60-pit64b"; 848d6a0fc9bSTony Han reg = <0xe1804000 0x4000>; 849d6a0fc9bSTony Han interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 850d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 71>, <&pmc PMC_TYPE_GCK 71>; 851d6a0fc9bSTony Han clock-names = "pclk", "gclk"; 852d6a0fc9bSTony Han }; 853d6a0fc9bSTony Han 854d6a0fc9bSTony Han ssc0: sound@e180c000 { 855d6a0fc9bSTony Han compatible = "atmel,at91sam9g45-ssc"; 856d6a0fc9bSTony Han reg = <0xe180c000 0x1000>; 857d6a0fc9bSTony Han #sound-dai-cells = <0>; 858d6a0fc9bSTony Han interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 859d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(44)>, 860d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(45)>; 861d6a0fc9bSTony Han dma-names = "rx", "tx"; 862d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 86>; 863d6a0fc9bSTony Han clock-names = "pclk"; 864d6a0fc9bSTony Han sound-name-prefix = "SSC0"; 865d6a0fc9bSTony Han status = "disabled"; 866d6a0fc9bSTony Han }; 867d6a0fc9bSTony Han 868d6a0fc9bSTony Han aes: crypto@e1810000 { 869d6a0fc9bSTony Han compatible = "atmel,at91sam9g46-aes"; 870d6a0fc9bSTony Han reg = <0xe1810000 0x100>; 871d6a0fc9bSTony Han interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 872d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 27>; 873d6a0fc9bSTony Han clock-names = "aes_clk"; 874d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(1)>, 875d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(2)>; 876d6a0fc9bSTony Han dma-names = "tx", "rx"; 877d6a0fc9bSTony Han status = "okay"; 878d6a0fc9bSTony Han }; 879d6a0fc9bSTony Han 880d6a0fc9bSTony Han sha: crypto@e1814000 { 881d6a0fc9bSTony Han compatible = "atmel,at91sam9g46-sha"; 882d6a0fc9bSTony Han reg = <0xe1814000 0x100>; 883d6a0fc9bSTony Han interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 884d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 83>; 885d6a0fc9bSTony Han clock-names = "sha_clk"; 886d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(48)>; 887d6a0fc9bSTony Han dma-names = "tx"; 888d6a0fc9bSTony Han status = "okay"; 889d6a0fc9bSTony Han }; 890d6a0fc9bSTony Han 891d6a0fc9bSTony Han flx0: flexcom@e1818000 { 892d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 893d6a0fc9bSTony Han reg = <0xe1818000 0x200>; 894d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 38>; 895d6a0fc9bSTony Han #address-cells = <1>; 896d6a0fc9bSTony Han #size-cells = <1>; 897d6a0fc9bSTony Han ranges = <0x0 0xe1818000 0x800>; 898d6a0fc9bSTony Han status = "disabled"; 899d6a0fc9bSTony Han 900d6a0fc9bSTony Han uart0: serial@200 { 901d6a0fc9bSTony Han compatible = "atmel,at91sam9260-usart"; 902d6a0fc9bSTony Han reg = <0x200 0x200>; 903d6a0fc9bSTony Han interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 904d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 38>; 905d6a0fc9bSTony Han clock-names = "usart"; 906d6a0fc9bSTony Han dmas = <&dma1 AT91_XDMAC_DT_PERID(6)>, 907d6a0fc9bSTony Han <&dma1 AT91_XDMAC_DT_PERID(5)>; 908d6a0fc9bSTony Han dma-names = "tx", "rx"; 909d6a0fc9bSTony Han atmel,use-dma-rx; 910d6a0fc9bSTony Han atmel,use-dma-tx; 911d6a0fc9bSTony Han status = "disabled"; 912d6a0fc9bSTony Han }; 913d6a0fc9bSTony Han }; 914d6a0fc9bSTony Han 915d6a0fc9bSTony Han flx1: flexcom@e181c000 { 916d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 917d6a0fc9bSTony Han reg = <0xe181c000 0x200>; 918d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 39>; 919d6a0fc9bSTony Han #address-cells = <1>; 920d6a0fc9bSTony Han #size-cells = <1>; 921d6a0fc9bSTony Han ranges = <0x0 0xe181c000 0x800>; 922d6a0fc9bSTony Han status = "disabled"; 923d6a0fc9bSTony Han 924d6a0fc9bSTony Han i2c1: i2c@600 { 925d6a0fc9bSTony Han compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c"; 926d6a0fc9bSTony Han reg = <0x600 0x200>; 927d6a0fc9bSTony Han interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 928d6a0fc9bSTony Han #address-cells = <1>; 929d6a0fc9bSTony Han #size-cells = <0>; 930d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 39>; 931d6a0fc9bSTony Han atmel,fifo-size = <32>; 932d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(8)>, 933d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(7)>; 934d6a0fc9bSTony Han dma-names = "tx", "rx"; 935d6a0fc9bSTony Han status = "disabled"; 936d6a0fc9bSTony Han }; 937d6a0fc9bSTony Han }; 938d6a0fc9bSTony Han 939d6a0fc9bSTony Han flx3: flexcom@e1824000 { 940d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 941d6a0fc9bSTony Han reg = <0xe1824000 0x200>; 942d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 41>; 943d6a0fc9bSTony Han #address-cells = <1>; 944d6a0fc9bSTony Han #size-cells = <1>; 945d6a0fc9bSTony Han ranges = <0x0 0xe1824000 0x800>; 946d6a0fc9bSTony Han status = "disabled"; 947d6a0fc9bSTony Han 948d6a0fc9bSTony Han uart3: serial@200 { 949d6a0fc9bSTony Han compatible = "atmel,at91sam9260-usart"; 950d6a0fc9bSTony Han reg = <0x200 0x200>; 951d6a0fc9bSTony Han interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; 952d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 41>; 953d6a0fc9bSTony Han clock-names = "usart"; 954d6a0fc9bSTony Han dmas = <&dma1 AT91_XDMAC_DT_PERID(12)>, 955d6a0fc9bSTony Han <&dma1 AT91_XDMAC_DT_PERID(11)>; 956d6a0fc9bSTony Han dma-names = "tx", "rx"; 957d6a0fc9bSTony Han atmel,use-dma-rx; 958d6a0fc9bSTony Han atmel,use-dma-tx; 959d6a0fc9bSTony Han status = "disabled"; 960d6a0fc9bSTony Han }; 961d6a0fc9bSTony Han }; 962d6a0fc9bSTony Han 963d6a0fc9bSTony Han ssc1: sound@e200c000 { 964d6a0fc9bSTony Han compatible = "atmel,at91sam9g45-ssc"; 965d6a0fc9bSTony Han reg = <0xe200c000 0x1000>; 966d6a0fc9bSTony Han #sound-dai-cells = <0>; 967d6a0fc9bSTony Han interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 968d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(46)>, 969d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(47)>; 970d6a0fc9bSTony Han dma-names = "rx", "tx"; 971d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 87>; 972d6a0fc9bSTony Han clock-names = "pclk"; 973d6a0fc9bSTony Han sound-name-prefix = "SSC1"; 974d6a0fc9bSTony Han status = "disabled"; 975d6a0fc9bSTony Han }; 976d6a0fc9bSTony Han 977d6a0fc9bSTony Han trng: rng@e2010000 { 978d6a0fc9bSTony Han compatible = "microchip,sama7g5-trng", "atmel,at91sam9g45-trng"; 979d6a0fc9bSTony Han reg = <0xe2010000 0x100>; 980d6a0fc9bSTony Han interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 981d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 97>; 982d6a0fc9bSTony Han status = "disabled"; 983d6a0fc9bSTony Han secure-status = "okay"; 984d6a0fc9bSTony Han }; 985d6a0fc9bSTony Han 986d6a0fc9bSTony Han tdes: crypto@e2014000 { 987d6a0fc9bSTony Han compatible = "atmel,at91sam9g46-tdes"; 988d6a0fc9bSTony Han reg = <0xe2014000 0x100>; 989d6a0fc9bSTony Han interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 990d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 96>; 991d6a0fc9bSTony Han clock-names = "tdes_clk"; 992d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(54)>, 993d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(53)>; 994d6a0fc9bSTony Han dma-names = "tx", "rx"; 995d6a0fc9bSTony Han status = "okay"; 996d6a0fc9bSTony Han }; 997d6a0fc9bSTony Han 998d6a0fc9bSTony Han flx4: flexcom@e2018000 { 999d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 1000d6a0fc9bSTony Han reg = <0xe2018000 0x200>; 1001d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 42>; 1002d6a0fc9bSTony Han #address-cells = <1>; 1003d6a0fc9bSTony Han #size-cells = <1>; 1004d6a0fc9bSTony Han ranges = <0x0 0xe2018000 0x800>; 1005d6a0fc9bSTony Han status = "disabled"; 1006d6a0fc9bSTony Han 1007d6a0fc9bSTony Han uart4: serial@200 { 1008d6a0fc9bSTony Han compatible = "atmel,at91sam9260-usart"; 1009d6a0fc9bSTony Han reg = <0x200 0x200>; 1010d6a0fc9bSTony Han interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 1011d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 42>; 1012d6a0fc9bSTony Han clock-names = "usart"; 1013d6a0fc9bSTony Han dmas = <&dma1 AT91_XDMAC_DT_PERID(14)>, 1014d6a0fc9bSTony Han <&dma1 AT91_XDMAC_DT_PERID(13)>; 1015d6a0fc9bSTony Han dma-names = "tx", "rx"; 1016d6a0fc9bSTony Han atmel,use-dma-rx; 1017d6a0fc9bSTony Han atmel,use-dma-tx; 1018d6a0fc9bSTony Han atmel,fifo-size = <16>; 1019d6a0fc9bSTony Han status = "disabled"; 1020d6a0fc9bSTony Han }; 1021d6a0fc9bSTony Han }; 1022d6a0fc9bSTony Han 1023d6a0fc9bSTony Han flx7: flexcom@e2024000 { 1024d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 1025d6a0fc9bSTony Han reg = <0xe2024000 0x200>; 1026d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 45>; 1027d6a0fc9bSTony Han #address-cells = <1>; 1028d6a0fc9bSTony Han #size-cells = <1>; 1029d6a0fc9bSTony Han ranges = <0x0 0xe2024000 0x800>; 1030d6a0fc9bSTony Han status = "disabled"; 1031d6a0fc9bSTony Han 1032d6a0fc9bSTony Han uart7: serial@200 { 1033d6a0fc9bSTony Han compatible = "atmel,at91sam9260-usart"; 1034d6a0fc9bSTony Han reg = <0x200 0x200>; 1035d6a0fc9bSTony Han interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 1036d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 45>; 1037d6a0fc9bSTony Han clock-names = "usart"; 1038d6a0fc9bSTony Han dmas = <&dma1 AT91_XDMAC_DT_PERID(20)>, 1039d6a0fc9bSTony Han <&dma1 AT91_XDMAC_DT_PERID(19)>; 1040d6a0fc9bSTony Han dma-names = "tx", "rx"; 1041d6a0fc9bSTony Han atmel,use-dma-rx; 1042d6a0fc9bSTony Han atmel,use-dma-tx; 1043d6a0fc9bSTony Han atmel,fifo-size = <16>; 1044d6a0fc9bSTony Han status = "disabled"; 1045d6a0fc9bSTony Han }; 1046d6a0fc9bSTony Han }; 1047d6a0fc9bSTony Han 1048d6a0fc9bSTony Han gmac0: ethernet@e2800000 { 1049d6a0fc9bSTony Han compatible = "microchip,sama7g5-gem"; 1050d6a0fc9bSTony Han reg = <0xe2800000 0x1000>; 1051d6a0fc9bSTony Han interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH 1052d6a0fc9bSTony Han GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH 1053d6a0fc9bSTony Han GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH 1054d6a0fc9bSTony Han GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH 1055d6a0fc9bSTony Han GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH 1056d6a0fc9bSTony Han GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 1057d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_GCK 51>, <&pmc PMC_TYPE_GCK 53>; 1058d6a0fc9bSTony Han clock-names = "pclk", "hclk", "tx_clk", "tsu_clk"; 1059d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 51>; 1060d6a0fc9bSTony Han assigned-clock-rates = <125000000>; 1061d6a0fc9bSTony Han assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_ETHPLL>; 1062d6a0fc9bSTony Han status = "disabled"; 1063d6a0fc9bSTony Han }; 1064d6a0fc9bSTony Han 1065d6a0fc9bSTony Han gmac1: ethernet@e2804000 { 1066d6a0fc9bSTony Han compatible = "microchip,sama7g5-emac"; 1067d6a0fc9bSTony Han reg = <0xe2804000 0x1000>; 1068d6a0fc9bSTony Han interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH 1069d6a0fc9bSTony Han GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 1070d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 52>, <&pmc PMC_TYPE_PERIPHERAL 52>, <&pmc PMC_TYPE_GCK 54>; 1071d6a0fc9bSTony Han clock-names = "pclk", "hclk", "tsu_clk"; 1072d6a0fc9bSTony Han assigned-clocks = <&pmc PMC_TYPE_GCK 54>; 1073d6a0fc9bSTony Han assigned-clock-rates = <200000000>; 1074d6a0fc9bSTony Han status = "disabled"; 1075d6a0fc9bSTony Han }; 1076d6a0fc9bSTony Han 1077d6a0fc9bSTony Han dma0: dma-controller@e2808000 { 1078d6a0fc9bSTony Han compatible = "microchip,sama7g5-dma"; 1079d6a0fc9bSTony Han reg = <0xe2808000 0x1000>; 1080d6a0fc9bSTony Han interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; 1081d6a0fc9bSTony Han #dma-cells = <1>; 1082d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 22>; 1083d6a0fc9bSTony Han clock-names = "dma_clk"; 1084d6a0fc9bSTony Han status = "disabled"; 1085d6a0fc9bSTony Han }; 1086d6a0fc9bSTony Han 1087d6a0fc9bSTony Han dma1: dma-controller@e280c000 { 1088d6a0fc9bSTony Han compatible = "microchip,sama7g5-dma"; 1089d6a0fc9bSTony Han reg = <0xe280c000 0x1000>; 1090d6a0fc9bSTony Han interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; 1091d6a0fc9bSTony Han #dma-cells = <1>; 1092d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 23>; 1093d6a0fc9bSTony Han clock-names = "dma_clk"; 1094d6a0fc9bSTony Han status = "disabled"; 1095d6a0fc9bSTony Han }; 1096d6a0fc9bSTony Han 1097d6a0fc9bSTony Han /* Place dma2 here despite it's address */ 1098d6a0fc9bSTony Han dma2: dma-controller@e1200000 { 1099d6a0fc9bSTony Han compatible = "microchip,sama7g5-dma"; 1100d6a0fc9bSTony Han reg = <0xe1200000 0x1000>; 1101d6a0fc9bSTony Han interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 1102d6a0fc9bSTony Han #dma-cells = <1>; 1103d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 24>; 1104d6a0fc9bSTony Han clock-names = "dma_clk"; 1105d6a0fc9bSTony Han dma-requests = <0>; 1106d6a0fc9bSTony Han status = "disabled"; 1107d6a0fc9bSTony Han }; 1108d6a0fc9bSTony Han 1109d6a0fc9bSTony Han tcb0: timer@e2814000 { 1110d6a0fc9bSTony Han compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon"; 1111d6a0fc9bSTony Han #address-cells = <1>; 1112d6a0fc9bSTony Han #size-cells = <0>; 1113d6a0fc9bSTony Han reg = <0xe2814000 0x100>; 1114d6a0fc9bSTony Han interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1115d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 88>, <&pmc PMC_TYPE_PERIPHERAL 89>, <&pmc PMC_TYPE_PERIPHERAL 90>, <&clk32k 1>; 1116d6a0fc9bSTony Han clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk"; 1117d6a0fc9bSTony Han }; 1118d6a0fc9bSTony Han 1119d6a0fc9bSTony Han flx8: flexcom@e2818000 { 1120d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 1121d6a0fc9bSTony Han reg = <0xe2818000 0x200>; 1122d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 46>; 1123d6a0fc9bSTony Han #address-cells = <1>; 1124d6a0fc9bSTony Han #size-cells = <1>; 1125d6a0fc9bSTony Han ranges = <0x0 0xe2818000 0x800>; 1126d6a0fc9bSTony Han status = "disabled"; 1127d6a0fc9bSTony Han 1128d6a0fc9bSTony Han i2c8: i2c@600 { 1129d6a0fc9bSTony Han compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c"; 1130d6a0fc9bSTony Han reg = <0x600 0x200>; 1131d6a0fc9bSTony Han interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 1132d6a0fc9bSTony Han #address-cells = <1>; 1133d6a0fc9bSTony Han #size-cells = <0>; 1134d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 46>; 1135d6a0fc9bSTony Han atmel,fifo-size = <32>; 1136d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(22)>, 1137d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(21)>; 1138d6a0fc9bSTony Han dma-names = "tx", "rx"; 1139d6a0fc9bSTony Han status = "disabled"; 1140d6a0fc9bSTony Han }; 1141d6a0fc9bSTony Han }; 1142d6a0fc9bSTony Han 1143d6a0fc9bSTony Han flx9: flexcom@e281c000 { 1144d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 1145d6a0fc9bSTony Han reg = <0xe281c000 0x200>; 1146d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 47>; 1147d6a0fc9bSTony Han #address-cells = <1>; 1148d6a0fc9bSTony Han #size-cells = <1>; 1149d6a0fc9bSTony Han ranges = <0x0 0xe281c000 0x800>; 1150d6a0fc9bSTony Han status = "disabled"; 1151d6a0fc9bSTony Han 1152d6a0fc9bSTony Han i2c9: i2c@600 { 1153d6a0fc9bSTony Han compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c"; 1154d6a0fc9bSTony Han reg = <0x600 0x200>; 1155d6a0fc9bSTony Han interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 1156d6a0fc9bSTony Han #address-cells = <1>; 1157d6a0fc9bSTony Han #size-cells = <0>; 1158d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 47>; 1159d6a0fc9bSTony Han atmel,fifo-size = <32>; 1160d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(24)>, 1161d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(23)>; 1162d6a0fc9bSTony Han dma-names = "tx", "rx"; 1163d6a0fc9bSTony Han status = "disabled"; 1164d6a0fc9bSTony Han }; 1165d6a0fc9bSTony Han }; 1166d6a0fc9bSTony Han 1167d6a0fc9bSTony Han flx11: flexcom@e2824000 { 1168d6a0fc9bSTony Han compatible = "atmel,sama5d2-flexcom"; 1169d6a0fc9bSTony Han reg = <0xe2824000 0x200>; 1170d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 49>; 1171d6a0fc9bSTony Han #address-cells = <1>; 1172d6a0fc9bSTony Han #size-cells = <1>; 1173d6a0fc9bSTony Han ranges = <0x0 0xe2824000 0x800>; 1174d6a0fc9bSTony Han status = "disabled"; 1175d6a0fc9bSTony Han 1176d6a0fc9bSTony Han spi11: spi@400 { 1177d6a0fc9bSTony Han compatible = "atmel,at91rm9200-spi"; 1178d6a0fc9bSTony Han reg = <0x400 0x200>; 1179d6a0fc9bSTony Han interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 1180d6a0fc9bSTony Han clocks = <&pmc PMC_TYPE_PERIPHERAL 49>; 1181d6a0fc9bSTony Han clock-names = "spi_clk"; 1182d6a0fc9bSTony Han #address-cells = <1>; 1183d6a0fc9bSTony Han #size-cells = <0>; 1184d6a0fc9bSTony Han atmel,fifo-size = <32>; 1185d6a0fc9bSTony Han dmas = <&dma0 AT91_XDMAC_DT_PERID(28)>, 1186d6a0fc9bSTony Han <&dma0 AT91_XDMAC_DT_PERID(27)>; 1187d6a0fc9bSTony Han dma-names = "tx", "rx"; 1188d6a0fc9bSTony Han status = "disabled"; 1189d6a0fc9bSTony Han }; 1190d6a0fc9bSTony Han }; 1191d6a0fc9bSTony Han 1192d6a0fc9bSTony Han uddrc: uddrc@e3800000 { 1193d6a0fc9bSTony Han compatible = "microchip,sama7g5-uddrc"; 1194d6a0fc9bSTony Han reg = <0xe3800000 0x4000>; 1195d6a0fc9bSTony Han }; 1196d6a0fc9bSTony Han 1197d6a0fc9bSTony Han ddr3phy: ddr3phy@e3804000 { 1198d6a0fc9bSTony Han compatible = "microchip,sama7g5-ddr3phy"; 1199d6a0fc9bSTony Han reg = <0xe3804000 0x1000>; 1200d6a0fc9bSTony Han }; 1201d6a0fc9bSTony Han 1202d6a0fc9bSTony Han otpc: efuse@e8c00000 { 1203d6a0fc9bSTony Han compatible = "microchip,sama7g5-otpc", "syscon"; 1204d6a0fc9bSTony Han reg = <0xe8c00000 0x100>; 1205d6a0fc9bSTony Han #address-cells = <1>; 1206d6a0fc9bSTony Han #size-cells = <1>; 1207d6a0fc9bSTony Han 1208d6a0fc9bSTony Han temperature_calib: calib@1 { 1209d6a0fc9bSTony Han status = "disabled"; 1210d6a0fc9bSTony Han }; 1211d6a0fc9bSTony Han }; 1212d6a0fc9bSTony Han 1213d6a0fc9bSTony Han gic: interrupt-controller@e8c11000 { 1214d6a0fc9bSTony Han compatible = "arm,cortex-a7-gic"; 1215d6a0fc9bSTony Han #interrupt-cells = <3>; 1216d6a0fc9bSTony Han #address-cells = <0>; 1217d6a0fc9bSTony Han interrupt-controller; 1218d6a0fc9bSTony Han reg = <0xe8c11000 0x1000>, 1219d6a0fc9bSTony Han <0xe8c12000 0x2000>; 1220d6a0fc9bSTony Han }; 1221d6a0fc9bSTony Han }; 1222d6a0fc9bSTony Han}; 1223