Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
PCI: ignore bit0 of _OSC return code

+8 -7
+8 -7
drivers/pci/pci-acpi.c
··· 63 63 union acpi_object in_params[4]; 64 64 struct acpi_buffer output = {ACPI_ALLOCATE_BUFFER, NULL}; 65 65 union acpi_object *out_obj; 66 - u32 osc_dw0, flags = osc_args->capbuf[OSC_QUERY_TYPE]; 66 + u32 errors, flags = osc_args->capbuf[OSC_QUERY_TYPE]; 67 67 68 68 /* Setting up input parameters */ 69 69 input.count = 4; ··· 92 92 status = AE_TYPE; 93 93 goto out_kfree; 94 94 } 95 - osc_dw0 = *((u32 *)out_obj->buffer.pointer); 96 - if (osc_dw0) { 97 - if (osc_dw0 & OSC_REQUEST_ERROR) 95 + /* Need to ignore the bit0 in result code */ 96 + errors = *((u32 *)out_obj->buffer.pointer) & ~(1 << 0); 97 + if (errors) { 98 + if (errors & OSC_REQUEST_ERROR) 98 99 printk(KERN_DEBUG "_OSC request fails\n"); 99 - if (osc_dw0 & OSC_INVALID_UUID_ERROR) 100 + if (errors & OSC_INVALID_UUID_ERROR) 100 101 printk(KERN_DEBUG "_OSC invalid UUID\n"); 101 - if (osc_dw0 & OSC_INVALID_REVISION_ERROR) 102 + if (errors & OSC_INVALID_REVISION_ERROR) 102 103 printk(KERN_DEBUG "_OSC invalid revision\n"); 103 - if (osc_dw0 & OSC_CAPABILITIES_MASK_ERROR) { 104 + if (errors & OSC_CAPABILITIES_MASK_ERROR) { 104 105 if (flags & OSC_QUERY_ENABLE) 105 106 goto out_success; 106 107 printk(KERN_DEBUG "_OSC FW not grant req. control\n");