|
@@ -192,18 +192,17 @@ EXPORT_SYMBOL_GPL(platform_device_alloc);
|
|
|
int platform_device_add_resources(struct platform_device *pdev,
|
|
|
const struct resource *res, unsigned int num)
|
|
|
{
|
|
|
- struct resource *r;
|
|
|
+ struct resource *r = NULL;
|
|
|
|
|
|
- if (!res)
|
|
|
- return 0;
|
|
|
-
|
|
|
- r = kmemdup(res, sizeof(struct resource) * num, GFP_KERNEL);
|
|
|
- if (r) {
|
|
|
- pdev->resource = r;
|
|
|
- pdev->num_resources = num;
|
|
|
- return 0;
|
|
|
+ if (res) {
|
|
|
+ r = kmemdup(res, sizeof(struct resource) * num, GFP_KERNEL);
|
|
|
+ if (!r)
|
|
|
+ return -ENOMEM;
|
|
|
}
|
|
|
- return -ENOMEM;
|
|
|
+
|
|
|
+ pdev->resource = r;
|
|
|
+ pdev->num_resources = num;
|
|
|
+ return 0;
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(platform_device_add_resources);
|
|
|
|