summaryrefslogtreecommitdiffstats
path: root/drivers/pci/pci-stub.c
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2012-10-29 17:26:54 -0600
committerBjorn Helgaas <bhelgaas@google.com>2012-11-07 15:24:18 -0700
commit1f09b09b4de0e120800e49d806d264e7446ed446 (patch)
tree2a43aa760bfdaac0f67768f28c660f1af82eaad0 /drivers/pci/pci-stub.c
parent42eca2302146fed51335b95128e949ee6f54478f (diff)
downloadlinux-1f09b09b4de0e120800e49d806d264e7446ed446.tar.bz2
x86/PCI: Ignore _SEG on HP xw9300
The xw9300 BIOS supplies _SEG methods that are incorrect, which results in some LSI SCSI devices not being discovered. This adds a quirk to ignore _SEG on this machine and default to zero. The xw9300 has three host bridges: ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-3f]) ACPI: PCI Root Bridge [PCI1] (domain 0001 [bus 40-7f]) ACPI: PCI Root Bridge [PCI2] (domain 0002 [bus 80-ff]) When the BIOS "ACPI Bus Segmentation" option is enabled (as it is by default), the _SEG methods of the PCI1 and PCI2 bridges return 1 and 2, respectively. However, the BIOS implementation appears to be incomplete, and we can't enumerate devices in those domains. But if we assume PCI1 and PCI2 really lead to buses in domain 0, everything works fine. Windows XP and Vista also seem to ignore these _SEG methods. Reference: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=543308 Reference: https://bugzilla.kernel.org/show_bug.cgi?id=15362 Reported-and-Tested-by: Sean M. Pappalardo <pegasus@renegadetech.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci/pci-stub.c')
0 files changed, 0 insertions, 0 deletions