Linux Audio

Check our new training course

Yocto / OpenEmbedded training

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