kernel-hacking-2024-linux-s.../drivers
Bjorn Helgaas 445a1d3e24 PNP: disable Supermicro H8DCE motherboard resources that overlap SATA BARs
Some Supermicro BIOSes describe a SATA PCI BAR as a motherboard resource.
The PNP system driver claims motherboard resources, and this prevents the
sata_nv driver from requesting it later.

This patch disables the PNP0C01/PNP0C02 resources so they won't be claimed
by the PNP system driver, so they'll available for sata_nv.

This fixes the bugs below, where sata_nv detects only two out of four SATA
drives.  The signature includes dmesg lines similar to these:

  pnp: 00:09: iomem range 0xdfefc000-0xdfefcfff has been reserved
  pnp: 00:09: iomem range 0xdfefd000-0xdfefd3ff has been reserved
  pnp: 00:09: iomem range 0xdfefe000-0xdfefe3ff has been reserved

  PCI: Unable to reserve mem region #6:1000@dfefd000 for device 0000:80:07.0
  sata_nv: probe of 0000:80:07.0 failed with error -16
  PCI: Unable to reserve mem region #6:1000@dfefe000 for device 0000:80:08.0
  sata_nv: probe of 0000:80:08.0 failed with error -16

References:
    https://bugzilla.redhat.com/show_bug.cgi?id=280641
    https://bugzilla.redhat.com/show_bug.cgi?id=313491
    http://lkml.org/lkml/2008/1/9/449
    http://thread.gmane.org/gmane.linux.acpi.devel/27312

This is post-2.6.24 material.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-06 10:41:20 -08:00
..
acorn/char
acpi latency.c: use QoS infrastructure 2008-02-05 09:44:22 -08:00
amba
ata iommu sg merging: sata_inic162x: use pci_set_dma_max_seg_size 2008-02-05 09:44:11 -08:00
atm
auxdisplay
base register_cpu __devinit or __cpuinit 2008-02-06 10:41:01 -08:00
block Atari floppy: Rename disk_type to atari_disk_type 2008-02-06 10:41:10 -08:00
bluetooth Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-02-05 10:09:07 -08:00
cdrom drivers/cdrom/cdrom.c: simplify logic in cdrom_release() 2008-02-06 10:41:10 -08:00
char ip27-rtc: convert ioctl to unlocked_ioctl 2008-02-06 10:41:14 -08:00
clocksource
connector
cpufreq
cpuidle pm qos infrastructure and interface 2008-02-05 09:44:22 -08:00
crypto
dca
dio dio: ARRAY_SIZE() cleanup 2008-02-05 09:44:23 -08:00
dma
edac
eisa
firewire
firmware dcdbas: add DMI-based module autloading 2008-02-06 10:41:01 -08:00
gpio gpio: handle pca953{4,5,6,7,8} too 2008-02-06 10:41:15 -08:00
hid
hwmon
i2c deprecate obsolete pca9539 driver 2008-02-05 09:44:13 -08:00
ide cleanup after APUS removal 2008-02-06 10:41:01 -08:00
ieee1394
infiniband RDMA/nes: Add a driver for NetEffect RNICs 2008-02-04 20:20:45 -08:00
input Remove pointless casts from void pointers 2008-02-06 10:41:01 -08:00
isdn drivers/isdn/hardware/eicon/debug.c: fix uninitialized var warning 2008-02-06 10:41:12 -08:00
leds leds: add possibility to remove leds classdevs during suspend/resume 2008-02-05 09:44:23 -08:00
lguest
macintosh ppc: fix #ifdef-s in mediabay driver (take 2) 2008-02-06 02:57:50 +01:00
mca
md md: fix an occasional deadlock in raid5 2008-02-06 10:41:19 -08:00
media scheduled OSS driver removal 2008-02-06 10:41:02 -08:00
message
mfd
misc phantom: don't grab other devices 2008-02-06 10:41:10 -08:00
mmc
mtd Claim maintainership for block2mtd and update email addresses 2008-02-06 10:41:09 -08:00
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-02-05 10:09:07 -08:00
nubus nubus: kill drivers/nubus/nubus_syms.c 2008-02-05 09:44:23 -08:00
of
oprofile
parisc iommu sg merging: parisc: make iommu respect the segment size limits 2008-02-05 09:44:10 -08:00
parport parport_pc: detection for SuperIO IT87XX POST 2008-02-06 10:41:08 -08:00
pci Genericizing iova.[ch] 2008-02-06 10:41:01 -08:00
pcmcia drivers/pcmcia: add missing pci_dev_get 2008-02-05 09:44:09 -08:00
pnp PNP: disable Supermicro H8DCE motherboard resources that overlap SATA BARs 2008-02-06 10:41:20 -08:00
power
ps3 ps3: use symbolic names for video modes 2008-02-06 10:41:17 -08:00
rapidio
rtc rtc: at91sam9 RTC support (RTT and/or RTC) 2008-02-06 10:41:14 -08:00
s390 calibrate_delay() must be __cpuinit 2008-02-06 10:41:08 -08:00
sbus
scsi cleanup after APUS removal 2008-02-06 10:41:01 -08:00
serial SC26XX: New serial driver for SC2681 uarts 2008-02-06 10:41:06 -08:00
sh
sn
spi spi: remove more dev->power.power_state usage 2008-02-06 10:41:11 -08:00
ssb
tc
telephony
uio uio: nopage 2008-02-06 10:41:07 -08:00
usb
video fbcon: fix color generation for monochrome framebuffer 2008-02-06 10:41:18 -08:00
virtio
w1 w1-gpio: add GPIO w1 bus master driver 2008-02-06 10:41:15 -08:00
watchdog
xen
zorro
Kconfig gpiolib: add drivers/gpio directory 2008-02-05 09:44:12 -08:00
Makefile gpiolib: add drivers/gpio directory 2008-02-05 09:44:12 -08:00