aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Vetter <[email protected]>2020-06-12 18:00:56 +0200
committerDaniel Vetter <[email protected]>2020-06-24 09:17:30 +0200
commite8411b7ede3bd59f45a7ad997536d235e9c71c36 (patch)
treea8c679591e4e15a9f59a124a6b4124548906cfe6
parentec971aaa6775cff555b4f58777ceab1d9a8370e0 (diff)
drm/tiny/repaper: Drop edp->enabled
Same patch as the mipi-dbi one, atomic tracks this for us already, we just have to check the right thing. Reviewed-by: Noralf Trønnes <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: "Noralf Trønnes" <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
-rw-r--r--drivers/gpu/drm/tiny/repaper.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/gpu/drm/tiny/repaper.c b/drivers/gpu/drm/tiny/repaper.c
index 08164e2a2d13..2e01cf0a9876 100644
--- a/drivers/gpu/drm/tiny/repaper.c
+++ b/drivers/gpu/drm/tiny/repaper.c
@@ -88,7 +88,6 @@ struct repaper_epd {
u8 *line_buffer;
void *current_frame;
- bool enabled;
bool cleared;
bool partial;
};
@@ -538,9 +537,6 @@ static int repaper_fb_dirty(struct drm_framebuffer *fb)
int idx, ret = 0;
u8 *buf = NULL;
- if (!epd->enabled)
- return 0;
-
if (!drm_dev_enter(fb->dev, &idx))
return -ENODEV;
@@ -786,7 +782,6 @@ static void repaper_pipe_enable(struct drm_simple_display_pipe *pipe,
*/
repaper_write_val(spi, 0x02, 0x04);
- epd->enabled = true;
epd->partial = false;
out_exit:
drm_dev_exit(idx);
@@ -805,13 +800,8 @@ static void repaper_pipe_disable(struct drm_simple_display_pipe *pipe)
* unplug.
*/
- if (!epd->enabled)
- return;
-
DRM_DEBUG_DRIVER("\n");
- epd->enabled = false;
-
/* Nothing frame */
for (line = 0; line < epd->height; line++)
repaper_one_line(epd, 0x7fffu, NULL, 0x00, NULL,
@@ -859,6 +849,9 @@ static void repaper_pipe_update(struct drm_simple_display_pipe *pipe,
struct drm_plane_state *state = pipe->plane.state;
struct drm_rect rect;
+ if (!pipe->crtc.state->active)
+ return;
+
if (drm_atomic_helper_damage_merged(old_state, state, &rect))
repaper_fb_dirty(state->fb);
}