openwrt/target/linux/bcm27xx/patches-5.4/950-0346-v3d_gem-Kick-the-clock-so-firmware-knows-we-are-usin.patch
Álvaro Fernández Rojas f07e572f64 bcm27xx: import latest patches from the RPi foundation
bcm2708: boot tested on RPi B+ v1.2
bcm2709: boot tested on RPi 3B v1.2 and RPi 4B v1.1 4G
bcm2710: boot tested on RPi 3B v1.2
bcm2711: boot tested on RPi 4B v1.1 4G

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-02-18 23:42:32 +01:00

28 lines
1.0 KiB
Diff

From dfc842c139ef08e21647c43c19c2a23090b65b27 Mon Sep 17 00:00:00 2001
From: popcornmix <popcornmix@gmail.com>
Date: Thu, 5 Sep 2019 17:59:14 +0100
Subject: [PATCH] v3d_gem: Kick the clock so firmware knows we are
using firmware clock interface
Setting the v3d clock to low value allows firmware to handle dvfs in case
where v3d hardware is not being actively used (e.g. console use).
Signed-off-by: popcornmix <popcornmix@gmail.com>
---
drivers/gpu/drm/v3d/v3d_gem.c | 4 ++++
1 file changed, 4 insertions(+)
--- a/drivers/gpu/drm/v3d/v3d_gem.c
+++ b/drivers/gpu/drm/v3d/v3d_gem.c
@@ -918,6 +918,10 @@ v3d_gem_init(struct drm_device *dev)
mutex_init(&v3d->clk_lock);
INIT_DELAYED_WORK(&v3d->clk_down_work, v3d_clock_down_work);
+ /* kick the clock so firmware knows we are using firmware clock interface */
+ v3d_clock_up_get(v3d);
+ v3d_clock_up_put(v3d);
+
/* Note: We don't allocate address 0. Various bits of HW
* treat 0 as special, such as the occlusion query counters
* where 0 means "disabled".