Re: [PATCH 1/2] arm64: dts: imx8qm-mek: switch Type-C connector power-role to dual

From: Frank Li

Date: Mon Mar 23 2026 - 14:59:34 EST


On Mon, Mar 23, 2026 at 07:09:22PM +0800, Xu Yang wrote:
> When attach to PC Type-A port, the USB device controller does not function
> at all. Because it is configured as source-only and a Type-A port doesn't
> support PD capability, a data role swap is impossible.
>
> Actually, PTN5110THQ is configured for DFP/Source role only at POR, but
> after POR it can operate as a DRP. By switching the power-role to dual,
> the port can operate as a sink and enter device mode when attached to
> Type-A port.

when first use term DFP/DRP,
DFP (Downstream Facing Port) ...

Except well known term, like POR.

>
> Since the board design uses EN_SRC to control the 5V VBUS path and EN_SNK
> to control the 12V VBUS output,

I remember a hardware rework to fix this problem.

> to avoid outputting a higher VBUS when in
> sink role, we set the operation current limit to 0mA so that SW will not
> control EN_SNK at all.
>
> Signed-off-by: Xu Yang <xu.yang_2@xxxxxxx>
> ---
> arch/arm64/boot/dts/freescale/imx8qm-mek.dts | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8qm-mek.dts b/arch/arm64/boot/dts/freescale/imx8qm-mek.dts
> index dadc136aec6e..8a832a0e105d 100644
> --- a/arch/arm64/boot/dts/freescale/imx8qm-mek.dts
> +++ b/arch/arm64/boot/dts/freescale/imx8qm-mek.dts
> @@ -611,9 +611,13 @@ ptn5110: tcpc@51 {
> usb_con1: connector {
> compatible = "usb-c-connector";
> label = "USB-C";
> - power-role = "source";
> + power-role = "dual";
> data-role = "dual";
> + try-power-role = "sink";
> source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
> + sink-pdos = <PDO_FIXED(5000, 0, PDO_FIXED_USB_COMM)>;
> + op-sink-microwatt = <0>;

Need comment here.

Frank
> + self-powered;
>
> ports {
> #address-cells = <1>;
> --
> 2.34.1
>