2025-07-22 1:17 PM
/ {
usb_c_connector {
compatible = "usb-c-connector";
label = "USB-C Connector";
type = "usb-c";
vbus-gpios = <&gpioh 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
vbus-supply = <&scmi_vdd3v3_usb>;
port {
dwc3_ep: endpoint {
remote-endpoint = <&typec_ep>;
};
};
};
};
&usb3dr {
status = "okay";
dwc3:usb@48300000{
maximum-speed = "high-speed";
usb-role-switch;
port {
typec_ep: endpoint {
remote-endpoint = <&dwc3_ep>;
};
};
};
};
Solved! Go to Solution.
2025-09-03 12:59 PM - edited 2025-09-03 12:59 PM
/ {
usb-b-connector {
compatible = "gpio-usb-b-connector", "usb-b-connector";
label = "USB-C";
type = "mini";
vbus-gpios = <&gpioh 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
port {
con_usb3dr_ep: endpoint {
remote-endpoint = <&usb3dr_ep>;
};
};
};
};
&usb3dr {
status = "okay";
/* USER CODE BEGIN usb3dr */
dwc3:usb@48300000{
maximum-speed = "high-speed";
usb-role-switch;
port {
usb3dr_ep: endpoint {
remote-endpoint = <&con_usb3dr_ep>;
};
};
};
/* USER CODE END usb3dr */
};
I was able to end up getting this working with the following device tree configuration:
2025-09-03 12:59 PM - edited 2025-09-03 12:59 PM
/ {
usb-b-connector {
compatible = "gpio-usb-b-connector", "usb-b-connector";
label = "USB-C";
type = "mini";
vbus-gpios = <&gpioh 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
port {
con_usb3dr_ep: endpoint {
remote-endpoint = <&usb3dr_ep>;
};
};
};
};
&usb3dr {
status = "okay";
/* USER CODE BEGIN usb3dr */
dwc3:usb@48300000{
maximum-speed = "high-speed";
usb-role-switch;
port {
usb3dr_ep: endpoint {
remote-endpoint = <&con_usb3dr_ep>;
};
};
};
/* USER CODE END usb3dr */
};
I was able to end up getting this working with the following device tree configuration: