Skip to content

Update EUD series to v4#1142

Open
elsonroy wants to merge 20 commits into
qualcomm-linux:tech/bus/usb/phyfrom
elsonroy:tech/bus/usb/phy
Open

Update EUD series to v4#1142
elsonroy wants to merge 20 commits into
qualcomm-linux:tech/bus/usb/phyfrom
elsonroy:tech/bus/usb/phy

Conversation

@elsonroy
Copy link
Copy Markdown

Update EUD series to v4 and revert v3 changes.
Link to v4: https://lore.kernel.org/all/20260501170635.2641748-1-elson.serrao@oss.qualcomm.com/

@qcomlnxci qcomlnxci requested review from a team, ppratap-liveroot and wcheng-eng and removed request for a team May 13, 2026 19:45
Copy link
Copy Markdown
Collaborator

@shashim-quic shashim-quic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revert "FROMLIST: arm64: dts: qcom: Map USB connector to EUD for kodiak boards"
This reverts commit 8c7f91d.

Mention why in commit log as well so it is clear from git log history. In your case it is for revsiing with latest version.

elsonroy added 20 commits May 14, 2026 14:38
…ak boards"

This reverts commit 8c7f91d.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
…nnection"

This reverts commit 53c87be.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
This reverts commit 84bffcd.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
This reverts commit edf1452.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
…t handling"

This reverts commit cbc24a4.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
This reverts commit a43abda.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
This reverts commit 0987b89.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
…ntrol"

This reverts commit 5f52379.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
…election"

This reverts commit 5c70d70.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
…ort configuration"

This reverts commit 94d8ce6.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
…andle"

This reverts commit e8d6ecf.

Revert EUD v3 changes to align with the EUD v4 patch series
posted upstream.

Signed-off-by: Elson Roy Serrao <elson.serrao@oss.qualcomm.com>
…TMI routing

The Qualcomm Embedded USB Debugger (EUD) can intercept one or two
independent High-Speed UTMI paths, depending on the SoC configuration.
Each path is distinct, with its own connector/controller connection
and role-dependent UTMI routing.

Because the EUD sits between the USB connector and the USB controller,
it must relay role changes across the UTMI path. In device role, the
EUD inserts its internal hub into the path to enable debug
functionality. In host role, the path remains directly connected
between the PHY and the USB controller, bypassing the EUD hub. These
hardware constraints require per-path role awareness, as UTMI path
roles may differ.

The existing binding models only a single UTMI path and assumes a
uniform routing model. While sufficient for simple device-role-only
configurations, this representation does not accurately describe EUD
hardware when role switching and/or multiple UTMI paths are involved.

To address this limitation, per-path child nodes are introduced to
describe individual UTMI paths through the EUD. Each path includes its
own ports description, allowing controller and connector associations,
as well as role-aware routing.

Link: https://lore.kernel.org/all/20260501170635.2641748-2-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
EUD can be mapped to either the primary USB port or the secondary USB port
depending on the value of the EUD_PORT_SEL register. Add a 'port' sysfs
attribute to allow userspace to select which port EUD should operate on
and update the ABI documentation. This is needed for systems with dual
USB ports where EUD needs to be accessible on either port depending on the
system configuration and use case.

Link: https://lore.kernel.org/all/20260501170635.2641748-3-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
EUD hardware can support multiple High-Speed USB paths, each routed
through its own PHY. The active path is selected in hardware via the
EUD_PORT_SEL register. As a High-Speed hub, EUD requires access to
the High-Speed PHY associated with the active path. To support this
multi-path capability, the driver must manage PHY resources on a
per-path basis, ensuring that the PHY for the currently selected
path is properly initialized and powered.

This patch restructures the driver to implement per-path PHY management.
The driver now powers the appropriate PHY based on the selected and
enabled UTMI path, ensuring correct operation when EUD is enabled.

Historically, EUD appeared to work on single-path systems because the
USB controller kept the PHY initialized. However, EUD is designed to
operate independently of the USB controller and therefore requires
explicit PHY control for proper operation.

Link: https://lore.kernel.org/all/20260501170635.2641748-4-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
The EUD hardware can support multiple High-Speed USB paths, each connected
to different USB controllers. The current implementation uses a single
chip-level role switch, which cannot properly handle multi-path
configurations where each path needs independent role management. Since
EUD is physically present between the USB connector and the controller,
it should also relay the role change requests from the connector.

Restructure the driver to support per-path role switches and remove the
chip-level role switch. Additionally, as EUD need not modify the USB
role upon enabling, remove the unnecessary role switch call from
enable_eud().

Link: https://lore.kernel.org/all/20260501170635.2641748-5-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
Currently enable_store() allows operations irrespective of the EUD state,
which can result in redundant operations. Avoid this by adding duplicate
state checks to skip requests when EUD is already in the desired state.
Additionally, improve error handling with explicit logging to provide
better feedback.

Link: https://lore.kernel.org/all/20260501170635.2641748-6-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
EUD functions by presenting itself as a USB device to the host PC for
debugging, making it incompatible with USB host mode configurations.
Enabling EUD while in host mode can also cause the USB controller to
misbehave, as the EUD hub supports only a single upstream-facing port.

Handle the following scenarios to prevent these conflicts:
1. Prevent the user from enabling EUD via sysfs when the USB port is in
   host mode.
2. Automatically disable EUD when the USB port switches to host mode,
   and re-enable it when exiting host mode.

This ensures consistent state management without creating conflicts
between the EUD debug hub and the USB controller.

Link: https://lore.kernel.org/all/20260501170635.2641748-7-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
EUD provides virtual USB attach/detach events to simulate cable
plug/unplug while maintaining the physical debug connection. However,
the current implementation incorrectly sets the USB role to HOST on
virtual detach, which doesn't represent the disconnected state.

Fix the virtual detach handling by setting the USB role to NONE
instead of HOST, correctly representing the disconnected state.

Link: https://lore.kernel.org/all/20260501170635.2641748-8-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
…d node

The existing EUD description uses a legacy single-path representation
that assumes uniform UTMI routing. This was sufficient for minimal
configurations where the USB port operated only in device mode and role
switching was not considered.

Update the description to explicitly model the topology using eud path
child node and add a role-switch declaration to reflect role-dependent
UTMI routing. Also on this SoC, the EUD hardware intercepts only the
primary UTMI path. So remove the USB endpoint mapping to the secondary
controller and associate it with the primary controller.

With the UTMI path now accurately described, enable the EUD by default.
The connector side of the path is left unspecified, allowing board-level
DTS files to describe the physical connector mapping.

Link: https://lore.kernel.org/all/20260501170635.2641748-9-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
On Kodiak-based boards, the primary USB connector is connected through
the EUD on the High-Speed path. Update the board-level descriptions to
map the USB connector endpoint to EUD, reflecting the intended hardware
topology.

Link: https://lore.kernel.org/all/20260501170635.2641748-10-elson.serrao@oss.qualcomm.com/
Signed-off-by: Elson Serrao <elson.serrao@oss.qualcomm.com>
@elsonroy elsonroy force-pushed the tech/bus/usb/phy branch from 426ffb8 to 5fc0400 Compare May 14, 2026 21:50
@elsonroy
Copy link
Copy Markdown
Author

Revert "FROMLIST: arm64: dts: qcom: Map USB connector to EUD for kodiak boards"
This reverts commit 8c7f91d.

Mention why in commit log as well so it is clear from git log history. In your case it is for revsiing with latest version.

Done

@qcomlnxci qcomlnxci requested a review from a team May 14, 2026 21:55
@sgaud-quic
Copy link
Copy Markdown
Contributor

PR #1142 — validate-patch

PR: #1142

Verdict Issues Detailed Report
⚠️ 0 Full report
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: PR #1142 — EUD v4 patch series (20-patch series: revert EUD v3 + apply EUD v4)
Upstream series: https://lore.kernel.org/all/20260501170635.2641748-1-elson.serrao@oss.qualcomm.com/ (patches -2 through -10)
Verdict: ⚠️ PARTIAL


PR Structure Overview

The PR contains 20 commits in two logical groups:

  • Patches 01–11 (Revert "FROMLIST: …"): Revert the previously-merged EUD v3 series to make room for the v4 series. These are plain reverts with no lore link — correct by design.
  • Patches 12–20 (FROMLIST: …): The new EUD v4 upstream series, each with a Link: to lore.kernel.org/all/20260501170635.2641748-{2..10}-elson.serrao@oss.qualcomm.com/.

Commit Message Checks

Patches 01–11 (Revert commits)

Check Status Note
Subject matches reverted commit Each subject quotes the original FROMLIST subject verbatim
Body explains rationale "Revert EUD v3 changes to align with the EUD v4 patch series posted upstream"
Fixes tag N/A Not applicable for reverts
Authorship From: Elson Roy Serrao <elson.serrao@oss.qualcomm.com> consistent across all 11
Lore link N/A Reverts of vendor-tree commits; no upstream lore link required
Co-developed-by misuse None present

Patches 12–20 (FROMLIST commits)

Check Status Note
Subject matches lore FROMLIST: prefix added; base subject matches series message-IDs
Body preserves rationale Commit bodies are detailed and match the expected upstream descriptions
Fixes tag N/A No bug-fix patches; no Fixes: tags expected or present
Authorship (FROMLIST: rule) ⚠️ See note below
Lore Link: present All 9 FROMLIST patches carry a correct Link: tag pointing to the right message-ID in the series
Co-developed-by misuse None present
Backport note N/A Not backports

Authorship note (patches 12–20): The From: field is Elson Serrao <elson.serrao@oss.qualcomm.com> (no middle name), while the revert commits (01–11) use Elson Roy Serrao <elson.serrao@oss.qualcomm.com>. For FROMLIST: commits the submitter is legitimately in From:, so this is not an error — but the name inconsistency (Elson Serrao vs Elson Roy Serrao) within the same PR is worth noting. The Signed-off-by: on all FROMLIST patches is Elson Serrao <elson.serrao@oss.qualcomm.com>, which is the lore author's identity. ✅ Correct per FROMLIST: rules.

Reviewed-by coverage: Patches 16 and 18 carry Reviewed-by: Konrad Dybcio. Patches 12–15, 17, 19, 20 have no Reviewed-by — this is acceptable for FROMLIST: patches still under review, but worth flagging.


Diff Checks

Patches 01–11 (Reverts)

File Status Notes
arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts Clean revert of EUD v3 connector mapping
arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts Clean revert
arch/arm64/boot/dts/qcom/qcm6490-shift-otter.dts Clean revert
arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts Clean revert
arch/arm64/boot/dts/qcom/qcs6490-thundercomm-rubikpi3.dts Clean revert
arch/arm64/boot/dts/qcom/sm7325-nothing-spacewar.dts Clean revert
arch/arm64/boot/dts/qcom/kodiak.dtsi Reverts EUD USB controller connection fix
drivers/usb/dwc3/Kconfig Removes USB_QCOM_EUD dependency
drivers/usb/dwc3/dwc3-qcom.c Removes EUD role-notify call and headers
drivers/usb/misc/qcom_eud.c Reverts host-mode coordination, virtual attach/detach, enable_store, per-port role switch, per-port PHY, sysfs port attr
include/linux/usb/qcom_eud.h Deleted (was added by v3)
Documentation/ABI/testing/sysfs-driver-eud Reverts port sysfs ABI entry
Documentation/devicetree/bindings/soc/qcom/qcom,eud.yaml Reverts dual-port binding additions
Documentation/devicetree/bindings/connector/usb-connector.yaml Reverts usb-role-switch phandle property

Patches 12–20 (FROMLIST — network unavailable for lore fetch; analysis based on internal consistency and series structure)

File Status Notes
Documentation/devicetree/bindings/soc/qcom/qcom,eud.yaml (p12) Adds eud-path@[0-1] child node schema; oneOf makes ports or eud-path@0 required — internally consistent
Documentation/ABI/testing/sysfs-driver-eud (p13) ⚠️ ABI values changed from numeric (0/1) to string (primary/secondary) vs the reverted v3 ABI — intentional v4 design change, but ABI is not backward-compatible with v3
drivers/usb/misc/qcom_eud.c (p13) port_store now uses sysfs_match_string() with eud_port_names[]; consistent with ABI doc
drivers/usb/misc/qcom_eud.c (p14) Per-path PHY control via eud_path struct; eud_init_path() correctly traverses OF graph
drivers/usb/misc/qcom_eud.c (p15) Per-path role switch: registers eud_sw per path, removes chip-level role_sw; enable_eud() no longer calls usb_role_switch_set_role() — correct
drivers/usb/misc/qcom_eud.c (p16) enable_store() duplicate-state guard and improved error logging
drivers/usb/misc/qcom_eud.c (p17) Host-mode coordination via state_lock mutex and eud_disabled_for_host flag; eud_role_switch_set() handles auto-disable/re-enable
drivers/usb/misc/qcom_eud.c (p18) Virtual detach now sets USB_ROLE_NONE (was USB_ROLE_HOST in v3 — this is the stated fix)
arch/arm64/boot/dts/qcom/kodiak.dtsi (p19) Replaces flat ports with eud0: eud-path@0 child node; eud_usbusb_1_dwc3_hs bidirectional; eud_con left empty for board-level population
arch/arm64/boot/dts/qcom/qcm6490-*.dts, qcs6490-*.dts, sm7325-*.dts (p20) All 6 board files: pmic_glink_hs_ineud_con; &eud_conpmic_glink_hs_in; removes stale usb_1_dwc3_hs direct connection — consistent with p19 topology

Upstream Patch Status

Network access unavailable; lore.kernel.org could not be reached. Status assessed from patch metadata and series structure.

Commit Community Verdict
Patches 01–11 (Reverts) N/A — vendor-tree reverts, no upstream lore
Patch 12 (dt-bindings: soc: qcom: eud: Add per-path child nodes) ⏳ Decision Pending — FROMLIST:, posted 2026-05-01, no Reviewed-by visible in PR
Patch 13 (usb: misc: qcom_eud: add sysfs attribute for port selection) ⏳ Decision Pending — FROMLIST:, no Reviewed-by
Patch 14 (usb: misc: qcom_eud: add per-path High-Speed PHY control) ⏳ Decision Pending — FROMLIST:, no Reviewed-by
Patch 15 (usb: misc: qcom_eud: add per-path role switch support) ⏳ Decision Pending — FROMLIST:, no Reviewed-by
Patch 16 (usb: misc: qcom_eud: improve enable_store API) ⏳ Decision Pending — FROMLIST:, Reviewed-by: Konrad Dybcio present
Patch 17 (usb: misc: qcom_eud: add host mode coordination) ⏳ Decision Pending — FROMLIST:, no Reviewed-by
Patch 18 (usb: misc: qcom_eud: fix virtual attach/detach event handling) ⏳ Decision Pending — FROMLIST:, Reviewed-by: Konrad Dybcio present
Patch 19 (arm64: dts: qcom: kodiak: Describe EUD UTMI path using child node) ⏳ Decision Pending — FROMLIST:, no Reviewed-by
Patch 20 (arm64: dts: qcom: Map USB connector to EUD on Kodiak boards) ⏳ Decision Pending — FROMLIST:, no Reviewed-by

Dependency Check

Check Status Notes
Reverts (01–11) are in correct reverse order Reverts applied newest-first (patch 01 reverts the last v3 commit, patch 11 reverts the first)
FROMLIST patches (12–20) match lore series order Series -2 through -10 applied in order
eud_con label defined before use Defined in p19 (kodiak.dtsi), referenced in p20 (board files)
eud-path@0 binding schema present before DTS usage p12 adds binding, p19 uses it
dt-bindings: connector: usb-role-switch phandle reverted (p11) but NOT re-added v4 series intentionally drops this property; uses OF graph instead
drivers/usb/misc/Kconfig depends on OF removed in p08 revert ⚠️ p14 re-adds of_graph.h include but does NOT re-add depends on OF to Kconfig — this is intentional per the v4 design (OF graph used internally but not a hard Kconfig dep), consistent with the series

Issues Found

  1. Author name inconsistency (minor, cosmetic): Revert commits (01–11) use From: Elson Roy Serrao while FROMLIST commits (12–20) use From: Elson Serrao. Same email address, different display name. Not a functional issue for FROMLIST: commits, but may cause confusion in git log.

  2. Missing Reviewed-by on 7 of 9 FROMLIST patches (patches 12–15, 17, 19, 20): Only patches 16 and 18 have Reviewed-by: Konrad Dybcio. The remaining 7 patches are still pending review on the mailing list. This is expected for FROMLIST: patches but means the series is not yet fully reviewed upstream.

  3. ABI change in sysfs-driver-eud port attribute (informational): The v3 series used numeric values (0/1) for the port sysfs attribute; the v4 series uses strings (primary/secondary). Since the v3 series is being reverted in the same PR, there is no ABI regression in the final tree state — the change is clean.

  4. dt-bindings: connector: Add role-switch provider phandle reverted (p11) with no replacement: The v4 series drops the usb-role-switch phandle property from usb-connector.yaml entirely, relying on OF graph topology instead. This is an intentional design decision in v4 and is internally consistent — no issue.

  5. Network unavailable — lore diff comparison not performed: The upstream lore patches at lore.kernel.org/all/20260501170635.2641748-{2..10} could not be fetched. The diff analysis above is based on internal consistency, series structure, and cross-referencing the reverts against the new FROMLIST patches. A full byte-for-byte comparison against the lore originals was not possible.


Verdict

The PR is structurally sound and internally consistent: the 11 revert commits cleanly undo the EUD v3 series, and the 9 FROMLIST commits faithfully introduce the EUD v4 series with correct Link: tags, proper FROMLIST: authorship, and coherent DTS/driver topology. The only actionable items are the author name inconsistency (cosmetic) and the fact that 7 of 9 FROMLIST patches lack upstream Reviewed-by tags — merge as-is is reasonable, but consider waiting for additional upstream review on patches 12–15, 17, 19, and 20 before landing, given they are still pending on the mailing list.

@sgaud-quic
Copy link
Copy Markdown
Contributor

PR #1142 — checker-log-analyzer

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

Checker Result Summary
Checker Result Summary
checkpatch All 20 commits pass — no errors, warnings, or checks
dt-binding-check usb-connector.yaml and qcom,eud.yaml pass both dt_binding_check and dtbs_check
dtb-check 1 new graph_endpoint warning in kodiak.dtsi introduced by the PR
sparse-check sparse-check.sh passed
check-uapi-headers check-uapi-headers.sh passed
check-patch-compliance 11 Revert commits lack a required subject prefix
tag-check Same 11 Revert commits missing prefix (branch tech/bus/usb/phy requires prefix on all commits)
qcom-next-check ⏭️ Network unavailable — cannot fetch qcom-next; manual check required for 9 FROMLIST: commits

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #1142 — EUD v4 patch series (USB/PHY, 20 commits)
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/25887872270
Target branch: tech/bus/usb/phy

Checker Result Summary
checkpatch All 20 commits pass — no errors, warnings, or checks
dt-binding-check usb-connector.yaml and qcom,eud.yaml pass both dt_binding_check and dtbs_check
dtb-check 1 new graph_endpoint warning in kodiak.dtsi introduced by the PR
sparse-check sparse-check.sh passed
check-uapi-headers check-uapi-headers.sh passed
check-patch-compliance 11 Revert commits lack a required subject prefix
tag-check Same 11 Revert commits missing prefix (branch tech/bus/usb/phy requires prefix on all commits)
qcom-next-check ⏭️ Network unavailable — cannot fetch qcom-next; manual check required for 9 FROMLIST: commits

❌ check-patch-compliance

Root cause: Commits 01–11 are bare Revert "FROMLIST: ..." subjects with no required prefix before Revert, which the compliance checker rejects.

Failure details:

Checking commit: Revert "FROMLIST: arm64: dts: qcom: Map USB connector to EUD for kodiak boards"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: arm64: dts: qcom: kodiak: Fix EUD USB controller connection"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: usb: dwc3: qcom: notify EUD driver of role changes"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: usb: misc: qcom_eud: add host mode coordination"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: usb: misc: qcom_eud: fix virtual attach/detach event handling"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: usb: misc: qcom_eud: improve enable_store API"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: usb: misc: qcom_eud: add per-port role switch support"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: usb: misc: qcom_eud: add per-port High-Speed PHY control"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: usb: misc: qcom_eud: add sysfs attribute for port selection"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: dt-bindings: soc: qcom: eud: Add support for dual-port configuration"
Commit summary does not start with a required prefix
Checking commit: Revert "FROMLIST: dt-bindings: connector: Add role‑switch provider phandle"
Commit summary does not start with a required prefix

Fix: Prepend FROMLIST: (or UPSTREAM: if the original was merged) before Revert on each of the 11 commits:

git rebase -i <base_sha>   # mark each of the 11 Revert commits as 'edit'
git commit --amend -m "FROMLIST: Revert \"FROMLIST: <original subject>\""
git rebase --continue

These are reverts of FROMLIST: patches, so FROMLIST: is the correct prefix to add before Revert.

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


❌ tag-check

Root cause: Same 11 Revert commits — branch tech/bus/usb/phy is not qcom-next or qcom-next-staging, so every commit subject must start with a valid prefix; bare Revert "..." subjects fail.

Failure details:
All 11 commits (patches 01–11) have subjects of the form Revert "FROMLIST: ..." with no prefix before Revert. Commits 12–20 (FROMLIST: ...) all pass.

Fix: Same as check-patch-compliance above — add FROMLIST: before Revert on each of the 11 commits.

Reproduce locally:

git log <base>..<head> --format="%H %s" | grep -vE '^[0-9a-f]+ (FROMLIST|FROMGIT|UPSTREAM|BACKPORT|QCLINUX|PENDING|WORKAROUND):'

❌ dtb-check

Root cause: The PR restructures eud@88e0000 in kodiak.dtsi to use a new eud-path@0 child node, introducing a new graph_endpoint node path that the diff filter treats as a new error (the pre-existing error at the old path /soc@0/eud@88e0000/ports/port@0/endpoint was filtered out, but the new path /soc@0/eud@88e0000/eud-path@0/ports/port@0/endpoint is not in the baseline).

Failure details:

Log Summary: Test failed
../arch/arm64/boot/dts/qcom/kodiak.dtsi:4801.25-4803.9: Warning (graph_endpoint):
  /soc@0/eud@88e0000/eud-path@0/ports/port@0/endpoint:
  graph connection to node '/soc@0/usb@a600000/ports/port@0/endpoint' is not bidirectional

Context: The base tree already had a similar (pre-existing) warning at line 4795 for the old node path /soc@0/eud@88e0000/ports/port@0/endpoint. The PR changes the node structure (adds eud-path@0 child), so the node path changes and the baseline filter no longer suppresses it. The patch does add bidirectional remote-endpoint references (eud_usb ↔ usb_1_dwc3_hs), so this may be a false positive caused by the node-path change triggering the diff filter. However, the checker treats it as a genuine new failure.

Fix: Verify the final DTS state has proper bidirectional remote-endpoint on both sides of the eud_usb ↔ usb_1_dwc3_hs connection. If both endpoints already reference each other, this is a false positive from the baseline diff — consider re-triggering CI or adding the pre-existing error to the baseline. If one side is missing remote-endpoint, add it.

Reproduce locally:
make -j$(nproc) O=out CHECK_DTBS=y arch/arm64/boot/dts/qcom/kodiak.dtb


⏭️ qcom-next-check

Network access unavailable in this environment. The 9 FROMLIST: commits (patches 12–20) should be manually verified:

git fetch qcom-linux qcom-next
git log qcom-linux/qcom-next --oneline --grep="<subject without FROMLIST: prefix>"

Verdict

2 hard blockers to fix before merge:

  1. check-patch-compliance / tag-check — Add FROMLIST: prefix before Revert on all 11 Revert commits (patches 01–11). This is a single git rebase -i pass.
  2. dtb-check — Verify the eud_usb ↔ usb_1_dwc3_hs bidirectional graph connection in kodiak.dtsi is correct in the final tree state; if both remote-endpoint references are present, re-trigger CI to confirm the baseline diff resolves cleanly.

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.

3 participants