Linux Audio

Check our new training course

Loading...
v5.4
  1// SPDX-License-Identifier: GPL-2.0-or-later
  2/*
  3 * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board
  4 *
  5 *  Copyright (C) 2014 Atmel,
  6 *		  2014 Nicolas Ferre <nicolas.ferre@atmel.com>
 
 
  7 */
  8/dts-v1/;
  9#include "sama5d36.dtsi"
 10
 11/ {
 12	model = "SAMA5D3 Xplained";
 13	compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5";
 14
 15	chosen {
 16		stdout-path = "serial0:115200n8";
 17	};
 18
 19	memory {
 20		reg = <0x20000000 0x10000000>;
 21	};
 22
 23	clocks {
 24		slow_xtal {
 25			clock-frequency = <32768>;
 26		};
 27
 28		main_xtal {
 29			clock-frequency = <12000000>;
 30		};
 31	};
 32
 33	ahb {
 34		apb {
 35			mmc0: mmc@f0000000 {
 36				pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>;
 37				vmmc-supply = <&vcc_mmc0_reg>;
 38				vqmmc-supply = <&vcc_3v3_reg>;
 39				status = "okay";
 40				slot@0 {
 41					reg = <0>;
 42					bus-width = <8>;
 43					cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>;
 44				};
 45			};
 46
 47			mmc1: mmc@f8000000 {
 48				vmmc-supply = <&vcc_3v3_reg>;
 49				vqmmc-supply = <&vcc_3v3_reg>;
 50				status = "disabled";
 51				slot@0 {
 52					reg = <0>;
 53					bus-width = <4>;
 54					cd-gpios = <&pioE 1 GPIO_ACTIVE_LOW>;
 55				};
 56			};
 57
 58			spi0: spi@f0004000 {
 59				cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>;
 60				status = "okay";
 61			};
 62
 63			can0: can@f000c000 {
 64				status = "okay";
 65			};
 66
 67			tcb0: timer@f0010000 {
 68				timer0: timer@0 {
 69					compatible = "atmel,tcb-timer";
 70					reg = <0>;
 71				};
 72
 73				timer1: timer@1 {
 74					compatible = "atmel,tcb-timer";
 75					reg = <1>;
 76				};
 77			};
 78
 79			i2c0: i2c@f0014000 {
 80				pinctrl-0 = <&pinctrl_i2c0_pu>;
 81				status = "okay";
 82			};
 83
 84			i2c1: i2c@f0018000 {
 85				status = "okay";
 86
 87				pmic: act8865@5b {
 88					compatible = "active-semi,act8865";
 89					reg = <0x5b>;
 90					status = "disabled";
 91
 92					regulators {
 93						vcc_1v8_reg: DCDC_REG1 {
 94							regulator-name = "VCC_1V8";
 95							regulator-min-microvolt = <1800000>;
 96							regulator-max-microvolt = <1800000>;
 97							regulator-always-on;
 98						};
 99
100						vcc_1v2_reg: DCDC_REG2 {
101							regulator-name = "VCC_1V2";
102							regulator-min-microvolt = <1200000>;
103							regulator-max-microvolt = <1200000>;
104							regulator-always-on;
105						};
106
107						vcc_3v3_reg: DCDC_REG3 {
108							regulator-name = "VCC_3V3";
109							regulator-min-microvolt = <3300000>;
110							regulator-max-microvolt = <3300000>;
111							regulator-always-on;
112						};
113
114						vddfuse_reg: LDO_REG1 {
115							regulator-name = "FUSE_2V5";
116							regulator-min-microvolt = <2500000>;
117							regulator-max-microvolt = <2500000>;
118						};
119
120						vddana_reg: LDO_REG2 {
121							regulator-name = "VDDANA";
122							regulator-min-microvolt = <3300000>;
123							regulator-max-microvolt = <3300000>;
124							regulator-always-on;
125						};
126					};
127				};
128			};
129
130			macb0: ethernet@f0028000 {
131				phy-mode = "rgmii";
132				#address-cells = <1>;
133				#size-cells = <0>;
134				status = "okay";
135
136				ethernet-phy@7 {
137					reg = <0x7>;
138				};
139			};
140
141			pwm0: pwm@f002c000 {
142				pinctrl-names = "default";
143				pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>;
144				status = "okay";
145			};
146
147			usart0: serial@f001c000 {
148				status = "okay";
149			};
150
151			usart1: serial@f0020000 {
152				pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>;
153				status = "okay";
154			};
155
156			uart0: serial@f0024000 {
157				status = "okay";
158			};
159
160			mmc1: mmc@f8000000 {
161				pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>;
162				status = "okay";
163				slot@0 {
164					reg = <0>;
165					bus-width = <4>;
166					cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>;
167				};
168			};
169
170			spi1: spi@f8008000 {
171				cs-gpios = <&pioC 25 0>;
172				status = "okay";
173			};
174
175			adc0: adc@f8018000 {
176				atmel,adc-vref = <3300>;
177				atmel,adc-channels-used = <0xfe>;
178				pinctrl-0 = <
179					&pinctrl_adc0_adtrg
 
180					&pinctrl_adc0_ad1
181					&pinctrl_adc0_ad2
182					&pinctrl_adc0_ad3
183					&pinctrl_adc0_ad4
184					&pinctrl_adc0_ad5
185					&pinctrl_adc0_ad6
186					&pinctrl_adc0_ad7
 
 
187					>;
188				status = "okay";
189			};
190
191			i2c2: i2c@f801c000 {
192				dmas = <0>, <0>;	/* Do not use DMA for i2c2 */
193				pinctrl-0 = <&pinctrl_i2c2_pu>;
194				status = "okay";
195			};
196
197			macb1: ethernet@f802c000 {
198				phy-mode = "rmii";
199				#address-cells = <1>;
200				#size-cells = <0>;
201				status = "okay";
202
203				ethernet-phy@1 {
204					reg = <0x1>;
205				};
206			};
207
208			dbgu: serial@ffffee00 {
209				status = "okay";
210			};
211
212			pinctrl@fffff200 {
213				board {
214					pinctrl_i2c0_pu: i2c0_pu {
215						atmel,pins =
216							<AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
217							<AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
218					};
219
220					pinctrl_i2c2_pu: i2c2_pu {
221						atmel,pins =
222							<AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
223							<AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
224					};
225
226					pinctrl_key_gpio: key_gpio_0 {
227						atmel,pins =
228							<AT91_PIOE 29 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
229					};
230
231					pinctrl_mmc0_cd: mmc0_cd {
232						atmel,pins =
233							<AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
234					};
235
236					pinctrl_mmc1_cd: mmc1_cd {
237						atmel,pins =
238							<AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
239					};
240
241					pinctrl_usba_vbus: usba_vbus {
242						atmel,pins =
243							<AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;	/* PE9, conflicts with A9 */
244					};
245				};
246			};
247		};
248
249		usb0: gadget@500000 {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
250			atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>;	/* PE9, conflicts with A9 */
251			pinctrl-names = "default";
252			pinctrl-0 = <&pinctrl_usba_vbus>;
253			status = "okay";
254		};
255
256		usb1: ohci@600000 {
257			num-ports = <3>;
258			atmel,vbus-gpio = <0
259					   &pioE 3 GPIO_ACTIVE_LOW
260					   &pioE 4 GPIO_ACTIVE_LOW
261					  >;
262			status = "okay";
263		};
264
265		usb2: ehci@700000 {
266			status = "okay";
267		};
268
269		ebi: ebi@10000000 {
270			pinctrl-0 = <&pinctrl_ebi_nand_addr>;
271			pinctrl-names = "default";
272			status = "okay";
273
274			nand_controller: nand-controller {
275				status = "okay";
276
277				nand@3 {
278					reg = <0x3 0x0 0x2>;
279					atmel,rb = <0>;
280					nand-bus-width = <8>;
281					nand-ecc-mode = "hw";
282					nand-ecc-strength = <4>;
283					nand-ecc-step-size = <512>;
284					nand-on-flash-bbt;
285					label = "atmel_nand";
286
287					partitions {
288						compatible = "fixed-partitions";
289						#address-cells = <1>;
290						#size-cells = <1>;
291
292						at91bootstrap@0 {
293							label = "at91bootstrap";
294							reg = <0x0 0x40000>;
295						};
296
297						bootloader@40000 {
298							label = "bootloader";
299							reg = <0x40000 0xc0000>;
300						};
301
302						bootloaderenvred@100000 {
303							label = "bootloader env redundant";
304							reg = <0x100000 0x40000>;
305						};
306
307						bootloaderenv@140000 {
308							label = "bootloader env";
309							reg = <0x140000 0x40000>;
310						};
311
312						dtb@180000 {
313							label = "device tree";
314							reg = <0x180000 0x80000>;
315						};
316
317						kernel@200000 {
318							label = "kernel";
319							reg = <0x200000 0x600000>;
320						};
321
322						rootfs@800000 {
323							label = "rootfs";
324							reg = <0x800000 0x0f800000>;
325						};
326					};
327				};
328			};
329		};
330	};
331
332	vcc_mmc0_reg: fixedregulator_mmc0 {
333		compatible = "regulator-fixed";
334		gpio = <&pioE 2 GPIO_ACTIVE_LOW>;
335		regulator-name = "mmc0-card-supply";
336		regulator-min-microvolt = <3300000>;
337		regulator-max-microvolt = <3300000>;
338		regulator-always-on;
339	};
340
341	gpio_keys {
342		compatible = "gpio-keys";
343
344		pinctrl-names = "default";
345		pinctrl-0 = <&pinctrl_key_gpio>;
346
347		bp3 {
348			label = "PB_USER";
349			gpios = <&pioE 29 GPIO_ACTIVE_LOW>;
350			linux,code = <0x104>;
351			wakeup-source;
352		};
353	};
354
355	leds {
356		compatible = "gpio-leds";
357
358		d2 {
359			label = "d2";
360			gpios = <&pioE 23 GPIO_ACTIVE_LOW>;	/* PE23, conflicts with A23, CTS2 */
361			linux,default-trigger = "heartbeat";
362		};
363
364		d3 {
365			label = "d3";
366			gpios = <&pioE 24 GPIO_ACTIVE_HIGH>;
367		};
368	};
369};
v4.6
 
  1/*
  2 * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board
  3 *
  4 *  Copyright (C) 2014 Atmel,
  5 *		  2014 Nicolas Ferre <nicolas.ferre@atmel.com>
  6 *
  7 * Licensed under GPLv2 or later.
  8 */
  9/dts-v1/;
 10#include "sama5d36.dtsi"
 11
 12/ {
 13	model = "SAMA5D3 Xplained";
 14	compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5";
 15
 16	chosen {
 17		stdout-path = "serial0:115200n8";
 18	};
 19
 20	memory {
 21		reg = <0x20000000 0x10000000>;
 22	};
 23
 24	clocks {
 25		slow_xtal {
 26			clock-frequency = <32768>;
 27		};
 28
 29		main_xtal {
 30			clock-frequency = <12000000>;
 31		};
 32	};
 33
 34	ahb {
 35		apb {
 36			mmc0: mmc@f0000000 {
 37				pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>;
 38				vmmc-supply = <&vcc_mmc0_reg>;
 39				vqmmc-supply = <&vcc_3v3_reg>;
 40				status = "okay";
 41				slot@0 {
 42					reg = <0>;
 43					bus-width = <8>;
 44					cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>;
 45				};
 46			};
 47
 48			mmc1: mmc@f8000000 {
 49				vmmc-supply = <&vcc_3v3_reg>;
 50				vqmmc-supply = <&vcc_3v3_reg>;
 51				status = "disabled";
 52				slot@0 {
 53					reg = <0>;
 54					bus-width = <4>;
 55					cd-gpios = <&pioE 1 GPIO_ACTIVE_LOW>;
 56				};
 57			};
 58
 59			spi0: spi@f0004000 {
 60				cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>;
 61				status = "okay";
 62			};
 63
 64			can0: can@f000c000 {
 65				status = "okay";
 66			};
 67
 
 
 
 
 
 
 
 
 
 
 
 
 68			i2c0: i2c@f0014000 {
 69				pinctrl-0 = <&pinctrl_i2c0_pu>;
 70				status = "okay";
 71			};
 72
 73			i2c1: i2c@f0018000 {
 74				status = "okay";
 75
 76				pmic: act8865@5b {
 77					compatible = "active-semi,act8865";
 78					reg = <0x5b>;
 79					status = "disabled";
 80
 81					regulators {
 82						vcc_1v8_reg: DCDC_REG1 {
 83							regulator-name = "VCC_1V8";
 84							regulator-min-microvolt = <1800000>;
 85							regulator-max-microvolt = <1800000>;
 86							regulator-always-on;
 87						};
 88
 89						vcc_1v2_reg: DCDC_REG2 {
 90							regulator-name = "VCC_1V2";
 91							regulator-min-microvolt = <1200000>;
 92							regulator-max-microvolt = <1200000>;
 93							regulator-always-on;
 94						};
 95
 96						vcc_3v3_reg: DCDC_REG3 {
 97							regulator-name = "VCC_3V3";
 98							regulator-min-microvolt = <3300000>;
 99							regulator-max-microvolt = <3300000>;
100							regulator-always-on;
101						};
102
103						vddfuse_reg: LDO_REG1 {
104							regulator-name = "FUSE_2V5";
105							regulator-min-microvolt = <2500000>;
106							regulator-max-microvolt = <2500000>;
107						};
108
109						vddana_reg: LDO_REG2 {
110							regulator-name = "VDDANA";
111							regulator-min-microvolt = <3300000>;
112							regulator-max-microvolt = <3300000>;
113							regulator-always-on;
114						};
115					};
116				};
117			};
118
119			macb0: ethernet@f0028000 {
120				phy-mode = "rgmii";
121				#address-cells = <1>;
122				#size-cells = <0>;
123				status = "okay";
124
125				ethernet-phy@7 {
126					reg = <0x7>;
127				};
128			};
129
130			pwm0: pwm@f002c000 {
131				pinctrl-names = "default";
132				pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>;
133				status = "okay";
134			};
135
136			usart0: serial@f001c000 {
137				status = "okay";
138			};
139
140			usart1: serial@f0020000 {
141				pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>;
142				status = "okay";
143			};
144
145			uart0: serial@f0024000 {
146				status = "okay";
147			};
148
149			mmc1: mmc@f8000000 {
150				pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>;
151				status = "okay";
152				slot@0 {
153					reg = <0>;
154					bus-width = <4>;
155					cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>;
156				};
157			};
158
159			spi1: spi@f8008000 {
160				cs-gpios = <&pioC 25 0>;
161				status = "okay";
162			};
163
164			adc0: adc@f8018000 {
 
 
165				pinctrl-0 = <
166					&pinctrl_adc0_adtrg
167					&pinctrl_adc0_ad0
168					&pinctrl_adc0_ad1
169					&pinctrl_adc0_ad2
170					&pinctrl_adc0_ad3
171					&pinctrl_adc0_ad4
172					&pinctrl_adc0_ad5
173					&pinctrl_adc0_ad6
174					&pinctrl_adc0_ad7
175					&pinctrl_adc0_ad8
176					&pinctrl_adc0_ad9
177					>;
178				status = "okay";
179			};
180
181			i2c2: i2c@f801c000 {
182				dmas = <0>, <0>;	/* Do not use DMA for i2c2 */
183				pinctrl-0 = <&pinctrl_i2c2_pu>;
184				status = "okay";
185			};
186
187			macb1: ethernet@f802c000 {
188				phy-mode = "rmii";
189				#address-cells = <1>;
190				#size-cells = <0>;
191				status = "okay";
192
193				ethernet-phy@1 {
194					reg = <0x1>;
195				};
196			};
197
198			dbgu: serial@ffffee00 {
199				status = "okay";
200			};
201
202			pinctrl@fffff200 {
203				board {
204					pinctrl_i2c0_pu: i2c0_pu {
205						atmel,pins =
206							<AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
207							<AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
208					};
209
210					pinctrl_i2c2_pu: i2c2_pu {
211						atmel,pins =
212							<AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
213							<AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
214					};
215
216					pinctrl_key_gpio: key_gpio_0 {
217						atmel,pins =
218							<AT91_PIOE 29 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
219					};
220
221					pinctrl_mmc0_cd: mmc0_cd {
222						atmel,pins =
223							<AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
224					};
225
226					pinctrl_mmc1_cd: mmc1_cd {
227						atmel,pins =
228							<AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
229					};
230
231					pinctrl_usba_vbus: usba_vbus {
232						atmel,pins =
233							<AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;	/* PE9, conflicts with A9 */
234					};
235				};
236			};
237		};
238
239		nand0: nand@60000000 {
240			nand-bus-width = <8>;
241			nand-ecc-mode = "hw";
242			atmel,has-pmecc;
243			atmel,pmecc-cap = <4>;
244			atmel,pmecc-sector-size = <512>;
245			nand-on-flash-bbt;
246			status = "okay";
247
248			at91bootstrap@0 {
249				label = "at91bootstrap";
250				reg = <0x0 0x40000>;
251			};
252
253			bootloader@40000 {
254				label = "bootloader";
255				reg = <0x40000 0x80000>;
256			};
257
258			bootloaderenv@c0000 {
259				label = "bootloader env";
260				reg = <0xc0000 0xc0000>;
261			};
262
263			dtb@180000 {
264				label = "device tree";
265				reg = <0x180000 0x80000>;
266			};
267
268			kernel@200000 {
269				label = "kernel";
270				reg = <0x200000 0x600000>;
271			};
272
273			rootfs@800000 {
274				label = "rootfs";
275				reg = <0x800000 0x0f800000>;
276			};
277		};
278
279		usb0: gadget@00500000 {
280			atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>;	/* PE9, conflicts with A9 */
281			pinctrl-names = "default";
282			pinctrl-0 = <&pinctrl_usba_vbus>;
283			status = "okay";
284		};
285
286		usb1: ohci@00600000 {
287			num-ports = <3>;
288			atmel,vbus-gpio = <0
289					   &pioE 3 GPIO_ACTIVE_LOW
290					   &pioE 4 GPIO_ACTIVE_LOW
291					  >;
292			status = "okay";
293		};
294
295		usb2: ehci@00700000 {
296			status = "okay";
297		};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
298	};
299
300	vcc_mmc0_reg: fixedregulator@0 {
301		compatible = "regulator-fixed";
302		gpio = <&pioE 2 GPIO_ACTIVE_LOW>;
303		regulator-name = "mmc0-card-supply";
304		regulator-min-microvolt = <3300000>;
305		regulator-max-microvolt = <3300000>;
306		regulator-always-on;
307	};
308
309	gpio_keys {
310		compatible = "gpio-keys";
311
312		pinctrl-names = "default";
313		pinctrl-0 = <&pinctrl_key_gpio>;
314
315		bp3 {
316			label = "PB_USER";
317			gpios = <&pioE 29 GPIO_ACTIVE_LOW>;
318			linux,code = <0x104>;
319			wakeup-source;
320		};
321	};
322
323	leds {
324		compatible = "gpio-leds";
325
326		d2 {
327			label = "d2";
328			gpios = <&pioE 23 GPIO_ACTIVE_LOW>;	/* PE23, conflicts with A23, CTS2 */
329			linux,default-trigger = "heartbeat";
330		};
331
332		d3 {
333			label = "d3";
334			gpios = <&pioE 24 GPIO_ACTIVE_HIGH>;
335		};
336	};
337};