boards: renesas: Add support USB on ek_ra8p1 and mck_ra8t2
Add support USB on Renesas ek_ra8p1 and mck_ra8t2 boards
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
diff --git a/boards/renesas/ek_ra8p1/ek_ra8p1-pinctrl.dtsi b/boards/renesas/ek_ra8p1/ek_ra8p1-pinctrl.dtsi
index 24146ae..778ada7 100644
--- a/boards/renesas/ek_ra8p1/ek_ra8p1-pinctrl.dtsi
+++ b/boards/renesas/ek_ra8p1/ek_ra8p1-pinctrl.dtsi
@@ -95,6 +95,22 @@
};
};
+ usbhs_default: usbhs_default {
+ group1 {
+ psels = <RA_PSEL(RA_PSEL_USBHS, 4, 8)>; /* VBUS */
+ drive-strength = "high";
+ };
+ };
+
+ usbfs_default: usbfs_default {
+ group1 {
+ psels = <RA_PSEL(RA_PSEL_USBFS, 8, 15)>, /* USB_DM */
+ <RA_PSEL(RA_PSEL_USBFS, 8, 14)>, /* USB_DP */
+ <RA_PSEL(RA_PSEL_USBFS, 4, 7)>; /* VBUS */
+ drive-strength = "high";
+ };
+ };
+
sdram_default: sdram_default {
group1 {
psels = <RA_PSEL(RA_PSEL_BUS, 10, 3)>, /* SDRAM_A2 */
diff --git a/boards/renesas/ek_ra8p1/ek_ra8p1.dtsi b/boards/renesas/ek_ra8p1/ek_ra8p1.dtsi
index 656e446..c4d0e2b 100644
--- a/boards/renesas/ek_ra8p1/ek_ra8p1.dtsi
+++ b/boards/renesas/ek_ra8p1/ek_ra8p1.dtsi
@@ -177,6 +177,22 @@
status = "okay";
};
+&usbfs {
+ pinctrl-0 = <&usbfs_default>;
+ pinctrl-names = "default";
+ maximum-speed = "full-speed";
+};
+
+&usbhs {
+ pinctrl-0 = <&usbhs_default>;
+ pinctrl-names = "default";
+ maximum-speed = "high-speed";
+};
+
+&usbhs_phy {
+ phys-clock-src = "xtal";
+};
+
&sdram {
pinctrl-0 = <&sdram_default>;
pinctrl-names = "default";
diff --git a/boards/renesas/ek_ra8p1/ek_ra8p1_r7ka8p1kflcac_cm85.dts b/boards/renesas/ek_ra8p1/ek_ra8p1_r7ka8p1kflcac_cm85.dts
index 8b2508a..5925e98 100644
--- a/boards/renesas/ek_ra8p1/ek_ra8p1_r7ka8p1kflcac_cm85.dts
+++ b/boards/renesas/ek_ra8p1/ek_ra8p1_r7ka8p1kflcac_cm85.dts
@@ -130,6 +130,17 @@
burst-transfer = <256>;
};
+&usbhs {
+ pinctrl-0 = <&usbhs_default>;
+ interrupts = <23 12>;
+ interrupt-names = "usbhs-ir";
+ status = "okay";
+
+ zephyr_udc0: udc {
+ status = "okay";
+ };
+};
+
zephyr_lcdif: &lcdif {};
pmod_sd_shield: &sdhc0 {};
diff --git a/boards/renesas/mck_ra8t2/mck_ra8t2-pinctrl.dtsi b/boards/renesas/mck_ra8t2/mck_ra8t2-pinctrl.dtsi
index ff1e2d6..835c580 100644
--- a/boards/renesas/mck_ra8t2/mck_ra8t2-pinctrl.dtsi
+++ b/boards/renesas/mck_ra8t2/mck_ra8t2-pinctrl.dtsi
@@ -40,6 +40,15 @@
};
};
+ usbfs_default: usbfs_default {
+ group1 {
+ psels = <RA_PSEL(RA_PSEL_USBFS, 8, 15)>, /* USB_DM */
+ <RA_PSEL(RA_PSEL_USBFS, 8, 14)>, /* USB_DP */
+ <RA_PSEL(RA_PSEL_USBFS, 4, 7)>; /* VBUS */
+ drive-strength = "high";
+ };
+ };
+
sdhc0_default: sdhc0_default {
group1 {
psels = <RA_PSEL(RA_PSEL_SDHI, 13, 7)>, /* SDCD */
diff --git a/boards/renesas/mck_ra8t2/mck_ra8t2.dtsi b/boards/renesas/mck_ra8t2/mck_ra8t2.dtsi
index 8199134..16b0d0d 100644
--- a/boards/renesas/mck_ra8t2/mck_ra8t2.dtsi
+++ b/boards/renesas/mck_ra8t2/mck_ra8t2.dtsi
@@ -88,6 +88,10 @@
};
};
+&uclk {
+ status = "okay";
+};
+
&sciclk {
status = "okay";
};
@@ -111,3 +115,9 @@
&ioportb {
status = "okay";
};
+
+&usbfs {
+ pinctrl-0 = <&usbfs_default>;
+ pinctrl-names = "default";
+ maximum-speed = "full-speed";
+};
diff --git a/boards/renesas/mck_ra8t2/mck_ra8t2_r7ka8t2lfecac_cm85.dts b/boards/renesas/mck_ra8t2/mck_ra8t2_r7ka8t2lfecac_cm85.dts
index 0452cd7..651055e 100644
--- a/boards/renesas/mck_ra8t2/mck_ra8t2_r7ka8t2lfecac_cm85.dts
+++ b/boards/renesas/mck_ra8t2/mck_ra8t2_r7ka8t2lfecac_cm85.dts
@@ -91,3 +91,14 @@
status = "okay";
};
};
+
+&usbfs {
+ pinctrl-0 = <&usbfs_default>;
+ interrupts = <16 12>, <17 12>;
+ interrupt-names = "usbfs-i", "usbfs-r";
+ status = "okay";
+
+ zephyr_udc0: udc {
+ status = "okay";
+ };
+};