Re: [PATCH 0/6] drm/msm: fbdev: Use client buffers

Dmitry Baryshkov
2026-04-21T16:08:37Z

On Tue, Apr 21, 2026 at 02:51:13PM +0200, Thomas Zimmermann wrote:
> A client buffer holds the DRM framebuffer for an in-kernel DRM
> client. Until now, msm created an internal ad-hoc framebuffer for
> its fbdev emulation, while by-passing the regular interfaces used by
> user-space compositors.

I assume this was somewhat because we supported using the stolen memory
for FB. Support for it has been dropped when we moved to GPUVM.

Rob, would it be possible to get it back at some point?

Thomas, would the series prevent us from using the stolen memory for FB?

>
> Convert msm's fbdev emulation to use client buffers. Replacing the
> existing code with a client buffer allows for stream-lining msm 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.
>
> Patches 1 and 6 change visibility of msm_framebuffer_init() during the
> refactoring. It is the easiest way to refactor the fbdev probe helper.
>
> Patch 2 and 3 inline the fb allocation code into the fbdev-probe helper
> and fix it up a bit.
>
> From there patches 4 and 5 convert fbdev buffer allocation to common
> DRM helpes and client buffers.
>
> If all fbdev emulation helpers can be converted to client buffers, the
> emulation's whole framebuffer handling could possibly be moved into
> shared helpers.
>
> Thomas Zimmermann (6):
> drm/msm: Do not declare msm_framebuffer_init() as static
> drm/msm: fbdev: Inline msm_alloc_stolen_fb()
> drm/msm: fbdev: Fix error reporting
> drm/msm: fbdev: Calculate buffer geometry with format helpers
> drm/msm: fbdev: Use a DRM client buffer
> drm/msm: Make msm_framebuffer_init() an internal interface again
>
> drivers/gpu/drm/msm/msm_drv.h | 9 ---
> drivers/gpu/drm/msm/msm_fb.c | 98 +++++++++------------------------
> drivers/gpu/drm/msm/msm_fbdev.c | 85 +++++++++++++++++++---------
> 3 files changed, 85 insertions(+), 107 deletions(-)
>
> --
> 2.53.0
>

--
With best wishes
Dmitry