Skip to content

dt-bindings/dmaengine/net: qcom: BAM XPU violation fixes for Shikra - #838

Open
Vishnu Santhosh (quic-vishsant) wants to merge 13 commits into
qualcomm-linux:qcom-6.18.yfrom
quic-vishsant:for-shikra-bam-xpu-violation-2-0
Open

dt-bindings/dmaengine/net: qcom: BAM XPU violation fixes for Shikra#838
Vishnu Santhosh (quic-vishsant) wants to merge 13 commits into
qualcomm-linux:qcom-6.18.yfrom
quic-vishsant:for-shikra-bam-xpu-violation-2-0

Conversation

@quic-vishsant

@quic-vishsant Vishnu Santhosh (quic-vishsant) commented Jul 17, 2026

Copy link
Copy Markdown

On Qualcomm Shikra SoC the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is the AXI
master for both BAM-DMUX RX data buffers and BAM descriptor FIFOs. The
XPU enforces per-region access control; without an SCM assignment
granting VMID 43 access, the first DMA transfer on either path triggers
an XPU violation, crashing the modem on boot.

Two independent issues, each with a binding + driver patch:

  1. BAM-DMUX RX buffers: each individually DMA-mapped RX buffer consumes
    one XPU resource group. With ~16 RGs available, 32 per-buffer
    dma_map_single() calls exhaust the table and the first inbound
    transfer faults. Fixed by adding a qcom,shikra-bam-dmux compatible
    and allocating all RX buffers as a single contiguous coherent block,
    SCM-assigned once to VMID 43 at probe (net: wwan: qcom_bam_dmux).

  2. BAM descriptor FIFOs: the remote processor reads descriptor FIFOs as
    an AXI master; without an explicit SCM grant the first enqueue
    faults. Fixed by adding an optional qcom,vmid property and
    SCM-assigning each channel's FIFO at allocation time when set
    (dmaengine: qcom: bam_dma).

Included as prerequisites (BACKPORT:), 4 small upstream dmaengine/
scatterlist commits this branch was missing that the bam_dma fix
depends on structurally: include ordering, the lock-guards conversion,
and the sg_nents_for_dma() helper introduction + its use in bam_dma.

All 5 XPU-violation patches are FROMLIST (posted upstream 2026-07-14,
not yet merged); the 4 BACKPORT patches are already merged in
torvalds/linux and are backported here unmodified.

CRs-Fixed: 4609260

@qlijarvis

Copy link
Copy Markdown

PR #838 — validate-patch

PR: #838

Verdict Issues Detailed Report
⚠️ 0 Full report

Final Summary

  1. Lore link present: Yes — 5 FROMLIST commits have lore.kernel.org links; 4 BACKPORT commits have patch.msgid.link links (not fetched)
  2. Lore link matches PR commits: Yes (FROMLIST 5-9 verified faithful); BACKPORT 1-4 not verified due to fetch limitation
  3. Upstream patch status: BACKPORT 1-4: not checked (assumed merged); FROMLIST 5-9: ⏳ Decision Pending — posted July 14, 2026, under active review, no acceptance/rejection decision yet
  4. PR present in qcom-next/topics: Yes - all 9 commit(s) are present in qcom-next or topics
Verdict: ⚠️ — click to expand

🔍 Patch Validation Report

PR: #838 - BAM-DMUX and BAM-DMA VMID extension support for Shikra
Commits: 9 commits (4 BACKPORT, 5 FROMLIST)
Verdict: ⚠️ PARTIAL


Summary by Commit

# Prefix Subject Lore Link Authorship Diff Match Upstream Status qcom-next/topics
1/9 BACKPORT dmaengine: qcom: bam_dma: order includes patch.msgid.link (not verified) ✅ Bartosz Golaszewski ⏭️ Not verified ⏭️ Not checked ✅ Present
2/9 BACKPORT dmaengine: qcom: bam_dma: use lock guards patch.msgid.link (not verified) ✅ Bartosz Golaszewski ⏭️ Not verified ⏭️ Not checked ✅ Present
3/9 BACKPORT scatterlist: introduce sg_nents_for_dma() patch.msgid.link (not verified) ✅ Andy Shevchenko ⏭️ Not verified ⏭️ Not checked ✅ Present
4/9 BACKPORT dmaengine: qcom: bam_dma: use sg_nents_for_dma() patch.msgid.link (not verified) ✅ Andy Shevchenko ⏭️ Not verified ⏭️ Not checked ✅ Present
5/9 FROMLIST dt-bindings: net: qcom,bam-dmux: Add qcom,shikra-bam-dmux ✅ Verified ✅ Vishnu Santhosh ✅ Faithful ⏳ Under review ✅ Present (topics)
6/9 FROMLIST net: wwan: qcom_bam_dmux: Alloc RX buffers as single coherent block ✅ Verified ✅ Vishnu Santhosh ✅ Faithful ⏳ Under review ✅ Present (topics)
7/9 FROMLIST dt-bindings: dma: qcom,bam-dma: Add optional qcom,vmid ✅ Verified ✅ Vishnu Santhosh ✅ Faithful ⏳ Under review ✅ Present (topics)
8/9 FROMLIST dmaengine: qcom: bam_dma: SCM-assign descriptor FIFOs ✅ Verified ✅ Vishnu Santhosh ✅ Faithful ⏳ Under review ✅ Present (topics)
9/9 FROMLIST arm64: dts: qcom: shikra: Add qcom,vmid to bam-dmux ✅ Verified ✅ Vishnu Santhosh ✅ Faithful ⏳ Under review ✅ Present (topics)

Commit Message Validation

BACKPORT commits (1-4):

  • ✅ Subject lines match upstream pattern
  • ✅ Original authorship preserved in From: field
  • Link: tags present (using patch.msgid.link redirect service)
  • ✅ Original Signed-off-by: chains preserved
  • ✅ Submitter Signed-off-by: added (Vishnu Santhosh)
  • ⚠️ Limitation: patch.msgid.link URLs were not fetched; lore verification skipped for these commits

FROMLIST commits (5-9):

  • ✅ Subject lines match lore exactly
  • ✅ Commit message body preserves full rationale from lore
  • Link: tags present with correct lore.kernel.org message-IDs
  • Co-developed-by: + Signed-off-by: pairs correct (Deepak Kumar Singh)
  • ✅ Author Signed-off-by: present (Vishnu Santhosh)
  • ✅ Authorship correct: From: matches lore author for all FROMLIST commits

Diff Comparison

BACKPORT commits (1-4):

  • ⏭️ Not verified against lore (patch.msgid.link URLs not fetched)
  • ✅ Present in qcom-next with exact patch-id match per integration_presence_report.md

FROMLIST commits (5-9):

File Status Notes
Documentation/devicetree/bindings/net/qcom,bam-dmux.yaml ✅ Identical Commit 5: adds qcom,shikra-bam-dmux compatible
drivers/net/wwan/Kconfig ✅ Identical Commit 6: adds select QCOM_SCM
drivers/net/wwan/qcom_bam_dmux.c ✅ Identical Commit 6: coherent RX buffer allocation logic
Documentation/devicetree/bindings/dma/qcom,bam-dma.yaml ✅ Identical Commit 7: adds qcom,vmid property + qcom,shikra-bam-dma compatible
drivers/dma/qcom/bam_dma.c ✅ Identical Commit 8: SCM-assign descriptor FIFOs
arch/arm64/boot/dts/qcom/shikra.dtsi ✅ Identical Commit 9: adds qcom,vmid = <43> to bam-dmux node

All FROMLIST diffs are faithful to lore source. No extra hunks, no missing hunks, no semantic changes.


Upstream Patch Status

BACKPORT commits (1-4):

  • ⏭️ Not checked (assumed merged to mainline based on BACKPORT prefix; verification skipped due to patch.msgid.link limitation)

FROMLIST commits (5-9):

  • Status:Decision Pending — patches posted July 14, 2026; under active review as of July 17, 2026 (3 days old)
  • Evidence:
    • Stephan Gerhold (Linaro, Qualcomm platform maintainer) provided constructive feedback on July 14, 2026
    • Sashiko AI bot flagged 3 potential issues (Critical: TOCTOU vulnerability; High: dma_addr_t vs phys_addr_t mismatch; Low: COMPILE_TEST dependency warning)
    • No maintainer Acked-by:, Reviewed-by:, applied, or NAK signals yet
    • Thread is recent and active; no stale/superseded indicators
  • Recommendation: Patches are under review; expect v2 revision addressing Stephan's feedback and Sashiko findings

Integration Presence (qcom-next / topics)

Per integration_presence_report.md:

  • Overall status: ✅ PASS
  • Present commits: 9/9
  • Details:
    • Commits 1-4 (BACKPORT): present in qcom-next with exact patch-id match
    • Commits 5-9 (FROMLIST): present in kernel-topics with exact patch-id match (commits 5, 6, 7) or full tree-content match (commits 8, 9)
  • Final summary: All 9 commits are present in qcom-next or topics

Issues Found

None for commit message or diff correctness.

Upstream review feedback (informational only):

  1. Stephan Gerhold suggested using an optional qcom,vmid property for bam-dmux (similar to bam-dma) instead of a SoC-specific compatible, as the XPU configuration is firmware-driven, not hardware-different
  2. Sashiko AI flagged potential TOCTOU vulnerability in coherent RX buffer handling (reading validated header fields directly from shared memory)
  3. Sashiko AI flagged dma_addr_t vs phys_addr_t type mismatch in qcom_scm_assign_mem() call when IOMMU is active

Verdict

⚠️ PARTIAL — Merge with awareness of upstream review status

Rationale:

  • ✅ All FROMLIST commits are faithful to lore source (commit message + diff)
  • ✅ All commits are present in qcom-next or topics
  • ✅ Authorship and sign-off chains are correct
  • ⚠️ BACKPORT commits (1-4) could not be verified against lore due to patch.msgid.link limitation, but are present in qcom-next
  • ⏳ FROMLIST commits (5-9) are under active upstream review; no acceptance decision yet (3 days old)
  • ⏳ Expect v2 revision upstream addressing Stephan Gerhold's feedback and Sashiko findings

Recommendation:

  • Safe to merge into qcom-next-staging or internal integration branch
  • Monitor upstream thread for v2 revision; may require follow-up PR to sync changes
  • If upstream acceptance is blocked or design changes significantly, consider rebasing or reverting FROMLIST commits

Final Summary

  1. Lore link present: Yes — 5 FROMLIST commits have lore.kernel.org links; 4 BACKPORT commits have patch.msgid.link links (not fetched)
  2. Lore link matches PR commits: Yes (FROMLIST 5-9 verified faithful); BACKPORT 1-4 not verified due to fetch limitation
  3. Upstream patch status: BACKPORT 1-4: not checked (assumed merged); FROMLIST 5-9: ⏳ Decision Pending — posted July 14, 2026, under active review, no acceptance/rejection decision yet
  4. PR present in qcom-next/topics: Yes — all 9 commits present (BACKPORT 1-4 in qcom-next; FROMLIST 5-9 in topics)

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

Commit Subject qcom-next topics Final
1/9 [PATCH 1/9] BACKPORT: dmaengine: qcom: bam_dma: order includes present - exact patch-id match at 892f2bb skipped - not checked because qcom-next already contains the change present
2/9 [PATCH 2/9] BACKPORT: dmaengine: qcom: bam_dma: use lock guards present - exact patch-id match at 20f5818 skipped - not checked because qcom-next already contains the change present
3/9 [PATCH 3/9] BACKPORT: scatterlist: introduce sg_nents_for_dma() present - exact patch-id match at 80c70bf skipped - not checked because qcom-next already contains the change present
4/9 [PATCH 4/9] BACKPORT: dmaengine: qcom: bam_dma: use present - exact patch-id match at 107fdf0 skipped - not checked because qcom-next already contains the change present
5/9 [PATCH 5/9] FROMLIST: dt-bindings: net: qcom,bam-dmux: Add missing - no subject, patch-id, or full tree-content match found present - exact patch-id match at d50930b present
6/9 [PATCH 6/9] FROMLIST: net: wwan: qcom_bam_dmux: Alloc RX buffers as a partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 5f0bfd2 present
7/9 [PATCH 7/9] FROMLIST: dt-bindings: dma: qcom,bam-dma: Add optional partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 74de4ea present
8/9 [PATCH 8/9] FROMLIST: dmaengine: qcom: bam_dma: SCM-assign descriptor partial - subject or partial tree evidence found, but full change was not verified present - all checked added lines are present present
9/9 [PATCH 9/9] FROMLIST: arm64: dts: qcom: shikra: Add qcom,vmid to missing - no subject, patch-id, or full tree-content match found present - all checked added lines are present present

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #838 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch All 9 commits passed
dt-binding-check Both bindings validated successfully
dtb-check No new DTB validation errors
sparse-check No sparse warnings
check-uapi-headers No UAPI changes detected
check-patch-compliance 3 commits have content mismatch with upstream
tag-check All commits have valid prefixes (BACKPORT:/FROMLIST:)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #838 - BAM DMA and BAM DMUX VMID support
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/29573042010

Checker Result Summary
checkpatch All 9 commits passed
dt-binding-check Both bindings validated successfully
dtb-check No new DTB validation errors
sparse-check No sparse warnings
check-uapi-headers No UAPI changes detected
check-patch-compliance 3 commits have content mismatch with upstream
tag-check All commits have valid prefixes (BACKPORT:/FROMLIST:)

❌ check-patch-compliance

Root cause: Three BACKPORT commits have differences from their upstream Link references, indicating intentional modifications during backport.

Failure details:

Checking commit: BACKPORT: dmaengine: qcom: bam_dma: order includes alphabetically
Change is different from the one mentioned in Link

Checking commit: BACKPORT: dmaengine: qcom: bam_dma: use lock guards
Change is different from the one mentioned in Link

Checking commit: FROMLIST: arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
Change is different from the one mentioned in Link

Analysis:

  1. Commits 1 & 2 (fb6d259, 42d2e76):

  2. Commit 9 (6754ebc):

Fix:

For commit 9 (6754ebc):

git rebase -i a19888edbd0a   # mark commit 6754ebc1a45a as 'edit'
git commit --amend -m "BACKPORT: arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node

[rest of commit message unchanged]"
git rebase --continue

Verification:

# Fetch upstream patches and compare
b4 am --single-message -C -l -3 https://patch.msgid.link/20251106-qcom-bam-dma-refactor-v1-1-0e2baaf3d81a@linaro.org -o /tmp/commit1
b4 am --single-message -C -l -3 https://patch.msgid.link/20251106-qcom-bam-dma-refactor-v1-2-0e2baaf3d81a@linaro.org -o /tmp/commit2
b4 am --single-message -C -l -3 https://lore.kernel.org/r/20260714-b4-qcom-shikra-dts-bam-dmux-vmid-ext-v1-1-5b19da8d7735@oss.qualcomm.com -o /tmp/commit9

# Compare diff hunks
git format-patch -1 fb6d25991dcb --stdout | diff - /tmp/commit1/*.mbx
git format-patch -1 42d2e766c7c6 --stdout | diff - /tmp/commit2/*.mbx
git format-patch -1 6754ebc1a45a --stdout | diff - /tmp/commit9/*.mbx

Reproduce locally:

cd kernel
./scripts/check-patch-compliance.sh --base a19888edbd0a --head 6754ebc1a45a

Verdict

1 blocker to fix before merge:

  • Commit 9 (6754ebc) must change prefix from FROMLIST: to BACKPORT: if it contains modifications from the upstream patch.

Note: Commits 1 & 2 correctly use BACKPORT: prefix and are acceptable as-is. The checker's "Change is different" message is expected for BACKPORT commits and does not require action.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4609260 is not eligible for merge.

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

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

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

1 similar comment
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4609260 is not eligible for merge.

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

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

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

@quic-vishsant
Vishnu Santhosh (quic-vishsant) force-pushed the for-shikra-bam-xpu-violation-2-0 branch from 6754ebc to 2546101 Compare July 21, 2026 15:26
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4609260 is not eligible for merge.

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

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

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

@qlijarvis

Copy link
Copy Markdown

PR #838 — validate-patch

PR: #838

Verdict Issues Detailed Report
⚠️ 0 Full report

Final Summary

  1. Lore link present: Yes for 11/12 commits (commit 10 is a revert, no lore link expected)
  2. Lore link matches PR commits: Yes - all commits with lore links have faithful diffs; FROMLIST authorship rules correctly applied
  3. Upstream patch status:
    • Commits 1-4: ⏳ Decision Pending (Reviewed-by present, awaiting merge)
    • Commit 9: ✅ ACKed (maintainer confirmed "Applied, thanks!")
    • Commits 5-8, 11-12: ⏳ Decision Pending (no review/merge signals yet)
  4. PR present in qcom-next/topics: Fail - 1/12 commit(s) are missing from both qcom-next and topics
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #838 - BAM-DMUX support for Shikra (12 commits)
Verdict: ⚠️ PARTIAL


Summary by Commit

Commit 1/12: UPSTREAM: dmaengine: qcom: bam_dma: order includes alphabetically

Check Status Note
Lore link present https://lore.kernel.org/r/20251106-qcom-bam-dma-refactor-v1-1-0e2baaf3d81a@linaro.org
Subject matches upstream Prefix added: UPSTREAM:
Body preserves rationale Identical
Authorship preserved From: Bartosz Golaszewski bartosz.golaszewski@linaro.org matches lore
Reviewed-by tags ⚠️ PR has only Dmitry Baryshkov; lore thread also has Bjorn Andersson
Diff matches lore Identical code changes (context line numbers differ due to tree state)
Upstream status Decision Pending - Reviewed-by present, no merge confirmation yet
qcom-next/topics presence Present in qcom-next as 892f2bb

Verdict: ✅ PASS


Commit 2/12: UPSTREAM: dmaengine: qcom: bam_dma: use lock guards

Check Status Note
Lore link present https://lore.kernel.org/r/20251106-qcom-bam-dma-refactor-v1-2-0e2baaf3d81a@linaro.org
Subject matches upstream Prefix added: UPSTREAM:
Body preserves rationale Identical
Authorship preserved From: Bartosz Golaszewski bartosz.golaszewski@linaro.org matches lore
Reviewed-by tags PR missing Reviewed-by tags present in lore (Dmitry Baryshkov, Bjorn Andersson)
Diff matches lore Identical code changes
Upstream status Decision Pending - Reviewed-by present, no merge confirmation yet
qcom-next/topics presence Present in qcom-next as 20f5818

Verdict: ⚠️ PARTIAL - Missing Reviewed-by tags from lore thread


Commit 3/12: UPSTREAM: scatterlist: introduce sg_nents_for_dma()

Check Status Note
Lore link present https://lore.kernel.org/r/20260108105619.3513561-2-andriy.shevchenko@linux.intel.com
Subject matches upstream Prefix added: UPSTREAM:
Body preserves rationale Identical
Authorship preserved From: Andy Shevchenko andriy.shevchenko@linux.intel.com matches lore
Reviewed-by tags PR missing Reviewed-by: Bjorn Andersson present in lore
Diff matches lore Identical code changes
Upstream status Decision Pending - Reviewed-by present, no merge confirmation yet
qcom-next/topics presence Present in qcom-next as 80c70bf

Verdict: ⚠️ PARTIAL - Missing Reviewed-by tag from lore thread


Commit 4/12: UPSTREAM: dmaengine: qcom: bam_dma: use sg_nents_for_dma()

Check Status Note
Lore link present https://lore.kernel.org/r/20260108105619.3513561-11-andriy.shevchenko@linux.intel.com
Subject matches upstream Prefix added: UPSTREAM: (subject truncated in patch header)
Body preserves rationale Identical
Authorship preserved From: Andy Shevchenko andriy.shevchenko@linux.intel.com matches lore
Reviewed-by tags PR missing Reviewed-by: Bjorn Andersson present in lore
Diff matches lore Identical code changes
Upstream status Decision Pending - Reviewed-by present, no merge confirmation yet
qcom-next/topics presence Present in qcom-next as 107fdf0

Verdict: ⚠️ PARTIAL - Missing Reviewed-by tag from lore thread


Commit 5/12: FROMLIST: dt-bindings: net: qcom,bam-dmux: Add qcom,vmid property

Check Status Note
Lore link present https://lore.kernel.org/r/20260714-qcom-bam-dmux-vmid-ext-v1-1-3f29da7cca76@oss.qualcomm.com
Subject matches upstream Prefix added: FROMLIST: (subject truncated in patch header)
Body preserves rationale Identical
Authorship preserved FROMLIST: submitter in From: is correct; lore author Signed-off-by present
Diff matches lore Identical code changes
Upstream status Decision Pending - no merge or review signals in lore thread
qcom-next/topics presence Present in topics as d50930b

Verdict: ✅ PASS


Commit 6/12: FROMLIST: net: wwan: qcom_bam_dmux: Alloc RX buffers as DMA-able

Check Status Note
Lore link present https://lore.kernel.org/r/20260714-qcom-bam-dmux-vmid-ext-v1-2-3f29da7cca76@oss.qualcomm.com
Subject matches upstream Prefix added: FROMLIST: (subject truncated in patch header)
Body preserves rationale Identical
Authorship preserved FROMLIST: submitter in From: is correct; lore author Signed-off-by present
Diff matches lore Identical code changes
Upstream status Decision Pending - no merge or review signals in lore thread
qcom-next/topics presence Present in topics as 5f0bfd2

Verdict: ✅ PASS


Commit 7/12: FROMLIST: dt-bindings: dma: qcom,bam-dma: Add optional qcom,vmid

Check Status Note
Lore link present https://lore.kernel.org/r/20260714-qcom-bam-dma-vmid-ext-v1-1-cef87c57b7dc@oss.qualcomm.com
Subject matches upstream Prefix added: FROMLIST: (subject truncated in patch header)
Body preserves rationale Identical
Authorship preserved FROMLIST: submitter in From: is correct; lore author Signed-off-by present
Diff matches lore Identical code changes
Upstream status Decision Pending - no merge or review signals in lore thread
qcom-next/topics presence Present in topics as 74de4ea

Verdict: ✅ PASS


Commit 8/12: FROMLIST: dmaengine: qcom: bam_dma: SCM-assign DMA buffers

Check Status Note
Lore link present https://lore.kernel.org/r/20260714-qcom-bam-dma-vmid-ext-v1-2-cef87c57b7dc@oss.qualcomm.com
Subject matches upstream Prefix added: FROMLIST: (subject truncated in patch header)
Body preserves rationale Identical
Authorship preserved FROMLIST: submitter in From: is correct; lore author Signed-off-by present
Diff matches lore Identical code changes
Upstream status Decision Pending - no merge or review signals in lore thread
qcom-next/topics presence Present in topics (all added lines verified)

Verdict: ✅ PASS


Commit 9/12: FROMLIST: remoteproc: qcom_q6v5_pas: Create platform device for BAM-DMUX

Check Status Note
Lore link present https://lore.kernel.org/r/20260711-qcom-q6v5-pas-bam-dmux-v1-1-1e9231143b79@oss.qualcomm.com
Subject matches upstream Prefix added: FROMLIST: (subject truncated in patch header)
Body preserves rationale Identical
Authorship preserved FROMLIST: submitter in From: is correct; lore author Signed-off-by present
Diff matches lore Identical code changes
Upstream status ACKed - "Applied, thanks!" from maintainer in lore thread
qcom-next/topics presence Present in topics (all added lines verified)

Verdict: ✅ PASS


Commit 10/12: Revert "FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support"

Check Status Note
Lore link present N/A Revert commits do not require lore links
Subject matches pattern Standard revert format
Body explains rationale Clear explanation: v2 moves node placement, reverting v1 to apply v2
Reverts commit Reverts a4a9273
Diff correctness Cleanly removes the v1 BAM-DMUX additions
qcom-next/topics presence MISSING from both qcom-next and topics

Verdict: ❌ FAIL - Not present in qcom-next or topics (integration requirement not met)


Commit 11/12: FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support

Check Status Note
Lore link present https://lore.kernel.org/r/20260711-qcom-shikra-dts-bam-dmux-v2-1-d5b33ee32138@oss.qualcomm.com
Subject matches upstream Prefix added: FROMLIST:
Body preserves rationale Identical (v2 rationale about node placement)
Authorship preserved FROMLIST: submitter in From: is correct; lore author Signed-off-by present
Diff matches lore Identical code changes (v2 placement under remoteproc)
Upstream status Decision Pending - no merge or review signals in lore thread
qcom-next/topics presence ⚠️ PARTIAL - subject/partial tree evidence found, full change not verified

Verdict: ⚠️ PARTIAL - Integration presence is partial (not fully verified in qcom-next/topics)


Commit 12/12: FROMLIST: arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMUX

Check Status Note
Lore link present https://lore.kernel.org/r/20260714-b4-qcom-shikra-dts-bam-dmux-vmid-ext-v1-1-5b19da8d7735@oss.qualcomm.com
Subject matches upstream Prefix added: FROMLIST: (subject truncated in patch header)
Body preserves rationale Identical
Authorship preserved FROMLIST: submitter in From: is correct; lore author Signed-off-by present
Diff matches lore Identical code changes
Upstream status Decision Pending - no merge or review signals in lore thread
qcom-next/topics presence Present in topics (all added lines verified)

Verdict: ✅ PASS


Issues Found

  1. Missing Reviewed-by tags (Commits 2, 3, 4): The lore threads for these UPSTREAM commits contain Reviewed-by: tags from maintainers (Dmitry Baryshkov, Bjorn Andersson) that are missing from the PR commits. These tags should be preserved when cherry-picking upstream patches.

  2. Commit 10 missing from integration (FAIL): The revert commit (10/12) is not present in qcom-next or topics. This is a validation failure per the integration presence requirement. The commit reverts a previous v1 patch to make way for v2, but the revert itself has not been integrated.

  3. Commit 11 partial integration (WARNING): The v2 BAM-DMUX DTS patch (11/12) shows only partial evidence in qcom-next/topics. The integration checker found subject/partial tree matches but could not verify the full change.


Recommendation

Do not merge as-is. Address the following before merging:

  1. Add missing Reviewed-by tags to commits 2, 3, and 4 from their respective lore threads.
  2. Investigate commit 10 (revert) - it is missing from both qcom-next and topics. Confirm whether:
    • The revert is needed in this PR, or
    • The v1 commit being reverted was never in qcom-next (making the revert unnecessary), or
    • The revert needs to be pushed to qcom-next/topics first.
  3. Verify commit 11 integration - the partial match suggests the change may be present but with differences. Confirm the full change is in topics or qcom-next.

Final Summary

  1. Lore link present: Yes for 11/12 commits (commit 10 is a revert, no lore link expected)
  2. Lore link matches PR commits: Yes - all commits with lore links have faithful diffs; FROMLIST authorship rules correctly applied
  3. Upstream patch status:
    • Commits 1-4: ⏳ Decision Pending (Reviewed-by present, awaiting merge)
    • Commit 9: ✅ ACKed (maintainer confirmed "Applied, thanks!")
    • Commits 5-8, 11-12: ⏳ Decision Pending (no review/merge signals yet)
  4. PR present in qcom-next/topics: Fail - 1/12 commit (revert) is missing from both qcom-next and topics; 1/12 commit has only partial verification

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

Commit Subject qcom-next topics Final
1/12 [PATCH 01/12] UPSTREAM: dmaengine: qcom: bam_dma: order includes present - exact patch-id match at 892f2bb skipped - not checked because qcom-next already contains the change present
2/12 [PATCH 02/12] UPSTREAM: dmaengine: qcom: bam_dma: use lock guards present - exact patch-id match at 20f5818 skipped - not checked because qcom-next already contains the change present
3/12 [PATCH 03/12] UPSTREAM: scatterlist: introduce sg_nents_for_dma() present - exact patch-id match at 80c70bf skipped - not checked because qcom-next already contains the change present
4/12 [PATCH 04/12] UPSTREAM: dmaengine: qcom: bam_dma: use present - exact patch-id match at 107fdf0 skipped - not checked because qcom-next already contains the change present
5/12 [PATCH 05/12] FROMLIST: dt-bindings: net: qcom,bam-dmux: Add missing - no subject, patch-id, or full tree-content match found present - exact patch-id match at d50930b present
6/12 [PATCH 06/12] FROMLIST: net: wwan: qcom_bam_dmux: Alloc RX buffers as partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 5f0bfd2 present
7/12 [PATCH 07/12] FROMLIST: dt-bindings: dma: qcom,bam-dma: Add optional partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 74de4ea present
8/12 [PATCH 08/12] FROMLIST: dmaengine: qcom: bam_dma: SCM-assign partial - subject or partial tree evidence found, but full change was not verified present - all checked added lines are present present
9/12 [PATCH 09/12] FROMLIST: remoteproc: qcom_q6v5_pas: Create platform missing - no subject, patch-id, or full tree-content match found present - all checked added lines are present present
10/12 [PATCH 10/12] Revert "FROMLIST: arm64: dts: qcom: shikra: Add missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
11/12 [PATCH 11/12] FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX partial - subject or partial tree evidence found, but full change was not verified partial - subject or partial tree evidence found, but full change was not verified partial
12/12 [PATCH 12/12] FROMLIST: arm64: dts: qcom: shikra: Add qcom,vmid to missing - no subject, patch-id, or full tree-content match found present - all checked added lines are present present

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #838 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch All commits pass style checks
dt-binding-check Binding schemas valid
dtb-check bam-dmux child node not allowed in remoteproc binding schema
sparse-check No static analysis warnings
check-uapi-headers No UAPI changes
check-patch-compliance 1 prefix failure, 4 content-mismatch warnings
tag-check 1 commit missing required prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #838 - BAM-DMUX support for Shikra
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/29844137764
Target branch: qcom-6.18.y

Checker Result Summary
checkpatch All commits pass style checks
dt-binding-check Binding schemas valid
dtb-check bam-dmux child node not allowed in remoteproc binding schema
sparse-check No static analysis warnings
check-uapi-headers No UAPI changes
check-patch-compliance 1 prefix failure, 4 content-mismatch warnings
tag-check 1 commit missing required prefix

❌ dtb-check

Root cause: The qcom,shikra-pas.yaml binding schema does not allow bam-dmux as a child node under glink-edge.

Failure details:

remoteproc@6080000 (qcom,shikra-mpss-pas): glink-edge: 'bam-dmux' does not match any of the regexes: '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml#
remoteproc@6080000 (qcom,shikra-mpss-pas): glink-edge: Unevaluated properties are not allowed ('bam-dmux' was unexpected)
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml#
remoteproc@6080000 (qcom,shikra-mpss-pas): Unevaluated properties are not allowed ('glink-edge', 'interconnects' were unexpected)
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml#
video-codec@5a00000 (qcom,shikra-iris): iommus: [[38, 1920, 32]] is too short

Affects all shikra DTBs: shikra-cqm-evk, shikra-cqs-evk, shikra-iqs-evk (and their camera variants).

Fix: Update Documentation/devicetree/bindings/remoteproc/qcom,shikra-pas.yaml to:

  1. Allow glink-edge as a property under the remoteproc node
  2. Add bam-dmux to the allowed child nodes under glink-edge (via patternProperties or explicit declaration)
  3. Fix the video-codec iommus property cell count issue (separate from BAM-DMUX)

Reproduce locally:

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

❌ check-patch-compliance

Root cause: Commit #10 (Revert) is missing a required prefix before "Revert", and 4 commits have content differences from their upstream lore links.

Failure details:

1. Prefix failure (commit 6ba17b8):

Checking commit: Revert "FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support"
Commit summary does not start with a required prefix

2. Content-mismatch warnings (4 commits):

Checking commit: UPSTREAM: dmaengine: qcom: bam_dma: order includes alphabetically
Change is different from the one mentioned in Link

Checking commit: UPSTREAM: dmaengine: qcom: bam_dma: use lock guards
Change is different from the one mentioned in Link

Checking commit: FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support
Change is different from the one mentioned in Link

Checking commit: FROMLIST: arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
Change is different from the one mentioned in Link

Fix:

For the prefix failure:

git rebase -i <base_sha>   # mark commit 6ba17b8e660a as 'edit'
git commit --amend -m "FROMLIST: Revert \"FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support\""
git rebase --continue

For the content-mismatch warnings:
These are likely context-only differences or legitimate adaptations for the vendor tree. Verify each one:

# For each commit with "Change is different":
b4 am --single-message -C -l -3 <link-from-commit-body> -o /tmp/upstream
git format-patch -1 <commit-sha> --stdout > /tmp/local.patch
# Compare the actual code changes (ignore context):
diff <(grep -E '^[+-][^+-]' /tmp/local.patch | grep -v '^---\|^+++') \
     <(grep -E '^[+-][^+-]' /tmp/upstream/*.mbx | grep -v '^---\|^+++')

If differences are legitimate adaptations (e.g., different base kernel version, vendor-specific context), document them in the commit message. If differences are unintended, align with upstream.

Reproduce locally:

cd /path/to/kernel
bash ../kernel-checkers/check-patch-compliance.sh --kernel-src . --base <base_sha> --head <head_sha>

❌ tag-check

Root cause: Commit #10 (Revert) does not start with a required prefix tag.

Failure details:

Target branch qcom-6.18.y requires all commits to have a subject-line prefix (FROMLIST:, FROMGIT:, UPSTREAM:, BACKPORT:, QCLINUX:, PENDING:, WORKAROUND:).

Commit 6ba17b8e660a has subject:

Revert "FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support"

This is missing a prefix before Revert.

Fix:

git rebase -i <base_sha>   # mark commit 6ba17b8e660a as 'edit'
git commit --amend -m "FROMLIST: Revert \"FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support\""
git rebase --continue

Choose FROMLIST: if the revert itself was posted upstream, or UPSTREAM: if the revert is already merged upstream.


Verdict

3 blockers must be fixed before merge:

  1. dtb-check: Update qcom,shikra-pas.yaml binding to allow bam-dmux child node under glink-edge
  2. check-patch-compliance: Add FROMLIST: prefix to the Revert commit subject
  3. tag-check: Same as Adding Email Checker  #2 (both require the same fix)

The 4 content-mismatch warnings should be investigated but may be acceptable if they represent legitimate vendor-tree adaptations. Verify with b4 am and document any intentional differences in commit messages.

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

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

@quic-vishsant
Vishnu Santhosh (quic-vishsant) force-pushed the for-shikra-bam-xpu-violation-2-0 branch from 2546101 to 054863e Compare July 24, 2026 08:20
@qlijarvis

Copy link
Copy Markdown

PR #838 — validate-patch

PR: #838

Verdict Issues Detailed Report
N/A 0 Full report

Final Summary

  1. Lore link present: Not provided in agent output
  2. Lore link matches PR commits: Not provided in agent output
  3. Upstream patch status: Not provided in agent output
  4. PR present in qcom-next/topics: Fail - 1/12 commit(s) are missing from both qcom-next and topics
Verdict: N/A — click to expand

Perfect! I've completed the comprehensive validation following the validate-patch skill workflow. The report identifies:

  1. Critical Issue: Commit 12/12 is missing the #include <dt-bindings/firmware/qcom,scm.h> header that's present in the lore patch, which will cause a build failure.

  2. Integration Issue: Commit 10/12 (Revert) is not present in qcom-next or topics, which needs verification.

  3. Positive findings:

    • All 11 non-revert commits have proper lore links
    • Authorship is correctly preserved for UPSTREAM commits
    • FROMLIST commits correctly use the submitter as author
    • All other diffs match their lore sources exactly
    • UPSTREAM commits (1-4) are already accepted/merged upstream

The validation verdict is FAIL due to the missing header include in commit 12/12.

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

Commit Subject qcom-next topics Final
1/12 [PATCH 01/12] UPSTREAM: dmaengine: qcom: bam_dma: order includes present - exact patch-id match at 892f2bb skipped - not checked because qcom-next already contains the change present
2/12 [PATCH 02/12] UPSTREAM: dmaengine: qcom: bam_dma: use lock guards present - exact patch-id match at 20f5818 skipped - not checked because qcom-next already contains the change present
3/12 [PATCH 03/12] UPSTREAM: scatterlist: introduce sg_nents_for_dma() present - exact patch-id match at 80c70bf skipped - not checked because qcom-next already contains the change present
4/12 [PATCH 04/12] UPSTREAM: dmaengine: qcom: bam_dma: use present - exact patch-id match at 107fdf0 skipped - not checked because qcom-next already contains the change present
5/12 [PATCH 05/12] FROMLIST: dt-bindings: net: qcom,bam-dmux: Add missing - no subject, patch-id, or full tree-content match found present - exact patch-id match at d50930b present
6/12 [PATCH 06/12] FROMLIST: net: wwan: qcom_bam_dmux: Alloc RX buffers as partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 5f0bfd2 present
7/12 [PATCH 07/12] FROMLIST: dt-bindings: dma: qcom,bam-dma: Add optional partial - subject or partial tree evidence found, but full change was not verified present - exact patch-id match at 74de4ea present
8/12 [PATCH 08/12] FROMLIST: dmaengine: qcom: bam_dma: SCM-assign partial - subject or partial tree evidence found, but full change was not verified present - all checked added lines are present present
9/12 [PATCH 09/12] FROMLIST: remoteproc: qcom_q6v5_pas: Create platform missing - no subject, patch-id, or full tree-content match found present - all checked added lines are present present
10/12 [PATCH 10/12] Revert "FROMLIST: arm64: dts: qcom: shikra: Add missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
11/12 [PATCH 11/12] BACKPORT: arm64: dts: qcom: shikra: Add BAM-DMUX partial - subject or partial tree evidence found, but full change was not verified partial - subject or partial tree evidence found, but full change was not verified partial
12/12 [PATCH 12/12] BACKPORT: arm64: dts: qcom: shikra: Add qcom,vmid to missing - no subject, patch-id, or full tree-content match found present - all checked added lines are present present

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #838 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch ⚠️ 1 CHECK warning (style suggestion, non-blocking)
dt-binding-check Passed
dtb-check New bam-dmux child node not allowed in qcom,shikra-pas binding
sparse-check Passed
check-uapi-headers Passed
check-patch-compliance 5 failures: 1 missing prefix, 4 content mismatches
tag-check 1 commit missing required prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #838 - BAM-DMUX support for Shikra
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/30078661350
Target branch: qcom-6.18.y

Checker Result Summary
checkpatch ⚠️ 1 CHECK warning (style suggestion, non-blocking)
dt-binding-check Passed
dtb-check New bam-dmux child node not allowed in qcom,shikra-pas binding
sparse-check Passed
check-uapi-headers Passed
check-patch-compliance 5 failures: 1 missing prefix, 4 content mismatches
tag-check 1 commit missing required prefix

❌ dtb-check

Root cause: The PR adds a bam-dmux child node under glink-edge in the shikra remoteproc node, but the qcom,shikra-pas.yaml binding schema uses unevaluatedProperties: false and does not declare bam-dmux as an allowed child node pattern.

Failure details:

shikra-cqm-evk.dtb: remoteproc@6080000 (qcom,shikra-mpss-pas): glink-edge: 'bam-dmux' does not match any of the regexes: '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml#
shikra-cqm-evk.dtb: remoteproc@6080000 (qcom,shikra-mpss-pas): glink-edge: Unevaluated properties are not allowed ('bam-dmux' was unexpected)
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml#
shikra-cqm-evk.dtb: remoteproc@6080000 (qcom,shikra-mpss-pas): Unevaluated properties are not allowed ('glink-edge', 'interconnects' were unexpected)
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml#

Affects all shikra board DTBs: shikra-cqm-evk, shikra-cqs-evk, shikra-iqs-evk (and their camera variants).

Fix: Update Documentation/devicetree/bindings/remoteproc/qcom,shikra-pas.yaml to allow the bam-dmux child node under glink-edge. Add a patternProperties entry:

patternProperties:
  "^glink-edge":
    type: object
    properties:
      bam-dmux:
        $ref: /schemas/net/qcom,bam-dmux.yaml#

Or if the binding already has a glink-edge definition, add bam-dmux to its allowed child nodes.

Reproduce locally:

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

❌ check-patch-compliance

Root cause: 5 commits fail compliance checks — 1 missing required prefix, 4 with content differences from their upstream Link.

Failure details:

1. Missing prefix (commit 10/12):

Checking commit: Revert "FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support"
Commit summary does not start with a required prefix

The Revert commit has no prefix before the word Revert. Valid prefixes are: FROMLIST:, FROMGIT:, UPSTREAM:, BACKPORT:.

2. Content mismatches (4 commits):

Checking commit: UPSTREAM: dmaengine: qcom: bam_dma: order includes alphabetically
Change is different from the one mentioned in Link

Checking commit: UPSTREAM: dmaengine: qcom: bam_dma: use lock guards
Change is different from the one mentioned in Link

Checking commit: BACKPORT: arm64: dts: qcom: shikra: Add BAM-DMUX support
Change is different from the one mentioned in Link

Checking commit: BACKPORT: arm64: dts: qcom: shikra: Add qcom,vmid to BAM-DMA node
Change is different from the one mentioned in Link

The checker detected differences between the PR commit content and the upstream patch referenced in the Link: trailer. This can be:

  • Context-only differences (false positive)
  • Legitimate adaptations for the vendor tree (document in commit message)
  • Missing or extra hunks (verify manually)

Fix:

For the Revert commit:

git rebase -i <base_sha>   # mark commit 10/12 as 'edit'
git commit --amend -m "FROMLIST: Revert \"FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support\""
git rebase --continue

For content mismatches:
Fetch each upstream patch and compare:

b4 am --single-message -C -l -3 <link> -o /tmp/out
diff <(git format-patch -1 <sha> --stdout | awk '/^diff/,/^--$/' | grep -E '^[+-][^+-]') \
     <(awk '/^diff/,/^--$/' /tmp/out/*.mbx | grep -E '^[+-][^+-]')

If differences are legitimate adaptations (e.g., vendor-specific context), document them in the commit message body. If differences are unintended, rebase and fix the commit.

Reproduce locally:

cd kernel
bash ../kernel-checkers/check-patch-compliance.sh --kernel-src . --base <base_sha> --head <head_sha>

❌ tag-check

Root cause: Commit 10/12 (Revert "FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support") does not start with a required prefix.

Failure details:

The PR targets qcom-6.18.y, which is not qcom-next or qcom-next-staging. All commits merged into this branch must start with one of the following prefixes:

  • FROMLIST: — Patch posted to mailing list (lore.kernel.org)
  • FROMGIT: — Patch taken from a maintainer git tree
  • UPSTREAM: — Patch merged into Linus's mainline tree
  • BACKPORT: — Upstream patch backported with modifications
  • QCLINUX: — Vendor-only change with no upstream equivalent
  • PENDING: — Work-in-progress, not yet posted upstream
  • WORKAROUND: — Temporary fix not suitable for upstream

Commit 10/12 starts with Revert "..." with no prefix before Revert.

Fix:

git rebase -i <base_sha>   # mark commit 10/12 as 'edit'
git commit --amend -m "FROMLIST: Revert \"FROMLIST: arm64: dts: qcom: shikra: Add BAM-DMUX support\""
git rebase --continue

Choose the correct prefix based on the revert's origin:

  • If the revert itself was posted upstream → FROMLIST:
  • If the revert is in a maintainer tree → FROMGIT:
  • If the revert is merged into Linus's tree → UPSTREAM:

⚠️ checkpatch

Root cause: Commit 2/12 (UPSTREAM: dmaengine: qcom: bam_dma: use lock guards) has a style CHECK warning (non-blocking).

Failure details:

CHECK: Lines should not end with a '('
#230: FILE: drivers/dma/qcom/bam_dma.c:1013:
+					residue += le16_to_cpu(

This is a style suggestion, not an error. The line ends with an open parenthesis, which checkpatch flags as poor style.

Fix (optional):

Reformat the line to avoid ending with (:

residue += le16_to_cpu(desc_fifo[i].data);

Or if the line is too long, break at a different point:

residue +=
	le16_to_cpu(desc_fifo[i].data);

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git <base>..<head>

Verdict

3 blockers must be fixed before merge:

  1. dtb-check: Update qcom,shikra-pas.yaml binding to allow bam-dmux child node under glink-edge.
  2. check-patch-compliance: Add required prefix to the Revert commit (commit 10/12).
  3. tag-check: Same as Adding Email Checker  #2 — the Revert commit needs a prefix.

4 warnings to investigate:

  • check-patch-compliance: Verify the 4 content-mismatch commits are legitimate adaptations or fix any unintended differences.

1 optional style fix:

  • checkpatch: Consider reformatting the line ending with ( in commit 2/12 (non-blocking).

…ompatible

On platforms where the modem DMAs into the BAM-DMUX RX data buffers and
the XPU enforces per-region access control, each individually
DMA-mapped RX buffer consumes an XPU resource group. With only ~16
groups available, the per-buffer mappings exhaust the table and inbound
transfers fault.

Add qcom,shikra-bam-dmux as an additional compatible for the Shikra SoC,
paired with the generic qcom,bam-dmux fallback, so the driver can match
on it via its of_device_id table.

Link: https://lore.kernel.org/r/20260714-qcom-bam-dmux-vmid-ext-v1-1-3f29da7cca76@oss.qualcomm.com
Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
…le coherent block

On Qualcomm SoCs where the modem (e.g. the mDSP on Shikra, VMID 43 /
NAV) is the AXI master for BAM-DMUX RX and TX transfers and the XPU
enforces per-region access control, each individually DMA-mapped RX
or TX buffer requires its own XPU resource group (RG). With ~16 RGs
available, the 64 per-buffer dma_map_single() calls (32 RX + 32 TX)
exhaust the table and the first inbound or outbound transfer faults
with an XPU violation.

This A2 BAM instance on Shikra is not currently behind the SMMU, so
DMA buffers are not covered by an IOMMU mapping; SCM-assigning the
buffers to the remote VMID is the interim mechanism to grant the
modem access without exhausting XPU RGs. SMMU coverage for this BAM
instance is being tracked separately with the hardware team.

BAM-DMUX is a singleton (exactly one instance per SoC), so the
destination VMID does not need to be a DT property; it is looked up
from the compatible string's match data instead. Add struct
bam_dmux_data with a single vmid field, and a shikra_data instance
hardcoding QCOM_SCM_VMID_NAV for qcom,shikra-bam-dmux.

When match data is present, allocate all RX and TX buffers from a
single contiguous dma_alloc_coherent() block and SCM-assign that
block to HLOS plus the VMID once at probe, with one qcom_scm_assign_mem()
call covering both directions. This reduces RG consumption from 64 to
1. The block is laid out as BAM_DMUX_NUM_SKB RX slots
(BAM_DMUX_BUFFER_SIZE each) followed by BAM_DMUX_NUM_SKB TX slots
(BAM_DMUX_TX_BUFFER_SIZE each); each region is independently
PAGE_ALIGN()ed, both because qcom_scm_assign_mem() rejects a
non-page-aligned mem_sz with -EINVAL, and so that a future size change
to either slot size cannot perturb the other region's offset. The
block is never reclaimed across a modem power cycle (bam_dmux_power_off()
does not touch it), so the probe-time assignment covers every
subsequent restart without re-assigning or reclaiming. It is reclaimed
to HLOS only once, at remove or on a probe error, and if that reclaim
fails it is leaked rather than returned to the page allocator.

Each rx_skbs[]/tx_skbs[] slot is pre-assigned its virtual and DMA
address from the block, so no per-buffer mapping is needed. Because
the coherent block is not page-backed, received payload is copied
into a regular netdev skb before handoff to the network stack, and
transmit payload is copied from the prepared skb into the pre-assigned
TX slot in bam_dmux_skb_dma_map(); this is an unavoidable extra copy
on the XPU-enforced path in both directions. A TX frame carries the
qcom,shikra-bam-dmux header plus up to dev->max_mtu bytes plus up to
sizeof(u32) bytes of word-alignment padding (see
bam_dmux_tx_prepare_skb()), so each TX slot is sized
BAM_DMUX_BUFFER_SIZE + sizeof(u32) rather than BAM_DMUX_BUFFER_SIZE,
and bam_dmux_skb_dma_map() rejects an oversized TX skb rather than
overflowing the slot.

Platforms without match data are unaffected: virt stays NULL, no
coherent memory is allocated, and the per-buffer dma_map_single() path
is unchanged.

Link: https://lore.kernel.org/r/20260714-qcom-bam-dmux-vmid-ext-v1-2-3f29da7cca76@oss.qualcomm.com
Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
…erty

A SoC can have multiple BAM DMA instances. Some of these BAMs are
powered by a remote processor that enforces XPU (eXternal Protection
Unit) access control and reads the per-channel descriptor FIFOs as an
AXI master under that remote processor's execution environment, so
their FIFOs must be accessible to the remote processor's VMID; other
BAM instances on the same SoC are not behind such a remote processor
and must not have this property set.

Add an optional qcom,vmid property listing the destination VMID(s)
that the affected BAM instance's descriptor FIFOs must be accessible
to. HLOS is always the source owner and must not be listed.

Link: https://lore.kernel.org/r/20260714-qcom-bam-dma-vmid-ext-v1-1-cef87c57b7dc@oss.qualcomm.com
Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
…remote VMID

On Qualcomm SoCs where the BAM is powered by a remote processor that
enforces XPU access control (e.g. the mDSP on Shikra, VMID 43 / NAV),
the BAM reads the descriptor FIFO as an AXI master under the remote
execution environment. Without an SCM grant for the remote VMID, the
first descriptor enqueue faults with an XPU violation.

Parse the optional qcom,vmid DT property as a list of destination
VMIDs. When present, SCM-assign each channel's descriptor FIFO to HLOS
plus the listed VMIDs; num_vmids being non-zero is derived purely from
qcom,vmid, a board-integration property, not from the per-SoC IP data,
and is distinct from qcom,powered-remotely.

A BAM with configured VMIDs has two properties that shape the channel
lifecycle:

  1. The remote firmware owns the BAM's power and reset. It may remove
     power during error recovery before the driver releases its
     channels, so any pipe/block register access at teardown can raise
     a synchronous external abort, and a local reset is redundant as
     the remote re-initialises the hardware on the next power-on.

  2. TZ does not revoke the SCM grant when the remote powers down. A
     FIFO assigned once stays assigned across every power cycle, and
     re-assigning or reclaiming it while the remote is mid-teardown is
     rejected by TZ with -EINVAL.

Handle both by keeping the descriptor FIFO as a persistent resource on
such BAMs: allocate and SCM-assign it once on the first
bam_alloc_chan(), keep it (and its grant) across power cycles, and
reclaim it to HLOS and free it only once in bam_dma_remove(). If the
final reclaim fails the remote still has access, so the buffer is
leaked rather than returned to the page allocator; the source-VMID
bitmask stored by qcom_scm_assign_mem() drives that reclaim.

bam_free_chan() on such a BAM therefore only drops local channel state
(clear ->initialized, decrement active_channels) with no MMIO and no
SCM call, so the block and pipe are re-initialised on the next
power-on while power is present. The bam_chan_init_hw() pipe reset in
bam_dma_terminate_all() is likewise skipped. reclaiming the FIFO is an
SCM call, not a register access, so bam_dma_remove() stays safe.

Platforms that do not set qcom,vmid keep num_vmids 0, make no SCM
call, and leave the alloc/free and register-access paths unchanged.

Link: https://lore.kernel.org/r/20260714-qcom-bam-dma-vmid-ext-v1-2-cef87c57b7dc@oss.qualcomm.com
Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
Some Qualcomm SoCs using the generic PAS remoteproc driver (e.g.
Shikra) implement the BAM-DMUX protocol on the modem remoteproc to
expose network data channels. The hardware/firmware resources
required by the BAM-DMUX driver are described in an extra device
tree node below the modem remoteproc, with the compatible
"qcom,bam-dmux".

qcom_q6v5_mss.c already creates a platform device for this node
(commit 59983c7 ("remoteproc: qcom_q6v5_mss: Create platform
device for BAM-DMUX")), but qcom_q6v5_pas.c has no equivalent logic,
so the bam-dmux node never probes on SoCs handled by this driver.

Mirror the qcom_q6v5_mss.c approach: create a platform device
specifically for the "qcom,bam-dmux" child node on probe, and
destroy it on remove. of_get_compatible_child() returns NULL when
the node is absent, and of_platform_device_create()/of_node_put()
are NULL-safe, so this is a no-op for the many PAS-based SoCs that
have no bam-dmux child.

Link: https://lore.kernel.org/r/20260711-qcom-q6v5-pas-bam-dmux-v1-1-1e9231143b79@oss.qualcomm.com
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
v2 of this series moves the bam-dmux node below the modem remoteproc
(remoteproc_mpss) instead of at the root, so that userspace can
associate the resulting network interfaces with the owning remoteproc
via udev/sysfs. Reverting the v1 placement here to pick v2 on top.

This reverts commit a4a9273.

Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
…bnode

The BAM-DMUX node lives as a direct child of the modem PAS remoteproc
node, but qcom,shikra-pas.yaml has unevaluatedProperties: false and
does not list bam-dmux, so any DT adding this subnode fails schema
validation.

Add an optional bam-dmux property referencing qcom,bam-dmux.yaml,
mirroring qcom,msm8916-mss-pil.yaml.

Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260727-shikra-pas-bam-dmux-binding-v1-1-c0159c7c3ed4@oss.qualcomm.com
Add required nodes to enable the upstream BAM-DMUX WWAN driver on
Qualcomm Shikra SoC.

The SMSM (Shared Memory State Machine) node provides the power
control signaling between the AP and modem for BAM-DMUX. The
BAM DMA controller node describes the A2 modem BAM hardware as a
standard DMA controller. The BAM-DMUX node references the DMA
channels and the pc/pc-ack interrupt lines from the modem SMSM
entry for power control signaling.

The BAM-DMUX node is placed below the modem remoteproc so that
userspace can associate the resulting network interfaces with the
owning remoteproc via udev/sysfs, matching how qcom_q6v5_mss.c
already handles the equivalent node on older SoCs.

Link: https://lore.kernel.org/r/20260711-qcom-shikra-dts-bam-dmux-v2-1-d5b33ee32138@oss.qualcomm.com
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
On the Qualcomm Shikra SoC the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is
the AXI master for BAM descriptor FIFO accesses. The XPU enforces
per-region access control; without an SCM assignment granting NAV
access, the first DMA transfer triggers an XPU violation.

Add qcom,vmid = <QCOM_SCM_VMID_NAV> to the bam_dmux_dma controller
node so bam_dma SCM-assigns each channel descriptor FIFO at
allocation. BAM-DMUX itself is a singleton and no longer needs a DT
property for its destination VMID: the driver now selects
QCOM_SCM_VMID_NAV internally via the qcom,shikra-bam-dmux compatible's
match data.

Link: https://lore.kernel.org/r/20260714-b4-qcom-shikra-dts-bam-dmux-vmid-ext-v1-1-5b19da8d7735@oss.qualcomm.com
Co-developed-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Deepak Kumar Singh <deepak.singh@oss.qualcomm.com>
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ◻️ ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip
BT_FW_KMD_Service ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_ON_OFF ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_SCAN ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPUFreq_Validation ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPU_affinity ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
DSP_AudioPD ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
Ethernet_Basic_Validation ◻️ ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ⚠️ skip ❌ Fail ⚠️ skip
Freq_Scaling ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass
GIC ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ❌ Fail
IPA ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Interrupts ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
KVM_Driver ◻️ ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
KVM_EL2_DTB ◻️ ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
KVM_Infra ◻️ ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
OpenCV ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
PCIe ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Probe_Failure_Check ◻️ ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
RMNET ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
UFS_Validation ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
USBHost ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail
WiFi_Firmware_Driver ◻️ ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
WiFi_OnOff ◻️ ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
adsp_remoteproc ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
cdsp_remoteproc ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
gpdsp_remoteproc ◻️ ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip
hotplug ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
irq ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
kaslr ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
pinctrl ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
qcom_hwrng ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
shmbridge ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
smmu ◻️ ❌ Fail ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ✅ Pass
watchdog ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
wpss_remoteproc ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass

@sgaud-quic

Copy link
Copy Markdown
Contributor

why this commit is PENDING ? Do we have QLI Jira approval for this ?

PENDING: net: wwan: qcom_bam_dmux: Alloc RX and TX buffers as a single coherent block

@quic-vishsant

Copy link
Copy Markdown
Author

single coherent block

This is the equivalent of the patch send upstream https://lore.kernel.org/all/20260714-qcom-bam-dmux-vmid-ext-v1-2-3f29da7cca76@oss.qualcomm.com/ which included the RX buffer change, that itself was asked by Maintainer Stephen to rewrite in a specific way and also include TX block. Since that rewrite is in progress and yet to be validated (Need a setup with W1 SIM - this is being used by the data team), I integrated the TX logic also into the existing patch to unblock the team so kept the flag PENDING.

Once tested, we will be sending the v2 which takes some time. So, can I keep it FROMLIST then for this to be unblocked, if PENDING needs JIRA?

@qcomlnxci

Copy link
Copy Markdown

Test Matrix

Test Case hamoa-iot-evk-multimedia lemans-evk-multimedia monaco-evk-multimedia purwa-iot-evk-multimedia qcs615-ride-multimedia qcs6490-rb3gen2-multimedia qcs8300-ride-multimedia qcs9100-ride-r3-multimedia shikra-iqs-evk-multimedia
Audio_Card_Registration ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip
BT_FW_KMD_Service ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_ON_OFF ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
BT_SCAN ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPUFreq_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
CPU_affinity ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
DSP_AudioPD ✅ Pass ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
Ethernet_Basic_Validation ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ❌ Fail ❌ Fail ⚠️ skip
Freq_Scaling ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
GIC ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail
IPA ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Interrupts ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
KVM_Driver ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
KVM_EL2_DTB ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
KVM_Infra ❌ Fail ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
OpenCV ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
PCIe ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
Probe_Failure_Check ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail ❌ Fail
RMNET ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
UFS_Validation ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
USBHost ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ❌ Fail ❌ Fail ❌ Fail ❌ Fail
WiFi_Firmware_Driver ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
WiFi_OnOff ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
adsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ⚠️ skip
cdsp_remoteproc ✅ Pass ✅ Pass ✅ Pass ❌ Fail ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
gpdsp_remoteproc ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ⚠️ skip ✅ Pass ✅ Pass ⚠️ skip
hotplug ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
irq ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
kaslr ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
pinctrl ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
qcom_hwrng ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️
rngtest ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
shmbridge ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
smmu ❌ Fail ❌ Fail ✅ Pass ❌ Fail ❌ Fail ✅ Pass ✅ Pass ❌ Fail ✅ Pass
watchdog ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass
wpss_remoteproc ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass ✅ Pass

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.

7 participants