OpenCloudOS-Kernel/drivers/pci
Kenji Kaneshige 2485b8674b PCI: ignore bit0 of _OSC return code
Currently acpi_run_osc() checks all the bits in _OSC result code (the
first DWORD in the capabilities buffer) to see error condition. But the
bit 0, which doesn't indicate any error, must be ignored.

The bit 0 is used as the query flag at _OSC invocation time. Some
platforms clear it during _OSC evaluation, but the others don't. On
latter platforms, current acpi_run_osc() mis-detects error when _OSC is
evaluated with query flag set because it doesn't ignore the bit 0.
Because of this, the __acpi_query_osc() always fails on such platforms.

And this is the cause of the problem that pci_osc_control_set() doesn't
work since the commit 4e39432f4d which
changed pci_osc_control_set() to use __acpi_query_osc().

Tested-by:"Tomasz Czernecki <czernecki@gmail.com>
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2008-11-11 13:33:05 -08:00
..
hotplug Fix PCI hotplug printk format 2008-10-23 19:48:29 -07:00
pcie PCI: fix AER capability check 2008-10-20 11:01:52 -07:00
.gitignore Add some basic .gitignore files 2005-10-18 08:26:15 -07:00
Kconfig PCI: Add Kconfig option to disable deprecated pci_find_* API 2007-11-05 13:35:17 -08:00
Makefile PCI: add routines for debugging and handling lost interrupts 2008-10-23 14:54:18 -07:00
access.c PCI: Limit VPD read/write lengths for Broadcom 5706, 5708, 5709 rev. 2008-07-02 11:25:54 -07:00
bus.c PCI: make CPU list affinity visible 2008-10-20 10:53:51 -07:00
dmar.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-21 19:42:20 +01:00
hotplug-pci.c PCI: fix section mismatch warning in pci_scan_child_bus 2008-03-04 15:07:03 -08:00
hotplug.c Driver core: change add_uevent_var to use a struct 2007-10-12 14:51:01 -07:00
htirq.c genirq: remove sparse irq code 2008-10-16 16:53:15 +02:00
intel-iommu.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-20 20:19:36 +01:00
intr_remapping.c Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:23:01 -07:00
intr_remapping.h VT-d: Changes to support KVM 2008-10-15 14:24:08 +02:00
iova.c VT-d: Changes to support KVM 2008-10-15 14:24:08 +02:00
irq.c PCI: add routines for debugging and handling lost interrupts 2008-10-23 14:54:18 -07:00
msi.c ACPI/PCI: Set support bit for MSI in support field of _OSC 2008-10-22 16:42:35 -07:00
msi.h PCI: Make some MSI-X #defines generic 2006-12-01 14:36:56 -08:00
pci-acpi.c PCI: ignore bit0 of _OSC return code 2008-11-11 13:33:05 -08:00
pci-driver.c PCI: Check dynids driver_data value for validity 2008-10-20 10:48:35 -07:00
pci-sysfs.c PCI: fix range check on mmapped sysfs resource files 2008-11-03 14:41:16 -08:00
pci.c PCI: fix ARI code to be compatible with mixed ARI/non-ARI systems 2008-10-23 14:42:13 -07:00
pci.h ACPI/PCI: Set support bit for MSI in support field of _OSC 2008-10-22 16:42:35 -07:00
probe.c PCI: remove unused resource assignment in pci_read_bridge_bases() 2008-10-23 16:17:47 -07:00
proc.c PCI: fixup sparse endianness warnings in proc.c 2008-07-22 15:19:44 -07:00
quirks.c PCI: fix VPD limit quirk for Broadcom 5708S 2008-11-03 14:30:27 -08:00
remove.c PCI: fix sparse warning in pci_remove_behind_bridge 2008-10-20 10:54:25 -07:00
rom.c PCI: remove excess kernel-doc notation 2008-11-03 14:32:46 -08:00
search.c PCI: Fix reference counting bug 2008-10-22 16:42:35 -07:00
setup-bus.c PCI: use resource_size() everywhere. 2008-10-20 10:54:28 -07:00
setup-irq.c PCI: use dev_printk when possible 2008-06-25 16:05:13 -07:00
setup-res.c PCI: use resource_size() everywhere. 2008-10-20 10:54:28 -07:00
slot.c PCI, PCI Hotplug: introduce slot_name helpers 2008-10-22 16:42:40 -07:00
syscall.c PCI: remove unneeded lock_kernel() in drivers/pci/syscall.c. 2008-02-01 15:04:21 -08:00