Преглед на файлове

PNPACPI: continue after _CRS and _PRS errors

Keep going and register the device even if we have trouble parsing
_CRS or _PRS.  A parsing problem might mean we ignore some resources
the device is using, or we might not be able to change its resources.
But we should still take note of anything we *could* parse correctly.

Also remove reference to dev_id because I plan to remove it soon.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Bjorn Helgaas преди 17 години
родител
ревизия
4a49049864
променени са 1 файла, в които са добавени 2 реда и са изтрити 6 реда
  1. 2 6
      drivers/pnp/pnpacpi/core.c

+ 2 - 6
drivers/pnp/pnpacpi/core.c

@@ -213,8 +213,7 @@ static int __init pnpacpi_add_device(struct acpi_device *device)
 							  &dev->res);
 							  &dev->res);
 		if (ACPI_FAILURE(status) && (status != AE_NOT_FOUND)) {
 		if (ACPI_FAILURE(status) && (status != AE_NOT_FOUND)) {
 			pnp_err("PnPACPI: METHOD_NAME__CRS failure for %s",
 			pnp_err("PnPACPI: METHOD_NAME__CRS failure for %s",
-				dev_id->id);
-			goto err1;
+				acpi_device_hid(device));
 		}
 		}
 	}
 	}
 
 
@@ -223,8 +222,7 @@ static int __init pnpacpi_add_device(struct acpi_device *device)
 							    dev);
 							    dev);
 		if (ACPI_FAILURE(status) && (status != AE_NOT_FOUND)) {
 		if (ACPI_FAILURE(status) && (status != AE_NOT_FOUND)) {
 			pnp_err("PnPACPI: METHOD_NAME__PRS failure for %s",
 			pnp_err("PnPACPI: METHOD_NAME__PRS failure for %s",
-				dev_id->id);
-			goto err1;
+				acpi_device_hid(device));
 		}
 		}
 	}
 	}
 
 
@@ -252,8 +250,6 @@ static int __init pnpacpi_add_device(struct acpi_device *device)
 	num++;
 	num++;
 
 
 	return AE_OK;
 	return AE_OK;
-err1:
-	kfree(dev_id);
 err:
 err:
 	kfree(dev);
 	kfree(dev);
 	return -EINVAL;
 	return -EINVAL;