On Tue, Oct 15, 2024 at 06:33:37PM +0800, Macpaul Lin wrote: > From: Fabien Parent <fparent@xxxxxxxxxxxx> > > Enable USB Type-C support on MediaTek MT8395 Genio 1200 EVK by adding > configuration for TCPC Port, USB-C connector, and related settings. > > Configure dual role switch capability, set up PD (Power Delivery) profiles, > and establish endpoints for SSUSB (SuperSpeed USB). > > Update pinctrl configurations for U3 P0 VBus default pins and set dr_mode > to "otg" for OTG (On-The-Go) mode operation. > > Signed-off-by: Fabien Parent <fparent@xxxxxxxxxxxx> > Signed-off-by: Simon Sun <simon.sun@xxxxxxxxxxxxxxx> > Signed-off-by: Macpaul Lin <macpaul.lin@xxxxxxxxxxxx> > --- > .../dts/mediatek/mt8395-genio-1200-evk.dts | 51 +++++++++++++++++++ > 1 file changed, 51 insertions(+) > > diff --git a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts > index 5f16fb820580..b91a46f4a702 100644 > --- a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts > +++ b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts > @@ -249,6 +249,39 @@ mt6360: pmic@34 { > #interrupt-cells = <1>; > pinctrl-0 = <&mt6360_pins>; > > + tcpc { > + compatible = "mediatek,mt6360-tcpc"; > + interrupts-extended = <&pio 17 IRQ_TYPE_LEVEL_LOW>; > + interrupt-names = "PD_IRQB"; > + > + connector { > + compatible = "usb-c-connector"; > + label = "USB-C"; > + data-role = "dual"; > + power-role = "dual"; > + try-power-role = "sink"; > + source-pdos = <PDO_FIXED(5000, 1000, \ > + PDO_FIXED_DUAL_ROLE | \ > + PDO_FIXED_DATA_SWAP)>; > + sink-pdos = <PDO_FIXED(5000, 2000, \ > + PDO_FIXED_DUAL_ROLE | \ > + PDO_FIXED_DATA_SWAP)>; > + op-sink-microwatt = <10000000>; > + }; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + mt6360_ssusb_ep: endpoint { > + remote-endpoint = <&ssusb_ep>; No, this is wrong. This should go to 'port@1' in the connector node. That is the SS connection. Rob