Skip to content

FROMLIST: arm64: dts: qcom: kaanapali-mtp: Add s5kjn5 image sensor on… - #1650

Closed
HangxiangMa wants to merge 1 commit into
qualcomm-linux:tech/all/dt/kaanapalifrom
HangxiangMa:dev/kaanapali-s5kjn5
Closed

FROMLIST: arm64: dts: qcom: kaanapali-mtp: Add s5kjn5 image sensor on…#1650
HangxiangMa wants to merge 1 commit into
qualcomm-linux:tech/all/dt/kaanapalifrom
HangxiangMa:dev/kaanapali-s5kjn5

Conversation

@HangxiangMa

Copy link
Copy Markdown
Contributor

Enable the S5KJN5 image sensor which connected to cci0_i2c1 on Kaanapali MTP. The sensor appears on CCI pins connected to the CSIPHY2 interface in four lane mode.

CRs-Fixed: 4635675

… CSIPHY2

Enable the S5KJN5 image sensor which connected to cci0_i2c1 on Kaanapali
MTP. The sensor appears on CCI pins connected to the CSIPHY2 interface
in four lane mode.

Signed-off-by: Hangxiang Ma <hangxiang.ma@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260720-knp-camera-v2-4-a21c3f0ecd55@oss.qualcomm.com/
@qcomlnxci
qcomlnxci requested review from a team, Komal Bajaj (Komal-Bajaj), Amit Kucheria (idlethread) and Shiraz Hashim (shashim-quic) and removed request for a team August 6, 2026 08:23
@qlijarvis

Copy link
Copy Markdown

PR #1650 — validate-patch

PR: #1650

Verdict Issues Detailed Report
3 Full report

Final Summary

  1. Lore link present: Yes — https://lore.kernel.org/all/20260720-knp-camera-v2-4-a21c3f0ecd55@oss.qualcomm.com/
  2. Lore link matches PR commits: No — PR is missing 34 lines (entire &csiphy2 block) present in lore patch; endpoint naming also differs
  3. Upstream patch status: ⏳ Decision Pending (conditional acceptance) — Reviewed-by from Abel Vesa contingent on addressing Konrad's comment about removing SoC-specific port mapping comment; no formal merge confirmation yet
  4. PR present in qcom-next/topics: Partial - 1/1 commit(s) only have partial integration evidence
Verdict: ❌ — click to expand

🔍 Patch Validation

PR: #1650 - FROMLIST: arm64: dts: qcom: kaanapali-mtp: Add s5kjn5 image sensor on CSIPHY2
Upstream commit: https://lore.kernel.org/all/20260720-knp-camera-v2-4-a21c3f0ecd55@oss.qualcomm.com/
Verdict: ❌ FAIL

Commit Message

Check Status Note
Subject matches upstream Subject identical (FROMLIST prefix added correctly)
Body preserves rationale Body text identical to lore patch
Fixes tag present/correct N/A No Fixes tag in upstream or PR
Authorship preserved Author Hangxiang Ma <hangxiang.ma@oss.qualcomm.com> matches lore; FROMLIST prefix allows submitter in From: field
Backport note (if applicable) N/A FROMLIST commit, not a backport

Diff

File Status Notes
arch/arm64/boot/dts/qcom/kaanapali-mtp.dts Missing 34 lines of code — PR has only 56 insertions vs 90 in lore patch; entire &csiphy2 block (34 lines) is missing from PR

Issues

Critical: Missing upstream content

The PR patch is incomplete compared to the lore upstream. The lore patch adds 90 lines across three device tree blocks:

  1. &tlmm — cam2_reset pinctrl (present in PR)
  2. &cci0 and &cci0_i2c1 — camera sensor node (present in PR)
  3. &csiphy2 block — MISSING from PR (34 lines)

Missing content from lore patch:

+&csiphy2 {
+	vdda-0p9-supply = <&vreg_l3d_0p8>;
+	vdda-1p2-supply = <&vreg_l1d_1p2>;
+
+	status = "okay";
+
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		port@0 {
+			reg = <0>;
+
+			csiphy2_in_ep: endpoint {
+				data-lanes = <0 1 2 3>;
+				clock-lanes = <7>;
+				remote-endpoint = <&s5kjn5_ep>;
+			};
+		};
+
+		port@1 {
+			reg = <1>;
+
+			csiphy2_out_ep: endpoint {
+				remote-endpoint = <&camss_csiphy2_inep>;
+			};
+		};
+	};
+};

Additional differences:

  1. &camss block structure differs:

    • Lore: includes SoC-specific comment mapping port numbers to csiphy instances, endpoint named camss_csiphy2_inep: endpoint@0, references csiphy2_out_ep
    • PR: no comment, endpoint named csiphy2_ep, references s5kjn5_ep directly
  2. Endpoint naming inconsistency:

    • Lore: s5kjn5_epcsiphy2_in_epcsiphy2_out_epcamss_csiphy2_inep (full pipeline)
    • PR: s5kjn5_epcsiphy2_ep (direct connection, missing intermediate csiphy2 node)

Upstream review status:

  • Konrad Dybcio (Jul 24, 2026): Requested removal of SoC-specific port comment in &camss block — "This comment is SoC-specific and is really not very useful, especially since it's an identity mapping"
  • Abel Vesa (Jul 27, 2026): "With the comment from Konrad addressed, looks good to me: Reviewed-by: Abel Vesa"
  • Hangxiang Ma (Jul 31, 2026): Acknowledged Konrad's and Abel's feedback

The PR appears to have removed the comment per Konrad's feedback, but also removed the entire &csiphy2 block, which was not requested.

Verdict

❌ FAIL — Do not merge

The PR is missing 34 lines of essential device tree configuration for the csiphy2 PHY node. This is not a legitimate adaptation — the &csiphy2 block is required for the camera sensor to function and was present in all versions of the upstream patch.

Required fix:

Add the missing &csiphy2 block from the lore patch (lines defining vdda supplies, status, ports with port@0 and port@1, and endpoint connections). The PR should faithfully represent the full lore patch content, minus only the SoC-specific comment that Konrad requested be removed.

Final Summary

  1. Lore link present: Yes — https://lore.kernel.org/all/20260720-knp-camera-v2-4-a21c3f0ecd55@oss.qualcomm.com/
  2. Lore link matches PR commits: No — PR is missing 34 lines (entire &csiphy2 block) present in lore patch; endpoint naming also differs
  3. Upstream patch status: ⏳ Decision Pending (conditional acceptance) — Reviewed-by from Abel Vesa contingent on addressing Konrad's comment about removing SoC-specific port mapping comment; no formal merge confirmation yet
  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" in qcom-next; missing from topics

Deterministic Integration Presence

Integration Presence Report

This report is generated by Jarvis before validate-patch runs.
It is the authoritative source for whether PR changes are already present
in qcom-next or in the kernel topic branches.

Kernel repo: /local/mnt/workspace/sgaud/Qgenie/image_pipeline/kernel
qcom-next ref: 8d5dbc1b17adf8fe86a41adcda686785e73f5414
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: kaanapali-mtp: Add s5kjn5 image 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 #1650 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch Undocumented DT compatible string
dt-binding-check ⏭️ No binding changes
dtb-check Test passed
sparse-check ⏭️ No C/H changes
check-uapi-headers ⏭️ No UAPI changes
check-patch-compliance Content mismatch with lore link
tag-check Valid FROMLIST: prefix present

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1650 - FROMLIST: arm64: dts: qcom: kaanapali-mtp: Add s5kjn5 image sensor on CSIPHY2
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/31084667711

Checker Result Summary
checkpatch Undocumented DT compatible string
dt-binding-check ⏭️ No binding changes
dtb-check Test passed
sparse-check ⏭️ No C/H changes
check-uapi-headers ⏭️ No UAPI changes
check-patch-compliance Content mismatch with lore link
tag-check Valid FROMLIST: prefix present

❌ checkpatch

Root cause: The compatible string "samsung,s5kjn5" is not documented in the kernel DT bindings.

Failure details:

WARNING: DT compatible string "samsung,s5kjn5" appears un-documented -- check ./Documentation/devicetree/bindings/
#61: FILE: arch/arm64/boot/dts/qcom/kaanapali-mtp.dts:1375:
+		compatible = "samsung,s5kjn5";

a72ec7f4ed0f082f1f28c1811c64d1fb4079f27a total: 0 errors, 1 warnings, 0 checks, 68 lines checked

Fix: Add a device tree binding YAML file for the Samsung S5KJN5 image sensor:

  1. Create Documentation/devicetree/bindings/media/i2c/samsung,s5kjn5.yaml with the required properties (compatible, reg, reset-gpios, clocks, supplies, port)
  2. Submit the binding as a separate patch before the DTS patch in the series
  3. Ensure the binding follows the schema in Documentation/devicetree/bindings/media/i2c/ and includes proper examples

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git f9fe6ef02bfc..201863399310

❌ check-patch-compliance

Root cause: The patch content in the PR differs from the upstream patch at the provided lore.kernel.org link.

Failure details:

Checking commit: FROMLIST: arm64: dts: qcom: kaanapali-mtp: Add s5kjn5 image sensor on CSIPHY2
Change is different from the one mentioned in Link

Analysis: The checker detected that the diff in this PR does not match the patch posted at:
https://lore.kernel.org/all/20260720-knp-camera-v2-4-a21c3f0ecd55@oss.qualcomm.com/

This could be due to:

  • Context line differences (base tree divergence)
  • Additional changes not present in the upstream patch
  • Missing hunks from the upstream patch
  • Legitimate local adaptations

Fix: Verify the content difference:

  1. Fetch the upstream patch:

    b4 am --single-message -C -l -3 https://lore.kernel.org/all/20260720-knp-camera-v2-4-a21c3f0ecd55@oss.qualcomm.com/ -o /tmp/upstream
  2. Compare the actual code changes (ignore context):

    # Extract +/- lines from PR commit
    git format-patch -1 a72ec7f4ed0f --stdout | awk '/^diff/,/^--$/' | grep -E '^[+-][^+-]' > /tmp/pr-changes.txt
    
    # Extract +/- lines from upstream patch
    awk '/^diff/,/^--$/' /tmp/upstream/*.mbx | grep -E '^[+-][^+-]' > /tmp/upstream-changes.txt
    
    # Compare
    diff /tmp/pr-changes.txt /tmp/upstream-changes.txt
  3. If differences are found:

    • Context-only shift: Not a real issue; checker limitation
    • Legitimate adaptation: Document the reason in the commit message (e.g., "Adapted for vendor tree baseline")
    • Missing/extra hunks: Sync with upstream or split into separate commits

Reproduce locally:

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

Verdict

2 blockers must be fixed before merge:

  1. checkpatch: Add DT binding YAML for samsung,s5kjn5 in a separate patch before the DTS change
  2. check-patch-compliance: Investigate and resolve the content mismatch with the upstream lore patch — verify whether the difference is legitimate (adaptation) or an error (missing/extra changes)

The DT binding issue is a hard blocker — all new compatible strings must have bindings. The compliance check failure requires investigation to determine if it's a false positive (context shift) or a real content divergence.

@HangxiangMa HangxiangMa closed this Aug 6, 2026
@HangxiangMa
HangxiangMa deleted the dev/kaanapali-s5kjn5 branch August 6, 2026 09:32
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.

2 participants