mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 13:11:40 +00:00
firewire: ohci: enable MSI for VIA VT6315 rev 1, drop cycle timer quirk
Commit af0cdf4947
"firewire: ohci: fix regression with VIA VT6315,
disable MSI" acted upon a report against VT6315 rev 0:
http://linux.derkeiler.com/Mailing-Lists/Kernel/2010-12/msg02301.html
$ lspci -nn
VIA Technologies, Inc. VT6315 Series Firewire Controller [1106:3403]
I now got a card with
$ lspci -nn
VIA Technologies, Inc. VT6315 Series Firewire Controller [1106:3403] (rev 01)
and this works fine with MSI enabled.
Second, I tested this VT6315 rev 1 without CYCLE_TIMER quirk flag using
http://me.in-berlin.de/~s5r6/linux1394/utils/test_cycle_time_v20100125.c
and found that this chip does in fact access the cycle timer atomically.
Things I can't test because I don't have the hardware:
- whether VT6315 rev 0 really needs QUIRK_CYCLE_TIMER,
- whether the VT6320 PCI device needs QUIRK_CYCLE_TIMER,
- whether the VT6325 and VT6330 PCIe devices need QUIRK_CYCLE_TIMER
and QUIRK_NO_MSI.
Hence, just add a whitelist entry specifically for VT6315 rev >= 1
without any quirk flags. Before this entry we need an extra entry to
catch VT6315 rev <= 0 due to how our ID matching logic works.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
This commit is contained in:
parent
b3d681a4fc
commit
d151f9854f
@ -282,6 +282,7 @@ static char ohci_driver_name[] = KBUILD_MODNAME;
|
||||
#define PCI_DEVICE_ID_TI_TSB82AA2 0x8025
|
||||
#define PCI_DEVICE_ID_VIA_VT630X 0x3044
|
||||
#define PCI_REV_ID_VIA_VT6306 0x46
|
||||
#define PCI_DEVICE_ID_VIA_VT6315 0x3403
|
||||
|
||||
#define QUIRK_CYCLE_TIMER 0x1
|
||||
#define QUIRK_RESET_PACKET 0x2
|
||||
@ -334,6 +335,12 @@ static const struct {
|
||||
{PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT630X, PCI_REV_ID_VIA_VT6306,
|
||||
QUIRK_CYCLE_TIMER | QUIRK_IR_WAKE},
|
||||
|
||||
{PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT6315, 0,
|
||||
QUIRK_CYCLE_TIMER | QUIRK_NO_MSI},
|
||||
|
||||
{PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT6315, PCI_ANY_ID,
|
||||
0},
|
||||
|
||||
{PCI_VENDOR_ID_VIA, PCI_ANY_ID, PCI_ANY_ID,
|
||||
QUIRK_CYCLE_TIMER | QUIRK_NO_MSI},
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user