Repository navigation
kernel: Turn USB data on for every unidentified attachment - #127
Merged
Merged
Conversation
The Lightning charger keeps USB data off from attach until it has identified the source, at most one second; only the first attachment since boot got that bound. After an unplug and replug the PMIC can stay in a transitional state, and USB data then stayed off: no USB serial and no SSH until a reboot. Every attachment now gets the one-second bound, at the 500 mA fallback, and the hold starts when input returns. The charger poll moves to an unbound queue (a boot warning). This is the same driver on the iPad 5 and iPad 6. J71t USB serial and USB network are now tested by hand, including after a USB host session. From orchard PR OrchardLinux#127 (commit 339bd29), folded into one patch that extends the existing hold instead of adding a second timer.
henrikklee
force-pushed
the
j71t/usb-hold
branch
from
November 12, 2026 21:23
339bd29 to
dcddf31
Compare
Contributor
|
Landing this as your commit, folded into one patch: instead of a second timer, the existing one-second USB hold now applies to every attachment, not only the first since probe, and starts when input returns after an unplug. The unbound workqueue is in. Same driver on the iPad 5 and iPad 6. Your previous head is kept as tag |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 22 of 23 of the iPad 5 (J71t) series in this repository; merge after #126.
Problem
A transitional USB data hold stayed in place after it was no longer needed, and a long unplug followed by a reconnect kept the old hold deadline.
Change
Release later USB holds, and restart the hold when the cable reconnects. Run the charger poll on an unbound workqueue: it sleeps on I2C and the HDQ gauge and keeps no per-CPU state, and the queue's missing WQ_UNBOUND/WQ_PERCPU flag made alloc_workqueue() warn at every boot. J71t's USB serial and USB networking move to working.
Testing
Dependencies
Depends on #126.
This branch is stacked on the PRs it depends on and carries their commits; the change of this PR is its last commit, "power: supply: apple_tristar_charger: Release and restart USB holds".
🤖 Generated with Claude Code