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>
 
 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;
 
                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);