Page MenuHomeFreeBSD

pci: introduce PCI_QUIRK_DISABLE_BUS_RESET
Needs ReviewPublic

Authored by bz on Thu, Feb 19, 11:35 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Mar 6, 3:54 PM
Unknown Object (File)
Sun, Mar 1, 5:33 AM
Unknown Object (File)
Tue, Feb 24, 8:33 PM
Unknown Object (File)
Tue, Feb 24, 2:21 PM
Unknown Object (File)
Tue, Feb 24, 2:21 PM
Unknown Object (File)
Mon, Feb 23, 4:29 PM
Unknown Object (File)
Fri, Feb 20, 10:52 PM
Unknown Object (File)
Fri, Feb 20, 10:49 PM
Subscribers

Details

Reviewers
jhb
Group Reviewers
PCI
Summary

Some QCA ath10k devices do not behave or behave odd after a bus reset.
Add a quirk for them to silently ignore bus resets.

MFC after: 3 days

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 70807
Build 67690: arc lint + arc unit

Event Timeline

bz requested review of this revision.Thu, Feb 19, 11:35 PM
sys/dev/pci/pci.c
244

Hmm, the quirk disables any reset (including FLR which isn't bus-wide). Assuming that FLR does indeed break these, maybe just call the quirk PCI_QUIRK_DISABLE_RESET?

sys/dev/pci/pci.c
244

They didn't advertise flr from what I remember. See below in the code for more...

6881

So in theory I should probably just disable this BUS_RESET_PREPARE../POST block.
To my understanding the problem comes with link re-training.

Need to check if the cards survive a suspend/resume then... (I am trying to think if they could in that case ...)