Hi Peter,
On 10/31/2025 10:57 AM, Peter Chen (CIX) wrote:
On 25-10-30 14:50:33, Chaoyi Chen wrote:
Hi Chaoyi,
There are two questions I have still not seen the answer to:
- Why USB2 PHY is related to your Type-C patch?
I was just following other people's approach. Sorry, this should be removed
from the dts.
- How does the USB role switch event notify the USB controller driver, eg dwc3?
Sorry, I misunderstood what you said before. There is indeed a missing
usb-role-switch now. I referred to the approach in rk3588-evb1-v10.dts. Is the
following way of writing correct?
&usbc_connector {
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
usbc_orien_sw: endpoint {
remote-endpoint = <&tcphy0_typec_orien_sw>;
};
};
port@1 {
reg = <1>;
usbc_role_sw: endpoint {
remote-endpoint = <&dwc3_0_role_switch>;
};
};
port@2 {
reg = <2>;
usbc_dp: endpoint {
remote-endpoint = <&tcphy0_typec_dp>;
};
};
};
};
&usbdrd_dwc3_0 {
status = "okay";
usb-role-switch;
port {
#address-cells = <1>;
#size-cells = <0>;
dwc3_0_role_switch: endpoint@0 {
reg = <0>;
remote-endpoint = <&usbc_role_sw>;
};
};
};
&tcphy0_usb3 {
orientation-switch;
port {
tcphy0_typec_orien_sw: endpoint {
remote-endpoint = <&usbc_orien_sw>;
};
};
};
&tcphy0_dp {
mode-switch;
port {
#address-cells = <1>;
#size-cells = <0>;
tcphy0_typec_dp: endpoint@0 {
reg = <0>;
remote-endpoint = <&usbc_dp>;
};
};
};
The general hierarchy is okay, just need to fix some dts coding
style issue.
Thank you for your explanation. I will fix this in v9.