Skip to content

usb: typec: hd3ss3220: Fix VBUS regulator reference handling - #972

Open
Chang Wu (kunjinkao-os) wants to merge 2 commits into
qualcomm-linux:qcom-6.18.yfrom
kunjinkao-os:fix/hd3ss3220-vbus-qcom-6.18.y
Open

usb: typec: hd3ss3220: Fix VBUS regulator reference handling#972
Chang Wu (kunjinkao-os) wants to merge 2 commits into
qualcomm-linux:qcom-6.18.yfrom
kunjinkao-os:fix/hd3ss3220-vbus-qcom-6.18.y

Conversation

@kunjinkao-os

@kunjinkao-osChang Wu (kunjinkao-os) commented Aug 18, 2026

Copy link
Copy Markdown

The HD3SS3220 driver uses regulator_is_enabled() to determine whether VBUS
needs to be enabled or disabled. However, regulator_is_enabled() reports the
aggregate regulator state and does not indicate whether this consumer holds
an enable reference.

If another consumer enables VBUS first, the driver may skip its own
regulator_enable() call and later issue an unbalanced regulator_disable()
call.

Track the VBUS enable state locally so that regulator enable and disable
references remain balanced for this consumer. Update the state only after a
successful regulator operation.

This PR contains two commits:

  1. UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message
    Already merged in the Linux USB subsystem.
  2. FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer
    Submitted upstream at:
    https://lore.kernel.org/linux-usb/20260819152027.90994-1-kunjinkao.jp@gmail.com/

Fixes: b3f9d6e ("usb: typec: hd3ss3220: Check if regulator needs to be switched")

Testing:

  • scripts/checkpatch.pl --strict: no errors or warnings
  • Qualcomm CI checkpatch, sparse, DT and UAPI checks: passed
  • Not tested on hardware

I am an external contributor and do not have access to Qualcomm's internal
CR system. Maintainer guidance on the appropriate CR association would be
appreciated.

@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.

1 similar comment
@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.

@kunjinkao-os

Copy link
Copy Markdown
Author

Dmitry Baryshkov (@lumag)yijiyangjingyiwang42

The VBUS regulator warning was observed in the log attached to #472, but it is
independent of that issue's IRQ test failure. The IRQ test false positive was
already fixed in qualcomm-linux/qcom-linux-testkit#462 , which was merged.

This PR only fixes the independent
"unbalanced disables for vbus_supply_1" warning. As an external contributor,
I do not have access to Qualcomm's internal CR system.

Could you please advise the appropriate CR to reference for this fix, or the
accepted process for an external fix without a CR?

@kunjinkao-os
Chang Wu (kunjinkao-os)force-pushed the fix/hd3ss3220-vbus-qcom-6.18.y branch from 3a1bdcc to 1186be0CompareAugust 19, 2026 13:26
@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.

2 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.

@kunjinkao-os
Chang Wu (kunjinkao-os)force-pushed the fix/hd3ss3220-vbus-qcom-6.18.y branch from 1186be0 to 12aa1d7CompareAugust 19, 2026 15:31
@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.

1 similar comment
@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.

Xu Raoand others added 2 commits August 20, 2026 15:43
hd3ss3220_regulator_control() enables the VBUS regulator when @on is
true and disables it when @on is false. However, its error message uses
the opposite operation name, so an enable failure is reported as a
disable failure and vice versa.
Print the operation that was actually attempted. Reporting the opposite
regulator operation on failures can mislead debugging of VBUS problems.
Fixes: 27fbc19 ("usb: typec: hd3ss3220: Enable VBUS based on role state")
Cc: stable@vger.kernel.org
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Xu Rao <raoxu@uniontech.com>
Link: https://lore.kernel.org/r/7A42A287B2B588D0+20260812094632.348581-1-raoxu@uniontech.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
regulator_is_enabled() reports the aggregate regulator state, not
whether this consumer holds an enable reference. If another consumer
enables VBUS first, the driver can skip its own regulator_enable() call
and later attempt to drop a reference it never acquired, triggering an
unbalanced regulator disable warning.
Track successful enable and disable calls locally. Keep the state
unchanged when an operation fails so a later role or ID notification
retries the operation while this consumer keeps balanced references.
Fixes: b3f9d6e ("usb: typec: hd3ss3220: Check if regulator needs to be switched")
Cc: stable@vger.kernel.org
Link: qualcomm-linux#472
Link: https://lore.kernel.org/r/20260819152027.90994-1-kunjinkao.jp@gmail.com
Signed-off-by: Chang Wu <kunjinkao.jp@gmail.com>
@kunjinkao-os
Chang Wu (kunjinkao-os)force-pushed the fix/hd3ss3220-vbus-qcom-6.18.y branch from 12aa1d7 to c6512aaCompareAugust 20, 2026 07:44
@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.

@qlijarvis

Copy link
Copy Markdown

PR #972 — validate-patch

PR:#972

VerdictIssuesDetailed Report
0Full report

Final Summary

  1. Lore link present: Partial - Commit 1/2 has invalid format (patch.msgid.link), Commit 2/2 has valid lore.kernel.org link
  2. Lore link matches PR commits: No - Commit 1/2 cannot be validated (invalid link), Commit 2/2 has critical mismatches (Fixes tag, Link tag, baseline)
  3. Upstream patch status: Commit 1/2 unknown (cannot fetch), Commit 2/2 Decision Pending (posted 2 days ago, no maintainer response yet)
  4. PR present in qcom-next/topics: Fail - 1/2 commit(s) are missing from both qcom-next and topics
Verdict: ❌ — click to expand

🔍 Patch Validation

PR:#972 - Two USB typec hd3ss3220 fixes
Upstream commits: Mixed (see per-commit analysis below)
Verdict: ❌ FAIL


Commit 1/2: UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message

Commit Message

CheckStatusNote
Subject matches upstream⚠️Cannot verify - invalid lore link format
Body preserves rationale⚠️Cannot verify - invalid lore link format
Fixes tag present/correctReferences 09fa276f21e0 with FROMLIST: prefix in Fixes tag - should reference upstream SHA
Authorship preservedXu Rao raoxu@uniontech.com
Backport note (if applicable)N/AMarked as UPSTREAM, not BACKPORT

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.c⚠️Cannot verify against lore - invalid link format

Issues

  1. Invalid lore link format: The Link tag uses https://patch.msgid.link/7A42A287B2B588D0+20260812094632.348581-1-raoxu@uniontech.com instead of a proper lore.kernel.org URL. The validate-patch skill requires lore.kernel.org links.
  2. Fixes tag references vendor commit: The Fixes tag references 09fa276f21e0 ("FROMLIST: usb: typec: hd3ss3220: Enable VBUS based on role state") which includes a vendor prefix FROMLIST: in the commit subject. Upstream Fixes tags should reference the actual upstream commit SHA and subject without vendor prefixes.
  3. No lore evidence available: Cannot fetch or validate the upstream patch content because the link format is not supported by standard lore fetching tools (b4, curl).

Verdict for Commit 1/2

FAIL - Invalid lore link format prevents validation. Must use lore.kernel.org URL.


Commit 2/2: FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer

Commit Message

CheckStatusNote
Subject matches upstreamPR adds FROMLIST: prefix; lore has no prefix
Body preserves rationaleIdentical wording
Fixes tag present/correctCritical mismatch: PR references 09fa276f21e0 (vendor commit), lore references b3f9d6e491fd (upstream commit)
Authorship preservedChang Wu kunjinkao.jp@gmail.com matches
Backport note (if applicable)N/AFROMLIST, not a backport

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.cContext mismatch - PR applies to different baseline than lore patch

Detailed Diff Analysis

Lore patch context (line 208-209):

-if (regulator_is_enabled(hd3ss3220->vbus) ==on)
+if (hd3ss3220->vbus_enabled==on)

PR patch context (line 208-209):

-if (regulator_is_enabled(hd3ss3220->vbus) ==on)
+if (hd3ss3220->vbus_enabled==on)

The hunks are identical, but the index lines differ:

  • Lore: index d0de5a2488f9..4eec90c82bae
  • PR: index b63e0bfe5ecc6..8d0f38fb70442

This indicates the PR patch applies to a different baseline than the lore patch. The lore patch was posted against upstream mainline, while the PR patch applies on top of commit 1/2 (the VBUS error message fix).

Critical issue: The lore patch error message line reads:

"vbus regulator %s failed: %d\n", on ? "enable" : "disable", ret);

But the lore patch was posted before the error message fix (commit 1/2) was applied. The original lore patch would have the inverted error message:

"vbus regulator %s failed: %d\n", on ? "disable" : "enable", ret);

The PR has reordered and rebased these patches, applying the error message fix first, then the state tracking fix on top. This is a semantic change from the original lore posting.

Issues

  1. Fixes tag mismatch: PR references vendor commit 09fa276f21e0, lore references upstream commit b3f9d6e491fd. These are different commits fixing different issues.
  2. Link tag mismatch: PR includes Link: https://lore.kernel.org/linux-usb/20260819152027.90994-1-kunjinkao.jp@gmail.com/ but lore has Link: https://github.com/qualcomm-linux/kernel/issues/472 (GitHub issue, not lore).
  3. Testing note removed: Lore patch includes a testing note section; PR omits it.
  4. Patch ordering/rebasing: The PR applies this patch on top of commit 1/2, creating a different baseline than the original lore posting. The lore patch was posted against a tree without the error message fix.

Upstream Patch Status

Verdict:Decision Pending

Evidence from lore thread (fetched mbox):

  • Posted: Wed, 19 Aug 2026 23:20:27 +0800
  • No maintainer replies found in the mbox
  • No applied, queued, Reviewed-by:, or Acked-by: signals
  • No NAK or rejection signals
  • Thread appears to be a single-message posting with no follow-up discussion yet

Status: Patch was posted 2 days ago (as of 2026-08-21). Too recent to determine acceptance. No community decision yet.

Verdict for Commit 2/2

FAIL - Multiple critical mismatches between PR and lore patch:

  • Fixes tag references wrong commit
  • Link tag references wrong URL
  • Patch applies to different baseline (rebased on top of commit 1/2)

Integration Presence Check

From integration_presence_report.md:

Commitqcom-nexttopicsFinal Status
1/2 UPSTREAM: fix VBUS regulator error❌ missing❌ missingmissing
2/2 FROMLIST: track VBUS enable state⚠️ partial❌ missingpartial

Overall: ❌ FAIL - 1/2 commits completely missing, 1/2 commits only partially present.


Final Verdict

FAIL - Do not merge without corrections.

Critical Issues Summary

Commit 1/2:

  1. Invalid lore link format (patch.msgid.link instead of lore.kernel.org)
  2. Fixes tag references vendor commit with FROMLIST: prefix in subject
  3. Cannot validate patch content against upstream

Commit 2/2:

  1. Fixes tag references vendor commit 09fa276f21e0 instead of upstream commit b3f9d6e491fd
  2. Link tag points to lore but lore patch links to GitHub issue
  3. Patch rebased on different baseline than original lore posting
  4. Testing notes removed from commit message

Integration:

  1. Neither commit is fully present in qcom-next or topics branches
  2. Commit 1/2 completely missing from integration tree
  3. Commit 2/2 only partially present

Recommendations

  1. For commit 1/2: Replace patch.msgid.link URL with proper lore.kernel.org URL. Fix the Fixes tag to reference the actual upstream commit SHA without vendor prefixes.

  2. For commit 2/2:

    • Update Fixes tag to reference b3f9d6e491fd (the upstream commit) instead of 09fa276f21e0 (vendor commit)
    • Verify the Link tag - lore patch has GitHub issue link, PR has lore link (these should match)
    • Consider whether the patch ordering (error fix first, then state tracking) is intentional and correct
    • Document the rebase/reordering in the commit message if intentional
  3. Integration: Ensure both commits are properly integrated into qcom-next before merging to avoid divergence from the integration branch.


Final Summary

  1. Lore link present: Partial - Commit 1/2 has invalid format (patch.msgid.link), Commit 2/2 has valid lore.kernel.org link
  2. Lore link matches PR commits: No - Commit 1/2 cannot be validated (invalid link), Commit 2/2 has critical mismatches (Fixes tag, Link tag, baseline)
  3. Upstream patch status: Commit 1/2 unknown (cannot fetch), Commit 2/2 Decision Pending (posted 2 days ago, no maintainer response yet)
  4. PR present in qcom-next/topics: Fail - 1/2 commits missing, 1/2 commits only partially present (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: 3c1e80ceb9fb6978aa94bc0624e7c0003f3b4f6e
topics remote: topics -> https://github.com/qualcomm-linux/kernel-topics
topics fetch: fetched

CommitSubjectqcom-nexttopicsFinal
1/2[PATCH 1/2] UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator errormissing - no subject, patch-id, or full tree-content match foundmissing - no subject, patch-id, or full tree-content match foundmissing
2/2[PATCH 2/2] FROMLIST: usb: typec: hd3ss3220: track VBUS enable statepartial - subject or partial tree evidence found, but full change was not verifiedmissing - no subject, patch-id, or full tree-content match foundpartial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #972 — checker-log-analyzer

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

CheckerResultSummary
CheckerResultSummary
checkpatch2 commits with warnings (long lines, author name mismatch, unknown commit)
dt-binding-check⏭️No DT binding changes
dtb-check⏭️No devicetree changes
sparse-checkPassed
check-uapi-headersNo UAPI changes
check-patch-complianceBoth commits missing required prefix tags
tag-checkBoth commits missing required prefix tags (target branch unknown, assuming not qcom-next)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR:#972
Run:https://github.com/qualcomm-linux/kernel-config/actions/runs/32119413844

CheckerResultSummary
checkpatch2 commits with warnings (long lines, author name mismatch, unknown commit)
dt-binding-check⏭️No DT binding changes
dtb-check⏭️No devicetree changes
sparse-checkPassed
check-uapi-headersNo UAPI changes
check-patch-complianceBoth commits missing required prefix tags
tag-checkBoth commits missing required prefix tags (target branch unknown, assuming not qcom-next)

❌ checkpatch

Root cause: Both commits have style warnings related to commit message formatting and metadata.

Failure details:

Commit 604ad2b ("usb: typec: hd3ss3220: Fix VBUS regulator error message"):

WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#6: The error message currently reports the inverse operation because the enable/disable names are selected backwards. Report the operation that was actually attempted.
WARNING: From:/Signed-off-by: email name mismatch: 'From: kunjinkao-os <kunjinkao.jp@gmail.com>' != 'Signed-off-by: Chang Wu <kunjinkao.jp@gmail.com>'
604ad2b6261ddc1d7db8e7f862f2340ee6657a81 total: 0 errors, 2 warnings, 0 checks, 8 lines checked

Commit 3a1bdcc ("usb: typec: hd3ss3220: Track VBUS enable state per consumer"):

WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#8: called regulator_enable(). If another consumer enables VBUS first, hd3ss3220
WARNING: Unknown commit id 'b3f9d6e491fd', maybe rebased or not pulled?
#14: Fixes: b3f9d6e491fd ("usb: typec: hd3ss3220: Check if regulator needs to be switched")
WARNING: From:/Signed-off-by: email name mismatch: 'From: kunjinkao-os <kunjinkao.jp@gmail.com>' != 'Signed-off-by: Chang Wu <kunjinkao.jp@gmail.com>'
3a1bdcc6be7511bcb81aa77c96a996021d72067a total: 0 errors, 3 warnings, 0 checks, 29 lines checked

Fix:

  1. Long commit body lines — Wrap commit message body lines at 75 characters. The offending lines are:

    • Commit 1: "The error message currently reports the inverse operation because the enable/disable names are selected backwards. Report the operation that was actually attempted."
    • Commit 2: "called regulator_enable(). If another consumer enables VBUS first, hd3ss3220"
  2. Author name mismatch — The From: line shows kunjinkao-os <kunjinkao.jp@gmail.com> but Signed-off-by: shows Chang Wu <kunjinkao.jp@gmail.com>. This appears to be commit 1 (604ad2b) which should have author Xu Rao <raoxu@uniontech.com> based on the patch file. The warning is likely a false positive or the commits were authored incorrectly. Verify the correct author and amend if needed:

    git commit --amend --author="Xu Rao <raoxu@uniontech.com>"
  3. Unknown commit ID — The Fixes: tag references b3f9d6e491fd which is not in the tree. This is likely because the original Fixes: tag in the upstream patch referenced a different commit SHA. Update the Fixes: tag to reference the correct commit SHA in this tree, or verify the commit exists.

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git c57b63497cd72a45c8992e05373f7b32901cf029..3a1bdcc6be7511bcb81aa77c96a996021d72067a

❌ check-patch-compliance

Root cause: Both commits are missing the required subject-line prefix tags (UPSTREAM:, FROMLIST:, etc.).

Failure details:

Checking commit: usb: typec: hd3ss3220: Fix VBUS regulator error message
Commit summary does not start with a required prefix
Checking commit: usb: typec: hd3ss3220: Track VBUS enable state per consumer
Commit summary does not start with a required prefix

Fix:

The patch file shows the correct prefixes should be:

  • Commit 1: UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message
  • Commit 2: FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer

However, the actual commits in the git tree are missing these prefixes. Amend each commit to add the correct prefix:

# For commit 604ad2b6261d (first commit)
git rebase -i c57b63497cd72a45c8992e05373f7b32901cf029
# Mark commit as 'edit'
git commit --amend -m "UPSTREAM: usb: typec: hd3ss3220: Fix VBUS regulator error message<rest of commit message>"# For commit 3a1bdcc6be75 (second commit)# Continue rebase and mark as 'edit'
git commit --amend -m "FROMLIST: usb: typec: hd3ss3220: Track VBUS enable state per consumer<rest of commit message>"
git rebase --continue

Note: The patch file in the workspace shows the commits should have these prefixes, but the actual commits in the git tree at the time of CI run did not. This suggests the commits were amended after the CI run, or the patch file was generated from a different branch.


❌ tag-check

Root cause: Both commits are missing required subject-line prefix tags.

Failure details:

This is the same issue as check-patch-compliance. The tag-check is a manual verification step that confirms every commit subject starts with a valid prefix tag when the target branch is notqcom-next or qcom-next-staging.

Since the target branch could not be determined from the available logs, and the commits are missing prefixes, this check fails.

Commits without prefix:

  • 604ad2b6261d: "usb: typec: hd3ss3220: Fix VBUS regulator error message"
  • 3a1bdcc6be75: "usb: typec: hd3ss3220: Track VBUS enable state per consumer"

Fix: Same as check-patch-compliance — add the correct prefix to each commit subject:

  • Commit 1 → UPSTREAM: usb: typec: hd3ss3220: Fix VBUS regulator error message
  • Commit 2 → FROMLIST: usb: typec: hd3ss3220: Track VBUS enable state per consumer

Note: If the target branch is qcom-next or qcom-next-staging, this check does not apply and can be marked as N/A.


Verdict

3 blockers must be fixed before merge:

  1. checkpatch warnings — Wrap long commit body lines at 75 chars, verify author metadata, and fix the unknown commit ID in the Fixes: tag.
  2. check-patch-compliance failure — Add UPSTREAM: prefix to commit 1 and FROMLIST: prefix to commit 2.
  3. tag-check failure — Same as Adding Email Checker  #2 (add required prefix tags).

Additional observations:

  • The patch file (pr.patch) shows the commits with the correct prefixes, but the actual git commits at CI runtime were missing them. This suggests either:
    • The commits were amended after the CI run, or
    • The patch file was generated from a different branch/state than what CI tested.
  • The From: author in the checkpatch warning (kunjinkao-os) does not match the expected author from the patch file (Xu Rao for commit 1, Chang Wu for commit 2). Verify the correct authorship.

Recommendation: Amend both commits to add the required prefix tags and wrap long commit body lines, then force-push to re-trigger CI.

@kunjinkao-os
Chang Wu (kunjinkao-os)force-pushed the fix/hd3ss3220-vbus-qcom-6.18.y branch from c6512aa to 4aeb258CompareAugust 21, 2026 15:48
@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.

@kunjinkao-os

Copy link
Copy Markdown
Author

Note: the qlijarvis reports above were generated before the latest force-push and refer to the old commits. The current PR head is 4aeb258b2e12dc21813edc72c27afca4dd7b072b (b8d4e243, 4aeb258b). Please use this revision for any further validation.

@qlijarvis

Copy link
Copy Markdown

PR #972 — validate-patch

PR:#972

VerdictIssuesDetailed Report
0Full report

Final Summary

  1. Lore link present: Yes — both commits have valid lore.kernel.org links in their commit messages
  2. Lore link matches PR commits: Yes — diff content is faithful to lore for both commits; only base commit hashes differ as expected
  3. Upstream patch status:
    • Commit 1/2: ✅ ACKed (Reviewed-by from maintainer) but not yet merged
    • Commit 2/2: ⏳ Decision Pending (posted 2026-08-19, awaiting review)
  4. PR present in qcom-next/topics: Fail - 1/2 commit(s) are missing from both qcom-next and topics
Verdict: ❌ — click to expand

🔍 Patch Validation

PR:#972 - usb: typec: hd3ss3220 fixes
Upstream commits:


Commit 1/2: UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message

Commit Message

CheckStatusNote
Subject matches upstreamSubject identical except for UPSTREAM: prefix
Body preserves rationaleFull commit message preserved
Fixes tag present/correctFixes: 27fbc19e52b9 present
Authorship preservedFrom: Xu Rao <raoxu@uniontech.com> matches lore
Backport noteN/ANot a backport - direct upstream commit
Cc: stable tagPresent as required
Reviewed-by tagReviewed-by: Heikki Krogerus present

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.c⚠️Context line numbers differ (PR: 218, lore: 218) but change is identical

Diff comparison: The actual code change is identical - swapping "disable" : "enable" to "enable" : "disable" in the error message. The only difference is the base commit hash (PR: b56df9349f89b, lore: 3e39b800e6b5), which is expected due to different tree states.

Upstream Patch Status

Community verdict: ✅ ACKed — Reviewed-by: Heikki Krogerus heikki.krogerus@linux.intel.com

The lore thread shows formal review approval from the subsystem maintainer. The patch was posted as v2 with the requested Cc: stable@vger.kernel.org tag added.


Commit 2/2: FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer

Commit Message

CheckStatusNote
Subject matches upstreamSubject identical except for FROMLIST: prefix
Body preserves rationaleFull commit message preserved
Fixes tag present/correctFixes: b3f9d6e491fd present
Authorship preservedFrom: Chang Wu <kunjinkao.jp@gmail.com> matches lore
Backport noteN/ANot a backport - FROMLIST commit
Cc: stable tagPresent as required
Link to GitHub issueLink: https://github.com/qualcomm-linux/kernel/issues/472 present

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.cAll hunks match exactly

Diff comparison: The PR diff is identical to the lore patch:

  • Adds bool vbus_enabled; field to struct
  • Replaces regulator_is_enabled() check with local state check
  • Adds early return on error
  • Updates local state after successful operation

The only difference is the base commit hash (PR: b63e0bfe5ecc6, lore: d0de5a2488f9), which is expected. Notably, the PR's base for commit 2/2 (b63e0bfe5ecc6) matches the result of commit 1/2, showing proper series ordering.

Upstream Patch Status

Community verdict: ⏳ Decision Pending — posted 2026-08-19, no maintainer response yet

The lore thread contains only the original posting with no replies. The patch is recent (posted 3 days ago as of 2026-08-22) and is still under review.


Issues Found

  1. Integration presence failure (Commit 1/2): The integration_presence_report.md shows commit 1/2 is missing from both qcom-next and kernel-topics. This is a validation failure - the commit claims UPSTREAM: prefix but is not present in the integration branch.

  2. Integration presence partial (Commit 2/2): The integration_presence_report.md shows commit 2/2 has partial evidence in qcom-next (subject or partial tree evidence found) but the full change was not verified, and it's missing from kernel-topics.

  3. Prefix inconsistency (Commit 1/2): The commit uses UPSTREAM: prefix, which according to the validate-patch skill indicates the patch is "Merged into Linus's tree". However, the upstream status shows only Reviewed-by: approval, not a merge confirmation. The correct prefix should be FROMLIST: until the patch is actually merged into mainline.


Recommendation

Do not merge until the following issues are resolved:

  1. Commit 1/2 prefix correction: Change prefix from UPSTREAM: to FROMLIST: since the patch has only received review approval but has not been merged into mainline yet. The UPSTREAM: prefix should only be used after the patch appears in Linus's tree or a stable branch.

  2. Integration presence verification: Both commits must be present in qcom-next or kernel-topics before merging. The current state shows:

    • Commit 1/2: completely missing from both
    • Commit 2/2: only partial evidence in qcom-next
  3. Wait for upstream merge (Commit 1/2): Since commit 1/2 has maintainer approval, monitor lore.kernel.org for the merge confirmation. Once merged, update the prefix to UPSTREAM: and add the mainline commit SHA reference.

  4. Wait for upstream decision (Commit 2/2): Commit 2/2 is still pending review. Wait for maintainer feedback before proceeding.


Final Summary

  1. Lore link present: Yes — both commits have valid lore.kernel.org links in their commit messages
  2. Lore link matches PR commits: Yes — diff content is faithful to lore for both commits; only base commit hashes differ as expected
  3. Upstream patch status:
    • Commit 1/2: ✅ ACKed (Reviewed-by from maintainer) but not yet merged
    • Commit 2/2: ⏳ Decision Pending (posted 2026-08-19, awaiting review)
  4. PR present in qcom-next/topics: Fail — per integration_presence_report.md: 1/2 commits missing, 1/2 partial; overall status FAIL

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

CommitSubjectqcom-nexttopicsFinal
1/2[PATCH 1/2] UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator errormissing - no subject, patch-id, or full tree-content match foundmissing - no subject, patch-id, or full tree-content match foundmissing
2/2[PATCH 2/2] FROMLIST: usb: typec: hd3ss3220: track VBUS enable statepartial - subject or partial tree evidence found, but full change was not verifiedmissing - no subject, patch-id, or full tree-content match foundpartial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #972 — checker-log-analyzer

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

CheckerResultSummary
CheckerResultSummary
checkpatchNo style issues
dt-binding-check⏭️Skipped - no binding changes
dtb-check⏭️Skipped - no DTS changes
sparse-checkNo new sparse warnings
check-uapi-headersNo UAPI changes
check-patch-compliance2 commits missing required prefix
tag-check2 commits missing subject prefix (mandatory for qcom-6.18.y)

Detailed report: Full report

Checker analysis — click to expand

The filesystem is read-only. Let me just output the report directly:

🤖 CI Checker Analysis (checker-log-analyzer)

PR:#972 - USB Type-C HD3SS3220 VBUS regulator fixes
Target Branch:qcom-6.18.y
Source:https://github.com/qualcomm-linux/kernel-config/actions/runs/32258259884

CheckerResultSummary
checkpatchNo style issues
dt-binding-check⏭️Skipped - no binding changes
dtb-check⏭️Skipped - no DTS changes
sparse-checkNo new sparse warnings
check-uapi-headersNo UAPI changes
check-patch-compliance2 commits missing required prefix
tag-check2 commits missing subject prefix (mandatory for qcom-6.18.y)

❌ check-patch-compliance

Root cause: Both commits in the PR have subject lines that do not start with a required prefix tag.

Failure details:

Checking commit: usb: typec: hd3ss3220: Fix VBUS regulator error message
Commit summary does not start with a required prefix
Checking commit: usb: typec: hd3ss3220: Track VBUS enable state per consumer
Commit summary does not start with a required prefix

Analysis:

The checker detected that the actual git commit subject lines are:

  1. usb: typec: hd3ss3220: Fix VBUS regulator error message
  2. usb: typec: hd3ss3220: Track VBUS enable state per consumer

However, the patch file shows they should be:

  1. UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message
  2. FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer

This indicates the git commits themselves don't have the prefix in their subject line, even though the patch format shows them. The check-patch-compliance checker validates the actual git commit message, not the patch file format.

Fix:

Amend both commits to add the required prefix to their subject lines:

# Interactive rebase to edit both commits
git rebase -i HEAD~2
# Mark both commits as 'edit' or 'reword'# For each commit:# Commit 1: Add UPSTREAM: prefix
git commit --amend -m "UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message"
git rebase --continue
# Commit 2: Add FROMLIST: prefix 
git commit --amend -m "FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer"
git rebase --continue
# Force push the updated branch
git push --force-with-lease

Reproduce locally:

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

❌ tag-check

Root cause: Target branch qcom-6.18.y requires all commits to have a subject prefix tag, but both commits are missing them.

Failure details:

The PR targets qcom-6.18.y, which is notqcom-next or qcom-next-staging. Therefore, every commit must start with one of these prefixes:

  • FROMLIST: - Patch posted to mailing list
  • FROMGIT: - Patch from maintainer tree
  • UPSTREAM: - Patch merged into mainline
  • BACKPORT: - Upstream patch with modifications
  • QCLINUX: - Vendor-only change
  • PENDING: - Work-in-progress
  • WORKAROUND: - Temporary fix

Commits missing prefix:

  1. Commit 1:usb: typec: hd3ss3220: Fix VBUS regulator error message

    • Should be: UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message
    • Rationale: This patch has a Link: tag pointing to lore.kernel.org and is signed off by Greg Kroah-Hartman, indicating it's merged upstream
  2. Commit 2:usb: typec: hd3ss3220: Track VBUS enable state per consumer

    • Should be: FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer
    • Rationale: Based on the patch file showing FROMLIST: prefix, this appears to be posted to the mailing list but not yet merged

Fix:

Same as the check-patch-compliance fix above - amend both commits to add the appropriate prefix to their subject lines.

Reproduce locally:

# List all commits and check for missing prefixes
git log <base>..<head> --format="%H %s"|whileread sha subject;doif!echo"$subject"| grep -qE '^(FROMLIST|FROMGIT|UPSTREAM|BACKPORT|QCLINUX|PENDING|WORKAROUND):';thenecho"❌ MISSING prefix: $sha$subject"fidone

Verdict

2 blockers must be fixed before merge:

  1. Add UPSTREAM: prefix to commit 1 subject line
  2. Add FROMLIST: prefix to commit 2 subject line

Both failures are the same root cause: the git commit subject lines are missing the required prefix tags. Once the commits are amended with the correct prefixes and force-pushed, all checkers should pass.

Note: The patch file format shows the prefixes in the Subject: header, but the actual git commit messages don't contain them. This is a common issue when patches are applied without preserving the prefix in the commit message itself.

[/CHECKER_LOG_REPORT]

@qlijarvis

Copy link
Copy Markdown

PR #972 — validate-patch

PR:#972

VerdictIssuesDetailed Report
0Full report

Final Summary

  1. Lore link present: Yes — both commits have valid lore.kernel.org links in the commit messages.
  2. Lore link matches PR commits: Yes — diff content is faithful to lore for both commits (context line numbers differ due to different base commits, which is expected).
  3. Upstream patch status:
    • Commit 1/2: ✅ ACKed — Reviewed-by maintainer, Signed-off-by Greg Kroah-Hartman (USB subsystem maintainer) indicates acceptance.
    • Commit 2/2: ⏳ Decision Pending — posted 2026-08-19, no maintainer reply yet.
  4. PR present in qcom-next/topics: Fail - 1/2 commit(s) are missing from both qcom-next and topics
Verdict: ❌ — click to expand

🔍 Patch Validation

PR:#972 — "usb: typec: hd3ss3220: fix VBUS regulator error message + track VBUS enable state per consumer"
Verdict:FAIL


Commit 1/2: UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message

Upstream:https://lore.kernel.org/r/7A42A287B2B588D0+20260812094632.348581-1-raoxu@uniontech.com

Commit Message

CheckStatusNote
Subject matches upstreamSubject identical except for UPSTREAM: prefix
Body preserves rationaleBody text matches lore patch exactly
Fixes tag present/correctFixes: 27fbc19e52b9 present and correct
Authorship preservedFrom: Xu Rao <raoxu@uniontech.com> matches lore
Backport noteN/ANot a backport — UPSTREAM: prefix indicates merged upstream

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.cDiff matches lore patch exactly (context line numbers differ: PR has b56df9349f89b..b63e0bfe5ecc6, lore has 3e39b800e6b5..d0de5a2488f9 — this is expected due to different base commits)

Upstream Patch Status

Community verdict:ACKed — Reviewed-by: Heikki Krogerus (subsystem maintainer) present in lore thread. PR commit message includes Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, indicating the patch was accepted and merged by the USB subsystem maintainer.

Integration Presence

Missing from qcom-next and topics — integration_presence_report.md reports "missing - no subject, patch-id, or full tree-content match found" in both qcom-next and topics.

Issue: The UPSTREAM: prefix indicates this patch is merged into Linus's tree, but it is not present in qcom-next or topics. This is a validation failureUPSTREAM: commits must be present in the integration tree before being merged into a PR.


Commit 2/2: FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer

Upstream:https://lore.kernel.org/r/20260819152027.90994-1-kunjinkao.jp@gmail.com

Commit Message

CheckStatusNote
Subject matches upstreamSubject identical except for FROMLIST: prefix
Body preserves rationaleBody text matches lore patch exactly
Fixes tag present/correctFixes: b3f9d6e491fd present and correct
Authorship preservedFrom: Chang Wu <kunjinkao.jp@gmail.com> matches lore author; Signed-off-by: Chang Wu present (correct for FROMLIST: — submitter is the original author)
Backport noteN/ANot a backport — FROMLIST: prefix indicates posted to mailing list but not yet merged

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.cDiff matches lore patch exactly (context line numbers differ: PR has b63e0bfe5ecc6..8d0f38fb70442, lore has d0de5a2488f9..4eec90c82bae — expected due to different base commits; PR applies on top of commit 1/2)

Upstream Patch Status

Community verdict:Decision Pending — Lore thread contains only the original posting (dated 2026-08-19). No maintainer replies, no Reviewed-by:/Acked-by: tags, no applied/queued confirmation. Patch is under review.

Integration Presence

⚠️Partial presence in qcom-next — integration_presence_report.md reports "partial - subject or partial tree evidence found, but full change was not verified" in qcom-next; "missing" in topics.

Issue: The commit is not fully verified in qcom-next. This is acceptable for a FROMLIST: commit (not yet merged upstream), but the "partial" status suggests the change may be incomplete or modified in qcom-next.


Issues Found

  1. Commit 1/2 — Missing from integration tree (FAIL):
    The UPSTREAM: prefix indicates this patch is merged into Linus's tree, but integration_presence_report.md confirms it is missing from both qcom-next and topics. Per the validate-patch skill, UPSTREAM: commits must be present in the integration tree before being merged into a PR. This is a validation failure.

  2. Commit 2/2 — Partial presence in qcom-next (WARNING):
    The commit is marked "partial" in qcom-next, meaning subject or partial tree evidence was found but the full change was not verified. This suggests the commit may be incomplete or modified in qcom-next. Manual verification is recommended.

  3. Commit 2/2 — Upstream status is "Decision Pending" (INFO):
    The lore patch was posted on 2026-08-19 and has not yet received maintainer review or acceptance. The FROMLIST: prefix is correct for this status. However, the PR should be monitored for upstream acceptance — if the patch is NACKed or requires significant changes, the PR will need to be updated or reverted.


Verdict

FAIL — Do not merge without correction.

Reason:
Commit 1/2 uses the UPSTREAM: prefix but is missing from qcom-next and topics. Per the validate-patch skill and Qualcomm kernel workflow, UPSTREAM: commits must be present in the integration tree before being merged into a PR. This is a validation failure.

Recommendation:

  1. For commit 1/2:

    • Verify that the patch is actually merged into Linus's tree (check torvalds/linux master or a stable branch).
    • If merged, wait for the patch to land in qcom-next via the upstream sync process, then re-submit the PR.
    • If not merged, change the prefix from UPSTREAM: to FROMLIST: and update the commit message to remove Signed-off-by: Greg Kroah-Hartman (this line should only be present after the patch is merged upstream).
  2. For commit 2/2:

    • Investigate the "partial" status in qcom-next — verify that the full change is present and correct.
    • Monitor the lore thread for maintainer feedback. If the patch is NACKed or requires changes, update the PR accordingly.

Final Summary

  1. Lore link present: Yes — both commits have valid lore.kernel.org links in the commit messages.
  2. Lore link matches PR commits: Yes — diff content is faithful to lore for both commits (context line numbers differ due to different base commits, which is expected).
  3. Upstream patch status:
    • Commit 1/2: ✅ ACKed — Reviewed-by maintainer, Signed-off-by Greg Kroah-Hartman (USB subsystem maintainer) indicates acceptance.
    • Commit 2/2: ⏳ Decision Pending — posted 2026-08-19, no maintainer reply yet.
  4. PR present in qcom-next/topics: ❌ Fail — Commit 1/2 is missing from both qcom-next and topics (validation failure for UPSTREAM: prefix); Commit 2/2 has partial presence in qcom-next (warning — needs manual verification).

Deterministic Integration Presence

Integration Presence Report

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

Kernel repo: /local/mnt/workspace/sgaud/Qgenie/image_pipeline/kernel
qcom-next ref: 3c1e80ceb9fb6978aa94bc0624e7c0003f3b4f6e
topics remote: topics -> https://github.com/qualcomm-linux/kernel-topics
topics fetch: fetched

CommitSubjectqcom-nexttopicsFinal
1/2[PATCH 1/2] UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator errormissing - no subject, patch-id, or full tree-content match foundmissing - no subject, patch-id, or full tree-content match foundmissing
2/2[PATCH 2/2] FROMLIST: usb: typec: hd3ss3220: track VBUS enable statepartial - subject or partial tree evidence found, but full change was not verifiedmissing - no subject, patch-id, or full tree-content match foundpartial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #972 — checker-log-analyzer

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

CheckerResultSummary
CheckerResultSummary
checkpatch⚠️2 warnings (unknown commit IDs in Fixes: tags)
dt-binding-check⏭️Skipped (no DT binding changes)
dtb-check⏭️Skipped (no DTS changes)
sparse-checkPassed
check-uapi-headersPassed
check-patch-compliancePassed
tag-checkBoth commits have valid prefixes (UPSTREAM:, FROMLIST:)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR:#972 - usb: typec: hd3ss3220: fix VBUS regulator issues
Source:https://github.com/qualcomm-linux/kernel-config/actions/runs/32270747565

CheckerResultSummary
checkpatch⚠️2 warnings (unknown commit IDs in Fixes: tags)
dt-binding-check⏭️Skipped (no DT binding changes)
dtb-check⏭️Skipped (no DTS changes)
sparse-checkPassed
check-uapi-headersPassed
check-patch-compliancePassed
tag-checkBoth commits have valid prefixes (UPSTREAM:, FROMLIST:)

⚠️ checkpatch

Root cause: Fixes: tags reference upstream commit SHAs that don't exist in the target tree yet.

Failure details:

Commit 7904cd8afaa9 ("UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message")
WARNING: Unknown commit id '27fbc19e52b9', maybe rebased or not pulled?
#17: Fixes: 27fbc19e52b9 ("usb: typec: hd3ss3220: Enable VBUS based on role state")
Commit 12aa1d730bee ("FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer")
WARNING: Unknown commit id 'b3f9d6e491fd', maybe rebased or not pulled?
#17: Fixes: b3f9d6e491fd ("usb: typec: hd3ss3220: Check if regulator needs to be switched")

Analysis: These warnings are expected and benign. Both commits are backports/cherry-picks from upstream:

  1. Commit 7904cd8 (UPSTREAM:) - References 27fbc19e52b9 which is an upstream commit not yet in the Qualcomm tree
  2. Commit 12aa1d7 (FROMLIST:) - References b3f9d6e491fd which is also an upstream commit

The Fixes: tags are correct and follow kernel conventions. They reference the original upstream commits that introduced the bugs being fixed. When these patches are merged into the Qualcomm tree, the Fixes: tags will remain valid for upstream tracking purposes, even though the referenced SHAs don't exist locally.

Fix: No action required. This is standard practice for backporting upstream fixes. The Fixes: tags should be preserved as-is for proper upstream attribution and stable kernel tracking.

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git 795bab7bf1d6..12aa1d730bee

Verdict

Ready to merge. All critical checkers passed. The checkpatch warnings are expected for backported patches with upstream Fixes: tags and do not indicate any defect in the patches themselves. Both commits:

  • Have proper subject prefixes (UPSTREAM:, FROMLIST:)
  • Include valid Link: tags to upstream sources
  • Pass patch compliance checks
  • Make focused, correct changes to fix VBUS regulator issues

The patches fix legitimate bugs:

  1. 7904cd8: Corrects misleading error messages (enable/disable swapped)
  2. 12aa1d7: Fixes unbalanced regulator reference counting

@qlijarvis

Copy link
Copy Markdown

PR #972 — validate-patch

PR:#972

VerdictIssuesDetailed Report
⚠️0Full report

Final Summary

  1. Lore link present: Yes — both commits have valid Link: tags pointing to lore.kernel.org
  2. Lore link matches PR commits: Yes — diff content, commit messages, authorship, and tags are faithful to lore sources
  3. Upstream patch status:
    • Commit 1/2: ✅ Upstreamed — Greg Kroah-Hartman's SOB confirms merge to USB tree
    • Commit 2/2: ⏳ In review — Reviewed-by and Tested-by present; awaiting maintainer merge decision
  4. PR present in qcom-next/topics: Fail - 1/2 commit(s) are missing from both qcom-next and topics
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR:#972 - "usb: typec: hd3ss3220: fix VBUS regulator error message and track enable state"
Upstream commits:


Commit 1/2: UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message

Commit Message

CheckStatusNote
Subject matches upstreamPR adds UPSTREAM: prefix; lore subject is "fix VBUS regulator error message"
Body preserves rationaleIdentical - explains the error message inversion bug
Fixes tag present/correctFixes: 27fbc19e52b9 present in both
Authorship preservedFrom: Xu Rao <raoxu@uniontech.com> matches lore
Backport noteN/ANot a backport - marked UPSTREAM: with Greg's SOB indicating mainline merge
Greg's SOB presentSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> confirms upstream acceptance

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.cSingle-line fix: swaps "disable" : "enable" to "enable" : "disable" - matches lore exactly

Upstream Status

ACKed — Patch has Greg Kroah-Hartman's (USB maintainer) Signed-off-by:, indicating it was merged into the USB tree. Lore thread shows Reviewed-by: Heikki Krogerus (v2 posted Aug 12, 2026).


Commit 2/2: FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer

Commit Message

CheckStatusNote
Subject matches upstreamPR adds FROMLIST: prefix; lore subject matches
Body preserves rationaleIdentical - explains regulator reference counting bug
Fixes tag present/correctFixes: b3f9d6e491fd present in both
Authorship preservedFrom: Chang Wu <kunjinkao.jp@gmail.com> matches lore
Backport noteN/AFROMLIST: - posted to mailing list, not yet merged
Lore author SOB presentChang Wu's Signed-off-by: present

Diff

FileStatusNotes
drivers/usb/typec/hd3ss3220.cAdds bool vbus_enabled field, replaces regulator_is_enabled() check with local state tracking, adds early return on error - matches lore exactly

Upstream Status

Decision Pending — Posted Aug 19, 2026 (6 days ago). Has Reviewed-by: Heikki Krogerus and Tested-by: Jan Remmet in the lore thread. No merge or NAK signals yet. Likely queued for next merge window.


Issues

Integration Presence (from integration_presence_report.md):

  1. Commit 1/2 (UPSTREAM):Missing from qcom-next and topics
    Despite having Greg's SOB (indicating upstream merge), this commit is not yet present in qcom-next or any topic branch. This is unexpected for an UPSTREAM: commit.

  2. Commit 2/2 (FROMLIST):⚠️Partial match in qcom-next
    Integration report shows "partial - subject or partial tree evidence found, but full change was not verified". The commit is missing from topic branches.

Root cause: These patches are very recent (Aug 12 and Aug 19, 2026). Commit 1 was likely merged to Greg's USB tree but hasn't propagated to qcom-next yet. Commit 2 is still under review on the mailing list.


Verdict

⚠️PARTIAL — Patches are faithful to their lore sources and properly attributed, but integration presence is incomplete:

  • Commit 1/2: Correctly marked UPSTREAM: with Greg's SOB, but not yet in qcom-next. This is acceptable for very recent upstream merges that haven't been pulled into the Qualcomm integration tree yet.

  • Commit 2/2: Correctly marked FROMLIST: and has positive review signals (Reviewed-by, Tested-by), but not yet merged upstream. Partial presence in qcom-next suggests it may have been cherry-picked for testing.

Recommendation: Monitor upstream status. Once commit 1 appears in a tagged release (e.g., v6.12-rc1), verify it lands in qcom-next. For commit 2, wait for maintainer acceptance or update the PR if a v2 is posted.


Final Summary

  1. Lore link present: Yes — both commits have valid Link: tags pointing to lore.kernel.org
  2. Lore link matches PR commits: Yes — diff content, commit messages, authorship, and tags are faithful to lore sources
  3. Upstream patch status:
    • Commit 1/2: ✅ Upstreamed — Greg Kroah-Hartman's SOB confirms merge to USB tree
    • Commit 2/2: ⏳ In review — Reviewed-by and Tested-by present; awaiting maintainer merge decision
  4. PR present in qcom-next/topics:⚠️Partial/Fail — Commit 1 missing from both; commit 2 has partial match in qcom-next. Integration report status: FAIL (1/2 missing, 1/2 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: 3c1e80ceb9fb6978aa94bc0624e7c0003f3b4f6e
topics remote: topics -> https://github.com/qualcomm-linux/kernel-topics
topics fetch: fetched

CommitSubjectqcom-nexttopicsFinal
1/2[PATCH 1/2] UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator errormissing - no subject, patch-id, or full tree-content match foundmissing - no subject, patch-id, or full tree-content match foundmissing
2/2[PATCH 2/2] FROMLIST: usb: typec: hd3ss3220: track VBUS enable statepartial - subject or partial tree evidence found, but full change was not verifiedmissing - no subject, patch-id, or full tree-content match foundpartial

Final Status

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

@qlijarvis

Copy link
Copy Markdown

PR #972 — checker-log-analyzer

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

CheckerResultSummary
CheckerResultSummary
checkpatch2 warnings (Unknown commit IDs in Fixes: tags)
dt-binding-check⏭️No DT binding changes
dtb-check⏭️No DTS changes
sparse-checkPassed
check-uapi-headersPassed
check-patch-complianceInvalid Link: GitHub issue URL instead of lore.kernel.org
tag-checkBoth commits have valid prefixes (UPSTREAM:, FROMLIST:)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR:#972 - usb: typec: hd3ss3220 VBUS regulator fixes
Source:https://github.com/qualcomm-linux/kernel-config/actions/runs/32499781461
Target branch:qcom-6.18.y

CheckerResultSummary
checkpatch2 warnings (Unknown commit IDs in Fixes: tags)
dt-binding-check⏭️No DT binding changes
dtb-check⏭️No DTS changes
sparse-checkPassed
check-uapi-headersPassed
check-patch-complianceInvalid Link: GitHub issue URL instead of lore.kernel.org
tag-checkBoth commits have valid prefixes (UPSTREAM:, FROMLIST:)

❌ checkpatch

Root cause: Both commits reference Fixes: tags with commit IDs that don't exist in the qcom-6.18.y branch history.

Failure details:

Commit b8d4e243ed42 ("UPSTREAM: usb: typec: hd3ss3220: fix VBUS regulator error message")
WARNING: Unknown commit id '27fbc19e52b9', maybe rebased or not pulled?
#15: Fixes: 27fbc19e52b9 ("usb: typec: hd3ss3220: Enable VBUS based on role state")
Commit 4aeb258b2e12 ("FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer")
WARNING: Unknown commit id 'b3f9d6e491fd', maybe rebased or not pulled?
#17: Fixes: b3f9d6e491fd ("usb: typec: hd3ss3220: Check if regulator needs to be switched")

Analysis: These are upstream commit IDs from mainline Linux that may not exist in the vendor tree with the same SHA. This is a common occurrence when backporting upstream patches to vendor branches. The warnings are informational — checkpatch cannot verify the Fixes: tags because the referenced commits either:

  1. Don't exist in qcom-6.18.y yet, or
  2. Were integrated with different commit IDs during vendor tree merges

Fix: These warnings are acceptable for backports. The Fixes: tags correctly reference the upstream commits that introduced the bugs. No action required unless the maintainer prefers to:

  • Remove the Fixes: tags (not recommended — loses upstream traceability)
  • Update the Fixes: tags to reference the vendor tree commit IDs (requires manual lookup)

Reproduce locally:

./scripts/checkpatch.pl --strict --ignore FILE_PATH_CHANGES --git dc0f4d4280a7..e2b1b78df67f

❌ check-patch-compliance

Root cause: The second commit's Link: trailer points to a GitHub issue URL (https://github.com/qualcomm-linux/kernel/issues/472) instead of a lore.kernel.org mailing list archive URL.

Failure details:

Checking commit: FROMLIST: usb: typec: hd3ss3220: track VBUS enable state per consumer
Something seems wrong with the provided link. Please verify it
Try below command to run locally-
b4 am --single-message -C -l -3 https://github.com/qualcomm-linux/kernel/issues/472

Analysis: The commit message contains two Link: trailers:

Link: https://github.com/qualcomm-linux/kernel/issues/472
Link: https://lore.kernel.org/r/20260819152027.90994-1-kunjinkao.jp@gmail.com

The checker attempts to fetch the patch from the first Link: it encounters. Since https://github.com/qualcomm-linux/kernel/issues/472 is a GitHub issue (not a mailing list patch), b4 am cannot fetch it, causing the check to fail.

Fix: Reorder the Link: trailers so the lore.kernel.org URL comes first:

git rebase -i dc0f4d4280a7 # mark commit 4aeb258b2e12 as 'edit'
git commit --amend
# Edit the commit message to reorder Link: trailers:# Link: https://lore.kernel.org/r/20260819152027.90994-1-kunjinkao.jp@gmail.com# Link: https://github.com/qualcomm-linux/kernel/issues/472
git rebase --continue

Alternatively, remove the GitHub issue link entirely if it's not required for upstream traceability. The lore.kernel.org link is the primary reference for FROMLIST: patches.

Reproduce locally:

cd /path/to/kernel
bash ../kernel-checkers/check-patch-compliance.sh --kernel-src . \
--base dc0f4d4280a7 --head e2b1b78df67f

Verdict

2 issues to fix before merge:

  1. check-patch-compliance (blocker): Reorder Link: trailers in commit 4aeb258b2e12 to place the lore.kernel.org URL first, or remove the GitHub issue link.

  2. checkpatch warnings (informational): The "Unknown commit id" warnings for Fixes: tags are acceptable for backported patches. The referenced commit IDs are correct for upstream but may not exist in the vendor tree. No action required unless maintainer policy requires removing or updating Fixes: tags.

Recommendation: Fix the Link: ordering in the second commit and re-push. The checkpatch warnings can be ignored as they are expected for upstream backports.

Sign up for freeto 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

@kunjinkao-os@qlijarvis