[PATCH v2 0/8] drm/msm: Convert fbdev to DRM client

Thomas Zimmermann tzimmermann at suse.de
Mon Apr 3 12:45:30 UTC 2023


Convert msm' fbdev code to struct drm_client. Replaces the current
ad-hoc integration. The conversion includes a number of cleanups. As
with most other drivers' fbdev emulation, fbdev in msm is now just
another DRM client that runs after the DRM device has been registered.

Once all drivers' fbdev emulation has been converted to struct drm_client,
we can attempt to add additional in-kernel clients. A DRM-based dmesg
log or a bootsplash are commonly mentioned. DRM can then switch easily
among the existing clients if/when required.

I did the conversion from similar experience with other drivers. But I
don't have the hardware to test this. Any testing is welcome.

v2:
	* handle 'fbdev' module parameter in fbdev code
	* add missing kfree()
	* minor fixes

Thomas Zimmermann (8):
  drm/msm: Include <linux/io.h>
  drm/msm: Clear aperture ownership outside of fbdev code
  drm/msm: Remove fb from struct msm_fbdev
  drm/msm: Remove struct msm_fbdev
  drm/msm: Remove fbdev from struct msm_drm_private
  drm/msm: Move module parameter 'fbdev' to fbdev code
  drm/msm: Initialize fbdev DRM client
  drm/msm: Implement fbdev emulation as in-kernel client

 drivers/gpu/drm/msm/msm_debugfs.c  |   6 +-
 drivers/gpu/drm/msm/msm_drv.c      |  27 ++---
 drivers/gpu/drm/msm/msm_drv.h      |  12 +-
 drivers/gpu/drm/msm/msm_fbdev.c    | 173 +++++++++++++++++------------
 drivers/gpu/drm/msm/msm_io_utils.c |   1 +
 5 files changed, 125 insertions(+), 94 deletions(-)


base-commit: a7180debb9c631375684f4d717466cfb9f238660
-- 
2.40.0



More information about the dri-devel mailing list