Skip to content

Commit 5609c24

Browse files
committed
boards: add support for Arduino Portenta C33
Tested: * GPIO * UART * USB (using USB_DEVICE_NEXT) * BLE dts to be fixed and completed Signed-off-by: Martino Facchin <m.facchin@arduino.cc>
1 parent c53fb67 commit 5609c24

File tree

10 files changed

+563
-0
lines changed

10 files changed

+563
-0
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Copyright 2025 Arduino SA
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
zephyr_sources_ifdef(CONFIG_NETWORKING eth_pwm_clock.c)
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Copyright (c) 2025 Arduino SA
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config BOARD_ARDUINO_PORTENTA_C33
5+
select SOC_R7FA6M5BH3CFC
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Copyright 2024 Rahul Arasikere <arasikere.rahul@gmail.com>
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if BOARD_ARDUINO_PORTENTA_C33
5+
6+
if NETWORKING
7+
8+
config NET_L2_ETHERNET
9+
default y
10+
11+
endif # NETWORKING
12+
13+
endif # BOARD_ARDUINO_PORTENTA_C33
Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
/*
2+
* Copyright (c) 2024 Arduino SA
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
&pinctrl {
7+
sci7_default: sci7_default {
8+
group1 {
9+
/* tx rx */
10+
psels = <RA_PSEL(RA_PSEL_SCI_7, 6, 13)>,
11+
<RA_PSEL(RA_PSEL_SCI_7, 6, 14)>,
12+
<RA_PSEL(RA_PSEL_SCI_7, 6, 11)>,
13+
<RA_PSEL(RA_PSEL_SCI_7, 4, 4)>;
14+
};
15+
};
16+
17+
sci9_default: sci9_default {
18+
group1 {
19+
/* tx rx */
20+
psels = <RA_PSEL(RA_PSEL_SCI_9, 6, 2)>,
21+
<RA_PSEL(RA_PSEL_SCI_9, 1, 10)>,
22+
<RA_PSEL(RA_PSEL_SCI_9, 6, 3)>,
23+
<RA_PSEL(RA_PSEL_SCI_9, 6, 4)>;
24+
};
25+
};
26+
27+
sci5_default: sci5_default {
28+
group1 {
29+
/* tx rx */
30+
psels = <RA_PSEL(RA_PSEL_SCI_5, 8, 5)>,
31+
<RA_PSEL(RA_PSEL_SCI_5, 5, 13)>,
32+
<RA_PSEL(RA_PSEL_SCI_5, 5, 8)>,
33+
<RA_PSEL(RA_PSEL_SCI_5, 5, 0)>;
34+
};
35+
};
36+
37+
sci6_default: sci6_default {
38+
group1 {
39+
/* tx rx */
40+
psels = <RA_PSEL(RA_PSEL_SCI_5, 8, 5)>,
41+
<RA_PSEL(RA_PSEL_SCI_5, 5, 13)>,
42+
<RA_PSEL(RA_PSEL_SCI_5, 5, 8)>,
43+
<RA_PSEL(RA_PSEL_SCI_5, 5, 0)>;
44+
};
45+
};
46+
47+
sci8_default: sci8_default {
48+
group1 {
49+
/* tx rx rts cts - BLE */
50+
psels = <RA_PSEL(RA_PSEL_SCI_8, 10, 0)>,
51+
<RA_PSEL(RA_PSEL_SCI_8, 6, 7)>,
52+
<RA_PSEL(RA_PSEL_SCI_8, 6, 6)>,
53+
<RA_PSEL(RA_PSEL_SCI_8, 8, 1)>;
54+
};
55+
};
56+
57+
iic1_default: iic1_default {
58+
group1 {
59+
/* SCL1 SDA1 */
60+
psels = <RA_PSEL(RA_PSEL_I2C, 5, 12)>,
61+
<RA_PSEL(RA_PSEL_I2C, 5, 11)>;
62+
drive-strength = "medium";
63+
};
64+
};
65+
66+
spi1_default: spi1_default {
67+
group1 {
68+
/* MISO MOSI RSPCK SSL0 SSL1 */
69+
psels = <RA_PSEL(RA_PSEL_SPI, 1, 0)>,
70+
<RA_PSEL(RA_PSEL_SPI, 1, 1)>,
71+
<RA_PSEL(RA_PSEL_SPI, 1, 2)>,
72+
<RA_PSEL(RA_PSEL_SPI, 1, 3)>,
73+
<RA_PSEL(RA_PSEL_SPI, 1, 4)>;
74+
};
75+
};
76+
77+
usbhs_default: usbhs_default {
78+
group1 {
79+
psels = <RA_PSEL(RA_PSEL_USBHS, 11, 1)>; /* USBHS-VBUS */
80+
drive-strength = "high";
81+
};
82+
};
83+
84+
adc0_default: adc0_default {
85+
group1 {
86+
/* input */
87+
psels = <RA_PSEL(RA_PSEL_ADC, 0, 6)>,
88+
<RA_PSEL(RA_PSEL_ADC, 0, 5)>,
89+
<RA_PSEL(RA_PSEL_ADC, 0, 4)>,
90+
<RA_PSEL(RA_PSEL_ADC, 0, 2)>,
91+
<RA_PSEL(RA_PSEL_ADC, 0, 1)>,
92+
<RA_PSEL(RA_PSEL_ADC, 0, 15)>,
93+
<RA_PSEL(RA_PSEL_ADC, 0, 14)>,
94+
<RA_PSEL(RA_PSEL_ADC, 0, 0)>;
95+
renesas,analog-enable;
96+
};
97+
};
98+
99+
ether_default: ether_default {
100+
group1 {
101+
psels = <RA_PSEL(RA_PSEL_ETH_RMII, 2, 14)>, /* ET0_MDC */
102+
<RA_PSEL(RA_PSEL_ETH_RMII, 2, 11)>, /* ET0_MDIO */
103+
<RA_PSEL(RA_PSEL_ETH_RMII, 4, 5)>, /* RMII0_TXD_EN_B */
104+
<RA_PSEL(RA_PSEL_ETH_RMII, 4, 6)>, /* RMII0_TXD1_BR */
105+
<RA_PSEL(RA_PSEL_ETH_RMII, 7, 0)>, /* RMII0_TXD0_B */
106+
<RA_PSEL(RA_PSEL_ETH_RMII, 7, 1)>, /* REF50CK0_B */
107+
<RA_PSEL(RA_PSEL_ETH_RMII, 7, 2)>, /* RMII0_RXD0_B */
108+
<RA_PSEL(RA_PSEL_ETH_RMII, 7, 3)>, /* RMII0_RXD1_B */
109+
<RA_PSEL(RA_PSEL_ETH_RMII, 7, 4)>, /* RMII0_RX_ER_B */
110+
<RA_PSEL(RA_PSEL_ETH_RMII, 7, 5)>; /* RMII0_CRS_DV_B */
111+
drive-strength = "high";
112+
};
113+
};
114+
115+
pwm1_default: pwm1_default {
116+
group1 {
117+
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 5)>;
118+
};
119+
};
120+
121+
pwm3_default: pwm3_default {
122+
group1 {
123+
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 11)>;
124+
};
125+
};
126+
127+
pwm4_default: pwm4_default {
128+
group1 {
129+
psels = <RA_PSEL(RA_PSEL_GPT1, 6, 8)>;
130+
};
131+
};
132+
133+
pwm6_default: pwm6_default {
134+
group1 {
135+
psels = <RA_PSEL(RA_PSEL_GPT1, 6, 0)>,
136+
<RA_PSEL(RA_PSEL_GPT1, 6, 1)>;
137+
};
138+
};
139+
140+
pwm7_default: pwm7_default {
141+
group1 {
142+
psels = <RA_PSEL(RA_PSEL_GPT1, 3, 3)>;
143+
};
144+
};
145+
146+
pwm8_default: pwm8_default {
147+
group1 {
148+
psels = <RA_PSEL(RA_PSEL_GPT1, 1, 6)>,
149+
<RA_PSEL(RA_PSEL_GPT1, 6, 5)>;
150+
};
151+
};
152+
};

0 commit comments

Comments
 (0)