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