[PATCH 0/5] drm/vram: Provide helpers for prepare_fb() and cleanup_fb()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The implementation of the plane's call-back functions prepare_fb() and
cleanup_fb() for GEM VRAM helpers are sharable among drivers.

The first patch adapts the the interface of simple KSM helpers such that
bochs can benefit from the shared code. We add the helper functions in
patch #2. Patches #3 to #5 covert several drivers to the new helpers.

Patch #4 also fixes two bugs that have been present in hibmc since it was
first added. The primary plane's atomic_update() is not responsible for
pinning BOs. And it never unpinned unused BOs. VRAM is being exausted
over time.

The new helpers have been tested to work. The drivers affected by the
interface change have been compiled at least.

Thomas Zimmermann (5):
  drm/simple-kms-helper: Pass plane to prepare_fb() and cleanup_fb()
  drm/vram-helpers: Add helpers for struct drm_plane_helper_funcs
  drm/bochs: Replace prepare_fb()/cleanup_fb() with GEM VRAM helpers
  drm/hisilicon/hibmc: Use GEM VRAM's prepare_fb() and cleanup_fb()
    helpers
  drm/vboxvideo: Replace prepare_fb()/cleanup_fb() with GEM VRAM helpers

 drivers/gpu/drm/aspeed/aspeed_gfx_crtc.c      |  2 +-
 drivers/gpu/drm/bochs/bochs_kms.c             | 26 +-----
 drivers/gpu/drm/drm_gem_framebuffer_helper.c  | 22 -----
 drivers/gpu/drm/drm_gem_vram_helper.c         | 81 +++++++++++++++++++
 drivers/gpu/drm/drm_simple_kms_helper.c       |  4 +-
 .../gpu/drm/hisilicon/hibmc/hibmc_drm_de.c    | 14 +---
 drivers/gpu/drm/mcde/mcde_display.c           |  2 +-
 drivers/gpu/drm/mxsfb/mxsfb_drv.c             |  2 +-
 drivers/gpu/drm/pl111/pl111_display.c         |  2 +-
 drivers/gpu/drm/tiny/hx8357d.c                |  2 +-
 drivers/gpu/drm/tiny/ili9225.c                |  2 +-
 drivers/gpu/drm/tiny/ili9341.c                |  2 +-
 drivers/gpu/drm/tiny/mi0283qt.c               |  2 +-
 drivers/gpu/drm/tiny/repaper.c                |  2 +-
 drivers/gpu/drm/tiny/st7586.c                 |  2 +-
 drivers/gpu/drm/tiny/st7735r.c                |  2 +-
 drivers/gpu/drm/tve200/tve200_display.c       |  2 +-
 drivers/gpu/drm/vboxvideo/vbox_mode.c         | 61 +-------------
 drivers/gpu/drm/xen/xen_drm_front_kms.c       |  2 +-
 include/drm/drm_gem_framebuffer_helper.h      |  4 +-
 include/drm/drm_gem_vram_helper.h             | 12 +++
 include/drm/drm_plane.h                       |  2 +-
 include/drm/drm_simple_kms_helper.h           |  6 +-
 23 files changed, 123 insertions(+), 135 deletions(-)

--
2.23.0

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux