Skip to content

WORKAROUND: arm64: dts: qcom: Add qref and refgen supplies for Lemans PCIe PHYs#714

Open
ziyuezhang-123 wants to merge 1 commit into
qualcomm-linux:qcom-6.18.yfrom
ziyuezhang-123:lemans_qref_wa
Open

WORKAROUND: arm64: dts: qcom: Add qref and refgen supplies for Lemans PCIe PHYs#714
ziyuezhang-123 wants to merge 1 commit into
qualcomm-linux:qcom-6.18.yfrom
ziyuezhang-123:lemans_qref_wa

Conversation

@ziyuezhang-123

@ziyuezhang-123 ziyuezhang-123 commented Jun 15, 2026

Copy link
Copy Markdown

All PCIe PHYs on Lemans require vdda-qref and vdda-refgen power supplies, but these are missing in the current PHY device tree nodes. The PCIe port can still function because the regulators are voted by other components.

Since the device tree should accurately describe the hardware, add the vdda-qref and vdda-refgen power supplies explicitly in all PCIe PHY device nodes for lemans-evk and lemans-ride-common.

Workaround will be reverted once the vote qref regulator for PCIe available in upstream.

Signed-off-by: Ziyue Zhang ziyue.zhang@oss.qualcomm.com
CRs-Fixed: 4537722

@ziyuezhang-123 ziyuezhang-123 requested review from a team, aiquny, ndechesne and shashim-quic June 15, 2026 09:25
@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.

… PCIe PHYs

All PCIe PHYs on Lemans require vdda-qref and vdda-refgen power supplies,
but these are missing in the current PHY device tree nodes. The PCIe port
can still function because the regulators are voted by other components.

Since the device tree should accurately describe the hardware, add the
vdda-qref and vdda-refgen power supplies explicitly in all PCIe PHY device
nodes for lemans-evk and lemans-ride-common.

Workaround will be reverted once the vote qref regulator for PCIe available in upstream.

Signed-off-by: Ziyue Zhang <ziyue.zhang@oss.qualcomm.com>
@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.

@qlijarvis

Copy link
Copy Markdown

PR #714 — validate-patch

PR: #714

Verdict Issues Detailed Report
⚠️ 4 Full report

Final Summary

  1. Lore link present: No — WORKAROUND: prefix indicates vendor-specific temporary change; no lore link expected or required
  2. Lore link matches PR commits: N/A — no lore link to compare against
  3. Upstream patch status: Not upstream — explicitly marked as temporary workaround pending upstream qref regulator support
  4. PR present in qcom-next: Not checked — WORKAROUND: vendor-only commit
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #714 - WORKAROUND: arm64: dts: qcom: Add qref and refgen supplies for Lemans PCIe PHYs
Upstream commit: N/A (vendor workaround)
Verdict: ⚠️ PARTIAL

Commit Message

Check Status Note
Subject matches upstream N/A Vendor workaround, not upstream
Body preserves rationale Clear explanation of missing supplies and temporary nature
Fixes tag present/correct N/A Not a fix; intentional workaround
Authorship preserved Author: Ziyue Zhang ziyue.zhang@oss.qualcomm.com
Backport note (if applicable) N/A Not a backport; vendor-specific workaround

Diff

File Status Notes
arch/arm64/boot/dts/qcom/lemans-evk.dts Adds vdda-qref and vdda-refgen to pcie0_phy and pcie1_phy
arch/arm64/boot/dts/qcom/lemans-ride-common.dtsi Adds vdda-qref and vdda-refgen to pcie0_phy and pcie1_phy

Issues

  • Subject prefix concern: Uses WORKAROUND: prefix instead of standard kernel convention. Vendor workarounds typically use QCLINUX: or similar vendor-specific prefix in Qualcomm trees.
  • Commit message grammar: "Workaround will be reverted once the vote qref regulator for PCIe available in upstream" has grammatical issues. Should be: "This workaround will be reverted once qref regulator voting for PCIe is available upstream."
  • Missing context: The commit message states regulators are "voted by other components" but doesn't specify which components or why this is temporary. More context would help future maintainers understand when/why to revert.
  • No Link tag: Even for vendor workarounds, if there's a related upstream discussion or bug tracker, a Link: tag would be helpful for traceability.

Verdict

Acceptable as vendor workaround with minor commit message improvements recommended. The diff is clean and focused, but commit message could be more precise about revert conditions.

Final Summary

  1. Lore link present: No — WORKAROUND: prefix indicates vendor-specific temporary change; no lore link expected or required
  2. Lore link matches PR commits: N/A — no lore link to compare against
  3. Upstream patch status: Not upstream — explicitly marked as temporary workaround pending upstream qref regulator support
  4. PR present in qcom-next: Not checked — WORKAROUND: vendor-only commit

@qlijarvis

Copy link
Copy Markdown

PR #714 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch Line length warning in commit message
dt-binding-check No binding changes
dtb-check Schema validation failure: vdda-refgen-supply not allowed
sparse-check ⏭️ Skipped (no C code changes)
check-uapi-headers ⏭️ Skipped (no UAPI changes)
check-patch-compliance Missing required subject prefix
tag-check N/A Not applicable for this branch
qcom-next-check N/A Not applicable (WORKAROUND prefix)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: WORKAROUND: arm64: dts: qcom: Add qref and refgen supplies for Lemans PCIe PHYs (#714)
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/27536931177

Checker Result Summary
checkpatch Line length warning in commit message
dt-binding-check No binding changes
dtb-check Schema validation failure: vdda-refgen-supply not allowed
sparse-check ⏭️ Skipped (no C code changes)
check-uapi-headers ⏭️ Skipped (no UAPI changes)
check-patch-compliance Missing required subject prefix
tag-check N/A Not applicable for this branch
qcom-next-check N/A Not applicable (WORKAROUND prefix)

❌ checkpatch

Root cause: Commit message line exceeds 75 characters (line 15 in commit message).

Failure details:

WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#15: 
Workaround will be reverted once the vote qref regulator for PCIe available in upstream.

68d1e3302f80b34e658340a0f2c6f384bd7709f1 total: 0 errors, 1 warnings, 0 checks, 32 lines checked

Fix: Wrap the long line in the commit message to stay within 75 characters:

Workaround will be reverted once the vote qref regulator for PCIe
available in upstream.

Reproduce locally:

./scripts/checkpatch.pl --strict --summary-file --ignore FILE_PATH_CHANGES --git 360986b713f88d182fb17fdf5decedf665a77834..0d7c25c3fd87813dcc8b01b3d74bfd191626dc6a

❌ check-patch-compliance

Root cause: Commit subject line starts with "WORKAROUND:" which is not a recognized prefix for the target branch.

Failure details:

Checking commit: WORKAROUND: arm64: dts: qcom: Add qref and refgen supplies for Lemans PCIe PHYs
Commit summary does not start with a required prefix

Fix: The check-patch-compliance checker enforces specific subject prefixes (typically UPSTREAM:, FROMLIST:, BACKPORT:, etc.) for certain branches. Since this is a workaround patch:

  1. Option 1 (Recommended): If this is targeting a downstream branch that allows workarounds, verify the branch policy allows WORKAROUND: prefix, or
  2. Option 2: Use a standard prefix like DOWNSTREAM: or remove the prefix entirely if targeting a branch that doesn't require prefixes, or
  3. Option 3: If this should be upstreamed, change to FROMLIST: once posted upstream

Reproduce locally:

# Check which prefixes are allowed for your target branch
git log --oneline --grep="^[A-Z]*:" | head -20

❌ dtb-check

Root cause: The device tree schema qcom,sc8280xp-qmp-pcie-phy.yaml does not define vdda-refgen-supply (or vdda-qref-supply) as valid properties for sa8775p (Lemans) PCIe PHY nodes.

Failure details:

/opt/actions-runner/_work/kernel-config/kernel-config/kernel/temp-out/arch/arm64/boot/dts/qcom/lemans-evk.dtb: phy@1c04000 (qcom,sa8775p-qmp-gen4x2-pcie-phy): 'vdda-refgen-supply' does not match any of the regexes: '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/phy/qcom,sc8280xp-qmp-pcie-phy.yaml#
/opt/actions-runner/_work/kernel-config/kernel-config/kernel/temp-out/arch/arm64/boot/dts/qcom/lemans-evk.dtb: phy@1c14000 (qcom,sa8775p-qmp-gen4x4-pcie-phy): 'vdda-refgen-supply' does not match any of the regexes: '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/phy/qcom,sc8280xp-qmp-pcie-phy.yaml#

This error repeats for all Lemans/SA8775P/QCS9100 device tree variants (lemans-evk, lemans-ride-common, sa8775p-ride, qcs9100-ride, and all their variants).

Fix: The device tree binding schema must be updated before adding these supply properties to device trees. You need to:

  1. Update the binding schema first: Modify Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml to add vdda-qref-supply and vdda-refgen-supply to the list of allowed properties for the sa8775p compatible strings.

  2. Then update the device trees: After the binding is updated, the device tree changes in this PR will pass validation.

Example binding update needed:

# In Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml
properties:
  vdda-qref-supply:
    description: Qref power supply
  vdda-refgen-supply:
    description: Refgen power supply

Reproduce locally:

make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml
make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml

Verdict

3 blockers must be fixed before merge:

  1. Critical: Update the PHY binding schema to allow vdda-qref-supply and vdda-refgen-supply properties (dtb-check failure)
  2. Required: Fix commit message line length (checkpatch warning)
  3. Required: Use an appropriate subject prefix for the target branch (check-patch-compliance failure)

Recommended workflow:

  1. Submit binding update as a separate patch first (or include in this PR as patch 1/2)
  2. Fix commit message formatting
  3. Verify the subject prefix matches the target branch requirements
  4. Re-run checkers

@krishnachaitanya-linux

Copy link
Copy Markdown
Contributor

qli-2.0 GA Critical Fix

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case lemans-evk monaco-evk qcs615-ride qcs6490-rb3gen2 qcs8300-ride qcs9100-ride-r3 x1e80100-crd
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
DSP_AudioPD ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ◻️
Ethernet ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ◻️
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
GIC ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
IPA ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Interrupts ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
OpenCV ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
PCIe ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
Probe_Failure_Check ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ❌ Fail ◻️
RMNET ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
USBHost ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ◻️
WiFi_Firmware_Driver ❌ Fail ❌ Fail ❌ Fail ✅ Pass ✅ Pass ✅ Pass ◻️
WiFi_OnOff ✅ Pass ❌ Fail ⚠️ skip ✅ Pass ✅ Pass ✅ Pass ◻️
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ◻️
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ◻️
gpdsp_remoteproc ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ✅ Pass ❌ Fail ◻️
hotplug ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
irq ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
kaslr ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
pinctrl ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
shmbridge ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
smmu ❌ Fail ✅ Pass ❌ Fail ✅ Pass ✅ Pass ❌ Fail ◻️
watchdog ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
wpss_remoteproc ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ✅ Pass ✅ Pass ◻️

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4542881 is not eligible for merge.

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

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

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

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