powerpc/fsl_msi: Don't abuse platform_data for driver_data
authorMilton Miller <miltonm@bga.com>
Tue, 10 May 2011 19:30:07 +0000 (19:30 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Thu, 19 May 2011 05:31:43 +0000 (15:31 +1000)
The msi platform device driver was abusing dev.platform_data for its
platform_driver_data.  Use the correct pointer for storage.

Platform_data is supposed to be for platforms to communicate to drivers
parameters that are not otherwise discoverable.  Its lifetime matches
the platform_device not the platform device driver.  It is generally
not needed for drivers that only support systems with device trees.

Signed-off-by: Milton Miller <miltonm@bga.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/sysdev/fsl_msi.c

index d5679dc1e20faddf7d5a20df6bc1374aee74e264..077776c06cd0e1f34c57a8069c1f2c66d3ad4479 100644 (file)
@@ -253,7 +253,7 @@ unlock:
 
 static int fsl_of_msi_remove(struct platform_device *ofdev)
 {
-       struct fsl_msi *msi = ofdev->dev.platform_data;
+       struct fsl_msi *msi = platform_get_drvdata(ofdev);
        int virq, i;
        struct fsl_msi_cascade_data *cascade_data;
 
@@ -327,7 +327,7 @@ static int __devinit fsl_of_msi_probe(struct platform_device *dev)
                dev_err(&dev->dev, "No memory for MSI structure\n");
                return -ENOMEM;
        }
-       dev->dev.platform_data = msi;
+       platform_set_drvdata(dev, msi);
 
        msi->irqhost = irq_alloc_host(dev->dev.of_node, IRQ_HOST_MAP_LINEAR,
                                      NR_MSI_IRQS, &fsl_msi_host_ops, 0);