Skip to content

Commit 38691a1

Browse files
boards: microchip: sam_e54_xpro: Add SERCOM ports
Expand SERCOM serial ports in the sam_e54_xpro board. This add and enable sercom0, sercom1 and sercom5 ports which are located in the xplained pro header. It makes use of the microchip,xpro-header to easy use with shields. Signed-off-by: James Liu <James.Liu2@microchip.com>
1 parent 40fd9e5 commit 38691a1

File tree

2 files changed

+78
-0
lines changed

2 files changed

+78
-0
lines changed

‎boards/microchip/sam/sam_e54_xpro/sam_e54_xpro-pinctrl.dtsi‎

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,34 @@
77
#include <dt-bindings/sam/sam_d5x_e5x/atsame54/atsame54p20a-pinctrl.h>
88

99
&pinctrl {
10+
sercom0_uart_default: sercom0-uart-default {
11+
group1 {
12+
pinmux = <PA5D_SERCOM0_PAD1>,
13+
<PA4D_SERCOM0_PAD0>;
14+
};
15+
};
16+
17+
sercom1_uart_default: sercom1-uart-default {
18+
group1 {
19+
pinmux = <PC23C_SERCOM1_PAD1>,
20+
<PC22C_SERCOM1_PAD0>;
21+
};
22+
};
23+
1024
sercom2_uart_default: sercom2_uart_default {
1125
group1 {
1226
pinmux = <PB25D_SERCOM2_PAD0>,
1327
<PB24D_SERCOM2_PAD1>;
1428
};
1529
};
1630

31+
sercom5_uart_default: sercom5-uart-default {
32+
group1 {
33+
pinmux = <PB17C_SERCOM5_PAD1>,
34+
<PB16C_SERCOM5_PAD0>;
35+
};
36+
};
37+
1738
sercom6_spi_default: sercom6_spi_default {
1839
group1 {
1940
pinmux = <PC4C_SERCOM6_PAD0>,

‎boards/microchip/sam/sam_e54_xpro/sam_e54_xpro.dts‎

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,40 @@
286286
};
287287
};
288288

289+
&sercom0 {
290+
compatible = "microchip,sercom-g1-uart";
291+
#address-cells = <1>;
292+
#size-cells = <0>;
293+
current-speed = <115200>;
294+
data-bits = <8>;
295+
parity = "none";
296+
stop-bits = "1";
297+
rxpo = <1>;
298+
txpo = <0>;
299+
pinctrl-0 = <&sercom0_uart_default>;
300+
pinctrl-names = "default";
301+
dmas = <&dmac 3 4>, <&dmac 4 5>;
302+
dma-names = "rx", "tx";
303+
status = "okay";
304+
};
305+
306+
&sercom1 {
307+
compatible = "microchip,sercom-g1-uart";
308+
#address-cells = <1>;
309+
#size-cells = <0>;
310+
current-speed = <115200>;
311+
data-bits = <8>;
312+
parity = "none";
313+
stop-bits = "1";
314+
rxpo = <1>;
315+
txpo = <0>;
316+
pinctrl-0 = <&sercom1_uart_default>;
317+
pinctrl-names = "default";
318+
dmas = <&dmac 5 6>, <&dmac 6 7>;
319+
dma-names = "rx", "tx";
320+
status = "okay";
321+
};
322+
289323
&sercom2 {
290324
compatible = "microchip,sercom-g1-uart";
291325
#address-cells = <1>;
@@ -303,6 +337,23 @@
303337
status = "okay";
304338
};
305339

340+
&sercom5 {
341+
compatible = "microchip,sercom-g1-uart";
342+
#address-cells = <1>;
343+
#size-cells = <0>;
344+
current-speed = <115200>;
345+
data-bits = <8>;
346+
parity = "none";
347+
stop-bits = "1";
348+
rxpo = <1>;
349+
txpo = <0>;
350+
pinctrl-0 = <&sercom5_uart_default>;
351+
pinctrl-names = "default";
352+
dmas = <&dmac 7 0xe>, <&dmac 8 0xf>;
353+
dma-names = "rx", "tx";
354+
status = "okay";
355+
};
356+
306357
&sercom6 {
307358
compatible = "microchip,sercom-g1-spi";
308359

@@ -375,3 +426,9 @@
375426
pinctrl-0 = <&dac_default>;
376427
pinctrl-names = "default";
377428
};
429+
430+
ext1_serial: &sercom0 {};
431+
432+
ext2_serial: &sercom5 {};
433+
434+
ext3_serial: &sercom1 {};

0 commit comments

Comments
 (0)