xref: /linux/scripts/dtc/include-prefixes/arm/microchip/at91sam9261.dtsi (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only
2724ba675SRob Herring/*
3724ba675SRob Herring * at91sam9261.dtsi - Device Tree Include file for AT91SAM9261 SoC
4724ba675SRob Herring *
5724ba675SRob Herring *  Copyright (C) 2013 Jean-Jacques Hiblot <jjhiblot@traphandler.com>
6724ba675SRob Herring */
7724ba675SRob Herring
8724ba675SRob Herring#include <dt-bindings/pinctrl/at91.h>
9724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
10724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
11724ba675SRob Herring#include <dt-bindings/clock/at91.h>
12724ba675SRob Herring#include <dt-bindings/mfd/at91-usart.h>
13724ba675SRob Herring
14724ba675SRob Herring/ {
15724ba675SRob Herring	#address-cells = <1>;
16724ba675SRob Herring	#size-cells = <1>;
17724ba675SRob Herring	model = "Atmel AT91SAM9261 family SoC";
18724ba675SRob Herring	compatible = "atmel,at91sam9261";
19724ba675SRob Herring	interrupt-parent = <&aic>;
20724ba675SRob Herring
21724ba675SRob Herring	aliases {
22724ba675SRob Herring		serial0 = &dbgu;
23724ba675SRob Herring		serial1 = &usart0;
24724ba675SRob Herring		serial2 = &usart1;
25724ba675SRob Herring		serial3 = &usart2;
26724ba675SRob Herring		gpio0 = &pioA;
27724ba675SRob Herring		gpio1 = &pioB;
28724ba675SRob Herring		gpio2 = &pioC;
29724ba675SRob Herring		tcb0 = &tcb0;
30724ba675SRob Herring		i2c0 = &i2c0;
31724ba675SRob Herring		ssc0 = &ssc0;
32724ba675SRob Herring		ssc1 = &ssc1;
33724ba675SRob Herring		ssc2 = &ssc2;
34724ba675SRob Herring	};
35724ba675SRob Herring
36724ba675SRob Herring	cpus {
37724ba675SRob Herring		#address-cells = <1>;
38724ba675SRob Herring		#size-cells = <0>;
39724ba675SRob Herring
40724ba675SRob Herring		cpu@0 {
41724ba675SRob Herring			compatible = "arm,arm926ej-s";
42724ba675SRob Herring			device_type = "cpu";
43724ba675SRob Herring			reg = <0>;
44724ba675SRob Herring		};
45724ba675SRob Herring	};
46724ba675SRob Herring
47724ba675SRob Herring	memory@20000000 {
48724ba675SRob Herring		device_type = "memory";
49724ba675SRob Herring		reg = <0x20000000 0x08000000>;
50724ba675SRob Herring	};
51724ba675SRob Herring
52724ba675SRob Herring	clocks {
53724ba675SRob Herring		main_xtal: main_xtal {
54724ba675SRob Herring			compatible = "fixed-clock";
55724ba675SRob Herring			#clock-cells = <0>;
56724ba675SRob Herring			clock-frequency = <0>;
57724ba675SRob Herring		};
58724ba675SRob Herring
59724ba675SRob Herring		slow_xtal: slow_xtal {
60724ba675SRob Herring			compatible = "fixed-clock";
61724ba675SRob Herring			#clock-cells = <0>;
62724ba675SRob Herring			clock-frequency = <0>;
63724ba675SRob Herring		};
64724ba675SRob Herring	};
65724ba675SRob Herring
66724ba675SRob Herring	sram: sram@300000 {
67724ba675SRob Herring		compatible = "mmio-sram";
68724ba675SRob Herring		reg = <0x00300000 0x28000>;
69724ba675SRob Herring		#address-cells = <1>;
70724ba675SRob Herring		#size-cells = <1>;
71724ba675SRob Herring		ranges = <0 0x00300000 0x28000>;
72724ba675SRob Herring	};
73724ba675SRob Herring
74724ba675SRob Herring	ahb {
75724ba675SRob Herring		compatible = "simple-bus";
76724ba675SRob Herring		#address-cells = <1>;
77724ba675SRob Herring		#size-cells = <1>;
78724ba675SRob Herring		ranges;
79724ba675SRob Herring
80724ba675SRob Herring		usb0: ohci@500000 {
81724ba675SRob Herring			compatible = "atmel,at91rm9200-ohci", "usb-ohci";
82724ba675SRob Herring			reg = <0x00500000 0x100000>;
83724ba675SRob Herring			interrupts = <20 IRQ_TYPE_LEVEL_HIGH 2>;
84724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 20>, <&pmc PMC_TYPE_SYSTEM 16>, <&pmc PMC_TYPE_SYSTEM 6>;
85724ba675SRob Herring			clock-names = "ohci_clk", "hclk", "uhpck";
86724ba675SRob Herring			status = "disabled";
87724ba675SRob Herring		};
88724ba675SRob Herring
89724ba675SRob Herring		fb0: fb@600000 {
90724ba675SRob Herring			compatible = "atmel,at91sam9261-lcdc";
91724ba675SRob Herring			reg = <0x00600000 0x1000>;
92724ba675SRob Herring			interrupts = <21 IRQ_TYPE_LEVEL_HIGH 3>;
93724ba675SRob Herring			pinctrl-names = "default";
94724ba675SRob Herring			pinctrl-0 = <&pinctrl_fb>;
95724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 21>, <&pmc PMC_TYPE_SYSTEM 17>;
96724ba675SRob Herring			clock-names = "lcdc_clk", "hclk";
97724ba675SRob Herring			status = "disabled";
98724ba675SRob Herring		};
99724ba675SRob Herring
100724ba675SRob Herring		ebi: ebi@10000000 {
101724ba675SRob Herring			compatible = "atmel,at91sam9261-ebi";
102724ba675SRob Herring			#address-cells = <2>;
103724ba675SRob Herring			#size-cells = <1>;
104724ba675SRob Herring			atmel,smc = <&smc>;
105724ba675SRob Herring			atmel,matrix = <&matrix>;
106724ba675SRob Herring			reg = <0x10000000 0x80000000>;
107724ba675SRob Herring			ranges = <0x0 0x0 0x10000000 0x10000000
108724ba675SRob Herring				  0x1 0x0 0x20000000 0x10000000
109724ba675SRob Herring				  0x2 0x0 0x30000000 0x10000000
110724ba675SRob Herring				  0x3 0x0 0x40000000 0x10000000
111724ba675SRob Herring				  0x4 0x0 0x50000000 0x10000000
112724ba675SRob Herring				  0x5 0x0 0x60000000 0x10000000
113724ba675SRob Herring				  0x6 0x0 0x70000000 0x10000000
114724ba675SRob Herring				  0x7 0x0 0x80000000 0x10000000>;
115724ba675SRob Herring			clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
116724ba675SRob Herring			status = "disabled";
117724ba675SRob Herring
118724ba675SRob Herring			nand_controller: nand-controller {
119724ba675SRob Herring				compatible = "atmel,at91sam9261-nand-controller";
120724ba675SRob Herring				#address-cells = <2>;
121724ba675SRob Herring				#size-cells = <1>;
122724ba675SRob Herring				ranges;
123724ba675SRob Herring				status = "disabled";
124724ba675SRob Herring			};
125724ba675SRob Herring		};
126724ba675SRob Herring
127724ba675SRob Herring		apb {
128724ba675SRob Herring			compatible = "simple-bus";
129724ba675SRob Herring			#address-cells = <1>;
130724ba675SRob Herring			#size-cells = <1>;
131724ba675SRob Herring			ranges;
132724ba675SRob Herring
133724ba675SRob Herring			tcb0: timer@fffa0000 {
134724ba675SRob Herring				compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
135724ba675SRob Herring				#address-cells = <1>;
136724ba675SRob Herring				#size-cells = <0>;
137724ba675SRob Herring				reg = <0xfffa0000 0x100>;
138724ba675SRob Herring				interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>,
139724ba675SRob Herring					     <18 IRQ_TYPE_LEVEL_HIGH 0>,
140724ba675SRob Herring					     <19 IRQ_TYPE_LEVEL_HIGH 0>;
141724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 17>, <&pmc PMC_TYPE_PERIPHERAL 18>, <&pmc PMC_TYPE_PERIPHERAL 19>, <&slow_xtal>;
142724ba675SRob Herring				clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
143724ba675SRob Herring			};
144724ba675SRob Herring
145724ba675SRob Herring			usb1: gadget@fffa4000 {
146724ba675SRob Herring				compatible = "atmel,at91sam9261-udc";
147724ba675SRob Herring				reg = <0xfffa4000 0x4000>;
148724ba675SRob Herring				interrupts = <10 IRQ_TYPE_LEVEL_HIGH 2>;
149724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 10>, <&pmc PMC_TYPE_SYSTEM 7>;
150724ba675SRob Herring				clock-names = "pclk", "hclk";
151724ba675SRob Herring				atmel,matrix = <&matrix>;
152724ba675SRob Herring				status = "disabled";
153724ba675SRob Herring			};
154724ba675SRob Herring
155724ba675SRob Herring			mmc0: mmc@fffa8000 {
156724ba675SRob Herring				compatible = "atmel,hsmci";
157724ba675SRob Herring				reg = <0xfffa8000 0x600>;
158724ba675SRob Herring				interrupts = <9 IRQ_TYPE_LEVEL_HIGH 0>;
159724ba675SRob Herring				pinctrl-names = "default";
160724ba675SRob Herring				pinctrl-0 = <&pinctrl_mmc0_clk>, <&pinctrl_mmc0_slot0_cmd_dat0>, <&pinctrl_mmc0_slot0_dat1_3>;
161724ba675SRob Herring				#address-cells = <1>;
162724ba675SRob Herring				#size-cells = <0>;
163724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
164724ba675SRob Herring				clock-names = "mci_clk";
165724ba675SRob Herring				status = "disabled";
166724ba675SRob Herring			};
167724ba675SRob Herring
168724ba675SRob Herring			i2c0: i2c@fffac000 {
169724ba675SRob Herring				compatible = "atmel,at91sam9261-i2c";
170724ba675SRob Herring				pinctrl-names = "default";
171724ba675SRob Herring				pinctrl-0 = <&pinctrl_i2c_twi>;
172724ba675SRob Herring				reg = <0xfffac000 0x100>;
173724ba675SRob Herring				interrupts = <11 IRQ_TYPE_LEVEL_HIGH 6>;
174724ba675SRob Herring				#address-cells = <1>;
175724ba675SRob Herring				#size-cells = <0>;
176724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
177724ba675SRob Herring				status = "disabled";
178724ba675SRob Herring			};
179724ba675SRob Herring
180724ba675SRob Herring			usart0: serial@fffb0000 {
181724ba675SRob Herring				compatible = "atmel,at91sam9260-usart";
182724ba675SRob Herring				reg = <0xfffb0000 0x200>;
183724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
184724ba675SRob Herring				interrupts = <6 IRQ_TYPE_LEVEL_HIGH 5>;
185724ba675SRob Herring				atmel,use-dma-rx;
186724ba675SRob Herring				atmel,use-dma-tx;
187724ba675SRob Herring				pinctrl-names = "default";
188724ba675SRob Herring				pinctrl-0 = <&pinctrl_usart0>;
189724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 6>;
190724ba675SRob Herring				clock-names = "usart";
191724ba675SRob Herring				status = "disabled";
192724ba675SRob Herring			};
193724ba675SRob Herring
194724ba675SRob Herring			usart1: serial@fffb4000 {
195724ba675SRob Herring				compatible = "atmel,at91sam9260-usart";
196724ba675SRob Herring				reg = <0xfffb4000 0x200>;
197724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
198724ba675SRob Herring				interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>;
199724ba675SRob Herring				atmel,use-dma-rx;
200724ba675SRob Herring				atmel,use-dma-tx;
201724ba675SRob Herring				pinctrl-names = "default";
202724ba675SRob Herring				pinctrl-0 = <&pinctrl_usart1>;
203724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 7>;
204724ba675SRob Herring				clock-names = "usart";
205724ba675SRob Herring				status = "disabled";
206724ba675SRob Herring			};
207724ba675SRob Herring
208724ba675SRob Herring			usart2: serial@fffb8000 {
209724ba675SRob Herring				compatible = "atmel,at91sam9260-usart";
210724ba675SRob Herring				reg = <0xfffb8000 0x200>;
211724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
212724ba675SRob Herring				interrupts = <8 IRQ_TYPE_LEVEL_HIGH 5>;
213724ba675SRob Herring				atmel,use-dma-rx;
214724ba675SRob Herring				atmel,use-dma-tx;
215724ba675SRob Herring				pinctrl-names = "default";
216724ba675SRob Herring				pinctrl-0 = <&pinctrl_usart2>;
217724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 8>;
218724ba675SRob Herring				clock-names = "usart";
219724ba675SRob Herring				status = "disabled";
220724ba675SRob Herring			};
221724ba675SRob Herring
222724ba675SRob Herring			ssc0: ssc@fffbc000 {
223724ba675SRob Herring				compatible = "atmel,at91rm9200-ssc";
224724ba675SRob Herring				reg = <0xfffbc000 0x4000>;
225724ba675SRob Herring				interrupts = <14 IRQ_TYPE_LEVEL_HIGH 5>;
226724ba675SRob Herring				pinctrl-names = "default";
227724ba675SRob Herring				pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
228724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 14>;
229724ba675SRob Herring				clock-names = "pclk";
230724ba675SRob Herring				status = "disabled";
231724ba675SRob Herring			};
232724ba675SRob Herring
233724ba675SRob Herring			ssc1: ssc@fffc0000 {
234724ba675SRob Herring				compatible = "atmel,at91rm9200-ssc";
235724ba675SRob Herring				reg = <0xfffc0000 0x4000>;
236724ba675SRob Herring				interrupts = <15 IRQ_TYPE_LEVEL_HIGH 5>;
237724ba675SRob Herring				pinctrl-names = "default";
238724ba675SRob Herring				pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>;
239724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 15>;
240724ba675SRob Herring				clock-names = "pclk";
241724ba675SRob Herring				status = "disabled";
242724ba675SRob Herring			};
243724ba675SRob Herring
244724ba675SRob Herring			ssc2: ssc@fffc4000 {
245724ba675SRob Herring				compatible = "atmel,at91rm9200-ssc";
246724ba675SRob Herring				reg = <0xfffc4000 0x4000>;
247724ba675SRob Herring				interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>;
248724ba675SRob Herring				pinctrl-names = "default";
249724ba675SRob Herring				pinctrl-0 = <&pinctrl_ssc2_tx &pinctrl_ssc2_rx>;
250724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 16>;
251724ba675SRob Herring				clock-names = "pclk";
252724ba675SRob Herring				status = "disabled";
253724ba675SRob Herring			};
254724ba675SRob Herring
255724ba675SRob Herring			spi0: spi@fffc8000 {
256724ba675SRob Herring				#address-cells = <1>;
257724ba675SRob Herring				#size-cells = <0>;
258724ba675SRob Herring				compatible = "atmel,at91rm9200-spi";
259724ba675SRob Herring				reg = <0xfffc8000 0x200>;
260724ba675SRob Herring				cs-gpios = <0>, <0>, <0>, <0>;
261724ba675SRob Herring				interrupts = <12 IRQ_TYPE_LEVEL_HIGH 3>;
262724ba675SRob Herring				pinctrl-names = "default";
263724ba675SRob Herring				pinctrl-0 = <&pinctrl_spi0>;
264724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 12>;
265724ba675SRob Herring				clock-names = "spi_clk";
266724ba675SRob Herring				status = "disabled";
267724ba675SRob Herring			};
268724ba675SRob Herring
269724ba675SRob Herring			spi1: spi@fffcc000 {
270724ba675SRob Herring				#address-cells = <1>;
271724ba675SRob Herring				#size-cells = <0>;
272724ba675SRob Herring				compatible = "atmel,at91rm9200-spi";
273724ba675SRob Herring				reg = <0xfffcc000 0x200>;
274724ba675SRob Herring				interrupts = <13 IRQ_TYPE_LEVEL_HIGH 3>;
275724ba675SRob Herring				pinctrl-names = "default";
276724ba675SRob Herring				pinctrl-0 = <&pinctrl_spi1>;
277724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
278724ba675SRob Herring				clock-names = "spi_clk";
279724ba675SRob Herring				status = "disabled";
280724ba675SRob Herring			};
281724ba675SRob Herring
282724ba675SRob Herring			ramc: ramc@ffffea00 {
283724ba675SRob Herring				compatible = "atmel,at91sam9260-sdramc";
284724ba675SRob Herring				reg = <0xffffea00 0x200>;
285724ba675SRob Herring			};
286724ba675SRob Herring
287724ba675SRob Herring			smc: smc@ffffec00 {
288724ba675SRob Herring				compatible = "atmel,at91sam9260-smc", "syscon";
289724ba675SRob Herring				reg = <0xffffec00 0x200>;
290724ba675SRob Herring			};
291724ba675SRob Herring
292724ba675SRob Herring			matrix: matrix@ffffee00 {
293724ba675SRob Herring				compatible = "atmel,at91sam9261-matrix", "syscon";
294724ba675SRob Herring				reg = <0xffffee00 0x200>;
295724ba675SRob Herring			};
296724ba675SRob Herring
297724ba675SRob Herring			aic: interrupt-controller@fffff000 {
298724ba675SRob Herring				#interrupt-cells = <3>;
299724ba675SRob Herring				compatible = "atmel,at91rm9200-aic";
300724ba675SRob Herring				interrupt-controller;
301724ba675SRob Herring				reg = <0xfffff000 0x200>;
302724ba675SRob Herring				atmel,external-irqs = <29 30 31>;
303724ba675SRob Herring			};
304724ba675SRob Herring
305724ba675SRob Herring			dbgu: serial@fffff200 {
306724ba675SRob Herring				compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart";
307724ba675SRob Herring				reg = <0xfffff200 0x200>;
308724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
309724ba675SRob Herring				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
310724ba675SRob Herring				pinctrl-names = "default";
311724ba675SRob Herring				pinctrl-0 = <&pinctrl_dbgu>;
312724ba675SRob Herring				clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
313724ba675SRob Herring				clock-names = "usart";
314724ba675SRob Herring				status = "disabled";
315724ba675SRob Herring			};
316724ba675SRob Herring
317724ba675SRob Herring			pinctrl@fffff400 {
318724ba675SRob Herring				#address-cells = <1>;
319724ba675SRob Herring				#size-cells = <1>;
320*58c63181SManikandan Muralidharan				compatible = "atmel,at91rm9200-pinctrl", "simple-mfd";
321724ba675SRob Herring				ranges = <0xfffff400 0xfffff400 0x600>;
322724ba675SRob Herring
323724ba675SRob Herring				atmel,mux-mask =
324724ba675SRob Herring				      /*    A         B     */
325724ba675SRob Herring				      <0xffffffff 0xfffffff7>,  /* pioA */
326724ba675SRob Herring				      <0xffffffff 0xfffffff4>,  /* pioB */
327724ba675SRob Herring				      <0xffffffff 0xffffff07>;  /* pioC */
328724ba675SRob Herring
329724ba675SRob Herring				/* shared pinctrl settings */
330724ba675SRob Herring				dbgu {
331724ba675SRob Herring					pinctrl_dbgu: dbgu-0 {
332724ba675SRob Herring						atmel,pins =
333724ba675SRob Herring							<AT91_PIOA 9  AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
334724ba675SRob Herring							<AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
335724ba675SRob Herring					};
336724ba675SRob Herring				};
337724ba675SRob Herring
338724ba675SRob Herring				usart0 {
339724ba675SRob Herring					pinctrl_usart0: usart0-0 {
340724ba675SRob Herring						atmel,pins =
341724ba675SRob Herring							<AT91_PIOC 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
342724ba675SRob Herring							<AT91_PIOC 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
343724ba675SRob Herring					};
344724ba675SRob Herring
345724ba675SRob Herring					pinctrl_usart0_rts: usart0_rts-0 {
346724ba675SRob Herring						atmel,pins =
347724ba675SRob Herring							<AT91_PIOC 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
348724ba675SRob Herring					};
349724ba675SRob Herring
350724ba675SRob Herring					pinctrl_usart0_cts: usart0_cts-0 {
351724ba675SRob Herring						atmel,pins =
352724ba675SRob Herring							<AT91_PIOC 11 AT91_PERIPH_A AT91_PINCTRL_NONE>;
353724ba675SRob Herring					};
354724ba675SRob Herring				};
355724ba675SRob Herring
356724ba675SRob Herring				usart1 {
357724ba675SRob Herring					pinctrl_usart1: usart1-0 {
358724ba675SRob Herring						atmel,pins =
359724ba675SRob Herring							<AT91_PIOC 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
360724ba675SRob Herring							<AT91_PIOC 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
361724ba675SRob Herring					};
362724ba675SRob Herring
363724ba675SRob Herring					pinctrl_usart1_rts: usart1_rts-0 {
364724ba675SRob Herring						atmel,pins =
365724ba675SRob Herring							<AT91_PIOA 12 AT91_PERIPH_B AT91_PINCTRL_NONE>;
366724ba675SRob Herring					};
367724ba675SRob Herring
368724ba675SRob Herring					pinctrl_usart1_cts: usart1_cts-0 {
369724ba675SRob Herring						atmel,pins =
370724ba675SRob Herring							<AT91_PIOA 13 AT91_PERIPH_B AT91_PINCTRL_NONE>;
371724ba675SRob Herring					};
372724ba675SRob Herring				};
373724ba675SRob Herring
374724ba675SRob Herring				usart2 {
375724ba675SRob Herring					pinctrl_usart2: usart2-0 {
376724ba675SRob Herring						atmel,pins =
377724ba675SRob Herring							<AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
378724ba675SRob Herring							<AT91_PIOC 15 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
379724ba675SRob Herring					};
380724ba675SRob Herring
381724ba675SRob Herring					pinctrl_usart2_rts: usart2_rts-0 {
382724ba675SRob Herring						atmel,pins =
383724ba675SRob Herring							<AT91_PIOA 15 AT91_PERIPH_B AT91_PINCTRL_NONE>;
384724ba675SRob Herring					};
385724ba675SRob Herring
386724ba675SRob Herring					pinctrl_usart2_cts: usart2_cts-0 {
387724ba675SRob Herring						atmel,pins =
388724ba675SRob Herring							<AT91_PIOA 16 AT91_PERIPH_B AT91_PINCTRL_NONE>;
389724ba675SRob Herring					};
390724ba675SRob Herring				};
391724ba675SRob Herring
392724ba675SRob Herring				nand {
393724ba675SRob Herring					pinctrl_nand_rb: nand-rb-0 {
394724ba675SRob Herring						atmel,pins =
395724ba675SRob Herring							<AT91_PIOC 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
396724ba675SRob Herring					};
397724ba675SRob Herring
398724ba675SRob Herring					pinctrl_nand_cs: nand-cs-0 {
399724ba675SRob Herring						atmel,pins =
400724ba675SRob Herring							<AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
401724ba675SRob Herring					};
402724ba675SRob Herring				};
403724ba675SRob Herring
404724ba675SRob Herring				mmc0 {
405724ba675SRob Herring					pinctrl_mmc0_clk: mmc0_clk-0 {
406724ba675SRob Herring						atmel,pins =
407724ba675SRob Herring							<AT91_PIOA 2 AT91_PERIPH_B AT91_PINCTRL_NONE>;
408724ba675SRob Herring					};
409724ba675SRob Herring
410724ba675SRob Herring					pinctrl_mmc0_slot0_cmd_dat0: mmc0_slot0_cmd_dat0-0 {
411724ba675SRob Herring						atmel,pins =
412724ba675SRob Herring							<AT91_PIOA 1 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
413724ba675SRob Herring							<AT91_PIOA 0 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
414724ba675SRob Herring					};
415724ba675SRob Herring
416724ba675SRob Herring					pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
417724ba675SRob Herring						atmel,pins =
418724ba675SRob Herring							<AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
419724ba675SRob Herring							<AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
420724ba675SRob Herring							<AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
421724ba675SRob Herring					};
422724ba675SRob Herring					};
423724ba675SRob Herring
424724ba675SRob Herring				ssc0 {
425724ba675SRob Herring					pinctrl_ssc0_tx: ssc0_tx-0 {
426724ba675SRob Herring						atmel,pins =
427724ba675SRob Herring							<AT91_PIOB 21 AT91_PERIPH_A AT91_PINCTRL_NONE>,
428724ba675SRob Herring							<AT91_PIOB 22 AT91_PERIPH_A AT91_PINCTRL_NONE>,
429724ba675SRob Herring							<AT91_PIOB 23 AT91_PERIPH_A AT91_PINCTRL_NONE>;
430724ba675SRob Herring					};
431724ba675SRob Herring
432724ba675SRob Herring					pinctrl_ssc0_rx: ssc0_rx-0 {
433724ba675SRob Herring						atmel,pins =
434724ba675SRob Herring							<AT91_PIOB 24 AT91_PERIPH_A AT91_PINCTRL_NONE>,
435724ba675SRob Herring							<AT91_PIOB 25 AT91_PERIPH_A AT91_PINCTRL_NONE>,
436724ba675SRob Herring							<AT91_PIOB 26 AT91_PERIPH_A AT91_PINCTRL_NONE>;
437724ba675SRob Herring					};
438724ba675SRob Herring				};
439724ba675SRob Herring
440724ba675SRob Herring				ssc1 {
441724ba675SRob Herring					pinctrl_ssc1_tx: ssc1_tx-0 {
442724ba675SRob Herring						atmel,pins =
443724ba675SRob Herring							<AT91_PIOA 17 AT91_PERIPH_B AT91_PINCTRL_NONE>,
444724ba675SRob Herring							<AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_NONE>,
445724ba675SRob Herring							<AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_NONE>;
446724ba675SRob Herring					};
447724ba675SRob Herring
448724ba675SRob Herring					pinctrl_ssc1_rx: ssc1_rx-0 {
449724ba675SRob Herring						atmel,pins =
450724ba675SRob Herring							<AT91_PIOA 20 AT91_PERIPH_B AT91_PINCTRL_NONE>,
451724ba675SRob Herring							<AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE>,
452724ba675SRob Herring							<AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
453724ba675SRob Herring					};
454724ba675SRob Herring				};
455724ba675SRob Herring
456724ba675SRob Herring				ssc2 {
457724ba675SRob Herring					pinctrl_ssc2_tx: ssc2_tx-0 {
458724ba675SRob Herring						atmel,pins =
459724ba675SRob Herring							<AT91_PIOC 25 AT91_PERIPH_B AT91_PINCTRL_NONE>,
460724ba675SRob Herring							<AT91_PIOC 26 AT91_PERIPH_B AT91_PINCTRL_NONE>,
461724ba675SRob Herring							<AT91_PIOC 27 AT91_PERIPH_B AT91_PINCTRL_NONE>;
462724ba675SRob Herring					};
463724ba675SRob Herring
464724ba675SRob Herring					pinctrl_ssc2_rx: ssc2_rx-0 {
465724ba675SRob Herring						atmel,pins =
466724ba675SRob Herring							<AT91_PIOC 28 AT91_PERIPH_B AT91_PINCTRL_NONE>,
467724ba675SRob Herring							<AT91_PIOC 29 AT91_PERIPH_B AT91_PINCTRL_NONE>,
468724ba675SRob Herring							<AT91_PIOC 30 AT91_PERIPH_B AT91_PINCTRL_NONE>;
469724ba675SRob Herring					};
470724ba675SRob Herring				};
471724ba675SRob Herring
472724ba675SRob Herring				spi0 {
473724ba675SRob Herring					pinctrl_spi0: spi0-0 {
474724ba675SRob Herring						atmel,pins =
475724ba675SRob Herring							<AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE>,
476724ba675SRob Herring							<AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_NONE>,
477724ba675SRob Herring							<AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_NONE>;
478724ba675SRob Herring					};
479724ba675SRob Herring					};
480724ba675SRob Herring
481724ba675SRob Herring				spi1 {
482724ba675SRob Herring					pinctrl_spi1: spi1-0 {
483724ba675SRob Herring						atmel,pins =
484724ba675SRob Herring							<AT91_PIOB 30 AT91_PERIPH_A AT91_PINCTRL_NONE>,
485724ba675SRob Herring							<AT91_PIOB 31 AT91_PERIPH_A AT91_PINCTRL_NONE>,
486724ba675SRob Herring							<AT91_PIOB 29 AT91_PERIPH_A AT91_PINCTRL_NONE>;
487724ba675SRob Herring					};
488724ba675SRob Herring				};
489724ba675SRob Herring
490724ba675SRob Herring				tcb0 {
491724ba675SRob Herring					pinctrl_tcb0_tclk0: tcb0_tclk0-0 {
492724ba675SRob Herring						atmel,pins = <AT91_PIOC 16 AT91_PERIPH_B AT91_PINCTRL_NONE>;
493724ba675SRob Herring					};
494724ba675SRob Herring
495724ba675SRob Herring					pinctrl_tcb0_tclk1: tcb0_tclk1-0 {
496724ba675SRob Herring						atmel,pins = <AT91_PIOC 17 AT91_PERIPH_B AT91_PINCTRL_NONE>;
497724ba675SRob Herring					};
498724ba675SRob Herring
499724ba675SRob Herring					pinctrl_tcb0_tclk2: tcb0_tclk2-0 {
500724ba675SRob Herring						atmel,pins = <AT91_PIOC 18 AT91_PERIPH_B AT91_PINCTRL_NONE>;
501724ba675SRob Herring					};
502724ba675SRob Herring
503724ba675SRob Herring					pinctrl_tcb0_tioa0: tcb0_tioa0-0 {
504724ba675SRob Herring						atmel,pins = <AT91_PIOC 19 AT91_PERIPH_B AT91_PINCTRL_NONE>;
505724ba675SRob Herring					};
506724ba675SRob Herring
507724ba675SRob Herring					pinctrl_tcb0_tioa1: tcb0_tioa1-0 {
508724ba675SRob Herring						atmel,pins = <AT91_PIOC 21 AT91_PERIPH_B AT91_PINCTRL_NONE>;
509724ba675SRob Herring					};
510724ba675SRob Herring
511724ba675SRob Herring					pinctrl_tcb0_tioa2: tcb0_tioa2-0 {
512724ba675SRob Herring						atmel,pins = <AT91_PIOC 23 AT91_PERIPH_B AT91_PINCTRL_NONE>;
513724ba675SRob Herring					};
514724ba675SRob Herring
515724ba675SRob Herring					pinctrl_tcb0_tiob0: tcb0_tiob0-0 {
516724ba675SRob Herring						atmel,pins = <AT91_PIOC 20 AT91_PERIPH_B AT91_PINCTRL_NONE>;
517724ba675SRob Herring					};
518724ba675SRob Herring
519724ba675SRob Herring					pinctrl_tcb0_tiob1: tcb0_tiob1-0 {
520724ba675SRob Herring						atmel,pins = <AT91_PIOC 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
521724ba675SRob Herring					};
522724ba675SRob Herring
523724ba675SRob Herring					pinctrl_tcb0_tiob2: tcb0_tiob2-0 {
524724ba675SRob Herring						atmel,pins = <AT91_PIOC 24 AT91_PERIPH_B AT91_PINCTRL_NONE>;
525724ba675SRob Herring					};
526724ba675SRob Herring				};
527724ba675SRob Herring
528724ba675SRob Herring				i2c0 {
529724ba675SRob Herring					pinctrl_i2c_bitbang: i2c-0-bitbang {
530724ba675SRob Herring						atmel,pins =
531724ba675SRob Herring							<AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>,
532724ba675SRob Herring							<AT91_PIOA 8 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
533724ba675SRob Herring					};
534724ba675SRob Herring					pinctrl_i2c_twi: i2c-0-twi {
535724ba675SRob Herring						atmel,pins =
536724ba675SRob Herring							<AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_NONE>,
537724ba675SRob Herring							<AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_NONE>;
538724ba675SRob Herring					};
539724ba675SRob Herring				};
540724ba675SRob Herring
541724ba675SRob Herring				fb {
542724ba675SRob Herring					pinctrl_fb: fb-0 {
543724ba675SRob Herring						atmel,pins =
544724ba675SRob Herring							<AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE>,
545724ba675SRob Herring							<AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>,
546724ba675SRob Herring							<AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>,
547724ba675SRob Herring							<AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE>,
548724ba675SRob Herring							<AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_NONE>,
549724ba675SRob Herring							<AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE>,
550724ba675SRob Herring							<AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>,
551724ba675SRob Herring							<AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_NONE>,
552724ba675SRob Herring							<AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_NONE>,
553724ba675SRob Herring							<AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>,
554724ba675SRob Herring							<AT91_PIOB 16 AT91_PERIPH_A AT91_PINCTRL_NONE>,
555724ba675SRob Herring							<AT91_PIOB 17 AT91_PERIPH_A AT91_PINCTRL_NONE>,
556724ba675SRob Herring							<AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_NONE>,
557724ba675SRob Herring							<AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_NONE>,
558724ba675SRob Herring							<AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_NONE>,
559724ba675SRob Herring							<AT91_PIOB 23 AT91_PERIPH_B AT91_PINCTRL_NONE>,
560724ba675SRob Herring							<AT91_PIOB 24 AT91_PERIPH_B AT91_PINCTRL_NONE>,
561724ba675SRob Herring							<AT91_PIOB 25 AT91_PERIPH_B AT91_PINCTRL_NONE>,
562724ba675SRob Herring							<AT91_PIOB 26 AT91_PERIPH_B AT91_PINCTRL_NONE>,
563724ba675SRob Herring							<AT91_PIOB 27 AT91_PERIPH_B AT91_PINCTRL_NONE>,
564724ba675SRob Herring							<AT91_PIOB 28 AT91_PERIPH_B AT91_PINCTRL_NONE>;
565724ba675SRob Herring					};
566724ba675SRob Herring				};
567724ba675SRob Herring
568724ba675SRob Herring				pioA: gpio@fffff400 {
569724ba675SRob Herring					compatible = "atmel,at91rm9200-gpio";
570724ba675SRob Herring					reg = <0xfffff400 0x200>;
571724ba675SRob Herring					interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
572724ba675SRob Herring					#gpio-cells = <2>;
573724ba675SRob Herring					gpio-controller;
574724ba675SRob Herring					interrupt-controller;
575724ba675SRob Herring					#interrupt-cells = <2>;
576724ba675SRob Herring					clocks = <&pmc PMC_TYPE_PERIPHERAL 2>;
577724ba675SRob Herring				};
578724ba675SRob Herring
579724ba675SRob Herring				pioB: gpio@fffff600 {
580724ba675SRob Herring					compatible = "atmel,at91rm9200-gpio";
581724ba675SRob Herring					reg = <0xfffff600 0x200>;
582724ba675SRob Herring					interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>;
583724ba675SRob Herring					#gpio-cells = <2>;
584724ba675SRob Herring					gpio-controller;
585724ba675SRob Herring					interrupt-controller;
586724ba675SRob Herring					#interrupt-cells = <2>;
587724ba675SRob Herring					clocks = <&pmc PMC_TYPE_PERIPHERAL 3>;
588724ba675SRob Herring				};
589724ba675SRob Herring
590724ba675SRob Herring				pioC: gpio@fffff800 {
591724ba675SRob Herring					compatible = "atmel,at91rm9200-gpio";
592724ba675SRob Herring					reg = <0xfffff800 0x200>;
593724ba675SRob Herring					interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
594724ba675SRob Herring					#gpio-cells = <2>;
595724ba675SRob Herring					gpio-controller;
596724ba675SRob Herring					interrupt-controller;
597724ba675SRob Herring					#interrupt-cells = <2>;
598724ba675SRob Herring					clocks = <&pmc PMC_TYPE_PERIPHERAL 4>;
599724ba675SRob Herring				};
600724ba675SRob Herring			};
601724ba675SRob Herring
602724ba675SRob Herring			pmc: clock-controller@fffffc00 {
603724ba675SRob Herring				compatible = "atmel,at91sam9261-pmc", "syscon";
604724ba675SRob Herring				reg = <0xfffffc00 0x100>;
605724ba675SRob Herring				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
606724ba675SRob Herring				#clock-cells = <2>;
607724ba675SRob Herring				clocks = <&slow_xtal>, <&main_xtal>;
608724ba675SRob Herring				clock-names = "slow_xtal", "main_xtal";
609724ba675SRob Herring			};
610724ba675SRob Herring
611724ba675SRob Herring			reset-controller@fffffd00 {
612724ba675SRob Herring				compatible = "atmel,at91sam9260-rstc";
613724ba675SRob Herring				reg = <0xfffffd00 0x10>;
614724ba675SRob Herring				clocks = <&slow_xtal>;
615724ba675SRob Herring			};
616724ba675SRob Herring
617a4bd03e7SArnd Bergmann			poweroff@fffffd10 {
618724ba675SRob Herring				compatible = "atmel,at91sam9260-shdwc";
619724ba675SRob Herring				reg = <0xfffffd10 0x10>;
620724ba675SRob Herring				clocks = <&slow_xtal>;
621724ba675SRob Herring			};
622724ba675SRob Herring
623724ba675SRob Herring			pit: timer@fffffd30 {
624724ba675SRob Herring				compatible = "atmel,at91sam9260-pit";
625724ba675SRob Herring				reg = <0xfffffd30 0xf>;
626724ba675SRob Herring				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
627724ba675SRob Herring				clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
628724ba675SRob Herring			};
629724ba675SRob Herring
630724ba675SRob Herring			rtc@fffffd20 {
631724ba675SRob Herring				compatible = "atmel,at91sam9260-rtt";
632724ba675SRob Herring				reg = <0xfffffd20 0x10>;
633724ba675SRob Herring				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
634724ba675SRob Herring				clocks = <&slow_xtal>;
635724ba675SRob Herring				status = "disabled";
636724ba675SRob Herring			};
637724ba675SRob Herring
638724ba675SRob Herring			watchdog@fffffd40 {
639724ba675SRob Herring				compatible = "atmel,at91sam9260-wdt";
640724ba675SRob Herring				reg = <0xfffffd40 0x10>;
641724ba675SRob Herring				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
642724ba675SRob Herring				clocks = <&slow_xtal>;
643724ba675SRob Herring				status = "disabled";
644724ba675SRob Herring			};
645724ba675SRob Herring
646724ba675SRob Herring			gpbr: syscon@fffffd50 {
647724ba675SRob Herring				compatible = "atmel,at91sam9260-gpbr", "syscon";
648724ba675SRob Herring				reg = <0xfffffd50 0x10>;
649724ba675SRob Herring				status = "disabled";
650724ba675SRob Herring			};
651724ba675SRob Herring		};
652724ba675SRob Herring	};
653724ba675SRob Herring
654724ba675SRob Herring	i2c-gpio-0 {
655724ba675SRob Herring		compatible = "i2c-gpio";
656724ba675SRob Herring		pinctrl-names = "default";
657724ba675SRob Herring		pinctrl-0 = <&pinctrl_i2c_bitbang>;
658724ba675SRob Herring		gpios = <&pioA 7 GPIO_ACTIVE_HIGH>, /* sda */
659724ba675SRob Herring			<&pioA 8 GPIO_ACTIVE_HIGH>; /* scl */
660724ba675SRob Herring		i2c-gpio,sda-open-drain;
661724ba675SRob Herring		i2c-gpio,scl-open-drain;
662724ba675SRob Herring		i2c-gpio,delay-us = <2>;	/* ~100 kHz */
663724ba675SRob Herring		#address-cells = <1>;
664724ba675SRob Herring		#size-cells = <0>;
665724ba675SRob Herring		status = "disabled";
666724ba675SRob Herring	};
667724ba675SRob Herring};
668