Skip to content

Fix ODROID-C2 USB hotplug#4669

Merged
sairon merged 1 commit into
devfrom
fix-odroid-c2-hotplug
Apr 28, 2026
Merged

Fix ODROID-C2 USB hotplug#4669
sairon merged 1 commit into
devfrom
fix-odroid-c2-hotplug

Conversation

@agners
Copy link
Copy Markdown
Member

@agners agners commented Apr 28, 2026

It seems that USB autosuspend interacting badly with dwc2 on Meson-GXBB: with nothing plugged into the GL852G's downstream ports at boot, the hub idle-suspends, and dwc2 on this SoC doesn't reliably wake on a downstream port-status-change. Devices present at boot enumerate before autosuspend kicks in.

Fix by disabling USB autosuspend on this particular board.

Came up during tests with Linux 6.18. The issue was already present in 6.12 and probably earlier, and also got noted in #1703 (comment).

Summary by CodeRabbit

  • Chores
    • Updated kernel configuration for Odroid C2 device with device-specific USB settings adjustments.

It seems that USB autosuspend interacting badly with dwc2 on Meson-GXBB:
with nothing plugged into the GL852G's downstream ports at boot, the hub
idle-suspends, and dwc2 on this SoC doesn't reliably wake on a downstream
port-status-change. Devices present at boot enumerate before autosuspend
kicks in.

Fix by disabling USB autosuspend on this particular board.
@agners agners added the board/odroid Hardkernel's ODROID Boards label Apr 28, 2026
@agners agners requested a review from sairon April 28, 2026 17:35
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 28, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 5dcb2bfd-dba8-4c13-80b7-e67c971ed2c4

📥 Commits

Reviewing files that changed from the base of the PR and between ae74dad and 2078ee6.

📒 Files selected for processing (2)
  • buildroot-external/board/hardkernel/odroid-c2/kernel.config
  • buildroot-external/configs/odroid_c2_defconfig

📝 Walkthrough

Walkthrough

Two files are modified to add USB autosuspend delay configuration to the Odroid C2 board: a new kernel config fragment disables the delay setting, and the defconfig is updated to reference this fragment during kernel build.

Changes

Cohort / File(s) Summary
Odroid C2 Kernel Configuration
buildroot-external/board/hardkernel/odroid-c2/kernel.config, buildroot-external/configs/odroid_c2_defconfig
New kernel config fragment adds CONFIG_USB_AUTOSUSPEND_DELAY=-1 to disable USB autosuspend, and defconfig is updated to include this fragment in the kernel build configuration.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 USB stays awake today,
No naps on Odroid's way!
Autosuspend delay erased,
This bunny code's been placed! ⚡

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Fix ODROID-C2 USB hotplug' directly corresponds to the main change: disabling USB autosuspend to resolve a USB hotplug issue on ODROID-C2 boards.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix-odroid-c2-hotplug

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

jens-maus added a commit to OpenCCU/OpenCCU that referenced this pull request Apr 28, 2026
This disables the USB autosuspend feature for ODROID-C2 because
USB autosuspend interacting badly with dwc2 on Meson-GXBB causing
USB hotplug to fail.

(cf. home-assistant/operating-system#4669)
Copy link
Copy Markdown
Member

@sairon sairon left a comment

Choose a reason for hiding this comment

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

Nice catch, thanks!

@sairon sairon merged commit bc7adb3 into dev Apr 28, 2026
3 checks passed
@sairon sairon deleted the fix-odroid-c2-hotplug branch April 28, 2026 20:24
@github-actions github-actions Bot locked and limited conversation to collaborators May 6, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

board/odroid Hardkernel's ODROID Boards cla-signed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants