Skip to content

FROMLIST: media: qcom: iris: Add generic Gen2 firmware detection and loading#1191

Open
gouravk-qualcomm wants to merge 2 commits into
qualcomm-linux:tech/mm/videofrom
gouravk-qualcomm:kodiak-gen2
Open

FROMLIST: media: qcom: iris: Add generic Gen2 firmware detection and loading#1191
gouravk-qualcomm wants to merge 2 commits into
qualcomm-linux:tech/mm/videofrom
gouravk-qualcomm:kodiak-gen2

Conversation

@gouravk-qualcomm
Copy link
Copy Markdown

This series enhances the Iris driver to support platforms that provide both
Gen1 and Gen2 HFI firmware by adding generic runtime firmware generation
detection and selection logic.

Some Iris platforms are capable of running either Gen1 or Gen2 HFI‑based
firmware, but the driver has historically assumed a single firmware
generation selected at build or platform‑definition time. This series
updates the firmware loading mechanism to dynamically determine the
firmware generation at runtime and select the appropriate HFI
implementation accordingly.

When no Device Tree firmware override is present, the driver now prefers
Gen2 firmware when available and falls back to Gen1 if loading Gen2
fails. When a firmware name is explicitly provided via Device Tree and
both Gen1 and Gen2 descriptors are available, the loaded firmware image
is inspected prior to authentication to determine its generation. Based
on this detection, the driver updates its firmware descriptor and
platform data so that the correct HFI implementation is used.

CRs-Fixed: 4496236 , 4521169

… init

The HFI sys ops were previously initialized in probe() but, we don't
have firmware loaded at probe time. Since HFI is tightly coupled to
firmware, initialize the HFI sys ops after firmware has been successfully
loaded and booted.

Link: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-1-a98968423d24@oss.qualcomm.com/
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
@qcomlnxci qcomlnxci requested review from a team, dikshita-agarwal and vgarodia and removed request for a team May 20, 2026 00:10
@knaveen-qc
Copy link
Copy Markdown

🔨 Build Failure Analysis — PR #1191

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

# Error File:Line PR-introduced? Root Cause
1 'const struct iris_platform_data' has no member named 'firmware_desc'; did you mean 'firmware_desc_gen1'? drivers/media/platform/qcom/iris/iris_platform_vpu4x.c:81 Yes PR patch 2/2 renames firmware_descfirmware_desc_gen1/firmware_desc_gen2 in iris_platform_common.h and updates all platform files it touches, but iris_platform_vpu4x.c (which still uses .firmware_desc) was not updated

Verdict

1 of 1 error is introduced by this PR; the struct field rename in iris_platform_common.h was not applied to iris_platform_vpu4x.c, causing a hard compile error in both the standard and RT builds.

📎 Detailed analysis: Full report

@knaveen-qc
Copy link
Copy Markdown

🔨 Build Failure Analysis — PR #1191

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

# Error File:Line PR-introduced? Root Cause
1 'const struct iris_platform_data' has no member named 'firmware_desc'; did you mean 'firmware_desc_gen1'? drivers/media/platform/qcom/iris/iris_platform_vpu4x.c:81 Yes PR patch 2/2 renames firmware_descfirmware_desc_gen1 / firmware_desc_gen2 in iris_platform_common.h, but iris_platform_vpu4x.c (not touched by the PR) still uses the old .firmware_desc field name.

Verdict

1 of 1 error is introduced by this PR: the struct field rename in iris_platform_common.h was not propagated to iris_platform_vpu4x.c.

📎 Detailed analysis: Full report

@knaveen-qc
Copy link
Copy Markdown

PR #1191 — validate-patch

PR: #1191

Verdict Issues Detailed Report
⚠️ 0 Full report

Final Summary

  1. Lore link present: Yes — Patch 1: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-1-a98968423d24@oss.qualcomm.com/; Patch 2: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-2-a98968423d24@oss.qualcomm.com/
  2. Lore link matches PR commits: Likely Yes — diff content is internally consistent and the series name (kodiak-gen2-support) matches the PR content; two hunks flagged for live verification (sc7280 Gen2 descriptor and iris_session_init_caps move) due to network being blocked
  3. Upstream patch status: ⏳ Decision Pending — v5 series posted 2026-05-12 with Reviewed-by: tags; merge status unconfirmable without network access
  4. PR present in qcom-next: Not checked — kernel repo unavailable in this environment
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #1191 — "FROMLIST: media: iris: Initialize HFI ops after firmware load in core init" + "FROMLIST: media: iris: Add Gen2 firmware autodetect and fallback" (2 commits)
Upstream commits:

  • Patch 1/2: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-1-a98968423d24@oss.qualcomm.com/
  • Patch 2/2: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-2-a98968423d24@oss.qualcomm.com/

Verdict: ⚠️ PARTIAL


Commit 1 — FROMLIST: media: iris: Initialize HFI ops after firmware load in core init

Commit Message

Check Status Note
Subject matches upstream FROMLIST: prefix added; core subject preserved
Body preserves rationale Explains why HFI ops must move post-firmware-load
Fixes tag present/correct N/A Not a bugfix commit; no Fixes: expected
Authorship preserved FROMLIST:From: is submitter (Dikshita Agarwal); original author's Signed-off-by: present
Backport note N/A Not a backport
Co-developed-by used correctly N/A Not present

Diff

File Status Notes
drivers/media/platform/qcom/iris/iris_core.c Adds core->iris_firmware_data->init_hfi_ops(core) after firmware load
drivers/media/platform/qcom/iris/iris_probe.c Removes init_hfi_ops(core) call from iris_probe()

Issues

None identified for commit 1.


Commit 2 — FROMLIST: media: iris: Add Gen2 firmware autodetect and fallback

Commit Message

Check Status Note
Subject matches upstream FROMLIST: prefix added; core subject preserved
Body preserves rationale Detailed description of Gen1/Gen2 detection logic and priority order preserved
Fixes tag present/correct N/A New feature; no Fixes: expected
Authorship preserved FROMLIST:From: is submitter (Dikshita Agarwal); original author's Signed-off-by: present
Backport note N/A Not a backport
Co-developed-by used correctly Co-developed-by: Dmitry Baryshkov followed immediately by Signed-off-by: Dmitry Baryshkov — correct kernel convention for genuine co-authorship

Diff

File Status Notes
drivers/media/platform/qcom/iris/iris_firmware.c Adds iris_detect_gen2_from_fwdata(), iris_detect_firmware(), refactors iris_load_fw_to_memory() and iris_fw_load()
drivers/media/platform/qcom/iris/iris_platform_common.h Replaces single firmware_desc with firmware_desc_gen1/firmware_desc_gen2 pair; removes stale XXX comment
drivers/media/platform/qcom/iris/iris_platform_vpu2.c ⚠️ Adds iris_vpu20_p1_gen2_s6_desc and iris_ubwc_config_vpu2_gen2; updates sc7280_data with both gen descriptors and new UBWC config — extra platform data beyond a simple field rename; verify this is fully covered by the lore patch
drivers/media/platform/qcom/iris/iris_platform_vpu3x.c Mechanical rename of .firmware_desc.firmware_desc_gen2 across all VPU3x platforms
drivers/media/platform/qcom/iris/iris_probe.c Removes early iris_firmware_desc/iris_firmware_data init and iris_session_init_caps() from probe
drivers/media/platform/qcom/iris/iris_vidc.c Moves iris_session_init_caps(core) into iris_open() and adds missing iris_ctrls.h include

Issues

  1. iris_platform_vpu2.c — new Gen2 descriptor and UBWC config for sc7280 (⚠️ REVIEW): The PR adds iris_vpu20_p1_gen2_s6_desc (new firmware descriptor for qcom/vpu/vpu20_p1_gen2_s6.mbn) and iris_ubwc_config_vpu2_gen2 (new UBWC config struct), and wires them into sc7280_data. Since network access is blocked, it cannot be confirmed whether these additions are present verbatim in the lore patch or represent additional vendor-specific content layered on top. The lore message-ID encodes kodiak-gen2-support which strongly suggests this sc7280/Kodiak Gen2 content is the primary motivation of the series and is expected to be in the upstream patch. This is flagged for human verification once lore is accessible.

  2. iris_session_init_caps() move (⚠️ REVIEW): Moved from iris_probe() to iris_open() in iris_vidc.c. This is a behavioural change (caps now re-initialised on every session open rather than once at probe). Verify this is intentional and present in the lore patch — the commit message does not explicitly call this out.


Upstream Patch Status

Commit Community Verdict
media: iris: Initialize HFI ops after firmware load in core init ⏳ Decision Pending — series 20260512-kodiak-gen2-support-v4-v5 posted 2026-05-12 (v5); Reviewed-by: tags from Bryan O'Donoghue and Dmitry Baryshkov present; no merge confirmation available (network blocked)
media: iris: Add Gen2 firmware autodetect and fallback ⏳ Decision Pending — same series, same status; Co-developed-by: Dmitry Baryshkov; no merge confirmation available (network blocked)

Dependency Check

  • Both patches are part of the same series (v4-v5, patch 1/2 and 2/2) and are included together in the PR — dependency satisfied.
  • Patch 2/2 depends on the iris_firmware_descfirmware_desc_gen1/firmware_desc_gen2 struct change introduced in the same commit — self-contained.
  • Patch 1/2 depends on iris_firmware_data being set before init_hfi_ops() is called — Patch 2/2 sets core->iris_firmware_data inside iris_load_fw_to_memory(), so ordering is correct when both patches are applied together.

qcom-next Presence

Commit Status
media: iris: Initialize HFI ops after firmware load in core init ⏭️ Skipped — kernel repo at /local/mnt/workspace/sgaud/Qgenie/image_pipeline/kernel not found
media: iris: Add Gen2 firmware autodetect and fallback ⏭️ Skipped — kernel repo not found

Recommendation

Both commits are well-formed FROMLIST: patches from a v5 series posted 2026-05-12 with Reviewed-by: tags. Commit message hygiene, authorship, and Co-developed-by: usage are all correct. The two flagged items — the new sc7280 Gen2 firmware descriptor/UBWC config in iris_platform_vpu2.c, and the iris_session_init_caps() relocation — should be verified against the live lore patch once network access is available. If those additions are present in the upstream posting, the PR can be merged as-is. If they are vendor additions not in the lore patch, the extra content should be split into a separate QCLINUX: commit.


Final Summary

  1. Lore link present: Yes — Patch 1: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-1-a98968423d24@oss.qualcomm.com/; Patch 2: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-2-a98968423d24@oss.qualcomm.com/
  2. Lore link matches PR commits: Likely Yes — diff content is internally consistent and the series name (kodiak-gen2-support) matches the PR content; two hunks flagged for live verification (sc7280 Gen2 descriptor and iris_session_init_caps move) due to network being blocked
  3. Upstream patch status: ⏳ Decision Pending — v5 series posted 2026-05-12 with Reviewed-by: tags; merge status unconfirmable without network access
  4. PR present in qcom-next: Not checked — kernel repo unavailable in this environment

@knaveen-qc
Copy link
Copy Markdown

PR #1191 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch Pre-merge integration conflict — checker never ran
dt-binding-check Pre-merge integration conflict — checker never ran
dtb-check Pre-merge integration conflict — checker never ran
sparse-check Pre-merge integration conflict — checker never ran
check-uapi-headers Pre-merge integration conflict — checker never ran
check-patch-compliance Pre-merge integration conflict — checker never ran
tag-check Both commits carry FROMLIST: prefix
qcom-next-check N/A Target branch is tech/mm/video, not qcom-next

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1191 — media: iris: Initialize HFI ops after firmware load + Add Gen2 firmware autodetect and fallback
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/26133071175

Checker Result Summary
checkpatch Pre-merge integration conflict — checker never ran
dt-binding-check Pre-merge integration conflict — checker never ran
dtb-check Pre-merge integration conflict — checker never ran
sparse-check Pre-merge integration conflict — checker never ran
check-uapi-headers Pre-merge integration conflict — checker never ran
check-patch-compliance Pre-merge integration conflict — checker never ran
tag-check Both commits carry FROMLIST: prefix
qcom-next-check N/A Target branch is tech/mm/video, not qcom-next

❌ All Checkers — Pre-Merge Integration Conflict (NOT a patch defect)

Root cause: The CI integration step failed to merge the topic/tech/mm/video branch onto the latest baseline (9f3cbcbfaa5a — Linux 7.1-rc2-based), causing all six checkers to abort before they could inspect the PR's patches.

Failure details:

** Merging topic branch: topic/tech/mm/video
CONFLICT (content): Merge conflict in Makefile
CONFLICT (content): Merge conflict in drivers/acpi/acpi_tad.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/xe/xe_dma_buf.c
CONFLICT (content): Merge conflict in drivers/nvme/host/pci.c
CONFLICT (content): Merge conflict in drivers/nvme/target/tcp.c
CONFLICT (content): Merge conflict in io_uring/napi.c
CONFLICT (content): Merge conflict in kernel/cgroup/cgroup.c
CONFLICT (content): Merge conflict in kernel/cgroup/cpuset.c
CONFLICT (content): Merge conflict in kernel/sched/ext.c
CONFLICT (content): Merge conflict in net/netfilter/nf_tables_api.c
CONFLICT (content): Merge conflict in net/sched/sch_cake.c
CONFLICT (content): Merge conflict in sound/soc/codecs/ab8500-codec.c
CONFLICT (content): Merge conflict in sound/soc/codecs/tas2770.c
Automatic merge failed; fix conflicts and then commit the result.
##[error]Process completed with exit code 1.

Key observation: None of the 15 conflicting files are touched by this PR. The PR only modifies files under drivers/media/platform/qcom/iris/ (iris_core.c, iris_probe.c, iris_firmware.c, iris_platform_common.h, iris_platform_vpu2.c, iris_platform_vpu3x.c, iris_vidc.c). The conflicts are entirely in unrelated subsystems (Makefile, drivers/acpi, drivers/gpu/drm, drivers/nvme, io_uring, kernel/cgroup, kernel/sched, net/netfilter, net/sched, sound/soc).

Root cause: The tech/mm/video topic branch has accumulated merge conflicts against the latest mainline baseline (v7.1-rc29f3cbcbfaa5a). This is a tree-wide integration problem in the topic branch, not introduced by this PR.

Fix: The topic branch maintainer needs to rebase or resolve the conflicts in tech/mm/video against the current baseline. This PR's patches themselves are clean and do not need modification.

Reproduce locally:

git checkout -b integ 9f3cbcbfaa5a143d339bcabf1a6a6ac98107e084
git fetch https://github.com/qualcomm-linux/kernel-topics.git tech/mm/video
git merge FETCH_HEAD --no-commit
# Observe conflicts in Makefile, drivers/acpi/acpi_tad.c, etc.

Verdict

0 patch defects. All 6 checker failures are caused by a pre-existing merge conflict in the tech/mm/video topic branch against the Linux 7.1-rc2 baseline — none of the conflicting files are part of this PR. The PR's two FROMLIST: commits are correctly prefixed and touch only drivers/media/platform/qcom/iris/. Action required: the topic branch owner must resolve the integration conflicts in tech/mm/video; no changes to this PR are needed before re-triggering CI.

Some Iris platforms support both Gen1 and Gen2 HFI firmware images.
Update the firmware loading logic to handle this generically by
preferring Gen2 when available, while safely falling back to Gen1
when required.

The firmware loading logic is updated with the following priority:
1. Device Tree (`firmware-name`): If specified, load unconditionally.
2. Gen2 default : If no DT override exists, select the Gen2 firmware
   descriptor when present and attempt to load the corresponding
   firmware image.
3. Gen1 Fallback: If loading the Gen2 firmware fails and a Gen1
   descriptor is available, retry with the Gen1 firmware image.

When a platform provides both Gen1 and Gen2 firmware descriptors and the
firmware is loaded via a DT override, the driver detects the
firmware generation at runtime before authentication by inspecting
the firmware data. The firmware is classified as Gen2 if the
QC_IMAGE_VERSION_STRING starts with "vfw" or matches the
"video-firmware.N.M" format with N >= 2.

If a Gen1 firmware image is detected in this case, the driver switches
to the Gen1 firmware descriptor and associated platform data so that
the correct HFI implementation is used.

This change makes firmware generation detection platform‑agnostic,
preserves DT overrides, prefers newer Gen2 firmware when available,
and maintains compatibility with platforms that only support Gen1.

Link: https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-2-a98968423d24@oss.qualcomm.com/
Signed-off-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Co-developed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
@qcomlnxci qcomlnxci requested a review from a team May 20, 2026 05:35
@qlijarvis
Copy link
Copy Markdown

PR #1191 — validate-patch

PR: #1191

Verdict Issues Detailed Report
⚠️ 0 Full report

Final Summary

Patch 1 — FROMLIST: media: iris: Initialize HFI ops after firmware load in core init

  1. Lore link present: Yes — https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-1-a98968423d24@oss.qualcomm.com/
  2. Lore link matches PR commits: N/A — lore unreachable (network restricted); internal diff is self-consistent and matches the stated commit description
  3. Upstream patch status: ⏳ Decision Pending — FROMLIST: prefix indicates posted to mailing list but not yet merged; series is v5 (dated 2026-05-12), has Reviewed-by: tags from Bryan O'Donoghue and Dmitry Baryshkov suggesting active review
  4. PR present in qcom-next: Not checked — kernel repo unavailable

Patch 2 — FROMLIST: media: iris: Add Gen2 firmware autodetect and fallback

  1. Lore link present: Yes — https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-2-a98968423d24@oss.qualcomm.com/
  2. Lore link matches PR commits: N/A — lore unreachable; diff is internally consistent but contains undocumented changes (iris_session_init_caps relocation, iris_ubwc_config_vpu2_gen2) not described in the commit body
  3. Upstream patch status: ⏳ Decision Pending — FROMLIST: prefix; v5 series, active review in progress
  4. PR present in qcom-next: Not checked — kernel repo unavailable
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #1191FROMLIST: media: iris: Initialize HFI ops after firmware load in core init + FROMLIST: media: iris: Add Gen2 firmware autodetect and fallback (2-patch series)
Upstream commits:


Commit 1 — FROMLIST: media: iris: Initialize HFI ops after firmware load in core init

Commit Message

Check Status Note
Subject matches upstream FROMLIST: prefix correctly prepended; subject otherwise intact
Body preserves rationale Explains why HFI sys ops must move post-firmware-load
Fixes tag present/correct N/A No regression fix; new feature/refactor — no Fixes: expected
Authorship preserved FROMLIST: rule: From: Dikshita Agarwal is the lore author; her Signed-off-by: is present
Backport note (if applicable) N/A Not a backport
Co-developed-by used correctly No Co-developed-by: in this commit; Dmitry's Signed-off-by: reflects his role as submitter/reviewer

Diff

File Status Notes
drivers/media/platform/qcom/iris/iris_core.c Adds core->iris_firmware_data->init_hfi_ops(core) after firmware load, before iris_hfi_core_init()
drivers/media/platform/qcom/iris/iris_probe.c Removes core->iris_firmware_data->init_hfi_ops(core) from iris_probe() — clean move

Issues

None.


Commit 2 — FROMLIST: media: iris: Add Gen2 firmware autodetect and fallback

Commit Message

Check Status Note
Subject matches upstream FROMLIST: prefix correctly prepended; subject otherwise intact
Body preserves rationale Detailed description of Gen2 autodetect logic, DT override, Gen1 fallback, and QC_IMAGE_VERSION_STRING detection
Fixes tag present/correct N/A New feature — no Fixes: expected
Authorship preserved FROMLIST: rule: From: Dikshita Agarwal is the lore author; her Signed-off-by: is present
Backport note (if applicable) N/A Not a backport
Co-developed-by used correctly ⚠️ Co-developed-by: Dmitry Baryshkov followed immediately by Signed-off-by: Dmitry Baryshkov — structurally correct per kernel convention. However, iris_session_init_caps() relocation to iris_open() and the iris_ctrls.h include addition appear to be functional changes beyond the stated scope of "Gen2 firmware autodetect and fallback". These are not attributed or explained in the commit body.

Diff

File Status Notes
drivers/media/platform/qcom/iris/iris_firmware.c New iris_detect_gen2_from_fwdata() and iris_detect_firmware() helpers; iris_load_fw_to_memory() refactored to use them; iris_fw_load() simplified — all consistent with commit description
drivers/media/platform/qcom/iris/iris_platform_common.h firmware_desc replaced by firmware_desc_gen1 / firmware_desc_gen2 pair; XXX comment removed — matches description
drivers/media/platform/qcom/iris/iris_platform_vpu2.c sc7280_data gains both gen1 and gen2 descriptors + new iris_ubwc_config_vpu2_gen2; sm8250_data migrated to firmware_desc_gen1
drivers/media/platform/qcom/iris/iris_platform_vpu3x.c All six platform structs migrated from firmware_descfirmware_desc_gen2 — mechanical rename, correct
drivers/media/platform/qcom/iris/iris_platform_vpu4x.c kaanapali_data migrated from firmware_descfirmware_desc_gen2 — correct
drivers/media/platform/qcom/iris/iris_probe.c Removes early firmware_desc/firmware_data init (now deferred to iris_load_fw_to_memory) and removes iris_session_init_caps(core) call
drivers/media/platform/qcom/iris/iris_vidc.c ⚠️ Adds #include "iris_ctrls.h" and moves iris_session_init_caps(core) call into iris_open(). This is a behavioural change (caps now initialised per-open rather than once at probe) that is not described in the commit message. The rationale for this relocation should be documented.

Issues

  1. Undocumented behavioural change in iris_vidc.ciris_session_init_caps(core) is moved from iris_probe() to iris_open(), and #include "iris_ctrls.h" is added. This changes when session capabilities are initialised (from driver probe time to first file-open). The commit message makes no mention of this change, its rationale, or its safety. Since iris_session_init_caps() is called with core (not inst), calling it on every iris_open() may be intentional (e.g., caps depend on firmware generation detected at load time), but this must be explained in the commit body.

  2. iris_ubwc_config_vpu2_gen2 added without upstream attributioniris_platform_vpu2.c introduces a new iris_ubwc_config_vpu2_gen2 struct for sc7280_data. This is new platform data not present in the original sc7280_data entry. If this data originates from a separate lore patch in the series (e.g., a cover-letter or a companion patch), it should be split out or attributed. If it is part of this patch's lore posting, it is fine — but cannot be confirmed without lore access.

  3. Network-restricted environment — lore.kernel.org was unreachable and the canonical kernel repo (/local/mnt/workspace/sgaud/Qgenie/image_pipeline/kernel) was absent. The diff comparison against the lore source and qcom-next presence check could not be performed. The analysis above is based solely on internal consistency of the PR patch.


Verdict

Both commits are structurally sound and the FROMLIST: prefix/authorship rules are correctly followed. Patch 1 is clean. Patch 2 requires the commit message to be amended to document the iris_session_init_caps() relocation and the new iris_ubwc_config_vpu2_gen2 data — request these clarifications before merging.


Final Summary

Patch 1 — FROMLIST: media: iris: Initialize HFI ops after firmware load in core init

  1. Lore link present: Yes — https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-1-a98968423d24@oss.qualcomm.com/
  2. Lore link matches PR commits: N/A — lore unreachable (network restricted); internal diff is self-consistent and matches the stated commit description
  3. Upstream patch status: ⏳ Decision Pending — FROMLIST: prefix indicates posted to mailing list but not yet merged; series is v5 (dated 2026-05-12), has Reviewed-by: tags from Bryan O'Donoghue and Dmitry Baryshkov suggesting active review
  4. PR present in qcom-next: Not checked — kernel repo unavailable

Patch 2 — FROMLIST: media: iris: Add Gen2 firmware autodetect and fallback

  1. Lore link present: Yes — https://lore.kernel.org/all/20260512-kodiak-gen2-support-v4-v5-2-a98968423d24@oss.qualcomm.com/
  2. Lore link matches PR commits: N/A — lore unreachable; diff is internally consistent but contains undocumented changes (iris_session_init_caps relocation, iris_ubwc_config_vpu2_gen2) not described in the commit body
  3. Upstream patch status: ⏳ Decision Pending — FROMLIST: prefix; v5 series, active review in progress
  4. PR present in qcom-next: Not checked — kernel repo unavailable

@qlijarvis
Copy link
Copy Markdown

PR #1191 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch CI infra: merge conflict during sync — checker never ran
dt-binding-check CI infra: merge conflict during sync — checker never ran
dtb-check CI infra: merge conflict during sync — checker never ran
sparse-check CI infra: merge conflict during sync — checker never ran
check-uapi-headers CI infra: merge conflict during sync — checker never ran
check-patch-compliance CI infra: merge conflict during sync — checker never ran
tag-check Both commits carry FROMLIST: prefix — compliant
qcom-next-check N/A Target branch is tech/mm/video, not qcom-next

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: FROMLIST: media: iris: Initialize HFI ops / Add Gen2 firmware autodetect — #1191
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/26143576914

Checker Result Summary
checkpatch CI infra: merge conflict during sync — checker never ran
dt-binding-check CI infra: merge conflict during sync — checker never ran
dtb-check CI infra: merge conflict during sync — checker never ran
sparse-check CI infra: merge conflict during sync — checker never ran
check-uapi-headers CI infra: merge conflict during sync — checker never ran
check-patch-compliance CI infra: merge conflict during sync — checker never ran
tag-check Both commits carry FROMLIST: prefix — compliant
qcom-next-check N/A Target branch is tech/mm/video, not qcom-next

❌ All Checkers — CI Infrastructure: Merge Conflict During Sync

Root cause: Every checker job failed identically in the sync step before any actual check logic ran — the integration branch could not be assembled because merging topic/tech/mm/video onto the latest kernel baseline produced conflicts in 15 files that are unrelated to this PR.

Failure details:

Automatic merge failed; fix conflicts and then commit the result.
Merge failed, manual merge
...
CONFLICT (content): Merge conflict in Makefile
CONFLICT (content): Merge conflict in drivers/acpi/acpi_tad.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/xe/xe_dma_buf.c
CONFLICT (content): Merge conflict in drivers/nvme/host/pci.c
CONFLICT (content): Merge conflict in drivers/nvme/target/tcp.c
CONFLICT (content): Merge conflict in io_uring/napi.c
CONFLICT (content): Merge conflict in kernel/cgroup/cgroup.c
CONFLICT (content): Merge conflict in kernel/cgroup/cpuset.c
CONFLICT (content): Merge conflict in kernel/sched/ext.c
CONFLICT (content): Merge conflict in net/netfilter/nf_tables_api.c
CONFLICT (content): Merge conflict in net/sched/sch_cake.c
CONFLICT (content): Merge conflict in sound/soc/codecs/ab8500-codec.c
CONFLICT (content): Merge conflict in sound/soc/codecs/tas2770.c
##[error]Process completed with exit code 1.

None of these conflicting files (Makefile, drivers/acpi/acpi_tad.c, drivers/gpu/drm/…, io_uring/napi.c, kernel/cgroup/…, kernel/sched/ext.c, net/netfilter/…, net/sched/sch_cake.c, sound/soc/codecs/…) are touched by this PR. The PR only modifies files under drivers/media/platform/qcom/iris/.

Root cause classification: The tech/mm/video topic branch has fallen behind the current kernel baseline (9f3cbcbfaa5a / v7.1-rc4 era), and other topic branches in the integration set have introduced conflicting changes in those 15 files. This is a tree-wide integration conflict, not a defect in this PR's patches.

Fix: No patch changes are needed. The conflicts must be resolved at the topic-branch integration level:

  1. The tech/mm/video branch (or the conflicting sibling topic branches) needs to be rebased/updated to resolve the 15 conflicts.
  2. Once the integration branch can be assembled cleanly, re-trigger the CI run — all checkers will then execute against the actual patch content.

Re-trigger CI:

# After the topic branch conflicts are resolved upstream, re-trigger via GHA UI or:
gh workflow run kernel-checkers --repo qualcomm-linux/kernel-config \
  -f pr=1191 -f repo=qualcomm-linux/kernel-topics -f sha=1990aafe68d5424286d74bda83640acb6e2149c5

✅ tag-check — PASS

Both commits carry the required FROMLIST: prefix (target branch tech/mm/video requires a prefix):

  • FROMLIST: media: iris: Initialize HFI ops after firmware load in core init
  • FROMLIST: media: iris: Add Gen2 firmware autodetect and fallback

Both also include a valid Link: trailer pointing to lore.kernel.org and proper Signed-off-by: lines. No tag-check issues.


Verdict

0 patch defects — all 6 checker failures are caused by a pre-existing merge conflict in the tech/mm/video integration branch (15 files unrelated to this PR). Re-trigger CI after the topic-branch conflicts are resolved; no changes to the PR patches are required.

@gouravk-qualcomm
Copy link
Copy Markdown
Author

@qlijarvis / @knaveen-qc

image

"There’s a merge conflict because of the infra sync."

@qlijarvis / @knaveen-qc This appears to be caused by baseline differences. Could you please review this and confirm if any changes are required for this PR?

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