Linux Audio

Check our new training course

Embedded Linux training

Mar 31-Apr 8, 2025
Register
Loading...
Note: File does not exist in v6.2.
  1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2/*
  3 * at91-sama5d27_wlsom1_ek.dts - Device Tree file for SAMA5D27 WLSOM1 EK
  4 *
  5 * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries
  6 *
  7 * Author: Nicolas Ferre <nicolas.ferre@microcihp.com>
  8 */
  9/dts-v1/;
 10#include "at91-sama5d27_wlsom1.dtsi"
 11#include <dt-bindings/input/input.h>
 12
 13/ {
 14	model = "Microchip SAMA5D27 WLSOM1 EK";
 15	compatible = "microchip,sama5d27-wlsom1-ek", "microchip,sama5d27-wlsom1", "atmel,sama5d27", "atmel,sama5d2", "atmel,sama5";
 16
 17	aliases {
 18		serial0 = &uart0;	/* DBGU */
 19		serial1 = &uart6;	/* BT */
 20		serial2 = &uart5;	/* mikro BUS 2 */
 21		serial3 = &uart3;	/* mikro BUS 1 */
 22		i2c1 = &i2c1;
 23	};
 24
 25	chosen {
 26		stdout-path = "serial0:115200n8";
 27	};
 28
 29	gpio-keys {
 30		compatible = "gpio-keys";
 31
 32		pinctrl-names = "default";
 33		pinctrl-0 = <&pinctrl_key_gpio_default>;
 34
 35		button-1 {
 36			label = "USER BUTTON";
 37			gpios = <&pioA PIN_PB2 GPIO_ACTIVE_LOW>;
 38			linux,code = <KEY_PROG1>;
 39			wakeup-source;
 40		};
 41	};
 42
 43	leds {
 44		compatible = "gpio-leds";
 45		pinctrl-names = "default";
 46		pinctrl-0 = <&pinctrl_led_gpio_default>;
 47		status = "okay";
 48
 49		led-red {
 50			label = "red";
 51			gpios = <&pioA PIN_PA6 GPIO_ACTIVE_HIGH>;
 52		};
 53
 54		led-green {
 55			label = "green";
 56			gpios = <&pioA PIN_PA7 GPIO_ACTIVE_HIGH>;
 57		};
 58
 59		led-blue {
 60			label = "blue";
 61			gpios = <&pioA PIN_PA8 GPIO_ACTIVE_HIGH>;
 62			linux,default-trigger = "heartbeat";
 63		};
 64	};
 65};
 66
 67&adc {
 68	vddana-supply = <&vdd_3v3>;
 69	vref-supply = <&vdd_3v3>;
 70	pinctrl-names = "default";
 71	pinctrl-0 = <&pinctrl_adc_default>;
 72	status = "okay";
 73};
 74
 75&flx0 {
 76	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
 77	status = "okay";
 78
 79	uart5: serial@200 {
 80		pinctrl-0 = <&pinctrl_flx0_default>;
 81		pinctrl-names = "default";
 82		atmel,use-dma-rx;
 83		atmel,use-dma-tx;
 84		status = "okay";
 85	};
 86};
 87
 88&flx1 {
 89	status = "okay";
 90
 91	uart6: serial@200 {
 92		atmel,use-dma-rx;
 93		atmel,use-dma-tx;
 94		status = "okay";
 95	};
 96};
 97
 98&macb0 {
 99	status = "okay";
100};
101
102&pioA {
103	/*
104	 * There is no real pinmux for ADC, if the pin
105	 * is not requested by another peripheral then
106	 * the muxing is done when channel is enabled.
107	 * Requesting pins for ADC is GPIO is
108	 * encouraged to prevent conflicts and to
109	 * disable bias in order to be in the same
110	 * state when the pin is not muxed to the adc.
111	 */
112	pinctrl_adc_default: adc_default {
113		pinmux = <PIN_PD25__GPIO>,
114			 <PIN_PD26__GPIO>;
115		bias-disable;
116	};
117
118	pinctrl_flx0_default: flx0_usart_default {
119		pinmux = <PIN_PB28__FLEXCOM0_IO0>,
120			 <PIN_PB29__FLEXCOM0_IO1>;
121		bias-disable;
122	};
123
124	pinctrl_key_gpio_default: key_gpio_default {
125		pinmux = <PIN_PB2__GPIO>;
126		bias-pull-up;
127	};
128
129	pinctrl_led_gpio_default: led_gpio_default {
130		pinmux = <PIN_PA6__GPIO>,
131			 <PIN_PA7__GPIO>,
132			 <PIN_PA8__GPIO>;
133		bias-pull-down;
134	};
135
136	pinctrl_sdmmc0_default: sdmmc0_default {
137		cmd_data {
138			pinmux = <PIN_PA1__SDMMC0_CMD>,
139				 <PIN_PA2__SDMMC0_DAT0>,
140				 <PIN_PA3__SDMMC0_DAT1>,
141				 <PIN_PA4__SDMMC0_DAT2>,
142				 <PIN_PA5__SDMMC0_DAT3>;
143			bias-disable;
144		};
145
146		ck_cd_vddsel {
147			pinmux = <PIN_PA0__SDMMC0_CK>,
148				 <PIN_PA11__SDMMC0_VDDSEL>,
149				 <PIN_PA12__SDMMC0_WP>,
150				 <PIN_PA13__SDMMC0_CD>;
151			bias-disable;
152		};
153	};
154
155	pinctrl_uart0_default: uart0_default {
156		pinmux = <PIN_PB26__URXD0>,
157			 <PIN_PB27__UTXD0>;
158		bias-disable;
159	};
160
161	pinctrl_uart3_default: uart3_default {
162		pinmux = <PIN_PB11__URXD3>,
163			 <PIN_PB12__UTXD3>;
164		bias-disable;
165	};
166
167	pinctrl_pwm0_default: pwm0_default {
168		pinmux = <PIN_PA31__PWML0>,
169			 <PIN_PA30__PWMH0>;
170		bias-disable;
171	};
172
173	pinctrl_usb_default: usb_default {
174		pinmux = <PIN_PA10__GPIO>;
175		bias-disable;
176	};
177
178	pinctrl_usba_vbus: usba_vbus {
179		pinmux = <PIN_PA16__GPIO>;
180		bias-disable;
181	};
182};
183
184&pwm0 {
185	pinctrl-names = "default";
186	pinctrl-0 = <&pinctrl_pwm0_default>;
187	status = "okay";
188};
189
190&qspi1 {
191	status = "okay";
192
193	qspi1_flash: flash@0 {
194		status = "okay";
195	};
196};
197
198&sdmmc0 {
199	bus-width = <4>;
200	no-1-8-v;
201	pinctrl-names = "default";
202	pinctrl-0 = <&pinctrl_sdmmc0_default>;
203	status = "okay";
204};
205
206&shutdown_controller {
207	debounce-delay-us = <976>;
208	atmel,wakeup-rtc-timer;
209
210	input@0 {
211		reg = <0>;
212	};
213};
214
215&tcb0 {
216	timer0: timer@0 {
217		compatible = "atmel,tcb-timer";
218		reg = <0>;
219	};
220
221	timer1: timer@1 {
222		compatible = "atmel,tcb-timer";
223		reg = <1>;
224	};
225};
226
227&uart0 {
228	pinctrl-names = "default";
229	pinctrl-0 = <&pinctrl_uart0_default>;
230	atmel,use-dma-rx;
231	atmel,use-dma-tx;
232	status = "okay";
233};
234
235&uart3 {
236	pinctrl-names = "default";
237	pinctrl-0 = <&pinctrl_uart3_default>;
238	atmel,use-dma-rx;
239	atmel,use-dma-tx;
240	status = "okay";
241};
242
243&usb0 {
244	atmel,vbus-gpio = <&pioA PIN_PA16 GPIO_ACTIVE_HIGH>;
245	pinctrl-names = "default";
246	pinctrl-0 = <&pinctrl_usba_vbus>;
247	status = "okay";
248};
249
250&usb1 {
251	num-ports = <3>;
252	atmel,vbus-gpio = <0
253			   &pioA PIN_PA10 GPIO_ACTIVE_HIGH
254			   0
255			  >;
256	pinctrl-names = "default";
257	pinctrl-0 = <&pinctrl_usb_default>;
258	status = "okay";
259};
260
261&usb2 {
262	phy_type = "hsic";
263	status = "okay";
264};
265
266&watchdog {
267	status = "okay";
268};
269