[PATCH] drm/msm: mark the fbdev framebuffer as system memory

From: Dmitry Baryshkov

Date: Thu Jul 30 2026 - 09:25:10 EST


msm_fbdev_driver_fbdev_probe() points screen_buffer at a kernel virtual
mapping of the GEM object and uses the deferred sysmem fb ops, but never
sets FBINFO_VIRTFB. The framebuffer core then assumes the memory is not
in the virtual address space and warns on the first console draw:

fb0: sys_fillrect: framebuffer is not in virtual address space.

The drm_fbdev_dma, drm_fbdev_shmem and drm_fbdev_ttm helpers all set the
flag for system memory. Do the same here.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>
Assisted-by: Claude:claude-opus-5
---
drivers/gpu/drm/msm/msm_fbdev.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/msm/msm_fbdev.c b/drivers/gpu/drm/msm/msm_fbdev.c
index fd19995b12b5..0089301f80f3 100644
--- a/drivers/gpu/drm/msm/msm_fbdev.c
+++ b/drivers/gpu/drm/msm/msm_fbdev.c
@@ -132,6 +132,7 @@ int msm_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
helper->fb = fb;

fbi->fbops = &msm_fb_ops;
+ fbi->flags |= FBINFO_VIRTFB; /* system memory */

drm_fb_helper_fill_info(fbi, helper, sizes);


---
base-commit: 3652b49adac266a3d27cb41cdfdb7d8790fc3633
change-id: 20260730-drm-msm-fbinfo-virt-969fbb837443

Best regards,
--
With best wishes
Dmitry