1/*
2 * Copyright (C) 2015 Marek Vasut <marex@denx.de>
3 *
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
7 *
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
10 */
11
12#include "sama5d4.dtsi"
13
14/ {
15	model = "DENX MA5D4";
16	compatible = "denx,ma5d4", "atmel,sama5d4", "atmel,sama5";
17
18	memory {
19		reg = <0x20000000 0x10000000>;
20	};
21
22	clocks {
23		main_clock: main_clock {
24			compatible = "atmel,osc", "fixed-clock";
25			clock-frequency = <12000000>;
26		};
27
28		clk20m: clk20m {
29			compatible = "fixed-clock";
30			#clock-cells = <0>;
31			clock-frequency = <20000000>;
32			clock-output-names = "clk20m";
33		};
34	};
35
36	ahb {
37		apb {
38			mmc0: mmc@f8000000 {
39				pinctrl-names = "default";
40				pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7>;
41				vmmc-supply = <&vcc_mmc0_reg>;
42				vqmmc-supply = <&vcc_3v3_reg>;
43				status = "okay";
44				slot@0 {
45					reg = <0>;
46					bus-width = <8>;
47					broken-cd;
48				};
49			};
50
51			spi0: spi@f8010000 {
52				cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
53				status = "okay";
54
55				m25p80@0 {
56					compatible = "atmel,at25df321a";
57					spi-max-frequency = <50000000>;
58					reg = <0>;
59				};
60			};
61
62			i2c0: i2c@f8014000 {
63				status = "okay";
64			};
65
66			spi1: spi@fc018000 {
67				cs-gpios = <&pioB 22 0>, <&pioB 23 0>, <0>, <0>;
68				status = "okay";
69
70				can0: can@0 {
71					compatible = "microchip,mcp2515";
72					reg = <0>;
73					clocks = <&clk20m>;
74					interrupt-parent = <&pioE>;
75					interrupts = <6 GPIO_ACTIVE_LOW>;
76					spi-max-frequency = <10000000>;
77				};
78
79				can1: can@1 {
80					compatible = "microchip,mcp2515";
81					reg = <1>;
82					clocks = <&clk20m>;
83					interrupt-parent = <&pioE>;
84					interrupts = <7 GPIO_ACTIVE_LOW>;
85					spi-max-frequency = <10000000>;
86				};
87			};
88
89			adc0: adc@fc034000 {
90				pinctrl-names = "default";
91				pinctrl-0 = <
92					/* external trigger conflicts with USBA_VBUS */
93					&pinctrl_adc0_ad0
94					&pinctrl_adc0_ad1
95					&pinctrl_adc0_ad2
96					&pinctrl_adc0_ad3
97					&pinctrl_adc0_ad4
98					>;
99				atmel,adc-vref = <3300>;
100				status = "okay";
101			};
102
103			watchdog@fc068640 {
104				status = "okay";
105			};
106		};
107	};
108
109	vcc_3v3_reg: fixedregulator@0 {
110		compatible = "regulator-fixed";
111		regulator-name = "VCC 3V3";
112		regulator-min-microvolt = <3300000>;
113		regulator-max-microvolt = <3300000>;
114		regulator-boot-on;
115		regulator-always-on;
116	};
117
118	vcc_mmc0_reg: fixedregulator@1 {
119		compatible = "regulator-fixed";
120		gpio = <&pioE 15 GPIO_ACTIVE_HIGH>;
121		regulator-name = "RST_n MCI0";
122		regulator-min-microvolt = <3300000>;
123		regulator-max-microvolt = <3300000>;
124		vin-supply = <&vcc_3v3_reg>;
125		regulator-boot-on;
126	};
127};
128