Skip to content

Enable modem qmi tmd devices for shikra - #1314

Open
dmantre wants to merge 3 commits into
qualcomm-linux:qcom-6.18.yfrom
dmantre:shikra-modem
Open

dmantre wants to merge 3 commits into
qualcomm-linux:qcom-6.18.yfrom
dmantre:shikra-modem

Conversation

@dmantre

@dmantre dmantre commented Oct 19, 2026 •

Copy link
Copy Markdown

Enable modem cooling devices and cooling map bindings for modem.
need to back port this change to 2.0

CRs-Fixed: 4704082

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

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

3 similar comments
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

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

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

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

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

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

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4704082 is not eligible for merge.

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

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

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

@qlijarvis

Copy link
Copy Markdown

PR #1314 — validate-patch

PR: #1314

Verdict Issues Detailed Report
❌ 14 Full report

Final Summary

  1. Lore link present: Yes — https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/
  2. Lore link matches PR commits: No — PR uses a completely different implementation approach (standalone qcom,qmi-cooling-modem node vs remoteproc #cooling-cells), adds driver changes not in lore patch, omits CDSP cooling, and has incomplete commit message
  3. Upstream patch status: ⏳ Decision Pending — Posted Sep 11, 2026; has one Reviewed-by from Gaurav Kohli but Sashiko AI flagged critical build failures (missing header, undeclared symbols, schema violations); no maintainer acceptance signal; depends on unmerged v8 QMI TMD series
  4. PR present in qcom-next/topics: Partial - 1/1 commit(s) only have partial integration evidence
Verdict: ❌ — click to expand

🔍 Patch Validation

PR: #1314 - FROMLIST: arm64: dts: qcom: Enable modem qmi tmd devices for shikra
Upstream commit: https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/
Verdict: ❌ FAIL

Commit Message

Check Status Note
Subject matches upstream ❌ PR subject is incomplete and differs significantly from lore patch
Body preserves rationale ❌ PR commit message is missing the body entirely
Fixes tag present/correct N/A No Fixes tag in upstream patch
Authorship preserved ✅ Author matches: Dipa Mantre dipa.mantre@oss.qualcomm.com
Backport note (if applicable) N/A FROMLIST prefix used correctly

Diff

File Status Notes
arch/arm64/boot/dts/qcom/shikra.dtsi ❌ PR contains completely different implementation using qcom,qmi-cooling-modem compatible node instead of remoteproc #cooling-cells approach
drivers/soc/qcom/qmi-cooling.c ❌ PR adds driver changes not present in the lore patch

Issues

Critical Mismatch: Different Implementation Approach

The PR patch and the lore patch implement thermal cooling using fundamentally different approaches:

Lore patch (PATCH 2/2):

  • Adds #cooling-cells = <3> to remoteproc_mpss and remoteproc_cdsp nodes
  • Uses <&remoteproc_mpss QCOM_TMD_PA ...> and <&remoteproc_mpss QCOM_TMD_MODEM ...> in cooling-device references
  • Uses <&remoteproc_cdsp QCOM_TMD_CDSP_SW ...> for CDSP cooling
  • Includes <dt-bindings/thermal/qcom,pas.h> header for TMD macros
  • Changes only arch/arm64/boot/dts/qcom/shikra.dtsi (1 file, 71 insertions, 3 deletions)
  • Depends on PATCH 1/2 which adds TMD support to drivers/remoteproc/qcom_q6v5_pas.c

PR patch:

  • Creates a new cooling node with compatible = "qcom,qmi-cooling-modem"
  • Defines pa and modem child nodes with #cooling-cells = <2> (not 3)
  • Uses <&pa ...> and <&modem ...> as cooling-device references
  • Does NOT include <dt-bindings/thermal/qcom,pas.h>
  • Changes 2 files: arch/arm64/boot/dts/qcom/shikra.dtsi AND drivers/soc/qcom/qmi-cooling.c
  • Adds qcom,qmi-cooling-modem compatible to qmi-cooling.c driver

Commit Message Issues:

  1. Subject line truncated: PR subject is "Enable modem qmi tmd devices for shikra" but lore subject is "Enable CDSP & Modem cooling" — PR omits CDSP entirely from the subject
  2. Body missing: PR commit message contains only the subject and Signed-off-by + Link tags. The lore patch body explains: "Unlike the CPU, the CDSP/Modem does not throttle its speed automatically when it reaches high temperatures in shikra. Set up CDSP/Modem cooling by throttling the CDSP and modem when they reach 115°C using the QMI TMD cooling device framework."

Dependency Issues:

The lore patch series has explicit Depends-on: https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-0-b15d47adc379@oss.qualcomm.com/ and is part of a 2-patch series where PATCH 1/2 adds remoteproc TMD support. The PR appears to be attempting to implement only the DTS portion using a different driver binding approach, which is inconsistent with the upstream design.

AI Review Findings:

The Sashiko AI bot flagged critical issues in the lore thread:

  • PATCH 1/2: Missing prerequisite — tmd_instance_id, tmd_name, num_tmd fields and cdsp_tmd_name/modem_tmd_name arrays are undeclared, causing build regression
  • PATCH 2/2: Missing header <dt-bindings/thermal/qcom,pas.h> causes fatal build failure; #cooling-cells property violates DT schema (not documented in remoteproc bindings)

These issues indicate the upstream patch series itself has unresolved dependencies and may not be in a mergeable state.

Verdict

Do not merge. The PR patch does not faithfully represent the lore patch. The implementation approach is fundamentally different:

  • Lore uses remoteproc-based cooling with 3-cell cooling-device tuples
  • PR uses a standalone qcom,qmi-cooling-modem compatible node with 2-cell tuples

The PR also:

  1. Omits CDSP cooling entirely (only implements modem)
  2. Adds driver changes to qmi-cooling.c not present in the linked lore patch
  3. Has an incomplete commit message missing the rationale
  4. Does not match the file change scope (lore: 1 file; PR: 2 files)

Recommendation: If the intent is to backport the lore patch, the PR must be rewritten to match the upstream implementation exactly, including PATCH 1/2 dependency. If the intent is to use a different implementation, the lore link should be removed and the commit should use QCLINUX: or PENDING: prefix instead of FROMLIST:.

Final Summary

  1. Lore link present: Yes — https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/
  2. Lore link matches PR commits: No — PR uses a completely different implementation approach (standalone qcom,qmi-cooling-modem node vs remoteproc #cooling-cells), adds driver changes not in lore patch, omits CDSP cooling, and has incomplete commit message
  3. Upstream patch status: ⏳ Decision Pending — Posted Sep 11, 2026; has one Reviewed-by from Gaurav Kohli but Sashiko AI flagged critical build failures (missing header, undeclared symbols, schema violations); no maintainer acceptance signal; depends on unmerged v8 QMI TMD series
  4. PR present in qcom-next/topics: Partial — integration_presence_report.md shows "partial - subject or partial tree evidence found, but full change was not verified" (0/1 fully present, 1/1 partial)

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

Commit Subject qcom-next topics Final
1/1 [PATCH] FROMLIST: arm64: dts: qcom: Enable modem qmi tmd devices for partial - subject or partial tree evidence found, but full change was not verified missing - no subject, patch-id, or full tree-content match found partial

Final Status

overall_status: PARTIAL
present_commits: 0/1
partial_commits: 1/1
missing_commits: 0/1
topics_checked_for_commits: 1/1
final_summary: PR present in qcom-next/topics: Partial - 1/1 commit(s) only have partial integration evidence

@qlijarvis

Copy link
Copy Markdown

PR #1314 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch ✅ No style issues
dt-binding-check ⏭️ Skipped (no binding changes)
dtb-check ❌ Unevaluated properties in remoteproc and qmi-cooling bindings
sparse-check ✅ No static analysis issues
check-uapi-headers ✅ No UAPI/ABI issues
check-patch-compliance ❌ Content mismatch + author name mismatch
tag-check N/A Target branch is qcom-next (check not required)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1314 - FROMLIST: arm64: dts: qcom: Enable modem qmi tmd devices for shikra
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/39247121007

Checker Result Summary
checkpatch ✅ No style issues
dt-binding-check ⏭️ Skipped (no binding changes)
dtb-check ❌ Unevaluated properties in remoteproc and qmi-cooling bindings
sparse-check ✅ No static analysis issues
check-uapi-headers ✅ No UAPI/ABI issues
check-patch-compliance ❌ Content mismatch + author name mismatch
tag-check N/A Target branch is qcom-next (check not required)

❌ dtb-check

Root cause: The PR adds new cooling child node with modem and pa sub-nodes to remoteproc@6080000, but the qcom,shikra-pas.yaml binding schema does not declare these properties, triggering unevaluatedProperties: false violations.

Failure details:

remoteproc@6080000 (qcom,shikra-mpss-pas): cooling: Unevaluated properties are not allowed ('modem', 'pa' were unexpected)
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml
remoteproc@6080000 (qcom,shikra-mpss-pas): Unevaluated properties are not allowed ('cooling', 'interconnects' were unexpected)
	from schema $id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml
cooling (qcom,qmi-cooling-modem): Unevaluated properties are not allowed ('modem', 'pa' were unexpected)
	from schema $id: http://devicetree.org/schemas/thermal/qcom,qmi-cooling.yaml

This error appears across all shikra DTBs: shikra-cqm-evk.dtb, shikra-cqs-evk.dtb, shikra-iqs-evk*.dtb, etc.

Fix: Update the DT binding schemas to allow the new properties:

  1. Documentation/devicetree/bindings/remoteproc/qcom,shikra-pas.yaml — Add cooling child node to properties::

    properties:
      cooling:
        $ref: /schemas/thermal/qcom,qmi-cooling.yaml#
  2. Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml — Add modem and pa child nodes to patternProperties: or properties::

    patternProperties:
      "^(modem|pa|cdsp[0-9]*)$":
        type: object
        properties:
          label:
            type: string
          '#cooling-cells':
            const: 2
        required:
          - label
          - '#cooling-cells'

Reproduce locally:

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

❌ check-patch-compliance

Root cause: Two issues detected:

  1. Content mismatch — The patch content in the PR differs from the upstream lore patch.
  2. Author name mismatch — The commit author name is Dipa Mantre but the upstream patch author is Dipa Ramesh Mantre.

Failure details:

Checking commit: FROMLIST: arm64: dts: qcom: Enable modem qmi tmd devices for shikra
Change is different from the one mentioned in Link
Author mismatch:
  Original author: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
  Commit author : Dipa Mantre <dipa.mantre@oss.qualcomm.com>

Fix:

  1. Author mismatch — Update the commit author to match the upstream patch:

    git commit --amend --author="Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>"
  2. Content mismatch — Fetch the upstream patch and compare:

    b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/ -o /tmp/upstream
    git format-patch -1 881abcb43bf2 --stdout > /tmp/pr.patch
    diff <(awk '/^diff/,/^--$/' /tmp/pr.patch | grep -E '^[+-][^+-]') \
         <(awk '/^diff/,/^--$/' /tmp/upstream/*.mbx | grep -E '^[+-][^+-]')

    If the diff shows genuine differences (not just context shifts), either:

    • Revert to the exact upstream patch content, or
    • Document the adaptation reason in the commit message (e.g., "Adapted for vendor tree: ...").

Reproduce locally:

cd /path/to/kernel
bash ../kernel-checkers/check-patch-compliance.sh --kernel-src . --base b1c712400a3d --head 881abcb43bf2

Verdict

2 blockers must be fixed before merge:

  1. dtb-check — Update qcom,shikra-pas.yaml and qcom,qmi-cooling.yaml bindings to declare the new cooling, modem, and pa properties.
  2. check-patch-compliance — Fix author name to Dipa Ramesh Mantre and resolve content mismatch with upstream patch.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4704082 is not eligible for merge.

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

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

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

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4704082 is not eligible for merge.

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

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

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

…g-modem

Document the pa and modem cooling device nodes exposed by the
qcom,qmi-cooling-modem compatible.

Link: https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/
Signed-off-by: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
Signed-off-by: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4704082 is not eligible for merge.

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

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

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

@qlijarvis

Copy link
Copy Markdown

PR #1314 — validate-patch

PR: #1314

Verdict Issues Detailed Report
❌ 0 Full report

Final Summary

  1. Lore link present: Yes — but links point to wrong patches (different driver/binding architecture)
  2. Lore link matches PR commits: ❌ No — PR implements qcom,qmi-cooling-modem approach; lore implements qcom,pas #cooling-cells approach (fundamentally different architectures)
  3. Upstream patch status: ⏳ N/A — The lore patches are ACKed/merged, but they are not the same as the PR patches. The actual PR patches (if they exist upstream) were not found in lore evidence.
  4. PR present in qcom-next/topics: Fail - 1/3 commit(s) are missing from both qcom-next and topics
Verdict: ❌ — click to expand

🔍 Patch Validation

PR: #1314 - Add QMI cooling modem support
Verdict: ❌ FAIL


Critical Issue: Lore Links Do Not Match PR Content

The PR commits reference lore.kernel.org patches that are completely different from the actual PR changes:

PR Commit PR Changes Lore Link Lore Patch Changes
1/3 qcom,qmi-cooling.yaml binding 20260809-b4-qmi-tmd-v8-1 qcom,pas-common.yaml binding
2/3 qmi-cooling.c driver 20260809-b4-qmi-tmd-v8-2 qmi_tmd.c driver
3/3 shikra.dtsi with qcom,qmi-cooling-modem 20260911-shikra_qmi_tmd-v1-2 shikra.dtsi with qcom,pas #cooling-cells

Root cause: The PR implements a qcom,qmi-cooling based approach (standalone cooling device with pa and modem subnodes), while the linked lore patches implement a qcom,pas remoteproc-based approach (cooling cells directly on remoteproc nodes using #cooling-cells = <3> and QCOM_TMD_* constants).

These are two different thermal mitigation architectures that are mutually incompatible.


Commit Message Analysis

Commit 1/3

  • Subject: "FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem"
  • Authorship: From: Gaurav Kohli — MISMATCH with lore author Dipa Ramesh Mantre (lore v8 patch 1 is from Gaurav, but describes a different binding)
  • Link: Points to v8 patch 1 which is about qcom,pas-common.yaml, not qcom,qmi-cooling.yaml
  • Signed-off-by: Both Gaurav and Dipa present, but order inconsistent with lore

Commit 2/3

  • Subject: "FROMLIST: soc: qcom: qmi-cooling: Add modem support"
  • Authorship: From: Gaurav Kohli — MISMATCH with lore (v8 patch 2 is about qmi_tmd.c, not qmi-cooling.c)
  • Link: Points to v8 patch 2 which adds qmi_tmd.c (a new file), not modifying existing qmi-cooling.c
  • Signed-off-by: Order reversed from lore

Commit 3/3

  • Subject: "FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd devices"
  • Authorship: From: Gaurav Kohli — MISMATCH with lore author Dipa Ramesh Mantre
  • Link: Points to 20260911-shikra_qmi_tmd-v1-2 which uses #cooling-cells = <3> on remoteproc nodes, not a cooling subnode with qcom,qmi-cooling-modem
  • Description mismatch: Lore says "Enable CDSP & Modem cooling", PR says "Enable modem qmi tmd devices"

Diff Comparison

File PR Changes Lore Changes Match
qcom,qmi-cooling.yaml Adds qcom,qmi-cooling-modem schema with pa/modem subnodes Not present in lore — lore modifies qcom,pas-common.yaml instead ❌ FAIL
qmi-cooling.c Adds MODEM0_INSTANCE_ID entry to existing driver Not present in lore — lore creates new qmi_tmd.c file ❌ FAIL
shikra.dtsi Adds cooling { compatible = "qcom,qmi-cooling-modem"; pa { }; modem { }; } subnode Lore adds #cooling-cells = <3> to remoteproc nodes + uses QCOM_TMD_PA/QCOM_TMD_MODEM in cooling-maps ❌ FAIL

Semantic divergence: The PR and lore patches implement fundamentally different device tree bindings and driver architectures.


Upstream Patch Status

The lore patches (not the PR patches) have the following status:

Lore Series Status
v8 series (Aug 9, 2026) ✅ Partially ACKed — Patches 1-4/9 applied by Bjorn Andersson on Sep 25, 2026 to qcom tree
Commits merged 1a61afc42cff (dt-bindings), 2ff581c2185c (qmi_tmd), 8eef72102712 (remoteproc pas), 586a2fadadb1 (q6v5_pas)
Shikra dts patch (Sep 11, 2026) ⏳ Decision Pending — No merge signal found in thread

However: The PR patches are not the same as the lore patches, so this upstream status does not apply to the PR content.


Integration Presence (qcom-next/topics)

Per integration_presence_report.md:

Commit qcom-next topics Status
1/3 missing partial ⚠️ partial
2/3 missing missing ❌ missing
3/3 partial missing ⚠️ partial

Overall: ❌ FAIL — 1/3 commits completely missing, 2/3 partial matches only

Interpretation: The "partial" matches likely indicate that some thermal mitigation work for shikra exists in the tree (probably the qcom,pas approach from the lore patches), but the specific qcom,qmi-cooling-modem changes in this PR are not present.


Issues Found

  1. Wrong lore links (CRITICAL): All three commits link to lore patches that implement a different thermal mitigation architecture (qcom,pas with #cooling-cells = <3>) than what the PR implements (qcom,qmi-cooling-modem with cooling subnodes).

  2. Authorship violations: Commits 1/3 and 3/3 have From: Gaurav Kohli but the corresponding lore patches (if they existed) would be authored by Dipa Ramesh Mantre. For FROMLIST: commits, the submitter may differ from the lore author, but the original author's Signed-off-by: must be present first. Here, Dipa's SOB appears second, which is incorrect.

  3. Architectural conflict: The PR introduces qcom,qmi-cooling-modem compatible and modifies the existing qmi-cooling.c driver, while the upstream community has accepted a different approach using qcom,pas remoteproc nodes with #cooling-cells and a new qmi_tmd.c driver. Merging this PR would create two conflicting thermal mitigation mechanisms in the tree.

  4. Missing upstream patches: The actual patches that match this PR's content (if they exist) are not linked. A search of the lore evidence found no patches about qcom,qmi-cooling-modem or modifications to qmi-cooling.c for modem support.


Recommendation

❌ REJECT — Do not merge this PR.

Required actions:

  1. Verify intent: Determine whether this PR is intended to:

    • (a) Backport the upstream qcom,pas approach (commits 1a61afc42cff, 2ff581c2185c, 8eef72102712, 586a2fadadb1 + shikra dts changes), OR
    • (b) Introduce a new qcom,qmi-cooling-modem approach that differs from upstream
  2. If (a) — backport upstream approach:

    • Replace this PR with the actual upstream commits
    • Update lore links to point to the correct patches
    • Fix authorship: use UPSTREAM: or BACKPORT: prefix with original authors
    • Ensure From: matches lore author for UPSTREAM:/BACKPORT: commits
  3. If (b) — new vendor approach:

    • Change prefix from FROMLIST: to QCLINUX: (vendor-only, not posted upstream)
    • Remove lore links (no upstream equivalent exists)
    • Document why this approach differs from the accepted upstream qcom,pas method
    • Ensure this doesn't conflict with the upstream qmi_tmd.c driver if/when it's backported
  4. Fix authorship for all commits:

    • For FROMLIST:/UPSTREAM:/BACKPORT:: Original lore author must be in From: field
    • Original author's Signed-off-by: must appear first
    • Submitter's Signed-off-by: appears last

Final Summary

  1. Lore link present: Yes — but links point to wrong patches (different driver/binding architecture)
  2. Lore link matches PR commits: ❌ No — PR implements qcom,qmi-cooling-modem approach; lore implements qcom,pas #cooling-cells approach (fundamentally different architectures)
  3. Upstream patch status: ⏳ N/A — The lore patches are ACKed/merged, but they are not the same as the PR patches. The actual PR patches (if they exist upstream) were not found in lore evidence.
  4. PR present in qcom-next/topics: ❌ Fail — 1/3 commits missing, 2/3 partial (likely detecting the different qcom,pas approach, not this PR's qcom,qmi-cooling approach)

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

Commit Subject qcom-next topics Final
1/3 [PATCH 1/3] FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add missing - no subject, patch-id, or full tree-content match found partial - subject or partial tree evidence found, but full change was not verified partial
2/3 [PATCH 2/3] FROMLIST: soc: qcom: qmi-cooling: Add modem support missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
3/3 [PATCH 3/3] FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd partial - subject or partial tree evidence found, but full change was not verified missing - no subject, patch-id, or full tree-content match found partial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #1314 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch ⏭️ Not run (no job found)
dt-binding-check ✅ Passed
dtb-check ✅ Passed
sparse-check ✅ Passed
check-uapi-headers ✅ Passed
check-patch-compliance ❌ 3 commits: content mismatch + author mismatch
tag-check ✅ All commits have valid FROMLIST: prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1314 - FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/39262881581
Target branch: qcom-6.18.y

Checker Result Summary
checkpatch ⏭️ Not run (no job found)
dt-binding-check ✅ Passed
dtb-check ✅ Passed
sparse-check ✅ Passed
check-uapi-headers ✅ Passed
check-patch-compliance ❌ 3 commits: content mismatch + author mismatch
tag-check ✅ All commits have valid FROMLIST: prefix

❌ check-patch-compliance

Root cause: All three commits have content differences from their upstream lore links, and commits 2 and 3 have author mismatches.

Failure details:

Commit 1: FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem

Change is different from the one mentioned in Link
Link: https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/

Commit 2: FROMLIST: soc: qcom: qmi-cooling: Add modem support

Change is different from the one mentioned in Link
Author mismatch:
  Original author: Casey Connolly <casey.connolly@linaro.org>
  Commit author : Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-2-b15d47adc379@oss.qualcomm.com/

Commit 3: FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd devices

Change is different from the one mentioned in Link
Author mismatch:
  Original author: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
  Commit author : Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/

Analysis:

  1. Content mismatch (all 3 commits): The checker detected differences between the PR patches and the upstream lore patches. This could be:

    • Legitimate adaptations for the vendor tree (e.g., different base, context shifts)
    • Missing or extra hunks
    • Unintended modifications
  2. Author mismatch (commits 2 & 3):

    • Commit 2: Original author is Casey Connolly <casey.connolly@linaro.org> but the commit author is Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>. The original author should be preserved in the From: field.
    • Commit 3: Original author is Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com> but the commit author is Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>. The original author should be preserved.

Fix:

For author mismatches:

# Commit 2: Restore Casey Connolly as author
git rebase -i <base_sha>   # mark commit 2 as 'edit'
git commit --amend --author="Casey Connolly <casey.connolly@linaro.org>"
git rebase --continue

# Commit 3: Restore Dipa Ramesh Mantre as author
git rebase -i <base_sha>   # mark commit 3 as 'edit'
git commit --amend --author="Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>"
git rebase --continue

For content mismatches:

  1. Fetch the upstream patches and compare:

    # Commit 1
    b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/ -o /tmp/c1
    
    # Commit 2
    b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-2-b15d47adc379@oss.qualcomm.com/ -o /tmp/c2
    
    # Commit 3
    b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/ -o /tmp/c3
  2. Compare the diff content (ignoring context lines):

    # For each commit, extract and compare +/- lines
    git format-patch -1 <sha> --stdout | awk '/^diff/,/^--$/' | grep -E '^[+-][^+-]' > /tmp/pr_diff
    awk '/^diff/,/^--$/' /tmp/cN/*.mbx | grep -E '^[+-][^+-]' > /tmp/upstream_diff
    diff /tmp/pr_diff /tmp/upstream_diff
  3. Classify the differences:

    • Context-only shifts: Not a real issue (checker limitation)
    • Legitimate adaptations: Document in commit message why the change differs
    • Missing hunks: Add them
    • Extra hunks: Remove or attribute separately

Reproduce locally:

cd kernel
./scripts/check-patch-compliance.sh --base b1c712400a3d --head 8ad7610c2e8a

Verdict

3 blockers must be fixed before merge:

  1. Commit 2: Restore original author Casey Connolly <casey.connolly@linaro.org>
  2. Commit 3: Restore original author Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
  3. All commits: Investigate and resolve content mismatches with upstream lore patches. If the differences are intentional adaptations for the vendor tree, document them in the commit messages.

All other checkers (dt-binding-check, dtb-check, sparse-check, check-uapi-headers, tag-check) passed successfully.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4704082 is not eligible for merge.

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

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

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

@qlijarvis

Copy link
Copy Markdown

PR #1314 — validate-patch

PR: #1314

Verdict Issues Detailed Report
❌ 0 Full report

Final Summary

  1. Lore link present: Yes — all 3 commits have Link: tags
  2. Lore link matches PR commits: ❌ No — Commits 1/3 and 2/3 link to wrong patches (different files, different binding/driver architecture). Commit 3/3 links to a patch that modifies the same file but uses an incompatible binding approach.
  3. Upstream patch status: ⏳ Decision Pending for the linked lore series (v8 posted 2026-08-09, no merge/NAK signals). However, the linked series uses a different architecture (qmi_tmd.c + #cooling-cells) than this PR (qmi-cooling.c + qcom,qmi-cooling binding), so the upstream status of the PR's actual approach is unknown.
  4. PR present in qcom-next/topics: Fail - 1/3 commit(s) are missing from both qcom-next and topics
Verdict: ❌ — click to expand

🔍 Patch Validation

PR: #1314 - "FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem" (3 commits)
Upstream commits:

Verdict: ❌ FAIL

Commit Message

Check Status Note
Subject matches upstream ❌ Commit 1/3 and 2/3: PR subjects reference qcom,qmi-cooling but lore patches are about qcom,pas and qmi_tmd.c — completely different files
Body preserves rationale ❌ Commit 1/3 and 2/3: PR body text does not match lore patch body
Fixes tag present/correct N/A No Fixes tags in either PR or lore patches
Authorship preserved ⚠️ Commit 1/3: PR From: is Gaurav Kohli, lore From: is Gaurav Kohli (matches). Commit 2/3: PR From: is Casey Connolly, lore From: is Casey Connolly (matches). Commit 3/3: PR From: is Dipa Mantre, lore From: is Dipa Ramesh Mantre (name variant but same person)
Backport note (if applicable) N/A FROMLIST prefix — no backport note expected
Signed-off-by chain correct ⚠️ Commit 1/3: lore has only Gaurav Kohli SoB; PR adds Dipa Ramesh Mantre SoB (extra). Commit 2/3: lore has Casey Connolly SoB; PR has Dipa + Gaurav + Casey (extra SoBs). Commit 3/3: lore has Dipa Ramesh Mantre SoB; PR has Dipa Mantre + Gaurav Kohli (name variant + extra SoB)

Diff

File Status Notes
Commit 1/3: Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml ❌ WRONG FILE — PR modifies qcom,qmi-cooling.yaml; lore patch 1/9 modifies qcom,pas-common.yaml. These are completely different binding files for different subsystems.
Commit 2/3: drivers/soc/qcom/qmi-cooling.c ❌ WRONG FILE — PR modifies qmi-cooling.c (adds qcom,qmi-cooling-modem compatible); lore patch 2/9 creates a new file qmi_tmd.c (underscore, not hyphen). These are different drivers with different architectures.
Commit 3/3: arch/arm64/boot/dts/qcom/shikra.dtsi ⚠️ PARTIAL MATCH — Both PR and lore patch 2/2 modify shikra.dtsi to enable modem cooling. However, PR adds qcom,qmi-cooling-modem compatible node under remoteproc_mpss/cooling, while lore uses #cooling-cells directly on remoteproc_cdsp and remoteproc_mpss nodes with QCOM_TMD_* constants. Different binding approaches.

Issues

Critical: Wrong lore links for commits 1/3 and 2/3

  1. Commit 1/3 claims to be from lore patch 20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com, but:

    • PR changes: Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml — adds qcom,qmi-cooling-modem compatible with pa and modem child nodes
    • Lore patch 1/9 changes: Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml — adds #cooling-cells property to remoteproc nodes
    • Verdict: These are completely different files and binding approaches. The lore link is incorrect.
  2. Commit 2/3 claims to be from lore patch 20260809-b4-qmi-tmd-v8-2-b15d47adc379@oss.qualcomm.com, but:

    • PR changes: drivers/soc/qcom/qmi-cooling.c — adds 4 lines registering qcom,qmi-cooling-modem compatible
    • Lore patch 2/9 changes: drivers/soc/qcom/qmi_tmd.c — creates a new 595-line driver file from scratch
    • Verdict: These are different files (qmi-cooling.c vs qmi_tmd.c) implementing different driver architectures. The lore link is incorrect.
  3. Commit 3/3 references lore patch 20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com:

    • PR changes: Adds cooling subnode with qcom,qmi-cooling-modem compatible under remoteproc_mpss, plus thermal zone cooling-maps referencing &pa and &modem phandles
    • Lore patch 2/2 changes: Adds #cooling-cells = <3> directly to remoteproc_cdsp and remoteproc_mpss nodes, plus thermal zone cooling-maps using QCOM_TMD_MODEM_PA and QCOM_TMD_MODEM constants as the second cell
    • Verdict: Both patches enable modem cooling on shikra, but use incompatible binding styles. The PR uses a separate cooling subnode with child devices; the lore patch uses #cooling-cells directly on the remoteproc node with a 3-cell specifier. These are mutually exclusive approaches.

Authorship and Signed-off-by issues

  1. Commit 1/3: Lore patch has only Signed-off-by: Gaurav Kohli. PR adds Signed-off-by: Dipa Ramesh Mantre without explanation. For a FROMLIST: commit, the original lore author's SoB must be present (✅ it is), but adding extra SoBs suggests the PR submitter made changes — yet the commit message claims it's FROMLIST: (unmodified from list).

  2. Commit 2/3: Lore patch has Signed-off-by: Casey Connolly (plus Co-developed-by for Daniel Lezcano and Gaurav Kohli in the lore patch body). PR has Signed-off-by: Dipa Ramesh Mantre, Signed-off-by: Gaurav Kohli, Signed-off-by: Casey Connolly. The extra SoBs suggest the PR version was modified, but the FROMLIST: prefix claims it's unmodified.

  3. Commit 3/3: Lore patch author is Dipa Ramesh Mantre; PR author is Dipa Mantre (name shortened). PR adds Signed-off-by: Gaurav Kohli not present in lore. Again, extra SoB suggests modification.

Upstream Patch Status

Commit Community Verdict
1/3: dt-bindings: thermal: qcom,qmi-cooling ⏳ Decision Pending — lore series v8 posted 2026-08-09; no merge or NAK signals found in thread. However, the lore link points to the wrong patch (pas bindings, not qmi-cooling bindings), so upstream status cannot be determined for the actual PR content.
2/3: soc: qcom: qmi-cooling: Add modem support ⏳ Decision Pending — lore series v8 posted 2026-08-09; no merge or NAK signals found in thread. However, the lore link points to the wrong patch (qmi_tmd.c driver, not qmi-cooling.c driver), so upstream status cannot be determined for the actual PR content.
3/3: arm64: dts: qcom: shikra: Enable modem qmi tmd ⏳ Decision Pending — lore patch posted 2026-09-11; no merge or NAK signals found in thread. The lore patch modifies the same file (shikra.dtsi) but uses a different binding approach (3-cell cooling-device specifier vs separate cooling subnode).

PR Presence in qcom-next/topics

Per integration_presence_report.md:

Commit Status
1/3 ⚠️ partial — subject or partial tree evidence found in topics, but full change not verified
2/3 ❌ missing — not found in qcom-next or topics
3/3 ⚠️ partial — subject or partial tree evidence found, but full change not verified

Overall: FAIL — 1/3 commits missing from both qcom-next and topics; 2/3 commits have only partial evidence.

Verdict

❌ DO NOT MERGE — The lore links in commits 1/3 and 2/3 point to the wrong patches in the upstream series. The PR modifies qcom,qmi-cooling.yaml bindings and qmi-cooling.c driver, but the linked lore patches modify qcom,pas-common.yaml bindings and create a new qmi_tmd.c driver. These are fundamentally different approaches to the same problem (QMI-based thermal mitigation).

Required corrections:

  1. Find the correct lore links — The PR content suggests there should be a separate patch series on lore.kernel.org that introduces the qcom,qmi-cooling binding and qmi-cooling.c driver. The current links point to a different series (b4-qmi-tmd-v8) that uses a different architecture.

  2. If no correct lore link exists — If the qcom,qmi-cooling approach was never posted to lore, the commits should use QCLINUX: or PENDING: prefix instead of FROMLIST:, and the lore links should be removed.

  3. Reconcile the two approaches — The kernel tree appears to have two competing implementations of QMI thermal mitigation:

    • Approach A (this PR): qcom,qmi-cooling binding with separate cooling subnode + qmi-cooling.c driver
    • Approach B (lore v8 series): #cooling-cells on remoteproc nodes + qmi_tmd.c driver

    These are mutually exclusive. The maintainers need to decide which approach to use before merging either.

  4. Fix Signed-off-by chains — Remove extra SoBs if the commits are truly unmodified FROMLIST: patches, or change the prefix to BACKPORT: if modifications were made.

Final Summary

  1. Lore link present: Yes — all 3 commits have Link: tags
  2. Lore link matches PR commits: ❌ No — Commits 1/3 and 2/3 link to wrong patches (different files, different binding/driver architecture). Commit 3/3 links to a patch that modifies the same file but uses an incompatible binding approach.
  3. Upstream patch status: ⏳ Decision Pending for the linked lore series (v8 posted 2026-08-09, no merge/NAK signals). However, the linked series uses a different architecture (qmi_tmd.c + #cooling-cells) than this PR (qmi-cooling.c + qcom,qmi-cooling binding), so the upstream status of the PR's actual approach is unknown.
  4. PR present in qcom-next/topics: ❌ Fail — 1/3 commits missing entirely; 2/3 commits have only partial evidence (subject match but content not verified)

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

Commit Subject qcom-next topics Final
1/3 [PATCH 1/3] FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add missing - no subject, patch-id, or full tree-content match found partial - subject or partial tree evidence found, but full change was not verified partial
2/3 [PATCH 2/3] FROMLIST: soc: qcom: qmi-cooling: Add modem support missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
3/3 [PATCH 3/3] FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd partial - subject or partial tree evidence found, but full change was not verified missing - no subject, patch-id, or full tree-content match found partial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #1314 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch ✅ No style issues
dt-binding-check ✅ Binding validation passed
dtb-check ✅ DTB validation passed
sparse-check ✅ No sparse warnings
check-uapi-headers ✅ No UAPI changes
check-patch-compliance ❌ 3 commits with content mismatch + 1 author mismatch
tag-check ✅ All commits have valid FROMLIST: prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1314 - Add modem QMI cooling support for Shikra
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/39581002360

Checker Result Summary
checkpatch ✅ No style issues
dt-binding-check ✅ Binding validation passed
dtb-check ✅ DTB validation passed
sparse-check ✅ No sparse warnings
check-uapi-headers ✅ No UAPI changes
check-patch-compliance ❌ 3 commits with content mismatch + 1 author mismatch
tag-check ✅ All commits have valid FROMLIST: prefix

❌ check-patch-compliance

Root cause: All three commits show content differences from their upstream lore.kernel.org links, and commit 3/3 has an author name mismatch.

Failure details:

Checking commit: FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem
Change is different from the one mentioned in Link

Checking commit: FROMLIST: soc: qcom: qmi-cooling: Add modem support
Change is different from the one mentioned in Link

Checking commit: FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd devices
Change is different from the one mentioned in Link
Author mismatch:
  Original author: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
  Commit author : Dipa Mantre <dipa.mantre@oss.qualcomm.com>

Analysis:

Commit 1/3 - dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem

Commit 2/3 - soc: qcom: qmi-cooling: Add modem support

Commit 3/3 - arm64: dts: qcom: shikra: Enable modem qmi tmd devices

Fix:

  1. For content mismatches (all 3 commits): Verify the differences are intentional adaptations:

    # For each commit, fetch the upstream patch and compare
    b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/ -o /tmp/commit1
    git format-patch -1 e3e5536d7aa8 --stdout > /tmp/pr-commit1.patch
    
    # Compare the actual code changes (ignore context shifts)
    diff <(grep -E '^[+-][^+-]' /tmp/commit1/*.mbx | grep -v '^---' | grep -v '^+++') \
         <(grep -E '^[+-][^+-]' /tmp/pr-commit1.patch | grep -v '^---' | grep -v '^+++')

    If differences are legitimate adaptations (e.g., additional fixes, context changes for the vendor tree), document them in the commit message. If differences are unintended, revert to the upstream version.

  2. For author mismatch (commit 3/3): Fix the author name to match upstream:

    git rebase -i <base_sha>   # mark commit 3/3 as 'edit'
    git commit --amend --author="Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>"
    git rebase --continue

Reproduce locally:

cd <kernel-src>
bash ../kernel-checkers/check-patch-compliance.sh \
  --kernel-src . \
  --base b1c712400a3d970e06409c117c686b2451aaccb9 \
  --head d60fdf36830e06311ba101f735ae558b7f72f196

Verdict

Fix 1 blocker before merge: The author mismatch in commit 3/3 must be corrected to match the upstream author name (Dipa Ramesh Mantre instead of Dipa Mantre).

The content mismatches should be investigated to determine if they represent intentional adaptations for the vendor tree or unintended deviations. If intentional, consider documenting the changes in the commit message. If unintended, align with the upstream patches.

All other checkers passed successfully.

@qlijarvis

Copy link
Copy Markdown

PR #1314 — validate-patch

PR: #1314

Verdict Issues Detailed Report
❌ 0 Full report

Final Summary

  1. Lore link present: Yes — but links point to patches for a different driver (qmi_tmd.c vs qmi-cooling.c)
  2. Lore link matches PR commits: ❌ NO — fundamental file and architecture mismatch across all 3 commits
  3. Upstream patch status: ✅ Patches 1-2 ACKed and merged (but for wrong driver); Patch 3 pending with dependency issues
  4. PR present in qcom-next/topics: Fail - 1/3 commit(s) are missing from both qcom-next and topics
Verdict: ❌ — click to expand

🔍 Patch Validation

PR: #1314 - Add QMI cooling modem support
Verdict: ❌ FAIL

Critical Issues Found

1. Lore Link Mismatch — Wrong Driver Architecture

All three PR commits link to lore patches that modify completely different files:

PR Commit PR Modifies Lore Link Modifies Match?
1/3 qcom,qmi-cooling.yaml qcom,pas-common.yaml ❌ NO
2/3 qmi-cooling.c qmi_tmd.c ❌ NO
3/3 shikra.dtsi shikra.dtsi ⚠️ PARTIAL

Root cause: The Qualcomm tree uses an older driver architecture (qmi-cooling.c, added Dec 2025) while the lore patches implement a newer architecture (qmi_tmd.c, posted Aug 2026). These are fundamentally different implementations of QMI thermal mitigation.

The PR is attempting to add modem support to the existing qmi-cooling.c driver but fraudulently linking to upstream patches that add modem support to a completely different driver (qmi_tmd.c).


2. Authorship Violations

Commit 1/3:

  • PR Author: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
  • Lore Author: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com> ✅
  • Issue: Lore patch modifies qcom,pas-common.yaml but PR modifies qcom,qmi-cooling.yaml — content mismatch invalidates authorship check

Commit 2/3:

  • PR Author: Casey Connolly <casey.connolly@linaro.org>
  • Lore Author: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com> ❌
  • Issue: Author mismatch AND file mismatch (PR: qmi-cooling.c, lore: qmi_tmd.c)

Commit 3/3:

  • PR Author: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
  • Lore Author: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com> ✅
  • Issue: Subject mismatch (PR: "Enable modem qmi tmd devices", lore: "Enable CDSP & Modem cooling")

3. Missing Dependencies

The lore shikra patch (commit 3/3) depends on:

  • <dt-bindings/thermal/qcom,pas.h> header (introduced in lore patch 1/9)
  • #cooling-cells property in remoteproc bindings (introduced in lore patch 1/9)
  • qmi_tmd.c driver (introduced in lore patch 2/9)

None of these exist in the Qualcomm tree. The sashiko-bot review on lore.kernel.org flagged both issues:

"The header file <dt-bindings/thermal/qcom,pas.h> appears to be completely missing from the tree. Does this include cause a fatal build failure?"

"The #cooling-cells property is not documented in the remoteproc schemas... Does adding this property cause make dtbs_check to fail?"


Commit Message Analysis

Check Status Note
Subject matches upstream ❌ Commit 1: "Add qcom,qmi-cooling-modem" vs lore "add #cooling-cells property"
Commit 2: "Add modem support" vs lore "Add QMI TMD support"
Commit 3: "Enable modem qmi tmd devices" vs lore "Enable CDSP & Modem cooling"
Body preserves rationale ⚠️ Commit 3 body is rewritten; lore mentions "CDSP/Modem", PR only mentions "MPSS"
Fixes tag present/correct N/A Not applicable (new feature)
Authorship preserved ❌ Commit 2/3: Casey Connolly in PR, Gaurav Kohli in lore
Backport note N/A FROMLIST prefix used (not BACKPORT)

Diff Comparison

Commit 1/3:

  • PR: Adds qcom,qmi-cooling-modem compatible to qcom,qmi-cooling.yaml
  • Lore: Adds #cooling-cells property to qcom,pas-common.yaml
  • Verdict: ❌ FAIL — completely different files and content

Commit 2/3:

  • PR: Adds modem support to qmi-cooling.c (4 lines: compatible + instance data)
  • Lore: Adds entire qmi_tmd.c driver (500+ lines)
  • Verdict: ❌ FAIL — completely different files and implementation

Commit 3/3:

  • PR: Adds modem cooling nodes + thermal zones to shikra.dtsi (57 lines)
  • Lore: Adds CDSP + modem cooling nodes + thermal zones to shikra.dtsi (71 lines)
  • Verdict: ⚠️ PARTIAL — same file, overlapping content, but PR omits CDSP portions and has different thermal zone configuration

Upstream Patch Status

Commit Lore Link Community Verdict
1/3 20260809-b4-qmi-tmd-v8-1-b15d47adc379 ✅ ACKed — merged as 1a61afc42cff by Bjorn Andersson on 2026-09-25 (patch 1/9 of v8 series)
2/3 20260809-b4-qmi-tmd-v8-2-b15d47adc379 ✅ ACKed — merged as 2ff581c2185c by Bjorn Andersson on 2026-09-25 (patch 2/9 of v8 series)
3/3 20260911-shikra_qmi_tmd-v1-2-96c1cca82f30 ⏳ Decision Pending — sashiko-bot flagged missing dependencies; no maintainer acceptance signal found

Note: While the lore patches are ACKed/merged, they implement a different driver architecture than what exists in the Qualcomm tree. The PR cannot claim FROMLIST status for code that doesn't match the lore content.


Integration Presence (qcom-next/topics)

Per integration_presence_report.md:

Commit qcom-next topics Final
1/3 missing partial partial
2/3 missing missing missing
3/3 partial missing partial

Overall: ❌ FAIL — 1/3 commits completely missing, 2/3 only partially present


Verdict

❌ REJECT — Do not merge

Issues Summary

  1. Fraudulent lore attribution: PR links to upstream patches that modify completely different files (qmi_tmd.c vs qmi-cooling.c, qcom,pas-common.yaml vs qcom,qmi-cooling.yaml)

  2. Architectural mismatch: Upstream is implementing a new qmi_tmd framework; Qualcomm tree has an older qmi-cooling framework. These are incompatible.

  3. Authorship violation: Commit 2/3 author mismatch (Casey Connolly vs Gaurav Kohli)

  4. Missing dependencies: Commit 3/3 depends on headers and bindings that don't exist in the Qualcomm tree

  5. Integration failure: 1/3 commits completely missing from qcom-next/topics


Recommendation

Option 1 (Recommended): If the goal is to add modem support to the existing qmi-cooling.c driver:

  • Remove all lore links (these patches are for a different driver)
  • Change prefix from FROMLIST: to QCLINUX: (vendor-specific enhancement)
  • Fix authorship for commit 2/3
  • Verify commit 3/3 doesn't depend on missing headers

Option 2: If the goal is to adopt the upstream qmi_tmd architecture:

  • Backport the full v8 series (patches 1-9) that were merged upstream
  • This requires replacing the existing qmi-cooling.c driver
  • Ensure all dependencies (headers, bindings) are included
  • Use BACKPORT: or UPSTREAM: prefix with correct lore links

Option 3: Close this PR and wait for the upstream qmi_tmd patches to land in mainline, then backport the complete series


Final Summary

  1. Lore link present: Yes — but links point to patches for a different driver (qmi_tmd.c vs qmi-cooling.c)
  2. Lore link matches PR commits: ❌ NO — fundamental file and architecture mismatch across all 3 commits
  3. Upstream patch status: ✅ Patches 1-2 ACKed and merged (but for wrong driver); Patch 3 pending with dependency issues
  4. PR present in qcom-next/topics: ❌ Fail — 1/3 commits missing, 2/3 only partial matches

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

Commit Subject qcom-next topics Final
1/3 [PATCH 1/3] FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add missing - no subject, patch-id, or full tree-content match found partial - subject or partial tree evidence found, but full change was not verified partial
2/3 [PATCH 2/3] FROMLIST: soc: qcom: qmi-cooling: Add modem support missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
3/3 [PATCH 3/3] FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd partial - subject or partial tree evidence found, but full change was not verified missing - no subject, patch-id, or full tree-content match found partial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #1314 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch ✅ All 3 commits passed with no style issues
dt-binding-check ✅ Binding validation passed
dtb-check ✅ DTB validation passed
sparse-check ✅ No new sparse warnings
check-uapi-headers ✅ No UAPI changes detected
check-patch-compliance ❌ Content mismatch detected for all 3 commits
tag-check ✅ All commits have valid FROMLIST: prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1314 - FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/39590945365
Target branch: qcom-6.18.y

Checker Result Summary
checkpatch ✅ All 3 commits passed with no style issues
dt-binding-check ✅ Binding validation passed
dtb-check ✅ DTB validation passed
sparse-check ✅ No new sparse warnings
check-uapi-headers ✅ No UAPI changes detected
check-patch-compliance ❌ Content mismatch detected for all 3 commits
tag-check ✅ All commits have valid FROMLIST: prefix

❌ check-patch-compliance

Root cause: All three commits report "Change is different from the one mentioned in Link" — the checker detected differences between the PR patches and the upstream lore patches.

Failure details:

Checking commit: FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem
Change is different from the one mentioned in Link

Checking commit: FROMLIST: soc: qcom: qmi-cooling: Add modem support
Change is different from the one mentioned in Link

Checking commit: FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd devices
Change is different from the one mentioned in Link

Analysis:

The checker compared each commit against its upstream lore link and found differences:

  1. Commit 1 (e3e5536d7aa8): Links to https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/
  2. Commit 2 (987959d46a23): Links to https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-2-b15d47adc379@oss.qualcomm.com/
  3. Commit 3 (32e37d01244e): Links to https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/

Possible causes:

  • Context-only differences — surrounding code changed between upstream posting and backport (not a real issue)
  • Legitimate adaptations — changes needed for the target kernel version (should be documented in commit message)
  • Missing/extra hunks — incomplete backport or additional changes bundled in
  • Author/sign-off differences — trailer lines added/modified during integration

Fix:

Verify the differences manually by fetching the upstream patches and comparing:

# For each commit, fetch the upstream patch
b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/ -o /tmp/commit1
b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-2-b15d47adc379@oss.qualcomm.com/ -o /tmp/commit2
b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/ -o /tmp/commit3

# Compare the actual code changes (ignoring context)
git format-patch -1 e3e5536d7aa8 --stdout | awk '/^diff/,/^--$/' | grep -E '^[+-][^+-]' > /tmp/pr_commit1.diff
awk '/^diff/,/^--$/' /tmp/commit1/*.mbx | grep -E '^[+-][^+-]' > /tmp/upstream_commit1.diff
diff /tmp/pr_commit1.diff /tmp/upstream_commit1.diff

# Repeat for commits 2 and 3

Classification:

  • If only context lines differ → acceptable (context-only shift due to tree state)
  • If legitimate adaptations exist → document them in the commit message with a note like "Adapted for qcom-6.18.y: "
  • If missing hunks → add them
  • If extra hunks → split into separate commits or document why they're needed
  • If author/trailer differences → verify they're intentional (e.g., additional sign-offs for integration)

Reproduce locally:

cd /path/to/kernel
bash ../kernel-checkers/check-patch-compliance.sh \
  --kernel-src . \
  --base b1c712400a3d970e06409c117c686b2451aaccb9 \
  --head 32e37d01244eba0fdfab54ffb79066de93f62234

Verdict

1 blocker to investigate before merge:

The check-patch-compliance content mismatch must be triaged to determine if the differences are:

  • Acceptable (context-only shifts) → merge as-is
  • Documented adaptations → verify documentation is present
  • Real discrepancies → fix the patches to match upstream or document why they differ

All other checkers passed cleanly. Once the content mismatch is verified as acceptable or resolved, the PR is ready to merge.

Casey Connolly (kcxt) and others added 2 commits October 22, 2026 19:06
Register the qcom,qmi-cooling-modem compatible.

Link: https://lore.kernel.org/all/20251223123227.1317244-5-gaurav.kohli@oss.qualcomm.com/
Signed-off-by: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
Signed-off-by: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
Signed-off-by: Casey Connolly <casey.connolly@linaro.org>
Unlike the CPU, the MPSS does not throttle its speed automatically
when it reaches high temperatures on shikra. Set up MPSS cooling by
throttling the PA and modem when mdmss0/mdmss1 reach 115°C.

Link: https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/
Signed-off-by: Dipa Ramesh Mantre <dipa.mantre@oss.qualcomm.com>
Signed-off-by: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
@qlijarvis

Copy link
Copy Markdown

PR #1314 — validate-patch

PR: #1314

Verdict Issues Detailed Report
❌ 0 Full report

Final Summary

  1. Lore link present: Yes - but all 3 links point to wrong patches
  2. Lore link matches PR commits: No - architectural mismatch (3-cell vs 2-cell bindings), wrong patch content (full driver vs 4-line addition), missing CDSP cooling
  3. Upstream patch status: ⏳ Decision Pending for all 3 series (v8 Aug 2026, v1 Dec 2025, v1 Sept 2026) - no merge or NAK signals found
  4. PR present in qcom-next/topics: Fail - 1/3 commit(s) are missing from both qcom-next and topics
Verdict: ❌ — click to expand

🔍 Patch Validation

PR: #1314 - Add QMI TMD modem cooling support
Upstream commits: Multiple lore links (see per-commit analysis below)
Verdict: ❌ FAIL

Per-Commit Analysis

Commit 1/3: FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem

Lore link: https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/
Author: Gaurav Kohli gaurav.kohli@oss.qualcomm.com

Check Status Note
Lore link matches content ❌ Links to v8 patch 1/9 about qcom,pas bindings, but PR modifies qcom,qmi-cooling.yaml
Subject matches upstream ❌ PR: "Add qcom,qmi-cooling-modem" vs Lore v8 1/9: "qcom,pas: add #cooling-cells property"
Body preserves rationale ❌ PR commit message is minimal; lore patch has detailed rationale
Authorship preserved ✅ Gaurav Kohli correctly in From: and Signed-off-by:
FROMLIST: author in SoB ✅ Original author present in sign-off chain

Diff Analysis:

  • PR adds qcom,qmi-cooling-modem compatible with pa and modem child nodes to qcom,qmi-cooling.yaml
  • Lore v8 1/9 adds #cooling-cells property to qcom,pas-common.yaml (completely different file and approach)
  • Verdict: Wrong lore link - content does not match

Upstream Status: ⏳ Decision Pending - v8 series posted Aug 2026, no merge/NAK signals found in thread

Integration Presence: ⚠️ Partial - subject or partial tree evidence found in topics, but full change not verified in qcom-next or topics


Commit 2/3: FROMLIST: soc: qcom: qmi-cooling: Add modem support

Lore link: https://lore.kernel.org/all/20251223123227.1317244-5-gaurav.kohli@oss.qualcomm.com/
Author: Casey Connolly casey.connolly@linaro.org

Check Status Note
Lore link matches content ❌ Links to v1 patch 4/8 (full driver implementation ~1368 lines), but PR only adds 4-line modem compatible registration
Subject matches upstream ❌ PR: "Add modem support" vs Lore v1 4/8: "add qmi-cooling driver" (full driver, not modem support)
Body preserves rationale ❌ PR has minimal commit message; lore has detailed driver description
Authorship preserved ⚠️ Casey Connolly in From:, but lore v1 4/8 has Casey as From: with Gaurav as Co-developed-by: - sign-off order differs
FROMLIST: author in SoB ✅ Casey Connolly present in sign-off chain

Diff Analysis:

  • PR adds only 4 lines: modem compatible registration in qmi_tmd_device_table[]
  • Lore v1 4/8 adds the entire qmi-cooling driver (~1368 lines across 5 files)
  • Verdict: Wrong lore link - PR cherry-picks a tiny fragment from a much larger patch without attribution

Upstream Status: ⏳ Decision Pending - v1 series posted Dec 2025, no merge/NAK signals found

Integration Presence: ❌ Missing - no subject, patch-id, or full tree-content match found in qcom-next or topics


Commit 3/3: FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd devices

Lore link: https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/
Author: Dipa Ramesh Mantre dipa.mantre@oss.qualcomm.com

Check Status Note
Lore link matches content ❌ Architectural mismatch - different binding structure
Subject matches upstream ⚠️ PR: "Enable modem qmi tmd devices" vs Lore: "Enable CDSP & Modem cooling" (lore includes CDSP, PR is modem-only)
Body preserves rationale ✅ Both mention throttling at 115°C
Authorship preserved ✅ Dipa Ramesh Mantre correctly in From: and Signed-off-by:
FROMLIST: author in SoB ✅ Original author present in sign-off chain

Diff Analysis - Critical Architectural Difference:

Aspect Lore Patch (Sept 2026) PR Patch
Binding structure Uses #cooling-cells = <3> on remoteproc node Uses #cooling-cells = <2> on child cooling subnode
Cooling device reference <&remoteproc_mpss QCOM_TMD_PA ...> <&pa THERMAL_NO_LIMIT ...>
Device tree hierarchy Flat: cooling-device points directly to remoteproc Nested: cooling { pa: pa { }; modem: modem { }; } subnode
Requires dt-bindings #include <dt-bindings/thermal/qcom,pas.h> for QCOM_TMD_PA / QCOM_TMD_MODEM constants No include needed - uses phandle labels
CDSP cooling Included in lore patch Missing from PR

Verdict: The PR uses a completely different device tree binding architecture than the lore patch. The lore patch uses the 3-cell qcom,pas cooling approach (remoteproc node as cooling device with device_id selector), while the PR uses the 2-cell qcom,qmi-cooling subnode approach (separate child nodes for each cooling device). These are incompatible binding designs.

Upstream Status: ⏳ Decision Pending - v1 series posted Sept 2026, no merge/NAK signals found

Integration Presence: ⚠️ Partial - subject or partial tree evidence found in topics, but full change not verified in qcom-next or topics


Critical Issues Found

  1. Wrong lore links (all 3 commits): Each commit links to a lore patch that does not match the PR content:

    • Commit 1/3 links to v8 1/9 (qcom,pas bindings) but modifies qcom,qmi-cooling.yaml
    • Commit 2/3 links to v1 4/8 (full 1368-line driver) but only adds 4-line modem compatible
    • Commit 3/3 links to Sept 2026 patch using 3-cell qcom,pas binding, but PR uses 2-cell qcom,qmi-cooling binding
  2. Architectural inconsistency: The PR mixes two incompatible binding approaches:

    • Commit 1/3 adds qcom,qmi-cooling-modem compatible with 2-cell child nodes (pa, modem)
    • But the upstream v8 series (Aug 2026) uses qcom,pas 3-cell approach with QCOM_TMD_* constants
    • The lore patch for commit 3/3 (Sept 2026) also uses the 3-cell approach
    • These two binding styles cannot coexist - the PR needs to pick one architecture
  3. Missing CDSP cooling: Lore patch for commit 3/3 enables both CDSP and Modem cooling; PR only enables Modem

  4. Incomplete backport: Commit 2/3 cherry-picks 4 lines from a 1368-line driver patch without documenting the dependency on the full driver being present

Upstream Patch Status Summary

Commit Series Status
1/3 v8 (Aug 2026) - qcom,pas approach ⏳ Decision Pending - no merge/NAK signals
2/3 v1 (Dec 2025) - full driver ⏳ Decision Pending - no merge/NAK signals
3/3 v1 (Sept 2026) - qcom,pas approach ⏳ Decision Pending - no merge/NAK signals

None of the linked patches have been merged to mainline or received explicit ACK/NAK from maintainers.

Integration Presence (from integration_presence_report.md)

Overall Status: FAIL
Present in qcom-next/topics: 0/3 commits fully present, 2/3 partial, 1/3 missing

  • Commit 1/3: Partial (subject/partial tree evidence in topics, not in qcom-next)
  • Commit 2/3: Missing (not found in qcom-next or topics)
  • Commit 3/3: Partial (subject/partial tree evidence in topics, not in qcom-next)

Recommendation

DO NOT MERGE - This PR has multiple critical issues:

  1. Fix lore links: Each commit must link to the correct upstream patch that matches its content
  2. Resolve binding architecture conflict: Choose one approach:
    • Option A (qcom,pas 3-cell): Use #cooling-cells = <3> on remoteproc nodes with QCOM_TMD_* constants (matches v8 Aug 2026 series)
    • Option B (qcom,qmi-cooling 2-cell): Use cooling subnode with pa/modem child nodes (matches v1 Dec 2025 series)
  3. Complete the backport: If using Option B, ensure the full qmi-cooling driver (v1 4/8) is present, not just the 4-line modem compatible addition
  4. Add CDSP cooling: Include CDSP cooling in shikra.dtsi to match the lore patch scope
  5. Verify integration presence: Resolve why commits are missing/partial in qcom-next and topics before merging

Final Summary

  1. Lore link present: Yes - but all 3 links point to wrong patches
  2. Lore link matches PR commits: No - architectural mismatch (3-cell vs 2-cell bindings), wrong patch content (full driver vs 4-line addition), missing CDSP cooling
  3. Upstream patch status: ⏳ Decision Pending for all 3 series (v8 Aug 2026, v1 Dec 2025, v1 Sept 2026) - no merge or NAK signals found
  4. PR present in qcom-next/topics: Fail - 1/3 commit missing, 2/3 partial (per integration_presence_report.md)

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

Commit Subject qcom-next topics Final
1/3 [PATCH 1/3] FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add missing - no subject, patch-id, or full tree-content match found partial - subject or partial tree evidence found, but full change was not verified partial
2/3 [PATCH 2/3] FROMLIST: soc: qcom: qmi-cooling: Add modem support missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing
3/3 [PATCH 3/3] FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd partial - subject or partial tree evidence found, but full change was not verified missing - no subject, patch-id, or full tree-content match found partial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #1314 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch ✅ All 3 commits passed
dt-binding-check ✅ Binding validation passed
dtb-check ✅ DTB validation passed
sparse-check ✅ No sparse warnings
check-uapi-headers ✅ No UAPI changes
check-patch-compliance ❌ Content mismatch on all 3 commits
tag-check ✅ All commits have FROMLIST: prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1314 - Add qcom,qmi-cooling-modem support
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/39788912121
Target branch: qcom-6.18.y

Checker Result Summary
checkpatch ✅ All 3 commits passed
dt-binding-check ✅ Binding validation passed
dtb-check ✅ DTB validation passed
sparse-check ✅ No sparse warnings
check-uapi-headers ✅ No UAPI changes
check-patch-compliance ❌ Content mismatch on all 3 commits
tag-check ✅ All commits have FROMLIST: prefix

❌ check-patch-compliance

Root cause: All three commits report "Change is different from the one mentioned in Link" — the patch content in the PR differs from the upstream lore patches.

Failure details:

Checking commit: FROMLIST: dt-bindings: thermal: qcom,qmi-cooling: Add qcom,qmi-cooling-modem
Change is different from the one mentioned in Link

Checking commit: FROMLIST: soc: qcom: qmi-cooling: Add modem support
Change is different from the one mentioned in Link

Checking commit: FROMLIST: arm64: dts: qcom: shikra: Enable modem qmi tmd devices
Change is different from the one mentioned in Link

Analysis:

The checker detected content differences between the PR commits and their linked lore patches:

  1. Commit 1 (e3e5536d7aa8): Links to 20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com
  2. Commit 2 (97ba6dba7a09): Links to 20251223123227.1317244-5-gaurav.kohli@oss.qualcomm.com
  3. Commit 3 (f7e4dd030280): Links to 20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com

Possible causes:

  • The PR may contain local adaptations or fixes not present in the upstream patches
  • The Link URLs may point to older patch versions while the PR contains newer revisions
  • Context lines may have shifted due to tree differences (common false positive)
  • Additional hunks may have been added for vendor-specific integration

Fix:

Verify the content differences manually:

# For each commit, fetch the upstream patch and compare:
b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260809-b4-qmi-tmd-v8-1-b15d47adc379@oss.qualcomm.com/ -o /tmp/commit1
b4 am --single-message -C -l -3 https://lore.kernel.org/all/20251223123227.1317244-5-gaurav.kohli@oss.qualcomm.com/ -o /tmp/commit2
b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260911-shikra_qmi_tmd-v1-2-96c1cca82f30@oss.qualcomm.com/ -o /tmp/commit3

# Compare the actual code changes (ignoring context):
diff <(git format-patch -1 e3e5536d7aa8 --stdout | awk '/^diff/,/^--$/' | grep -E '^[+-][^+-]') \
     <(awk '/^diff/,/^--$/' /tmp/commit1/*.mbx | grep -E '^[+-][^+-]')

Then classify each difference:

  • Context-only shift → Not a real issue; document in commit message if needed
  • Legitimate adaptation → Add a note in the commit body explaining the vendor-specific change
  • Missing hunk → Add the missing change
  • Extra hunk → Remove or attribute separately with a new commit
  • Wrong Link URL → Update the Link to point to the correct patch version

Reproduce locally:

cd /path/to/kernel
./scripts/check-patch-compliance.sh --base 8b4dfa578ca0 --head 36b4282af3de

Verdict

3 blockers to fix before merge — all three commits fail check-patch-compliance due to content mismatch with their linked upstream patches. Verify whether the differences are legitimate adaptations (document them) or errors (fix them). If the differences are context-only shifts or the Link URLs point to outdated patch versions, update the Links or add explanatory notes to the commit messages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants