Skip to content

Enable usb0 and usb1 on shikra QLI - #1001

Open
akakum-qualcomm wants to merge 8 commits into
qualcomm-linux:qcom-6.18.yfrom
akakum-qualcomm:shikra-revert-719-reapply
Open

Enable usb0 and usb1 on shikra QLI#1001
akakum-qualcomm wants to merge 8 commits into
qualcomm-linux:qcom-6.18.yfrom
akakum-qualcomm:shikra-revert-719-reapply

Conversation

@akakum-qualcomm

Copy link
Copy Markdown

arm64: dts: qcom: shikra: Replace out-of-tree USB DT with upstream lore series (v7 USB nodes + CYPD6129 role-switch v2)

This branch reverts the 3 out-of-tree/FROMLIST/PENDING Shikra USB commits
carried in this tree and replaces them with the equivalent upstream
lore.kernel.org patch series, applied cleanly on top of qcom-6.18.y:

Reverted:

  • Revert "FROMLIST: arm64: dts: qcom: Add changes for usb on IQS platform"
  • Revert "FROMLIST: arm64: dts: qcom: Add USB changes for Shikra"
  • Revert "PENDING: arm64: dts: qcom: Add typec role switching changes to shikra"

Applied on top (from lore, unmodified upstream patches):

  • arm64: dts: qcom: Add support for usb nodes on Shikra
  • arm64: dts: qcom: Enable USB controllers on Shikra platforms
  • dt-bindings: usb: Add Cypress cypd6129/cypd6229 Type-C controller
  • usb: typec: ucsi: ccg: Add support for cypd6129/cypd6229
  • arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports

Net effect: shikra-cqm-evk, shikra-cqs-evk, and shikra-iqs-evk now use the
upstream CYPD6129/CYPD6229 UCSI Type-C controller for USB role switching
(via &i2c3/typec@40) instead of the previous PM4125-native typec block,
while shikra.dtsi/shikra-evk.dtsi gain the base usb_1/usb_2 dwc3, USB
HS/QMP PHY, and QUSB2 efuse-trim nodes needed to support them.

All four affected board/SoC DT files were rebuilt with dtc
(qcom/shikra-cqm-evk.dtb, qcom/shikra-cqs-evk.dtb, qcom/shikra-iqs-evk.dtb)
with no warnings or errors.

Signed-off-by: Akash Kumar akash.kumar@oss.qualcomm.com

links: https://lore.kernel.org/all/20260811-usb-shikra-v7-v7-0-753e928f37ae@oss.qualcomm.com/
https://lore.kernel.org/all/20260820145036.2035641-4-akash.kumar@oss.qualcomm.com/

CRs-Fixed: 4652998

…o shikra"

This reverts the pm4125_hs_in/pm4125_ss_in typec role-switch wiring
introduced by commit 102ec26:

 - Remove the &pm4125_typec connector node and &pm4125_vbus regulator
   node (with the pm4125_hs_in/pm4125_ss_in endpoint labels) from
   shikra-cqm-som.dtsi.
 - Remove the &pm4125_hs_in/&pm4125_ss_in remote-endpoint stanzas and
   the &usb_1_dwc3_hs/&usb_qmpphy_out remote-endpoint stanzas from
   shikra-cqm-evk.dts and shikra-cqs-evk.dts.
 - Restore usb_1's dr_mode to "peripheral" in both files.

The &wifi node and all other content are left untouched.

Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com>
Add support for both USB controllers and their respective phys on Shikra.

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
On Shikra CQS/CQM  platforms, usb-role-switch is handled by PM4125 on
primary Type-C port and Cypress PD controller CYPD6129 on second Type-C
port. On Shikra IQS platform, usb-role-switch is handled by Cypress PD
controller CYPD6129 on both Type-C ports.

Since those changes are not yet present, enabling both USB controllers
in device mode.

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Add the device-tree binding documentation for the Cypress cypd6129
and cypd6229 dual Type-C PD controllers. These are used on Shikra
CQM/CQS/IQS platforms to handle usb-role-switch for the USB Type-C
ports over an I2C interface, similarly to the existing cypd4226
binding.

cypd6229 is a variant of cypd6129 and is described with a
"cypress,cypd6129" fallback compatible string.

Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com>
Add cypd6129 and cypd6229 compatible strings to the of_device_id
match table so the driver binds to boards describing these Cypress
PD controllers in their device tree. No other driver changes are
needed since the chip is accessed through the same generic UCSI/HPI
I2C register protocol as the existing cypd4226 support.

Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com>
On Shikra CQS/CQM platforms, usb-role-switch is handled by PM4125 on
the primary Type-C port and Cypress PD controller CYPD6129 on the
second Type-C port. On Shikra IQS platform, usb-role-switch is
handled by Cypress PD controller CYPD6129 on both Type-C ports.

Add the CYPD6129 typec node under i2c3, wire its connector endpoints
to the corresponding DWC3 controller ports via remote-endpoint
phandles, and switch the associated USB controllers to OTG mode so
role switching can take effect.

Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com>
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4652998 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 4652998
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

arm64: dts: qcom: Add support for usb nodes on Shikra

You missed to add FROMLIST prefix and add Link: tag in the commits.

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.

4 participants