aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci
diff options
context:
space:
mode:
authorAndrew Patterson <andrew.patterson@hp.com>2008-01-22 19:18:12 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2008-02-01 18:04:29 -0500
commitc2778357234f84668eab5558b54ad28478439d0b (patch)
tree9820e6cfa1bfe6989854425b0d63840c949fa3f2 /drivers/pci
parent02d90fc343411d6dff26bbd64f0895a243e6f608 (diff)
PCI ACPI: Added a function to register _OSC with only PCIe devices.
The function pci_osc_support_set() traverses every root bridge when checking for _OSC support for a capability. It quits as soon as it finds a device/bridge that doesn't support the requested capability. This won't work for systems that have mixed PCI and PCIe bridges when checking for PCIe features. I split this function into two -- pci_osc_support_set() and pcie_osc_support_set(). The latter is used when only PCIe devices should be traversed. Signed-off-by: Andrew Patterson <andrew.patterson@hp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/pci')
-rw-r--r--drivers/pci/pci-acpi.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/pci/pci-acpi.c b/drivers/pci/pci-acpi.c
index 02e4876b3b2c..e569645d59e2 100644
--- a/drivers/pci/pci-acpi.c
+++ b/drivers/pci/pci-acpi.c
@@ -156,13 +156,13 @@ run_osc_out:
156} 156}
157 157
158/** 158/**
159 * pci_osc_support_set - register OS support to Firmware 159 * __pci_osc_support_set - register OS support to Firmware
160 * @flags: OS support bits 160 * @flags: OS support bits
161 * 161 *
162 * Update OS support fields and doing a _OSC Query to obtain an update 162 * Update OS support fields and doing a _OSC Query to obtain an update
163 * from Firmware on supported control bits. 163 * from Firmware on supported control bits.
164 **/ 164 **/
165acpi_status pci_osc_support_set(u32 flags) 165acpi_status __pci_osc_support_set(u32 flags, const char *hid)
166{ 166{
167 u32 temp; 167 u32 temp;
168 acpi_status retval; 168 acpi_status retval;
@@ -176,7 +176,7 @@ acpi_status pci_osc_support_set(u32 flags)
176 temp = ctrlset_buf[OSC_CONTROL_TYPE]; 176 temp = ctrlset_buf[OSC_CONTROL_TYPE];
177 ctrlset_buf[OSC_QUERY_TYPE] = OSC_QUERY_ENABLE; 177 ctrlset_buf[OSC_QUERY_TYPE] = OSC_QUERY_ENABLE;
178 ctrlset_buf[OSC_CONTROL_TYPE] = OSC_CONTROL_MASKS; 178 ctrlset_buf[OSC_CONTROL_TYPE] = OSC_CONTROL_MASKS;
179 acpi_get_devices ( PCI_ROOT_HID_STRING, 179 acpi_get_devices(hid,
180 acpi_query_osc, 180 acpi_query_osc,
181 ctrlset_buf, 181 ctrlset_buf,
182 (void **) &retval ); 182 (void **) &retval );