PCI: Enable INTx if BIOS left them disabled
authorBjorn Helgaas <bhelgaas@google.com>
Fri, 14 Feb 2014 20:48:16 +0000 (13:48 -0700)
committerBen Hutchings <ben@decadent.org.uk>
Tue, 1 Apr 2014 23:58:52 +0000 (00:58 +0100)
commit59a3ae82e4a6235e8edf23881dad8aa70a802df9
treeb964c1c1c3f4451748604c1a8babc7120e5e77b2
parentfff691886ed8c83d3ba90e097f1b2c241d11c5e7
PCI: Enable INTx if BIOS left them disabled

commit 1f42db786b14a31bf807fc41ee5583a00c08fcb1 upstream.

Some firmware leaves the Interrupt Disable bit set even if the device uses
INTx interrupts.  Clear Interrupt Disable so we get those interrupts.

Based on the report mentioned below, if the user selects the "EHCI only"
option in the Intel Baytrail BIOS, the EHCI device is handed off to the OS
with the PCI_COMMAND_INTX_DISABLE bit set.

Link: http://lkml.kernel.org/r/20140114181721.GC12126@xanatos
Link: https://bugzilla.kernel.org/show_bug.cgi?id=70601
Reported-by: Chris Cheng <chris.cheng@atrustcorp.com>
Reported-and-tested-by: Jamie Chen <jamie.chen@intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/pci/pci.c