Skip to content

arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports - #999

Open
akakum-qualcomm wants to merge 5 commits into
qualcomm-linux:qcom-6.18.yfrom
akakum-qualcomm:shikra-usb-role-switch-618
Open

arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports#999
akakum-qualcomm wants to merge 5 commits into
qualcomm-linux:qcom-6.18.yfrom
akakum-qualcomm:shikra-usb-role-switch-618

Conversation

@akakum-qualcomm

@akakum-qualcomm akakum-qualcomm commented Aug 21, 2026

Copy link
Copy Markdown

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

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

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>
Link: https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-1-753e928f37ae@oss.qualcomm.com

[submitter: qcom-6.18.y already carried an older v1/v2-era usb_1 and
 usb_qmpphy node definition (FROMLIST 90ffd3d "Add USB changes for
 Shikra" and 1c76289 "Add changes for usb on IQS platform").
 Per request, landed v7 fresh: replaced the old usb_qmpphy node
 (qcom,shikra-qmp-usb3-phy) and old usb_1 node with v7's versions
 (qcom,shikra-qmp-usb3-dp-phy, relocated usb_1 block, new usb_2 block),
 rather than layering v7 on top of the old nodes. Resulting content
 matches the original patch; no semantic changes beyond superseding the
 older node definitions.]
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>
Link: https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-2-753e928f37ae@oss.qualcomm.com

[submitter: shikra-cqm-evk.dts, shikra-cqs-evk.dts and shikra-iqs-evk.dts
 already carried &usb_1_hsphy and &usb_qmpphy nodes from earlier
 v1/v2-era FROMLIST commits (90ffd3d, 1c76289). Only the
 missing &usb_2_hsphy node from this patch was added to those three
 files; shikra-evk.dtsi had no prior USB wiring and was applied as-is.
 Resulting content matches the original patch; no semantic changes.]
…roller

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.

Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260820145036.2035641-2-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.

Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260820145036.2035641-3-akash.kumar@oss.qualcomm.com
…ype-C ports

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>
Link: https://lore.kernel.org/r/20260820145036.2035641-4-akash.kumar@oss.qualcomm.com

[submitter: qcom-6.18.y already carried a PENDING commit
 (102ec26 "arm64: dts: qcom: Add typec role switching changes to
 shikra") that wired shikra-cqm-evk.dts and shikra-cqs-evk.dts's
 usb_1_dwc3_hs/usb_qmpphy_out endpoints to a PM4125-based typec
 connector (&pm4125_hs_in/&pm4125_ss_in). The version of this patch
 sent to the list wired CYPD6129 to usb_1_dwc3_hs on CQM/CQS instead,
 which would have conflicted with that PENDING commit's PM4125 wiring
 (a DT endpoint can only have one remote-endpoint phandle) and, per
 updated board-wiring information, does not match the actual hardware:
 on CQM/CQS, CYPD6129 is wired to the second Type-C port (usb_2) and
 PM4125 continues to own the primary Type-C port (usb_1), unchanged.
 This local copy of the patch has been corrected accordingly: the
 PENDING commit's &pm4125_hs_in/&pm4125_ss_in/usb_1/usb_qmpphy_out
 wiring on CQM/CQS is restored as-is, and CYPD6129's connector endpoint
 is wired to the newly added usb_2/usb_2_dwc3_hs instead of usb_1.
 The PENDING commit's shikra-cqm-som.dtsi portion (&pm4125_typec
 connector and &pm4125_vbus regulator nodes) is untouched and left in
 history as-is. shikra-iqs-evk.dts had no such conflict (no PM4125) and
 is applied as-is. The series needs to be resent upstream with this
 corrected CQM/CQS wiring.]
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

3 similar comments
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No Change Task Found

No associated change tasks found for CR 4652998 on any of the following entities:

Entities:

  • kernel.qli.2.0

CR: 4652998

Please ensure the CR has a change task associated with at least one of the entities for this branch.

@qlijarvis

Copy link
Copy Markdown

PR #999 — validate-patch

PR: #999

Verdict Issues Detailed Report
⚠️ 0 Full report

Final Summary

  1. Lore link present: Yes — all 5 commits have valid lore.kernel.org links
  2. Lore link matches PR commits: Yes — all diffs match upstream sources; adaptations in commits 1-2 are documented in submitter notes
  3. Upstream patch status: ⏳ Decision Pending for all 5 commits — commits 1-2 have strong positive review signals (multiple Reviewed-by tags); commit 3 has Acked-by from DT maintainer; commits 4-5 are newer and under review; no NAK signals on any commit
  4. PR present in qcom-next/topics: Fail - 2/5 commit(s) are missing from both qcom-next and topics
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #999 - Add USB support for Shikra platforms (5 commits)
Verdict: ⚠️ PARTIAL


Summary by Commit

Commit 1/5: FROMLIST: arm64: dts: qcom: Add support for usb nodes on Shikra

Upstream: https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-1-753e928f37ae@oss.qualcomm.com
Verdict: ✅ PASS (with documented adaptation)

Commit Message

Check Status Note
Subject matches upstream Identical
Body preserves rationale Identical
Fixes tag present/correct N/A No Fixes tag in upstream
Authorship preserved FROMLIST: Krishna Kurapati's SOB present; Akash Kumar as submitter is correct
Backport note Detailed submitter note explains tree-specific adaptation
Reviewed-by tags Both Reviewed-by tags from upstream present

Diff Comparison

File Status Notes
arch/arm64/boot/dts/qcom/shikra.dtsi Content matches upstream; diff context differs due to pre-existing v1/v2 nodes being replaced (documented in submitter note)

Upstream Patch Status

Decision Pending — Posted v7 on 2026-08-11; has Reviewed-by from Konrad Dybcio and Manivannan Sadhasivam; no explicit "applied" or "queued" signal found in thread; no NAK signals

Integration Presence

Present in topics — All added lines verified present in kernel-topics branches


Commit 2/5: FROMLIST: arm64: dts: qcom: Enable USB controllers on Shikra platforms

Upstream: https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-2-753e928f37ae@oss.qualcomm.com
Verdict: ✅ PASS (with documented adaptation)

Commit Message

Check Status Note
Subject matches upstream Identical
Body preserves rationale Identical
Fixes tag present/correct N/A No Fixes tag in upstream
Authorship preserved FROMLIST: Krishna Kurapati's SOB present; Akash Kumar as submitter is correct
Backport note Submitter note explains partial application (only &usb_2_hsphy added to 3 files; shikra-evk.dtsi applied as-is)
Reviewed-by tags All three Reviewed-by tags from upstream present (Manivannan, Dmitry added from thread reply)

Diff Comparison

File Status Notes
arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts Partial application documented
arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts Partial application documented
arch/arm64/boot/dts/qcom/shikra-evk.dtsi Applied as-is
arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts Partial application documented

Upstream Patch Status

Decision Pending — Posted v7 on 2026-08-11; has Reviewed-by from Manivannan Sadhasivam and Dmitry Baryshkov; no explicit "applied" or "queued" signal; no NAK signals

Integration Presence

Present in topics — All added lines verified present in kernel-topics branches


Commit 3/5: FROMLIST: dt-bindings: usb: Add Cypress cypd6129/cypd6229 Type-C controller

Upstream: https://lore.kernel.org/r/20260820145036.2035641-2-akash.kumar@oss.qualcomm.com
Verdict: ✅ PASS

Commit Message

Check Status Note
Subject matches upstream Identical
Body preserves rationale Identical
Fixes tag present/correct N/A No Fixes tag in upstream
Authorship preserved Akash Kumar is original author; SOB matches
Backport note N/A Not a backport
Acked-by tag Acked-by from Conor Dooley correctly added from thread

Diff Comparison

File Status Notes
Documentation/devicetree/bindings/usb/cypress,cypd6129.yaml New file; content matches upstream

Upstream Patch Status

Decision Pending — Posted v1 on 2026-08-20; v2 posted same day; has Acked-by from Conor Dooley (DT maintainer) and Reviewed-by from Abel Vesa; no explicit "applied" signal yet; no NAK signals

Integration Presence

Missing from qcom-next/topics — Not found in either qcom-next or kernel-topics branches


Commit 4/5: FROMLIST: usb: typec: ucsi: ccg: Add support for cypd6129/cypd6229

Upstream: https://lore.kernel.org/r/20260820145036.2035641-3-akash.kumar@oss.qualcomm.com
Verdict: ✅ PASS

Commit Message

Check Status Note
Subject matches upstream Identical (truncated in PR subject line but full in body)
Body preserves rationale Identical
Fixes tag present/correct N/A No Fixes tag in upstream
Authorship preserved Akash Kumar is original author; SOB matches
Backport note N/A Not a backport

Diff Comparison

File Status Notes
drivers/usb/typec/ucsi/ucsi_ccg.c Content matches upstream

Upstream Patch Status

Decision Pending — Posted v1 on 2026-08-20; v2 posted same day; under review; no explicit acceptance or rejection signals yet

Integration Presence

Missing from qcom-next/topics — Not found in either qcom-next or kernel-topics branches


Commit 5/5: FROMLIST: arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports

Upstream: https://lore.kernel.org/r/20260820145036.2035641-4-akash.kumar@oss.qualcomm.com
Verdict: ✅ PASS

Commit Message

Check Status Note
Subject matches upstream Identical (truncated in PR subject line but full in body)
Body preserves rationale Identical
Fixes tag present/correct N/A No Fixes tag in upstream
Authorship preserved Akash Kumar is original author; SOB matches
Backport note N/A Not a backport

Diff Comparison

File Status Notes
arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts Content matches upstream
arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts Content matches upstream
arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts Content matches upstream

Upstream Patch Status

Decision Pending — Posted v1 on 2026-08-20; v2 posted same day; under review; no explicit acceptance or rejection signals yet

Integration Presence

⚠️ Partial in qcom-next — Subject or partial tree evidence found in qcom-next, but full change not verified; missing from topics


Issues Found

  1. Integration presence failure (commits 3, 4) — Two commits (dt-bindings and driver changes) are completely missing from both qcom-next and kernel-topics branches. These are new files/features not yet integrated.

  2. Partial integration presence (commit 5) — One commit shows partial evidence in qcom-next but is missing from topics and full verification failed.

  3. Upstream status — All five commits are still under review upstream (Decision Pending). None have been explicitly merged into maintainer trees or mainline yet. However:

    • Commits 1-2 have strong positive signals (multiple Reviewed-by tags from subsystem maintainers)
    • Commit 3 has Acked-by from DT maintainer (Conor Dooley) — strong acceptance signal
    • Commits 4-5 are newer (posted 2026-08-20) and still gathering review

Verdict

⚠️ PARTIAL — Patches are faithful to upstream sources with appropriate adaptations documented. Commit messages and authorship are correct for FROMLIST commits. However, integration presence check reveals that 2 of 5 commits are completely missing from qcom-next/topics, and 1 is only partially present.

Recommendation:

The patches themselves are correctly formatted and match their upstream sources. The missing integration presence for commits 3, 4, and partial presence for commit 5 indicates these changes have not yet landed in the integration branches. This is expected for newer patches (commits 3-5 posted 2026-08-20) but should be tracked.

Merge decision: Approve for merge if the goal is to carry these FROMLIST patches ahead of upstream acceptance. All patches have appropriate review tags and no NAK signals. Monitor upstream threads for final acceptance and update commit prefixes to UPSTREAM: once merged.


Final Summary

  1. Lore link present: Yes — all 5 commits have valid lore.kernel.org links
  2. Lore link matches PR commits: Yes — all diffs match upstream sources; adaptations in commits 1-2 are documented in submitter notes
  3. Upstream patch status: ⏳ Decision Pending for all 5 commits — commits 1-2 have strong positive review signals (multiple Reviewed-by tags); commit 3 has Acked-by from DT maintainer; commits 4-5 are newer and under review; no NAK signals on any commit
  4. PR present in qcom-next/topics: Fail — 2/5 commits completely missing (commits 3, 4); 1/5 partial (commit 5); 2/5 present in topics (commits 1, 2)

Deterministic Integration Presence

Integration Presence Report

This report is generated by Jarvis before validate-patch runs.
It is the authoritative source for whether PR changes are already present
in qcom-next or in the kernel topic branches.

Kernel repo: /local/mnt/workspace/sgaud/Qgenie/image_pipeline/kernel
qcom-next ref: 3c1e80ceb9fb6978aa94bc0624e7c0003f3b4f6e
topics remote: topics -> https://github.com/qualcomm-linux/kernel-topics
topics fetch: fetched

Commit Subject qcom-next topics Final
1/5 [PATCH 1/5] FROMLIST: arm64: dts: qcom: Add support for usb nodes on partial - subject or partial tree evidence found, but full change was not verified present - all checked added lines are present present
2/5 [PATCH 2/5] FROMLIST: arm64: dts: qcom: Enable USB controllers on partial - subject or partial tree evidence found, but full change was not verified present - all checked added lines are present present
3/5 [PATCH 3/5] FROMLIST: dt-bindings: usb: Add Cypress cypd6129/cypd6229 missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
4/5 [PATCH 4/5] FROMLIST: usb: typec: ucsi: ccg: Add support for missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
5/5 [PATCH 5/5] FROMLIST: arm64: dts: qcom: shikra: Wire up partial - subject or partial tree evidence found, but full change was not verified missing - no subject, patch-id, or full tree-content match found partial

Final Status

overall_status: FAIL
present_commits: 2/5
partial_commits: 1/5
missing_commits: 2/5
topics_checked_for_commits: 5/5
final_summary: PR present in qcom-next/topics: Fail - 2/5 commit(s) are missing from both qcom-next and topics

@qlijarvis

Copy link
Copy Markdown

PR #999 — checker-log-analyzer

PR: #999
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/32467575966

Checker Result Summary
Checker Result Summary
checkpatch 2 commits: missing Signed-off-by, undocumented DT compatible
dt-binding-check cypress,cypd6129.yaml passed validation
dtb-check Missing binding for qcom,shikra-qmp-usb3-dp-phy; wakeup-source not allowed; interrupt-names mismatch
sparse-check No C/H changes requiring sparse analysis
check-uapi-headers No UAPI changes detected
check-patch-compliance 3 commits: content mismatch + author mismatch
tag-check N/A Cannot determine target branch (GH API unavailable)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #999 - USB support for Shikra platform
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/32467575966

Checker Result Summary
checkpatch 2 commits: missing Signed-off-by, undocumented DT compatible
dt-binding-check cypress,cypd6129.yaml passed validation
dtb-check Missing binding for qcom,shikra-qmp-usb3-dp-phy; wakeup-source not allowed; interrupt-names mismatch
sparse-check No C/H changes requiring sparse analysis
check-uapi-headers No UAPI changes detected
check-patch-compliance 3 commits: content mismatch + author mismatch
tag-check N/A Cannot determine target branch (GH API unavailable)

❌ checkpatch

Root cause: Two commits are missing Signed-off-by: trailer for the nominal patch author, and one commit uses an undocumented DT compatible string.

Failure details:

Commit 313b1d0 ("FROMLIST: arm64: dts: qcom: Add support for usb nodes on Shikra"):

WARNING: DT compatible string "qcom,shikra-qmp-usb3-dp-phy" appears un-documented
#45: FILE: arch/arm64/boot/dts/qcom/shikra.dtsi:1259:
+			compatible = "qcom,shikra-qmp-usb3-dp-phy";

ERROR: Missing Signed-off-by: line by nominal patch author 'Akash Kumar <akash.kumar@oss.qualcomm.com>'
313b1d05ca416fbbfdb0c244178e0e8f3b865459 total: 1 errors, 1 warnings, 0 checks, 319 lines checked

Commit 7fbef39 ("FROMLIST: arm64: dts: qcom: Enable USB controllers on Shikra platforms"):

ERROR: Missing Signed-off-by: line by nominal patch author 'Akash Kumar <akash.kumar@oss.qualcomm.com>'
7fbef395de6f43ef5a293a397501909a3874bf29 total: 1 errors, 0 warnings, 0 checks, 57 lines checked

Fix:

  1. Missing Signed-off-by: The commits show From: Akash Kumar <akash.kumar@oss.qualcomm.com> but lack a Signed-off-by: trailer for this author. Add it:

    git rebase -i dc0f4d4280a7   # mark commits 313b1d05 and 7fbef395 as 'edit'
    git commit --amend --signoff
    git rebase --continue
  2. Undocumented DT compatible: The compatible string qcom,shikra-qmp-usb3-dp-phy is used in shikra.dtsi:1259 but has no corresponding binding YAML. This is a blocker — either:

    • Add a binding YAML for qcom,shikra-qmp-usb3-dp-phy in Documentation/devicetree/bindings/phy/, or
    • Use an existing documented compatible string if this is a variant of an existing PHY.

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git dc0f4d4280a7..f5f3eda337a1

❌ dtb-check

Root cause: The DTS changes introduce three classes of schema validation failures: (1) missing binding for qcom,shikra-qmp-usb3-dp-phy, (2) wakeup-source property not allowed in USB-C connector schema, (3) interrupt-names array mismatch for qcom,shikra-dwc3 nodes.

Failure details:

Issue 1 — Missing PHY binding:

arch/arm64/boot/dts/qcom/shikra-*.dtb: /soc@0/phy@1615000: failed to match any schema with compatible: ['qcom,shikra-qmp-usb3-dp-phy']

→ Affects all 6 Shikra DTBs (cqm-evk, cqs-evk, iqs-evk, and their camera variants).

Issue 2 — Unevaluated wakeup-source property:

typec@40 (cypress,cypd6129): connector@0: Unevaluated properties are not allowed ('wakeup-source' was unexpected)
	from schema $id: http://devicetree.org/schemas/usb/cypress,cypd6129.yaml
connector@0 (usb-c-connector): Unevaluated properties are not allowed ('wakeup-source' was unexpected)
	from schema $id: http://devicetree.org/schemas/connector/usb-connector.yaml

→ The wakeup-source property is used in the USB-C connector nodes but is not declared in either the cypress,cypd6129.yaml binding (added in this PR) or the upstream usb-connector.yaml schema.

Issue 3 — interrupt-names mismatch:

usb@4c00000 (qcom,shikra-dwc3): interrupt-names:2: 'qusb2_phy' was expected
usb@4c00000 (qcom,shikra-dwc3): interrupt-names:3: 'hs_phy_irq' was expected
usb@4c00000 (qcom,shikra-dwc3): interrupt-names:4: 'ss_phy_irq' was expected
usb@4e00000 (qcom,shikra-dwc3): interrupt-names: ['dwc_usb3', 'pwr_event', 'hs_phy_irq', 'dp_hs_phy_irq', 'dm_hs_phy_irq', 'ss_phy_irq'] is too long
	from schema $id: http://devicetree.org/schemas/usb/qcom,snps-dwc3.yaml

→ The qcom,snps-dwc3.yaml binding expects exactly 5 interrupt names: ['dwc_usb3', 'pwr_event', 'qusb2_phy', 'hs_phy_irq', 'ss_phy_irq'], but the DTS provides 6: ['dwc_usb3', 'pwr_event', 'hs_phy_irq', 'dp_hs_phy_irq', 'dm_hs_phy_irq', 'ss_phy_irq'].

Fix:

  1. Missing PHY binding: Add Documentation/devicetree/bindings/phy/qcom,shikra-qmp-usb3-dp-phy.yaml covering the qcom,shikra-qmp-usb3-dp-phy compatible string. This is the same issue flagged by checkpatch.

  2. wakeup-source property: Either:

    • Add wakeup-source: true to the properties: section of Documentation/devicetree/bindings/usb/cypress,cypd6129.yaml (the binding added in commit a1123d0), or
    • Remove wakeup-source from the connector nodes in the DTS files if it's not needed.
  3. interrupt-names mismatch: The DTS provides 6 interrupt names but the binding expects 5. The extra names are dp_hs_phy_irq and dm_hs_phy_irq (DP/DM high-speed PHY interrupts), which replace the single qusb2_phy entry. Either:

    • Update the qcom,snps-dwc3.yaml binding to allow the expanded interrupt list for qcom,shikra-dwc3, or
    • Adjust the DTS to match the existing binding (consolidate dp_hs_phy_irq/dm_hs_phy_irq back to qusb2_phy).

Reproduce locally:

make -j$(nproc) O=out defconfig
make -j$(nproc) O=out CHECK_DTBS=y arch/arm64/boot/dts/qcom/shikra-cqm-evk.dtb

❌ check-patch-compliance

Root cause: Three commits have content differences from their upstream lore links, and two of those also have author mismatches.

Failure details:

Commit 313b1d0 ("FROMLIST: arm64: dts: qcom: Add support for usb nodes on Shikra"):

Change is different from the one mentioned in Link
Author mismatch:
  Original author: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
  Commit author : Akash Kumar <akash.kumar@oss.qualcomm.com>

→ Link: https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-1-753e928f37ae@oss.qualcomm.com

Commit 7fbef39 ("FROMLIST: arm64: dts: qcom: Enable USB controllers on Shikra platforms"):

Change is different from the one mentioned in Link
Author mismatch:
  Original author: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
  Commit author : Akash Kumar <akash.kumar@oss.qualcomm.com>

Commit f5f3eda ("FROMLIST: arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports"):

Change is different from the one mentioned in Link

Fix:

  1. Author mismatch: The original author is Krishna Kurapati, but the commits are authored by Akash Kumar. If Akash is the submitter/integrator, the correct approach is:

    git rebase -i dc0f4d4280a7   # mark commits 313b1d05 and 7fbef395 as 'edit'
    git commit --amend --author="Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>"
    git rebase --continue

    Then add Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com> as the integrator.

  2. Content mismatch: The commit message for 313b1d0 includes a [submitter: ...] note explaining that the v7 patch was landed fresh, replacing older v1/v2-era USB nodes. This is a legitimate adaptation for the vendor tree. However, the checker does not recognize this pattern. To satisfy the checker:

    • Document the adaptation in the commit body more explicitly (e.g., "Adapted for qcom-6.18.y: replaced pre-existing usb_qmpphy node..."), or
    • Accept that vendor-specific adaptations will always trigger this check.
  3. Verify content differences:

    b4 am --single-message -C -l -3 https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-1-753e928f37ae@oss.qualcomm.com -o /tmp/out
    git format-patch -1 313b1d05ca41 --stdout > /tmp/pr.patch
    diff <(awk '/^diff/,/^--$/' /tmp/pr.patch | grep -E '^[+-][^+-]') \
         <(awk '/^diff/,/^--$/' /tmp/out/*.mbx | grep -E '^[+-][^+-]')

Reproduce locally:

cd /path/to/kernel
../kernel-checkers/check-patch-compliance.sh --base dc0f4d4280a7 --head f5f3eda337a1

Verdict

3 blockers must be fixed before merge:

  1. Add DT binding for qcom,shikra-qmp-usb3-dp-phy — required by both checkpatch and dtb-check.
  2. Fix wakeup-source schema issue — either add to cypress,cypd6129.yaml or remove from DTS.
  3. Resolve interrupt-names mismatch — update binding or adjust DTS to match qcom,snps-dwc3.yaml.

2 non-blockers (can be addressed or accepted as-is):

  1. Add Signed-off-by: for Akash Kumar — required by checkpatch; trivial fix.
  2. Author mismatch + content mismatch — legitimate vendor adaptation; document more clearly or accept checker limitation.

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.

3 participants