Just for the sake of avoiding repetition.

Signed-off-by: Adrián Larumbe <[email protected]>
---
 drivers/gpu/drm/panfrost/panfrost_perfcnt.c | 31 ++++++++++++-----------------
 1 file changed, 13 insertions(+), 18 deletions(-)

diff --git a/drivers/gpu/drm/panfrost/panfrost_perfcnt.c 
b/drivers/gpu/drm/panfrost/panfrost_perfcnt.c
index 7020c0192e18..ad1156678e91 100644
--- a/drivers/gpu/drm/panfrost/panfrost_perfcnt.c
+++ b/drivers/gpu/drm/panfrost/panfrost_perfcnt.c
@@ -35,6 +35,16 @@ struct panfrost_perfcnt {
        struct completion dump_comp;
 };
 
+static void panfrost_perfcnt_gpu_disable(struct panfrost_device *pfdev)
+{
+       gpu_write(pfdev, GPU_PERFCNT_CFG,
+                 GPU_PERFCNT_CFG_MODE(GPU_PERFCNT_CFG_MODE_OFF));
+       gpu_write(pfdev, GPU_PRFCNT_JM_EN, 0x0);
+       gpu_write(pfdev, GPU_PRFCNT_SHADER_EN, 0x0);
+       gpu_write(pfdev, GPU_PRFCNT_MMU_L2_EN, 0x0);
+       gpu_write(pfdev, GPU_PRFCNT_TILER_EN, 0);
+}
+
 void panfrost_perfcnt_clean_cache_done(struct panfrost_device *pfdev)
 {
        complete(&pfdev->perfcnt->dump_comp);
@@ -193,12 +203,7 @@ static int panfrost_perfcnt_disable_locked(struct 
panfrost_device *pfdev,
        if (user != perfcnt->user)
                return -EINVAL;
 
-       gpu_write(pfdev, GPU_PRFCNT_JM_EN, 0x0);
-       gpu_write(pfdev, GPU_PRFCNT_SHADER_EN, 0x0);
-       gpu_write(pfdev, GPU_PRFCNT_MMU_L2_EN, 0x0);
-       gpu_write(pfdev, GPU_PRFCNT_TILER_EN, 0);
-       gpu_write(pfdev, GPU_PERFCNT_CFG,
-                 GPU_PERFCNT_CFG_MODE(GPU_PERFCNT_CFG_MODE_OFF));
+       panfrost_perfcnt_gpu_disable(pfdev);
 
        perfcnt->user = NULL;
        drm_gem_vunmap(&perfcnt->mapping->obj->base.base, &map);
@@ -327,12 +332,7 @@ int panfrost_perfcnt_init(struct panfrost_device *pfdev)
        perfcnt->bosize = size;
 
        /* Start with everything disabled. */
-       gpu_write(pfdev, GPU_PERFCNT_CFG,
-                 GPU_PERFCNT_CFG_MODE(GPU_PERFCNT_CFG_MODE_OFF));
-       gpu_write(pfdev, GPU_PRFCNT_JM_EN, 0);
-       gpu_write(pfdev, GPU_PRFCNT_SHADER_EN, 0);
-       gpu_write(pfdev, GPU_PRFCNT_MMU_L2_EN, 0);
-       gpu_write(pfdev, GPU_PRFCNT_TILER_EN, 0);
+       panfrost_perfcnt_gpu_disable(pfdev);
 
        init_completion(&perfcnt->dump_comp);
        mutex_init(&perfcnt->lock);
@@ -344,10 +344,5 @@ int panfrost_perfcnt_init(struct panfrost_device *pfdev)
 void panfrost_perfcnt_fini(struct panfrost_device *pfdev)
 {
        /* Disable everything before leaving. */
-       gpu_write(pfdev, GPU_PERFCNT_CFG,
-                 GPU_PERFCNT_CFG_MODE(GPU_PERFCNT_CFG_MODE_OFF));
-       gpu_write(pfdev, GPU_PRFCNT_JM_EN, 0);
-       gpu_write(pfdev, GPU_PRFCNT_SHADER_EN, 0);
-       gpu_write(pfdev, GPU_PRFCNT_MMU_L2_EN, 0);
-       gpu_write(pfdev, GPU_PRFCNT_TILER_EN, 0);
+       panfrost_perfcnt_gpu_disable(pfdev);
 }

-- 
2.53.0

Reply via email to