drm/lima: Clean up redundant pdev pointer
authorRobin Murphy <robin.murphy@arm.com>
Tue, 21 Apr 2020 22:51:37 +0000 (23:51 +0100)
committerQiang Yu <yuq825@gmail.com>
Fri, 24 Apr 2020 12:47:11 +0000 (20:47 +0800)
There's no point explicitly tracking the platform device when it can be
trivially derived from the regular device pointer in the couple of
places it's ever used.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/8d9073cc91c10fc70910587fd1794e0e8f32b467.1587509150.git.robin.murphy@arm.com
drivers/gpu/drm/lima/lima_devfreq.c
drivers/gpu/drm/lima/lima_device.c
drivers/gpu/drm/lima/lima_device.h
drivers/gpu/drm/lima/lima_drv.c

index 8c4d21d..1d479b5 100644 (file)
@@ -101,13 +101,12 @@ void lima_devfreq_fini(struct lima_device *ldev)
        }
 
        if (devfreq->devfreq) {
-               devm_devfreq_remove_device(&ldev->pdev->dev,
-                                          devfreq->devfreq);
+               devm_devfreq_remove_device(ldev->dev, devfreq->devfreq);
                devfreq->devfreq = NULL;
        }
 
        if (devfreq->opp_of_table_added) {
-               dev_pm_opp_of_remove_table(&ldev->pdev->dev);
+               dev_pm_opp_of_remove_table(ldev->dev);
                devfreq->opp_of_table_added = false;
        }
 
@@ -125,7 +124,7 @@ void lima_devfreq_fini(struct lima_device *ldev)
 int lima_devfreq_init(struct lima_device *ldev)
 {
        struct thermal_cooling_device *cooling;
-       struct device *dev = &ldev->pdev->dev;
+       struct device *dev = ldev->dev;
        struct opp_table *opp_table;
        struct devfreq *devfreq;
        struct lima_devfreq *ldevfreq = &ldev->devfreq;
index c334d29..29285de 100644 (file)
@@ -297,8 +297,8 @@ static void lima_fini_pp_pipe(struct lima_device *dev)
 
 int lima_device_init(struct lima_device *ldev)
 {
+       struct platform_device *pdev = to_platform_device(ldev->dev);
        int err, i;
-       struct resource *res;
 
        dma_set_coherent_mask(ldev->dev, DMA_BIT_MASK(32));
 
@@ -329,8 +329,7 @@ int lima_device_init(struct lima_device *ldev)
        } else
                ldev->va_end = LIMA_VA_RESERVE_END;
 
-       res = platform_get_resource(ldev->pdev, IORESOURCE_MEM, 0);
-       ldev->iomem = devm_ioremap_resource(ldev->dev, res);
+       ldev->iomem = devm_platform_ioremap_resource(pdev, 0);
        if (IS_ERR(ldev->iomem)) {
                dev_err(ldev->dev, "fail to ioremap iomem\n");
                err = PTR_ERR(ldev->iomem);
index 06fd963..99b1fb1 100644 (file)
@@ -76,7 +76,6 @@ enum lima_pipe_id {
 struct lima_device {
        struct device *dev;
        struct drm_device *ddev;
-       struct platform_device *pdev;
 
        enum lima_gpu_id id;
        u32 gp_version;
index bbbdc84..4e5dd75 100644 (file)
@@ -380,7 +380,6 @@ static int lima_pdev_probe(struct platform_device *pdev)
                goto err_out0;
        }
 
-       ldev->pdev = pdev;
        ldev->dev = &pdev->dev;
        ldev->id = (enum lima_gpu_id)of_device_get_match_data(&pdev->dev);