forked from libretro/Lakka-LibreELEC
39 lines
1.1 KiB
Diff
39 lines
1.1 KiB
Diff
From 2e5d4ca1c07ddf06f8c3b18fd73baea7ce711169 Mon Sep 17 00:00:00 2001
|
|
From: Jernej Skrabec <jernej.skrabec@siol.net>
|
|
Date: Sun, 19 Jul 2020 11:37:41 +0200
|
|
Subject: [PATCH 37/44] drm/sun4i: mixer: Add caching support
|
|
|
|
Most registers are not safe to read out so enable cache in regmap.
|
|
|
|
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
|
|
---
|
|
drivers/gpu/drm/sun4i/sun8i_mixer.c | 12 ++++++++++++
|
|
1 file changed, 12 insertions(+)
|
|
|
|
--- a/drivers/gpu/drm/sun4i/sun8i_mixer.c
|
|
+++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c
|
|
@@ -346,11 +346,23 @@ static const struct sunxi_engine_ops sun
|
|
.layers_init = sun8i_layers_init,
|
|
};
|
|
|
|
+static bool sun8i_mixer_volatile_reg(struct device *dev, unsigned int reg)
|
|
+{
|
|
+ switch (reg) {
|
|
+ case SUN8I_MIXER_GLOBAL_STATUS:
|
|
+ case SUN8I_MIXER_GLOBAL_DBUFF:
|
|
+ return true;
|
|
+ }
|
|
+ return false;
|
|
+}
|
|
+
|
|
static const struct regmap_config sun8i_mixer_regmap_config = {
|
|
+ .cache_type = REGCACHE_FLAT,
|
|
.reg_bits = 32,
|
|
.val_bits = 32,
|
|
.reg_stride = 4,
|
|
.max_register = 0xffffc, /* guessed */
|
|
+ .volatile_reg = sun8i_mixer_volatile_reg,
|
|
};
|
|
|
|
static int sun8i_mixer_of_get_id(struct device_node *node)
|