aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.10/950-0161-drm-v3d-Delete-pm_runtime-support.patch
blob: f6fdee0f4879e83a95c41a5737e3ec652396b98a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
From 194db68e9c6c18c536714859e788de36a146dabb Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.org>
Date: Wed, 18 Sep 2019 17:22:36 +0100
Subject: [PATCH] drm/v3d: Delete pm_runtime support

The pm_runtime was blocking changelist submission, so delete it as a
temporary workaround.

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
---
 drivers/gpu/drm/v3d/v3d_gem.c |  5 -----
 drivers/gpu/drm/v3d/v3d_mmu.c | 11 -----------
 2 files changed, 16 deletions(-)

--- a/drivers/gpu/drm/v3d/v3d_gem.c
+++ b/drivers/gpu/drm/v3d/v3d_gem.c
@@ -478,10 +478,6 @@ v3d_job_init(struct v3d_dev *v3d, struct
 	job->v3d = v3d;
 	job->free = free;
 
-	ret = pm_runtime_get_sync(v3d->drm.dev);
-	if (ret < 0)
-		return ret;
-
 	xa_init_flags(&job->deps, XA_FLAGS_ALLOC);
 
 	ret = drm_syncobj_find_fence(file_priv, in_sync, 0, 0, &in_fence);
@@ -498,7 +494,6 @@ v3d_job_init(struct v3d_dev *v3d, struct
 	return 0;
 fail:
 	xa_destroy(&job->deps);
-	pm_runtime_put_autosuspend(v3d->drm.dev);
 	return ret;
 }
 
--- a/drivers/gpu/drm/v3d/v3d_mmu.c
+++ b/drivers/gpu/drm/v3d/v3d_mmu.c
@@ -36,14 +36,6 @@ static int v3d_mmu_flush_all(struct v3d_
 {
 	int ret;
 
-	/* Keep power on the device on until we're done with this
-	 * call, but skip the flush if the device is off and will be
-	 * reset when powered back on.
-	 */
-	ret = pm_runtime_get_if_in_use(v3d->dev);
-	if (ret == 0)
-		return 0;
-
 	/* Make sure that another flush isn't already running when we
 	 * start this one.
 	 */
@@ -71,9 +63,6 @@ static int v3d_mmu_flush_all(struct v3d_
 	if (ret)
 		dev_err(v3d->drm.dev, "MMUC flush wait idle failed\n");
 
-	pm_runtime_mark_last_busy(v3d->dev);
-	pm_runtime_put_autosuspend(v3d->dev);
-
 	return ret;
 }