[ARM] 5011/1: htc-pasic3: fix bug in resource pipe-through to ds1wm
authorPhilipp Zabel <philipp.zabel@gmail.com>
Sun, 20 Apr 2008 16:42:59 +0000 (17:42 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 24 Apr 2008 13:34:24 +0000 (14:34 +0100)
The newly created DS1WM platform device should get a copy of the PASIC3
platform devices' resources.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
drivers/mfd/htc-pasic3.c

index af66f4f283000bd91a67390b2ab716ed525cd0a6..cb4ab27a2ef5a348e8c780a1c99ade1dce414c76 100644 (file)
@@ -135,8 +135,9 @@ static struct ds1wm_platform_data ds1wm_pdata = {
        .disable   = ds1wm_disable,
 };
 
-static int ds1wm_device_add(struct device *pasic3_dev, int bus_shift)
+static int ds1wm_device_add(struct platform_device *pasic3_pdev, int bus_shift)
 {
+       struct device *pasic3_dev = &pasic3_pdev->dev;
        struct pasic3_data *asic = pasic3_dev->driver_data;
        struct platform_device *pdev;
        int ret;
@@ -147,8 +148,8 @@ static int ds1wm_device_add(struct device *pasic3_dev, int bus_shift)
                return -ENOMEM;
        }
 
-       ret = platform_device_add_resources(pdev, pdev->resource,
-                                               pdev->num_resources);
+       ret = platform_device_add_resources(pdev, pasic3_pdev->resource,
+                                               pasic3_pdev->num_resources);
        if (ret < 0) {
                dev_dbg(pasic3_dev, "failed to add DS1WM resources\n");
                goto exit_pdev_put;
@@ -210,7 +211,7 @@ static int __init pasic3_probe(struct platform_device *pdev)
                return -ENOMEM;
        }
 
-       ret = ds1wm_device_add(dev, asic->bus_shift);
+       ret = ds1wm_device_add(pdev, asic->bus_shift);
        if (ret < 0)
                dev_warn(dev, "failed to register DS1WM\n");