]> git.baikalelectronics.ru Git - kernel.git/commitdiff
drm/v3d: Delete v3d_dev->dev
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 15 Apr 2020 07:39:44 +0000 (09:39 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 28 Apr 2020 13:15:52 +0000 (15:15 +0200)
We already have it in v3d_dev->drm.dev with zero additional pointer
chasing. Personally I don't like duplicated pointers like this
because:
- reviewers need to check whether the pointer is for the same or
  different objects if there's multiple
- compilers have an easier time too

But also a bit a bikeshed, so feel free to ignore.

Acked-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Cc: Eric Anholt <eric@anholt.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20200415074034.175360-10-daniel.vetter@ffwll.ch
drivers/gpu/drm/v3d/v3d_debugfs.c
drivers/gpu/drm/v3d/v3d_drv.c
drivers/gpu/drm/v3d/v3d_drv.h
drivers/gpu/drm/v3d/v3d_gem.c
drivers/gpu/drm/v3d/v3d_irq.c
drivers/gpu/drm/v3d/v3d_mmu.c
drivers/gpu/drm/v3d/v3d_sched.c

index 2b0ea5f8febd874ea55e9469827743c262075b77..e76b24bb88285e31c28d7ed4d378891fbf8ef2e8 100644 (file)
@@ -132,7 +132,7 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
        u32 ident0, ident1, ident2, ident3, cores;
        int ret, core;
 
-       ret = pm_runtime_get_sync(v3d->dev);
+       ret = pm_runtime_get_sync(v3d->drm.dev);
        if (ret < 0)
                return ret;
 
@@ -187,8 +187,8 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
                           (misccfg & V3D_MISCCFG_OVRTMUOUT) != 0);
        }
 
-       pm_runtime_mark_last_busy(v3d->dev);
-       pm_runtime_put_autosuspend(v3d->dev);
+       pm_runtime_mark_last_busy(v3d->drm.dev);
+       pm_runtime_put_autosuspend(v3d->drm.dev);
 
        return 0;
 }
@@ -219,7 +219,7 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
        int measure_ms = 1000;
        int ret;
 
-       ret = pm_runtime_get_sync(v3d->dev);
+       ret = pm_runtime_get_sync(v3d->drm.dev);
        if (ret < 0)
                return ret;
 
@@ -245,8 +245,8 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
                   cycles / (measure_ms * 1000),
                   (cycles / (measure_ms * 100)) % 10);
 
-       pm_runtime_mark_last_busy(v3d->dev);
-       pm_runtime_put_autosuspend(v3d->dev);
+       pm_runtime_mark_last_busy(v3d->drm.dev);
+       pm_runtime_put_autosuspend(v3d->drm.dev);
 
        return 0;
 }
index f57d408ef37132c2b73ea28bb25a9cb3c878a9a2..37cb880f2826178130c2912e5bca769eb4dcd6db 100644 (file)
@@ -105,7 +105,7 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
                if (args->value != 0)
                        return -EINVAL;
 
-               ret = pm_runtime_get_sync(v3d->dev);
+               ret = pm_runtime_get_sync(v3d->drm.dev);
                if (ret < 0)
                        return ret;
                if (args->param >= DRM_V3D_PARAM_V3D_CORE0_IDENT0 &&
@@ -114,8 +114,8 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
                } else {
                        args->value = V3D_READ(offset);
                }
-               pm_runtime_mark_last_busy(v3d->dev);
-               pm_runtime_put_autosuspend(v3d->dev);
+               pm_runtime_mark_last_busy(v3d->drm.dev);
+               pm_runtime_put_autosuspend(v3d->drm.dev);
                return 0;
        }
 
@@ -237,7 +237,7 @@ map_regs(struct v3d_dev *v3d, void __iomem **regs, const char *name)
        struct resource *res =
                platform_get_resource_byname(v3d->pdev, IORESOURCE_MEM, name);
 
-       *regs = devm_ioremap_resource(v3d->dev, res);
+       *regs = devm_ioremap_resource(v3d->drm.dev, res);
        return PTR_ERR_OR_ZERO(*regs);
 }
 
@@ -255,7 +255,6 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
        if (IS_ERR(v3d))
                return PTR_ERR(v3d);
 
-       v3d->dev = dev;
        v3d->pdev = pdev;
        drm = &v3d->drm;
 
@@ -345,7 +344,8 @@ static int v3d_platform_drm_remove(struct platform_device *pdev)
 
        v3d_gem_destroy(drm);
 
-       dma_free_wc(v3d->dev, 4096, v3d->mmu_scratch, v3d->mmu_scratch_paddr);
+       dma_free_wc(v3d->drm.dev, 4096, v3d->mmu_scratch,
+                   v3d->mmu_scratch_paddr);
 
        return 0;
 }
index 112d80aed5f6f47dbe644a1d0d9d783528b2a36e..4d2d1f2fe1af0c7100a88b7b72cf8bbfc5ced05a 100644 (file)
@@ -14,7 +14,6 @@
 #include "uapi/drm/v3d_drm.h"
 
 struct clk;
-struct device;
 struct platform_device;
 struct reset_control;
 
@@ -47,7 +46,6 @@ struct v3d_dev {
        int ver;
        bool single_irq_line;
 
-       struct device *dev;
        struct platform_device *pdev;
        void __iomem *hub_regs;
        void __iomem *core_regs[3];
index 549dde83408b0ffed1b0204702978b351e17917a..09a7639cf161f59fcfe34d23ebea036838801315 100644 (file)
@@ -370,8 +370,8 @@ v3d_job_free(struct kref *ref)
        dma_fence_put(job->irq_fence);
        dma_fence_put(job->done_fence);
 
-       pm_runtime_mark_last_busy(job->v3d->dev);
-       pm_runtime_put_autosuspend(job->v3d->dev);
+       pm_runtime_mark_last_busy(job->v3d->drm.dev);
+       pm_runtime_put_autosuspend(job->v3d->drm.dev);
 
        kfree(job);
 }
@@ -439,7 +439,7 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
        job->v3d = v3d;
        job->free = free;
 
-       ret = pm_runtime_get_sync(v3d->dev);
+       ret = pm_runtime_get_sync(v3d->drm.dev);
        if (ret < 0)
                return ret;
 
@@ -458,7 +458,7 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
        return 0;
 fail:
        xa_destroy(&job->deps);
-       pm_runtime_put_autosuspend(v3d->dev);
+       pm_runtime_put_autosuspend(v3d->drm.dev);
        return ret;
 }
 
@@ -886,12 +886,12 @@ v3d_gem_init(struct drm_device *dev)
         */
        drm_mm_init(&v3d->mm, 1, pt_size / sizeof(u32) - 1);
 
-       v3d->pt = dma_alloc_wc(v3d->dev, pt_size,
+       v3d->pt = dma_alloc_wc(v3d->drm.dev, pt_size,
                               &v3d->pt_paddr,
                               GFP_KERNEL | __GFP_NOWARN | __GFP_ZERO);
        if (!v3d->pt) {
                drm_mm_takedown(&v3d->mm);
-               dev_err(v3d->dev,
+               dev_err(v3d->drm.dev,
                        "Failed to allocate page tables. "
                        "Please ensure you have CMA enabled.\n");
                return -ENOMEM;
@@ -903,7 +903,7 @@ v3d_gem_init(struct drm_device *dev)
        ret = v3d_sched_init(v3d);
        if (ret) {
                drm_mm_takedown(&v3d->mm);
-               dma_free_coherent(v3d->dev, 4096 * 1024, (void *)v3d->pt,
+               dma_free_coherent(v3d->drm.dev, 4096 * 1024, (void *)v3d->pt,
                                  v3d->pt_paddr);
        }
 
@@ -925,5 +925,6 @@ v3d_gem_destroy(struct drm_device *dev)
 
        drm_mm_takedown(&v3d->mm);
 
-       dma_free_coherent(v3d->dev, 4096 * 1024, (void *)v3d->pt, v3d->pt_paddr);
+       dma_free_coherent(v3d->drm.dev, 4096 * 1024, (void *)v3d->pt,
+                         v3d->pt_paddr);
 }
index 662e67279a7bb40554a02e68588e6e538556c8af..f4ce6d057c904281146d82511558622e55d5f049 100644 (file)
@@ -128,7 +128,7 @@ v3d_irq(int irq, void *arg)
         * always-allowed mode.
         */
        if (intsts & V3D_INT_GMPV)
-               dev_err(v3d->dev, "GMP violation\n");
+               dev_err(v3d->drm.dev, "GMP violation\n");
 
        /* V3D 4.2 wires the hub and core IRQs together, so if we &
         * didn't see the common one then check hub for MMU IRQs.
@@ -189,7 +189,7 @@ v3d_hub_irq(int irq, void *arg)
                                client = v3d41_axi_ids[axi_id];
                }
 
-               dev_err(v3d->dev, "MMU error from client %s (%d) at 0x%llx%s%s%s\n",
+               dev_err(v3d->drm.dev, "MMU error from client %s (%d) at 0x%llx%s%s%s\n",
                        client, axi_id, (long long)vio_addr,
                        ((intsts & V3D_HUB_INT_MMU_WRV) ?
                         ", write violation" : ""),
@@ -221,12 +221,12 @@ v3d_irq_init(struct v3d_dev *v3d)
        if (irq1 == -EPROBE_DEFER)
                return irq1;
        if (irq1 > 0) {
-               ret = devm_request_irq(v3d->dev, irq1,
+               ret = devm_request_irq(v3d->drm.dev, irq1,
                                       v3d_irq, IRQF_SHARED,
                                       "v3d_core0", v3d);
                if (ret)
                        goto fail;
-               ret = devm_request_irq(v3d->dev, platform_get_irq(v3d->pdev, 0),
+               ret = devm_request_irq(v3d->drm.dev, platform_get_irq(v3d->pdev, 0),
                                       v3d_hub_irq, IRQF_SHARED,
                                       "v3d_hub", v3d);
                if (ret)
@@ -234,7 +234,7 @@ v3d_irq_init(struct v3d_dev *v3d)
        } else {
                v3d->single_irq_line = true;
 
-               ret = devm_request_irq(v3d->dev, platform_get_irq(v3d->pdev, 0),
+               ret = devm_request_irq(v3d->drm.dev, platform_get_irq(v3d->pdev, 0),
                                       v3d_irq, IRQF_SHARED,
                                       "v3d", v3d);
                if (ret)
@@ -246,7 +246,7 @@ v3d_irq_init(struct v3d_dev *v3d)
 
 fail:
        if (ret != -EPROBE_DEFER)
-               dev_err(v3d->dev, "IRQ setup failed: %d\n", ret);
+               dev_err(v3d->drm.dev, "IRQ setup failed: %d\n", ret);
        return ret;
 }
 
index 395e81d97163211196dc8d9a5ef7817e8999a9fd..3b81ea28c0bbc8d1a13bde4e025c47be296c176f 100644 (file)
@@ -40,7 +40,7 @@ static int v3d_mmu_flush_all(struct v3d_dev *v3d)
        ret = wait_for(!(V3D_READ(V3D_MMU_CTL) &
                         V3D_MMU_CTL_TLB_CLEARING), 100);
        if (ret)
-               dev_err(v3d->dev, "TLB clear wait idle pre-wait failed\n");
+               dev_err(v3d->drm.dev, "TLB clear wait idle pre-wait failed\n");
 
        V3D_WRITE(V3D_MMU_CTL, V3D_READ(V3D_MMU_CTL) |
                  V3D_MMU_CTL_TLB_CLEAR);
@@ -52,14 +52,14 @@ static int v3d_mmu_flush_all(struct v3d_dev *v3d)
        ret = wait_for(!(V3D_READ(V3D_MMU_CTL) &
                         V3D_MMU_CTL_TLB_CLEARING), 100);
        if (ret) {
-               dev_err(v3d->dev, "TLB clear wait idle failed\n");
+               dev_err(v3d->drm.dev, "TLB clear wait idle failed\n");
                return ret;
        }
 
        ret = wait_for(!(V3D_READ(V3D_MMUC_CONTROL) &
                         V3D_MMUC_CONTROL_FLUSHING), 100);
        if (ret)
-               dev_err(v3d->dev, "MMUC flush wait idle failed\n");
+               dev_err(v3d->drm.dev, "MMUC flush wait idle failed\n");
 
        return ret;
 }
@@ -109,7 +109,7 @@ void v3d_mmu_insert_ptes(struct v3d_bo *bo)
                     shmem_obj->base.size >> V3D_MMU_PAGE_SHIFT);
 
        if (v3d_mmu_flush_all(v3d))
-               dev_err(v3d->dev, "MMU flush timeout\n");
+               dev_err(v3d->drm.dev, "MMU flush timeout\n");
 }
 
 void v3d_mmu_remove_ptes(struct v3d_bo *bo)
@@ -122,5 +122,5 @@ void v3d_mmu_remove_ptes(struct v3d_bo *bo)
                v3d->pt[page] = 0;
 
        if (v3d_mmu_flush_all(v3d))
-               dev_err(v3d->dev, "MMU flush timeout\n");
+               dev_err(v3d->drm.dev, "MMU flush timeout\n");
 }
index 8c2df6d95283e46598d18c66e75c14c80bd3ee5c..0747614a78f0bc4bed7c1f3734c14655a0346415 100644 (file)
@@ -403,7 +403,7 @@ v3d_sched_init(struct v3d_dev *v3d)
                             msecs_to_jiffies(hang_limit_ms),
                             "v3d_bin");
        if (ret) {
-               dev_err(v3d->dev, "Failed to create bin scheduler: %d.", ret);
+               dev_err(v3d->drm.dev, "Failed to create bin scheduler: %d.", ret);
                return ret;
        }
 
@@ -413,7 +413,7 @@ v3d_sched_init(struct v3d_dev *v3d)
                             msecs_to_jiffies(hang_limit_ms),
                             "v3d_render");
        if (ret) {
-               dev_err(v3d->dev, "Failed to create render scheduler: %d.",
+               dev_err(v3d->drm.dev, "Failed to create render scheduler: %d.",
                        ret);
                v3d_sched_fini(v3d);
                return ret;
@@ -425,7 +425,7 @@ v3d_sched_init(struct v3d_dev *v3d)
                             msecs_to_jiffies(hang_limit_ms),
                             "v3d_tfu");
        if (ret) {
-               dev_err(v3d->dev, "Failed to create TFU scheduler: %d.",
+               dev_err(v3d->drm.dev, "Failed to create TFU scheduler: %d.",
                        ret);
                v3d_sched_fini(v3d);
                return ret;
@@ -438,7 +438,7 @@ v3d_sched_init(struct v3d_dev *v3d)
                                     msecs_to_jiffies(hang_limit_ms),
                                     "v3d_csd");
                if (ret) {
-                       dev_err(v3d->dev, "Failed to create CSD scheduler: %d.",
+                       dev_err(v3d->drm.dev, "Failed to create CSD scheduler: %d.",
                                ret);
                        v3d_sched_fini(v3d);
                        return ret;
@@ -450,7 +450,7 @@ v3d_sched_init(struct v3d_dev *v3d)
                                     msecs_to_jiffies(hang_limit_ms),
                                     "v3d_cache_clean");
                if (ret) {
-                       dev_err(v3d->dev, "Failed to create CACHE_CLEAN scheduler: %d.",
+                       dev_err(v3d->drm.dev, "Failed to create CACHE_CLEAN scheduler: %d.",
                                ret);
                        v3d_sched_fini(v3d);
                        return ret;