On 23.04.2026 11:37, Thomas Zimmermann wrote: > A client buffer holds the DRM framebuffer for an in-kernel DRM > client. Until now, exynos created an internal ad-hoc framebuffer for > its fbdev emulation, while by-passing the regular interfaces used by > user-space compositors. > > Convert exynos' fbdev emulation to use client buffers. Replacing the > existing code with a client buffer allows for stream-lining exynos code > and later also the fbdev helpers. The new framebuffer will be registered > against the client's file and will support handles for GEM objects. It > is then just another framebuffer within the DRM ecosystem. > > If all driver's fbdev-emulation helpers can be converted to use client > buffers, the emulation's framebuffer handling as a whole can possibly be > moved into shared helpers.
Tested-by: Marek Szyprowski <[email protected]> Acked-by: Marek Szyprowski <[email protected]> > Patch 1 first fixes a long-standing bug. > > Patches 2 to 4 convert exynos' fbdev emulation to client buffers. It > still allocates a GEM object buffer tailored towards fbdev emulation, > but size calculations now use common DRM helpers. > > Patch 5 cleans up symbol visibility in exynos' fb code. > > Thomas Zimmermann (5): > drm/exynos: fbdev: Remove offset into screen_buffer > drm/exynos: fbdev: Inline exynos_drm_fbdev_update() > drm/exynos: fbdev: Calculate buffer geometry with format helpers > drm/exynos: fbdev: Use a DRM client buffer > drm/exynos: Make exynos_drm_framebuffer_init() an internal interface > > drivers/gpu/drm/exynos/exynos_drm_fb.c | 2 +- > drivers/gpu/drm/exynos/exynos_drm_fb.h | 7 -- > drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 100 ++++++++++------------ > 3 files changed, 47 insertions(+), 62 deletions(-) > Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland
