Skip to content

Add pcie qref regulator for Hamoa IOT EVK platform#1147

Open
ziyuezhang-123 wants to merge 2 commits into
qualcomm-linux:tech/all/workaroundfrom
ziyuezhang-123:hamoa_wa_514
Open

Add pcie qref regulator for Hamoa IOT EVK platform#1147
ziyuezhang-123 wants to merge 2 commits into
qualcomm-linux:tech/all/workaroundfrom
ziyuezhang-123:hamoa_wa_514

Conversation

@ziyuezhang-123
Copy link
Copy Markdown

Add pcie qref regulator for Hamoa IOT EVK platform

All PCIe PHYs on X1E80100 require vdda-qref power supplies, but this is
missing in the current PHY device tree node. The PCIe port can still
function because the regulator L3J, which vdda-qref consumes, is voted by
other components.

Since the device tree should accurately describe the hardware, add the
vdda-qref power supply explicitly in all PCIe PHY device nodes.

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

Signed-off-by: Qiang Yu <qiang.yu@oss.qualcomm.com>
Signed-off-by: Ziyue Zhang <ziyue.zhang@oss.qualcomm.com>
All PCIe PHYs on the X1E80100 SOC require the vdda-qref, which feeds QREF
clocks provided by the TCSR device.

Hence, restore the vdda-qref request for the 6th and the 3th PCIe instance
by reverting commit 031b46b ("phy: qcom: qmp-pcie: drop bogus x1e80100
qref supplies") and commit eb7a22f("phy: qcom: qmp-pcie: drop bogus
x1e80100 qref supply"). For the 4th PCIe instance (Gen3 x2), add a new
driver data entry, namely x1e80100_qmp_gen3x2_pciephy_cfg, which is a copy
of sm8550_qmp_gen3x2_pciephy_cfg but uses sm8550_qmp_phy_vreg_l instead.

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

Fixes: eb7a22f ("phy: qcom: qmp-pcie: drop bogus x1e80100 qref supplies")
Fixes: 031b46b ("phy: qcom: qmp-pcie: drop bogus x1e80100 qref supplies")
Fixes: 606060c ("phy: qcom-qmp-pcie: Add support for X1E80100 g3x2 and g4x2 PCIE")
Cc: Johan Hovold <johan+linaro@kernel.org>
Cc: Abel Vesa <abel.vesa@linaro.org>
Signed-off-by: Wenbin Yao <quic_wenbyao@quicinc.com>
Signed-off-by: Qiang Yu <qiang.yu@oss.qualcomm.com>
Signed-off-by: Ziyue Zhang <ziyue.zhang@oss.qualcomm.com>
@qcomlnxci qcomlnxci requested review from a team, jingyiwang42, ndechesne and yijiyang and removed request for a team May 14, 2026 10:01
@sgaud-quic
Copy link
Copy Markdown
Contributor

PR #1147 — validate-patch

PR: #1147

Verdict Issues Detailed Report
⚠️ 0 Full report
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: PR #1147 — "WORKAROUND: arm64: dts: qcom / phy: qcom: qmp-pcie: add x1e80100 qref supplies"
Upstream commit: N/A — both commits carry the WORKAROUND: prefix; no lore.kernel.org link is expected or required.
Verdict: ⚠️ PARTIAL


Commit 1 of 2 — WORKAROUND: arm64: dts: qcom: Add qref supply for PCIe PHYs

File: arch/arm64/boot/dts/qcom/hamoa-iot-som.dtsi

Commit Message

Check Status Note
Subject matches upstream N/A WORKAROUND: — no upstream lore link required
Body preserves rationale Explains missing vdda-qref supply and why it still works today
Fixes tag present/correct N/A No Fixes: tag; not required for a pure DTS addition
Authorship preserved From: and Signed-off-by: are consistent
Backport note (if applicable) N/A Not a backport
Workaround revert note ⚠️ Grammar issue: "once the vote qref regulator for PCIe available in upstream" — should read "once voting for the qref regulator for PCIe is available upstream"

Diff

File Status Notes
arch/arm64/boot/dts/qcom/hamoa-iot-som.dtsi 4 hunks, each adds vdda-qref-supply = <&vreg_l3j_0p8> to pcie3_phy, pcie4_phy, pcie5_phy, pcie6a_phy; diff stats (4 insertions) match hunks

Commit 2 of 2 — WORKAROUND: phy: qcom: qmp-pcie: add x1e80100 qref supplies

File: drivers/phy/qualcomm/phy-qcom-qmp-pcie.c

Commit Message

Check Status Note
Subject matches upstream N/A WORKAROUND: — no upstream lore link required
Body preserves rationale ⚠️ Body contains two inaccuracies (see Issues below)
Fixes tag present/correct ⚠️ Three Fixes: tags present and correctly formatted, but one subject has a singular/plural mismatch vs. the body text (see Issues)
Authorship preserved From: (Qiang Yu) and all three Signed-off-by: lines are consistent; Wenbin Yao is correctly listed as a co-signer
Backport note (if applicable) N/A Not a backport
Workaround revert note ⚠️ Same grammar issue as commit 1: "once the vote qref regulator for PCIe available in upstream"

Diff

File Status Notes
drivers/phy/qualcomm/phy-qcom-qmp-pcie.c 4 hunks, each replaces qmp_phy_vreg_lsm8550_qmp_phy_vreg_l in x1e80100_qmp_gen3x2_pciephy_cfg, x1e80100_qmp_gen4x2_pciephy_cfg, x1e80100_qmp_gen4x4_pciephy_cfg, x1e80100_qmp_gen4x8_pciephy_cfg; diff stats (8 insertions, 8 deletions) match hunks

Upstream Patch Status

Commit Community Verdict
WORKAROUND: arm64: dts: qcom: Add qref supply for PCIe PHYs ⏭️ Skipped — WORKAROUND: prefix; no upstream lore source to check
WORKAROUND: phy: qcom: qmp-pcie: add x1e80100 qref supplies ⏭️ Skipped — WORKAROUND: prefix; no upstream lore source to check

Dependency Check

  • Commit 1 (DTS) and Commit 2 (driver) are complementary and self-contained as a pair — the DTS adds the supply property, the driver adds the supply consumer entry.
  • No missing header or helper changes identified.

qcom-next Presence

Commit Status
WORKAROUND: arm64: dts: qcom: Add qref supply for PCIe PHYs ⏭️ Skipped — WORKAROUND: commits are not expected in qcom-next
WORKAROUND: phy: qcom: qmp-pcie: add x1e80100 qref supplies ⏭️ Skipped — WORKAROUND: commits are not expected in qcom-next

Issues

  1. [Commit 2 — Body inaccuracy: "add a new driver data entry"]
    The commit body states:

    "For the 4th PCIe instance (Gen3 x2), add a new driver data entry, namely x1e80100_qmp_gen3x2_pciephy_cfg, which is a copy of sm8550_qmp_gen3x2_pciephy_cfg but uses sm8550_qmp_phy_vreg_l instead."
    However, the diff modifies the existing x1e80100_qmp_gen3x2_pciephy_cfg struct (hunk at line 4524) — it does not add a new entry. The description is misleading.
    Fix: Reword to: "For the 4th PCIe instance (Gen3 x2), update x1e80100_qmp_gen3x2_pciephy_cfg to use sm8550_qmp_phy_vreg_l instead of qmp_phy_vreg_l."

  2. [Commit 2 — Body/Fixes tag subject mismatch for eb7a22f830f6]
    In the commit body, eb7a22f830f6 is quoted as:

    "phy: qcom: qmp-pcie: drop bogus x1e80100 qref supply" (singular)
    But the Fixes: tag reads:
    Fixes: eb7a22f830f6 ("phy: qcom: qmp-pcie: drop bogus x1e80100 qref **supplies**") (plural)
    The Fixes: tag subject must exactly match the actual commit subject. One of these is wrong.
    Fix: Verify the real subject of eb7a22f830f6 and make the Fixes: tag match it exactly; update the body text to match as well.

  3. [Commit 2 — Body missing space before ( in informal commit reference]

    "commit eb7a22f("phy: qcom: qmp-pcie:…")" — missing space before (.
    Fix: commit eb7a22f830f6 ("phy: qcom: qmp-pcie:…").

  4. [Both commits — Grammar: "3th" and workaround note]

    • Commit 2 body: "the 6th and the 3th PCIe instance" — should be "3rd".
    • Both commits: "once the vote qref regulator for PCIe available in upstream" — grammatically broken; suggest "once upstream votes for the qref regulator for PCIe" or "once the qref regulator vote for PCIe is available upstream".

Recommendation

Both commits are correctly prefixed WORKAROUND: and lore validation is not applicable. The diff content is internally consistent and the stats match the hunks. However, three commit-message hygiene issues should be fixed before merging: (1) the body of commit 2 incorrectly describes the gen3x2 change as "adding a new entry" when it modifies an existing one; (2) the Fixes: tag subject for eb7a22f830f6 may not exactly match the real commit subject (singular vs. plural); (3) minor grammar errors ("3th", broken workaround sentence) should be corrected. Request changes to address items 1 and 2 at minimum; item 3 is a soft recommendation.

@sgaud-quic
Copy link
Copy Markdown
Contributor

PR #1147 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch 2 commits have COMMIT_LOG_LONG_LINE warnings; 1 commit has a malformed Fixes: tag
dt-binding-check ⏭️ No changes in Documentation/devicetree/bindings — skipped
dtb-check Log Summary: Test passed
sparse-check sparse-check.sh passed
check-uapi-headers No UAPI header changes — passed
check-patch-compliance All 3 WORKAROUND: commits fail — WORKAROUND: is not in the checker's allowed prefix list (known limitation)
tag-check All commits carry WORKAROUND: — valid prefix for tech/all/workaround branch
qcom-next-check N/A No FROMLIST: or UPSTREAM: commits in this PR

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1147 — WORKAROUND: PCIe PHY qref supply fixes for X1E80100
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/25853842172
Target branch: tech/all/workaround

Checker Result Summary
checkpatch 2 commits have COMMIT_LOG_LONG_LINE warnings; 1 commit has a malformed Fixes: tag
dt-binding-check ⏭️ No changes in Documentation/devicetree/bindings — skipped
dtb-check Log Summary: Test passed
sparse-check sparse-check.sh passed
check-uapi-headers No UAPI header changes — passed
check-patch-compliance All 3 WORKAROUND: commits fail — WORKAROUND: is not in the checker's allowed prefix list (known limitation)
tag-check All commits carry WORKAROUND: — valid prefix for tech/all/workaround branch
qcom-next-check N/A No FROMLIST: or UPSTREAM: commits in this PR

❌ checkpatch

Root cause: Two commits have commit-log lines exceeding 75 characters (COMMIT_LOG_LONG_LINE), and one commit uses an incorrect Fixes: tag title that doesn't match the actual commit subject.

Failure details:

Commit aadc04b228e6 ("WORKAROUND: arm64: dts: qcom: Add qref supply for PCIe PHYs")
WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#14:
Workaround will be reverted once the vote qref regulator for PCIe available in upstream.

aadc04b228e6 total: 0 errors, 1 warnings, 0 checks, 28 lines checked

---

Commit 81a22e61cf38 ("WORKAROUND: phy: qcom: qmp-pcie: add x1e80100 qref supplies")
WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#16:
Workaround will be reverted once the vote qref regulator for PCIe available in upstream.

WARNING: Please use correct Fixes: style 'Fixes: <12+ chars of sha1> ("<title line>")' - ie: 'Fixes: eb7a22f830f6 ("phy: qcom: qmp-pcie: drop bogus x1e80100 qref supply")'
#18:
Fixes: eb7a22f830f6 ("phy: qcom: qmp-pcie: drop bogus x1e80100 qref supplies")

81a22e61cf38 total: 0 errors, 2 warnings, 0 checks, 40 lines checked

Fix:

  1. COMMIT_LOG_LONG_LINE — Wrap the workaround note at 75 chars in both commits. For example:

    Workaround will be reverted once the vote qref regulator for
    PCIe is available in upstream.
    
  2. FIXES_TAG style — In commit 81a22e61cf38, the Fixes: line title "phy: qcom: qmp-pcie: drop bogus x1e80100 qref supplies" does not match the actual commit subject "phy: qcom: qmp-pcie: drop bogus x1e80100 qref supply" (singular vs plural). Correct it to match the exact commit subject:

    Fixes: eb7a22f830f6 ("phy: qcom: qmp-pcie: drop bogus x1e80100 qref supply")
    

    Also verify the second Fixes: line for 031b46b4729b is accurate.

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git 4e0b0df1c84f9b81089bf478c63d635cc97040a1..4ea46d746ba1b87a32d66445ac9082f47884992f

Amend commands:

git rebase -i 4e0b0df1c84f9b81089bf478c63d635cc97040a1
# mark aadc04b228e6 and 81a22e61cf38 as 'edit'
# fix commit messages
git commit --amend --no-edit
git rebase --continue

❌ check-patch-compliance

Root cause: All three commits use the WORKAROUND: prefix, which is not in the check-patch-compliance checker's allowed prefix list — this is a known checker limitation for vendor-only/workaround commits. No patch change is needed.

Failure details:

Checking commit: WORKAROUND: arm64: dts: qcom: purwa-iot-evk: support Bluetooth over both USB and UART
Commit summary does not start with a required prefix

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

Checking commit: WORKAROUND: phy: qcom: qmp-pcie: add x1e80100 qref supplies
Commit summary does not start with a required prefix

Fix: No patch change required. The check-patch-compliance checker does not recognise WORKAROUND: as a valid prefix (it only accepts FROMLIST:, FROMGIT:, UPSTREAM:, BACKPORT:). This is a known limitation for workaround/vendor-only commits targeting branches like tech/all/workaround. The failure can be acknowledged and overridden by the reviewer.


Verdict

2 real issues to fix before merge:

  1. checkpatch — Wrap the long commit-log line in commits aadc04b228e6 and 81a22e61cf38, and fix the Fixes: tag title mismatch in 81a22e61cf38 (singular vs plural in the referenced commit subject).
  2. check-patch-compliance — Known false positive for WORKAROUND: prefix; no patch change needed. Reviewer should acknowledge and override.

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