aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firewire
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-06-04 10:47:03 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-06-04 10:47:03 -0400
commit1b3636093d4e07f5fc8a8eb2f9a5e14a5a2674bf (patch)
tree74f7837b131703a10e4e8a2143339c5aa0bf47d2 /drivers/firewire
parent1605abfffe331b3d9f845a456e7762f1bf53d973 (diff)
parentd151f9854f21fbb6a2df73553a27f9b664ecd10c (diff)
Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394 into next
Pull firewire updates from Stefan Richter: "IEEE 1394 (FireWire) subsystem changes: One optimization for some VIA controllers, one fix, one kconfig brushup" * tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394: firewire: ohci: enable MSI for VIA VT6315 rev 1, drop cycle timer quirk firewire: Use COMPILE_TEST for build testing firewire: net: fix NULL derefencing in fwnet_probe()
Diffstat (limited to 'drivers/firewire')
-rw-r--r--drivers/firewire/Kconfig2
-rw-r--r--drivers/firewire/net.c4
-rw-r--r--drivers/firewire/ohci.c7
3 files changed, 10 insertions, 3 deletions
diff --git a/drivers/firewire/Kconfig b/drivers/firewire/Kconfig
index 7a701a58bbf0..4199849e3758 100644
--- a/drivers/firewire/Kconfig
+++ b/drivers/firewire/Kconfig
@@ -1,5 +1,5 @@
1menu "IEEE 1394 (FireWire) support" 1menu "IEEE 1394 (FireWire) support"
2 depends on PCI || BROKEN 2 depends on PCI || COMPILE_TEST
3 # firewire-core does not depend on PCI but is 3 # firewire-core does not depend on PCI but is
4 # not useful without PCI controller driver 4 # not useful without PCI controller driver
5 5
diff --git a/drivers/firewire/net.c b/drivers/firewire/net.c
index 4af0a7bad7f2..c3986452194d 100644
--- a/drivers/firewire/net.c
+++ b/drivers/firewire/net.c
@@ -1462,8 +1462,8 @@ static int fwnet_probe(struct fw_unit *unit,
1462 1462
1463 net = alloc_netdev(sizeof(*dev), "firewire%d", fwnet_init_dev); 1463 net = alloc_netdev(sizeof(*dev), "firewire%d", fwnet_init_dev);
1464 if (net == NULL) { 1464 if (net == NULL) {
1465 ret = -ENOMEM; 1465 mutex_unlock(&fwnet_device_mutex);
1466 goto out; 1466 return -ENOMEM;
1467 } 1467 }
1468 1468
1469 allocated_netdev = true; 1469 allocated_netdev = true;
diff --git a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c
index ce7a5812ae9d..57985410f12f 100644
--- a/drivers/firewire/ohci.c
+++ b/drivers/firewire/ohci.c
@@ -282,6 +282,7 @@ static char ohci_driver_name[] = KBUILD_MODNAME;
282#define PCI_DEVICE_ID_TI_TSB82AA2 0x8025 282#define PCI_DEVICE_ID_TI_TSB82AA2 0x8025
283#define PCI_DEVICE_ID_VIA_VT630X 0x3044 283#define PCI_DEVICE_ID_VIA_VT630X 0x3044
284#define PCI_REV_ID_VIA_VT6306 0x46 284#define PCI_REV_ID_VIA_VT6306 0x46
285#define PCI_DEVICE_ID_VIA_VT6315 0x3403
285 286
286#define QUIRK_CYCLE_TIMER 0x1 287#define QUIRK_CYCLE_TIMER 0x1
287#define QUIRK_RESET_PACKET 0x2 288#define QUIRK_RESET_PACKET 0x2
@@ -334,6 +335,12 @@ static const struct {
334 {PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT630X, PCI_REV_ID_VIA_VT6306, 335 {PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT630X, PCI_REV_ID_VIA_VT6306,
335 QUIRK_CYCLE_TIMER | QUIRK_IR_WAKE}, 336 QUIRK_CYCLE_TIMER | QUIRK_IR_WAKE},
336 337
338 {PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT6315, 0,
339 QUIRK_CYCLE_TIMER | QUIRK_NO_MSI},
340
341 {PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT6315, PCI_ANY_ID,
342 0},
343
337 {PCI_VENDOR_ID_VIA, PCI_ANY_ID, PCI_ANY_ID, 344 {PCI_VENDOR_ID_VIA, PCI_ANY_ID, PCI_ANY_ID,
338 QUIRK_CYCLE_TIMER | QUIRK_NO_MSI}, 345 QUIRK_CYCLE_TIMER | QUIRK_NO_MSI},
339}; 346};