blob: 9e9f84fe06f89d03002cdebeefac98d0e5efafe1 [file] [log] [blame]
Eugen Hristev1e30fa12020-03-10 11:56:03 +02001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * sama7g5.dtsi - Device Tree Include file for SAMA7G5 SoC.
4 *
5 * Copyright (C) 2020 Microchip Technology Inc. and its subsidiaries
6 *
7 * Author: Eugen Hristev <eugen.hristev@microchip.com>
8 * Author: Claudiu Beznea <claudiu.beznea@microchip.com>
9 *
10 */
11
12#include "skeleton.dtsi"
Claudiu Beznea5002eb72020-06-02 15:26:12 +030013#include <dt-bindings/clk/at91.h>
Eugen Hristev1e30fa12020-03-10 11:56:03 +020014
15/ {
16 model = "Microchip SAMA7G5 family SoC";
17 compatible = "microchip,sama7g5";
18
19 clocks {
Claudiu Beznead1092822020-06-02 15:22:21 +030020 slow_rc_osc: slow_rc_osc {
21 compatible = "fixed-clock";
22 #clock-cells = <0>;
23 clock-frequency = <32000>;
24 };
25
26 main_rc: main_rc {
27 compatible = "fixed-clock";
28 #clock-cells = <0>;
29 clock-frequency = <12000000>;
30 };
31
Eugen Hristev1e30fa12020-03-10 11:56:03 +020032 slow_xtal: slow_xtal {
33 compatible = "fixed-clock";
34 #clock-cells = <0>;
Eugen Hristev1e30fa12020-03-10 11:56:03 +020035 };
36
37 main_xtal: main_xtal {
38 compatible = "fixed-clock";
39 #clock-cells = <0>;
Eugen Hristev1e30fa12020-03-10 11:56:03 +020040 };
Eugen Hristev1e30fa12020-03-10 11:56:03 +020041 };
42
Claudiu Beznea1417d1d2020-06-02 15:35:55 +030043 cpus {
44 #address-cells = <1>;
45 #size-cells = <0>;
46
47 A7_0: cpu@0 {
48 device_type = "cpu";
49 compatible = "arm,cortex-a7";
50 clocks = <&pmc PMC_TYPE_CORE 8>, <&pmc PMC_TYPE_CORE 22>, <&main_xtal>;
51 clock-names = "cpu", "master", "xtal";
52 };
53 };
54
Eugen Hristev1e30fa12020-03-10 11:56:03 +020055 ahb {
56 compatible = "simple-bus";
57 #address-cells = <1>;
58 #size-cells = <1>;
59
60 apb {
61 compatible = "simple-bus";
62 #address-cells = <1>;
63 #size-cells = <1>;
64
Eugen Hristevc06e2fe2020-06-04 10:37:13 +030065 pioA: pinctrl@e0014000 {
66 compatible = "atmel,sama5d2-gpio";
67 reg = <0xe0014000 0x800>;
68 gpio-controller;
69 #gpio-cells = <2>;
70 clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
71 status = "okay";
72
73 pinctrl: pinctrl_default {
74 compatible = "microchip,sama7g5-pinctrl";
75 };
76 };
77
Claudiu Beznea18401a22020-06-02 15:24:25 +030078 pmc: pmc@e0018000 {
79 compatible = "microchip,sama7g5-pmc";
80 reg = <0xe0018000 0x200>;
81 #clock-cells = <2>;
82 clocks = <&clk32 1>, <&clk32 0>, <&main_xtal>, <&main_rc>;
83 clock-names = "td_slck", "md_slck", "main_xtal", "main_rc";
84 status = "okay";
85 };
86
Claudiu Bezneac09db792020-06-02 15:23:49 +030087 clk32: sckc@e001d050 {
88 compatible = "microchip,sam9x60-sckc";
89 reg = <0xe001d050 0x4>;
90 clocks = <&slow_rc_osc>, <&slow_xtal>;
91 #clock-cells = <1>;
92 };
93
Eugen Hristev1e30fa12020-03-10 11:56:03 +020094 sdmmc1: sdio-host@e1208000 {
95 compatible = "microchip,sama7g5-sdhci";
96 reg = <0xe1208000 0x300>;
Claudiu Beznea5002eb72020-06-02 15:26:12 +030097 clocks = <&pmc PMC_TYPE_PERIPHERAL 81>, <&pmc PMC_TYPE_GCK 81>;
98 clock-names = "hclock", "multclk";
Eugen Hristev5bf95962020-07-30 15:50:59 +030099 assigned-clocks = <&pmc PMC_TYPE_GCK 81>;
100 assigned-clock-rates = <200000000>;
101 assigned-clock-parents = <&pmc PMC_TYPE_CORE 10>; /* sys pll div. */
Eugen Hristev1e30fa12020-03-10 11:56:03 +0200102 status = "disabled";
103 };
104
Claudiu Beznea5430a4e2020-06-02 18:42:18 +0300105 pit64b0: timer@e1800000 {
106 compatible = "microchip,sama7g5-pit64b";
107 reg = <0xe1800000 0x4000>;
108 clocks = <&pmc PMC_TYPE_PERIPHERAL 70>, <&pmc PMC_TYPE_GCK 70>;
109 clock-names = "pclk", "gclk";
110 status = "okay";
111 };
112
Eugen Hristev1e30fa12020-03-10 11:56:03 +0200113 uart0: serial@e1824200 {
114 compatible = "atmel,at91sam9260-usart";
115 reg = <0xe1824200 0x200>;
Claudiu Beznea5002eb72020-06-02 15:26:12 +0300116 clocks = <&pmc PMC_TYPE_PERIPHERAL 41>;
Eugen Hristev1e30fa12020-03-10 11:56:03 +0200117 clock-names = "usart";
118 status = "disabled";
119 };
Claudiu Beznea45cca2b2020-06-09 13:53:00 +0300120
121 gmac0: ethernet@e2800000 {
122 compatible = "cdns,sama7g5-gem";
123 reg = <0xe2800000 0x4000>;
124 clocks = <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_GCK 51>;
125 clock-names = "hclk", "pclk", "tx_clk";
126 assigned-clocks = <&pmc PMC_TYPE_GCK 51>;
127 assigned-clock-parents = <&pmc PMC_TYPE_CORE 21>; /* eth pll div. */
128 assigned-clock-rates = <125000000>;
129 status = "disabled";
130 };
Claudiu Beznea44550122020-06-09 13:53:45 +0300131
132 gmac1: ethernet@e2804000 {
133 compatible = "cdns,sama7g5-emac";
134 reg = <0xe2804000 0x1000>;
135 clocks = <&pmc PMC_TYPE_PERIPHERAL 52>, <&pmc PMC_TYPE_PERIPHERAL 52>;
136 clock-names = "pclk", "hclk";
137 status = "disabled";
138 };
Eugen Hristev1e30fa12020-03-10 11:56:03 +0200139 };
140 };
141};