android_kernel_motorola_sm6225/drivers/pci/pcie/aer
Rafael J. Wysocki 75fb60f26b ACPI/PCI: Negotiate _OSC control bits before requesting them
It is possible that the BIOS will not grant control of all _OSC
features requested via acpi_pci_osc_control_set(), so it is
recommended to negotiate the final set of _OSC features with the
query flag set before calling _OSC to request control of these
features.

To implement it, rework acpi_pci_osc_control_set() so that the caller
can specify the mask of _OSC control bits to negotiate and the mask
of _OSC control bits that are absolutely necessary to it.  Then,
acpi_pci_osc_control_set() will run _OSC queries in a loop until
the mask of _OSC control bits returned by the BIOS is equal to the
mask passed to it.  Also, before running the _OSC request
acpi_pci_osc_control_set() will check if the caller's required
control bits are present in the final mask.

Using this mechanism we will be able to avoid situations in which the
BIOS doesn't grant control of certain _OSC features, because they
depend on some other _OSC features that have not been requested.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-08-24 13:44:40 -07:00
..
aer_inject.c PCI: aerdrv: redefine PCI_ERR_ROOT_*_SRC 2010-05-11 12:01:34 -07:00
aerdrv.c PCI: PCIe AER: Introduce pci_aer_available() 2010-08-24 13:43:08 -07:00
aerdrv.h Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2010-05-28 14:42:18 -07:00
aerdrv_acpi.c ACPI/PCI: Negotiate _OSC control bits before requesting them 2010-08-24 13:44:40 -07:00
aerdrv_core.c PCI aerdrv: fix annoying warnings 2010-07-30 09:29:10 -07:00
aerdrv_errprint.c PCI: change PCI nomenclature in drivers/pci/ (non-comment changes) 2009-12-16 13:37:54 -08:00
ecrc.c PCIe AER: use pci_is_pcie() 2009-11-24 15:25:17 -08:00
Kconfig PCI AER: software error injection 2009-06-16 14:30:14 -07:00
Kconfig.debug PCI: change PCI nomenclature in drivers/pci/ (non-comment changes) 2009-12-16 13:37:54 -08:00
Makefile PCI AER: software error injection 2009-06-16 14:30:14 -07:00