Skip to content

[qcom-next] phy: qcom: qmp-combo: honor USB-C orientation for port select - #112

Open
balajiselvanathan wants to merge 1 commit into
qualcomm-linux:qcom-nextfrom
balajiselvanathan:qc/kodiak_ss_orientation
Open

[qcom-next] phy: qcom: qmp-combo: honor USB-C orientation for port select#112
balajiselvanathan wants to merge 1 commit into
qualcomm-linux:qcom-nextfrom
balajiselvanathan:qc/kodiak_ss_orientation

Conversation

@balajiselvanathan

Copy link
Copy Markdown

Read the USB-C cable orientation from the orientation-gpios property on the qcom,pmic-glink node and use it when programming the TypeC port-select mux.

Taken from Linux commit 815891eee668 ("phy: qcom-qmp-combo: Introduce orientation variable")

Previously the driver always set SW_PORTSELECT_MUX without accounting for cable orientation, so the SuperSpeed/DP lanes could be routed to the wrong side of the connector on boards where the cable was flipped. Now orientation is read once during DT parsing and SW_PORTSELECT_VAL is added to the mux value when a reversed orientation is detected.

Tested on QCS6490 RB3 Gen2 board.

Upstream link: https://lore.kernel.org/u-boot/20260724-kodiak_ss_orientation-v1-1-d9d8fd271e0c@oss.qualcomm.com/

Read the USB-C cable orientation from the orientation-gpios
property on the qcom,pmic-glink node and use it when programming
the TypeC port-select mux.

Taken from Linux commit 815891eee668 ("phy: qcom-qmp-combo: Introduce orientation variable")

Previously the driver always set SW_PORTSELECT_MUX without
accounting for cable orientation, so the SuperSpeed/DP lanes could
be routed to the wrong side of the connector on boards where the
cable was flipped. Now orientation is read once during DT parsing
and SW_PORTSELECT_VAL is added to the mux value when a reversed
orientation is detected.

Tested on QCS6490 RB3 Gen2 board.

Signed-off-by: Balaji Selvanathan <balaji.selvanathan@oss.qualcomm.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants