drm/msm: Use regular fbdev I/O helpers
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 30 May 2023 15:12:26 +0000 (17:12 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 1 Jun 2023 10:41:40 +0000 (12:41 +0200)
commit4a2262c121130026306a36888f74f0736fc3fb1c
tree6ef6bf2362c808b9d81ed18f780d9ab9ee315729
parentc51b36207c04bad501ddd47a3d3fe0dbfd611474
drm/msm: Use regular fbdev I/O helpers

Use the regular fbdev helpers for framebuffer I/O instead of DRM's
helpers. Msm does not use damage handling, so DRM's fbdev helpers
are mere wrappers around the fbdev code.

By using fbdev helpers directly within each DRM fbdev emulation,
we can eventually remove DRM's wrapper functions entirely.

Msm's fbdev emulation has been incomplete as it didn't implement
damage handling. Partilly fix this by implementing damage handling
for write and draw operation. It is still missing for mmaped pages.

v4:
* use initializer macros for struct fb_ops
* partially support damage handling
v2:
* use FB_SYS_HELPERS option

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Rob Clark <robdclark@gmail.com>
Cc: Abhinav Kumar <quic_abhinavk@quicinc.com>
Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Sean Paul <sean@poorly.run>
Link: https://patchwork.freedesktop.org/patch/msgid/20230530151228.22979-12-tzimmermann@suse.de
drivers/gpu/drm/msm/Kconfig
drivers/gpu/drm/msm/msm_fbdev.c