]> git.baikalelectronics.ru Git - kernel.git/commit
PNP: disable PNP motherboard resources that overlap PCI BARs
authorBjorn Helgaas <bjorn.helgaas@hp.com>
Tue, 11 Mar 2008 21:24:41 +0000 (15:24 -0600)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 12 Mar 2008 19:39:36 +0000 (12:39 -0700)
commit9f4754549d8d7c92b90dd2917c9530871409b61c
tree41c02d01032da129ae82137591d48ecd7369662f
parentec7897aa17badea47c5f5bd65a46cb1e40b4ddaf
PNP: disable PNP motherboard resources that overlap PCI BARs

Some BIOSes have PNP motherboard devices with resources that
partially overlap PCI BARs.  The PNP system driver claims these
motherboard resources, which prevents the normal PCI driver from
requesting them later.

This patch disables the PNP resources that conflict with PCI BARs
so they won't be claimed by the PNP system driver.

Of course, this only works if PCI devices have already been enumerated.
Currently this is the case because PCI devices are discovered before
any PNP init via this path:

    acpi_pci_root_init() -> acpi_pci_root_add() -> pci_acpi_scan_root() ->
pci_scan_bus_parented() -> pci_scan_child_bus() -> ...

Avuton Olrich tested this and confirmed that it fixes his ALSA sound
card (see http://lkml.org/lkml/2008/1/27/168).

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
    http://lkml.org/lkml/2008/1/27/168

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/pnp/quirks.c