Page MenuHomeFreeBSD

USB: add quirks to XHCI
ClosedPublic

Authored by bz on Jun 14 2022, 4:45 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Apr 7, 2:32 PM
Unknown Object (File)
Sun, Apr 7, 8:07 AM
Unknown Object (File)
Sun, Apr 7, 6:31 AM
Unknown Object (File)
Mar 21 2024, 3:30 AM
Unknown Object (File)
Jan 18 2024, 12:11 AM
Unknown Object (File)
Jan 9 2024, 7:00 PM
Unknown Object (File)
Jan 9 2024, 6:59 PM
Unknown Object (File)
Jan 9 2024, 6:59 PM
Subscribers

Details

Summary

While XHCI is very generic some revisions of chipsets have problems.
On dwc3 <= 3.00a Port Disable does not work so we need to not enable PED.
For that introduce quirks to xhci so that controllers can steer
certain features. I would hope that this is and remains the only one.

Obtained from: an old patch mainly debugging other problems

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 45973
Build 42861: arc lint + arc unit

Event Timeline

bz requested review of this revision.Jun 14 2022, 4:46 PM
bz added a subscriber: arm64.

Looks good.

sys/dev/usb/controller/xhci.h
572

Usually I've just used uint8_t for quirks, but I'm good with this too.

This revision is now accepted and ready to land.Jun 14 2022, 7:41 PM

Use uint32_t instead of enum for quirks; I am going 32 not 8 just in case to not have to change the type in the future. Hope that's okay too.

This revision now requires review to proceed.Jun 14 2022, 9:27 PM
bz marked an inline comment as done.Jun 14 2022, 9:30 PM
bz added inline comments.
sys/dev/usb/controller/xhci.h
572

Also in addition to the update comment and enum is sizeof(int) so keeping that matching is probably a good idea.

This revision is now accepted and ready to land.Jun 15 2022, 7:10 AM
This revision was automatically updated to reflect the committed changes.
bz marked an inline comment as done.