Skip to content

arm64: dts: qcom: hamoa, purwa: Describe the PCIe M.2 Key E connector - #1674

Closed
weiden (WeiDeng-weiden) wants to merge 4 commits into
qualcomm-linux:tech/all/dt/hamoafrom
WeiDeng-weiden:tech/all/dt/hamoa
Closed

arm64: dts: qcom: hamoa, purwa: Describe the PCIe M.2 Key E connector#1674
weiden (WeiDeng-weiden) wants to merge 4 commits into
qualcomm-linux:tech/all/dt/hamoafrom
WeiDeng-weiden:tech/all/dt/hamoa

Conversation

@WeiDeng-weiden

@WeiDeng-weiden weiden (WeiDeng-weiden) commented Aug 12, 2026

Copy link
Copy Markdown

Describe the PCIe M.2 Key E connector on the Hamoa and Purwa IoT EVKs

4 commits:

  1. hamoa: Add graph port/endpoint anchors to pcie4_port0 and uart14 — endpoint stubs in hamoa.dtsi (Suggested-by: Konrad)
  2. hamoa: Add compatible to the PCIe Root Portpciclass,0604 on pcie4_port0 (Reviewed-by: Konrad)
  3. hamoa-iot-evk: Describe the PCIe M.2 Key E connector — port@0 PCIe + port@3 UART; remove wcn7850-pmu/static BT (Reviewed-by: Konrad, Mani)
  4. purwa-iot-evk: Describe the PCIe M.2 Key E connector — same connector layout; Purwa inherits hamoa.dtsi

Upstream V4: https://lore.kernel.org/all/20260804-hamoa-m2-dts-v2-v4-0-1b5ceac74538@oss.qualcomm.com/

CRs-Fixed: 4630764


Note: Corrected rebase of #1629. Commit 1 had pcie4_port0_ep placed in the wrong node (pcie5_port0 instead of pcie4_port0) due to a cherry-pick context-matching error. Only commit 1 changed; commits 2-4 are identical in content.

To apply (no extra remote needed):

git fetch origin pull/1674/head
git push --force origin FETCH_HEAD:refs/heads/tech/all/dt/hamoa

@qcomlnxci
qcomlnxci requested review from a team, Komal Bajaj (Komal-Bajaj), Mukesh Ojha (mukeshojha-linux) and Rajendra (rrnayak) and removed request for a team August 12, 2026 05:22
Wei Deng added 4 commits August 12, 2026 10:56
… pcie4_port0 and uart14

Add empty graph port/endpoint nodes to pcie4_port0 and uart14 in hamoa.dtsi
so that board files can reference the endpoint labels (pcie4_port0_ep,
uart14_ep) to describe connections to M.2 Key E connectors via
remote-endpoint overrides.

Suggested-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260804-hamoa-m2-dts-v2-v4-1-1b5ceac74538@oss.qualcomm.com/
Add 'compatible = "pciclass,0604"' to the pcie4_port0 node in hamoa.dtsi
to allow the PCI subsystem to associate the DT node with the PCI-to-PCI
bridge device, which is required for M.2 connector graph endpoint
association.

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260804-hamoa-m2-dts-v2-v4-2-1b5ceac74538@oss.qualcomm.com/
…E connector

The Hamoa IoT EVK has a PCIe M.2 Mechanical Key E connector for wireless
connectivity cards exposing Wi-Fi over PCIe and Bluetooth over UART.

Describe the connector node with:
- port@0: PCIe for Wi-Fi, linked to pcie4_port0
- port@3: UART for Bluetooth, linked to uart14

This allows the pwrseq-pcie-m2 driver to manage card power and
dynamically create the UART serdev for UART BT variants of the M.2 card.

Remove the chip-specific wcn7850-pmu node, the static bluetooth serdev
under uart14, and the wifi@0 PCI child node, as the M.2 connector
approach replaces WCN7850-specific power sequencing with a chip-agnostic
model.

Also remove the now-unused vreg_wcn_0p95 and vreg_wcn_1p9 dummy fixed
regulators whose only consumers were the wcn7850-pmu node.

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Manivannan Sadhasivam <mani@kernel.org>
Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260804-hamoa-m2-dts-v2-v4-3-1b5ceac74538@oss.qualcomm.com/
…E connector

The Purwa IoT EVK has a PCIe M.2 Mechanical Key E connector for wireless
connectivity cards exposing Wi-Fi over PCIe and Bluetooth over UART.
Purwa inherits hamoa.dtsi via purwa.dtsi and therefore reuses the PCIe
root port compatible and the uart14_ep / pcie4_port0_ep endpoint stub
labels added there.

Describe the connector node with:
- port@0: PCIe for Wi-Fi, linked to pcie4_port0
- port@3: UART for Bluetooth, linked to uart14

This allows the pwrseq-pcie-m2 driver to manage card power and
dynamically create the UART serdev for UART BT variants of the M.2 card.

Remove the chip-specific wcn7850-pmu node, the static bluetooth serdev
under uart14, and the wifi@0 PCI child node, as the M.2 connector
approach replaces WCN7850-specific power sequencing with a chip-agnostic
model.

Also remove the now-unused vreg_wcn_0p95 and vreg_wcn_1p9 dummy fixed
regulators whose only consumers were the wcn7850-pmu node.

Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260804-hamoa-m2-dts-v2-v4-4-1b5ceac74538@oss.qualcomm.com/
@qcomlnxci
qcomlnxci requested a review from a team August 12, 2026 05:28
@WeiDeng-weiden weiden (WeiDeng-weiden) changed the title arm64: dts: qcom: hamoa: Fix pcie4_port0_ep endpoint stub location arm64: dts: qcom: hamoa, purwa: Describe the PCIe M.2 Key E connector Aug 12, 2026
@qlijarvis

Copy link
Copy Markdown

🔨 Build Failure Analysis — PR #1674

PR: #1674
Build run: https://github.com/qualcomm-linux/kernel-config/actions/runs/31566658175

# Error File:Line PR-introduced? Root Cause
1 Merge conflict during automerge arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts Yes PR modifies the same sections of hamoa-iot-evk.dts that have been changed in the integration baseline, causing a content conflict during topic branch merge
2 Merge conflict during automerge arch/arm64/boot/dts/qcom/purwa-iot-evk.dts Yes PR modifies the same sections of purwa-iot-evk.dts that have been changed in the integration baseline, causing a content conflict during topic branch merge

Verdict

This is not a compilation failure. The build failed during the automerge/integration step when attempting to merge topic branch topic/tech/all/dt/hamoa into the integration baseline. Both merge conflicts are directly caused by this PR's changes to the M.2 connector device tree nodes conflicting with other changes already present in the baseline.

📎 Detailed analysis: Full report

@qlijarvis

Copy link
Copy Markdown

🔨 Build Failure Analysis — PR #1674

PR: #1674
Build run: https://github.com/qualcomm-linux/kernel-config/actions/runs/31566658175

# Error File:Line PR-introduced? Root Cause
1 Merge conflict during automerge arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts Yes PR modifies the same sections of hamoa-iot-evk.dts that were changed in the baseline branch (topic/tech/all/dt/hamoa), causing a content conflict when automerge attempts to integrate the topic branch
2 Merge conflict during automerge arch/arm64/boot/dts/qcom/purwa-iot-evk.dts Yes PR modifies the same sections of purwa-iot-evk.dts that were changed in the baseline branch (topic/tech/all/dt/hamoa), causing a content conflict when automerge attempts to integrate the topic branch

Verdict

Both failures are merge conflicts introduced by this PR during the automerge integration phase. The build never reached the compilation stage due to these conflicts.

📎 Detailed analysis: Full report

@qlijarvis

Copy link
Copy Markdown

PR #1674 — validate-patch

PR: #1674

Verdict Issues Detailed Report
0 Full report

Final Summary

  1. Lore link present: Yes - all 4 commits have Link: trailers pointing to lore.kernel.org v4 series
  2. Lore link matches PR commits: Yes - commit messages and diffs are identical; only line number context differs due to tree state
  3. Upstream patch status: ✅ ACKed - Reviewed-by from Konrad Dybcio (Qualcomm DT co-maintainer) and Manivannan Sadhasivam (PCIe maintainer) on commits 1-3; commit 4 awaiting review tags but part of same series
  4. PR present in qcom-next/topics: Yes - all 4 commit(s) are present in qcom-next or topics
Verdict: ✅ — click to expand

🔍 Patch Validation

PR: #1674 - arm64: dts: qcom: hamoa-iot-evk, purwa-iot-evk: Enable M.2 Key E connector
Upstream commits: 4 patches from v4 series posted to linux-arm-msm
Verdict: ✅ PASS

Commit Message

Check Status Note
Subject matches upstream All 4 commits: subjects identical (FROMLIST: prefix added correctly)
Body preserves rationale All commit bodies match lore exactly
Fixes tag present/correct N/A No Fixes tags (new feature, not a fix)
Authorship preserved Wei Deng author in both lore and PR; Signed-off-by present
Backport note (if applicable) N/A FROMLIST commits, not backports
Reviewed-by tags Commits 1-3: Konrad Dybcio + Manivannan Sadhasivam (matches lore); Commit 4: no tags (matches lore)

Diff

File Status Notes
arch/arm64/boot/dts/qcom/hamoa.dtsi (commit 1) Adds port/endpoint anchors - identical to lore
arch/arm64/boot/dts/qcom/hamoa.dtsi (commit 2) Adds pciclass compatible - identical to lore
arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts (commit 3) M.2 connector description - identical to lore
arch/arm64/boot/dts/qcom/purwa-iot-evk.dts (commit 4) M.2 connector description - identical to lore

Verdict

Merge as-is. All 4 commits faithfully represent their upstream lore postings with correct FROMLIST: prefix, proper authorship, matching trailers, and identical code changes.

Final Summary

  1. Lore link present: Yes - all 4 commits have Link: trailers pointing to lore.kernel.org v4 series
  2. Lore link matches PR commits: Yes - commit messages and diffs are identical; only line number context differs due to tree state
  3. Upstream patch status: ✅ ACKed - Reviewed-by from Konrad Dybcio (Qualcomm DT co-maintainer) and Manivannan Sadhasivam (PCIe maintainer) on commits 1-3; commit 4 awaiting review tags but part of same series
  4. PR present in qcom-next/topics: Yes - all 4 commits present (commits 1,3,4 in topics via patch-id match; commit 2 in qcom-next)

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: 49dbe0dae5cfb7a1eb3434cde6fc7ba37924fe94
topics remote: topics -> https://github.com/qualcomm-linux/kernel-topics
topics fetch: fetched

Commit Subject qcom-next topics Final
1/4 [PATCH 1/4] FROMLIST: arm64: dts: qcom: hamoa: Add graph partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 2d51788 present
2/4 [PATCH 2/4] FROMLIST: arm64: dts: qcom: hamoa: Add compatible to the present - all checked added lines are present skipped - not checked because qcom-next already contains the change present
3/4 [PATCH 3/4] FROMLIST: arm64: dts: qcom: hamoa-iot-evk: Describe the partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 4d3e9a2 present
4/4 [PATCH 4/4] FROMLIST: arm64: dts: qcom: purwa-iot-evk: Describe the partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 5665534 present

Final Status

overall_status: PASS
present_commits: 4/4
partial_commits: 0/4
missing_commits: 0/4
topics_checked_for_commits: 3/4
final_summary: PR present in qcom-next/topics: Yes - all 4 commit(s) are present in qcom-next or topics

@qlijarvis

Copy link
Copy Markdown

PR #1674 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch Automerge conflict - unable to run
dt-binding-check Automerge conflict - unable to run
dtb-check Automerge conflict - unable to run
sparse-check Automerge conflict - unable to run
check-uapi-headers Automerge conflict - unable to run
check-patch-compliance Automerge conflict - unable to run
tag-check ⏭️ N/A (target branch is qcom-next)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1674 - FROMLIST: arm64: dts: qcom: hamoa/purwa: Add M.2 Key E connector support
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/31566658343

Checker Result Summary
checkpatch Automerge conflict - unable to run
dt-binding-check Automerge conflict - unable to run
dtb-check Automerge conflict - unable to run
sparse-check Automerge conflict - unable to run
check-uapi-headers Automerge conflict - unable to run
check-patch-compliance Automerge conflict - unable to run
tag-check ⏭️ N/A (target branch is qcom-next)

❌ All Checkers — Automerge Failure

Root cause: Merge conflicts in arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts and arch/arm64/boot/dts/qcom/purwa-iot-evk.dts when merging topic branch topic/tech/all/dt/hamoa into baseline qcom-next (commit 49dbe0dae5cfb7a1eb3434cde6fc7ba37924fe94).

Failure details:

** Merging topic branch: topic/tech/all/dt/hamoa
Auto-merging Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml
Auto-merging arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts
CONFLICT (content): Merge conflict in arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts
Auto-merging arch/arm64/boot/dts/qcom/purwa-iot-evk.dts
CONFLICT (content): Merge conflict in arch/arm64/boot/dts/qcom/purwa-iot-evk.dts
Automatic merge failed; fix conflicts and then commit the result.

Analysis:

The kernel-checkers CI workflow uses an automerge step to integrate the PR's topic branch (topic/tech/all/dt/hamoa) with the baseline branch (qcom-next) before running any checkers. This automerge step failed due to content conflicts in two DTS files:

  1. arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts
  2. arch/arm64/boot/dts/qcom/purwa-iot-evk.dts

These are the exact files modified by commits 3/4 and 4/4 in this PR, which add M.2 Key E connector descriptions. The conflicts indicate that the baseline qcom-next branch has diverged from the state when this PR was created, and now contains overlapping changes to the same regions of these files.

This is not a patch quality issue — the PR patches themselves are well-formed with proper FROMLIST: prefixes and lore.kernel.org links. The failure is purely a merge conflict that must be resolved before the checkers can run.

Fix:

The PR author needs to rebase the topic branch onto the latest qcom-next baseline and resolve the conflicts:

# In the kernel-topics repository
git fetch origin qcom-next
git checkout topic/tech/all/dt/hamoa
git rebase origin/qcom-next

# Git will stop at the conflicting commits
# Edit arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts to resolve conflicts
# Edit arch/arm64/boot/dts/qcom/purwa-iot-evk.dts to resolve conflicts

git add arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts
git add arch/arm64/boot/dts/qcom/purwa-iot-evk.dts
git rebase --continue

# Force-push the rebased branch
git push --force-with-lease origin topic/tech/all/dt/hamoa

Reproduce locally:

git clone https://github.com/qualcomm-linux/kernel.git
cd kernel
git checkout -b test-merge qcom-next
git fetch https://github.com/qualcomm-linux/kernel-topics.git topic/tech/all/dt/hamoa
git merge FETCH_HEAD
# Conflicts will appear in hamoa-iot-evk.dts and purwa-iot-evk.dts

Verdict

Cannot assess patch quality — automerge conflict blocks all checkers.

The PR must be rebased onto the latest qcom-next baseline to resolve merge conflicts in hamoa-iot-evk.dts and purwa-iot-evk.dts before the kernel-checkers CI can run. Once rebased and conflicts are resolved, re-trigger the CI to get a full checker report.

Action required: Rebase and resolve conflicts, then force-push the updated topic branch.

@LXQUALCOMM LXQUALCOMM closed this Aug 12, 2026
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