All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/6] drm/hibmc: Fix plane helpers and convert to gem-shmem
@ 2026-06-18 12:28 Thomas Zimmermann
  2026-06-18 12:28 ` [PATCH v4 1/6] drm/hibmc: Use drm_atomic_helper_check_plane_state() Thomas Zimmermann
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Thomas Zimmermann @ 2026-06-18 12:28 UTC (permalink / raw)
  To: shiyongbang, tiantao6, kong.kongxinwei, maarten.lankhorst,
	mripard, airlied, simona
  Cc: dri-devel, sashiko-reviews, Thomas Zimmermann

Convert hibmc's memory management from gem-vram ot gem-shmem. Fix a
number of bugs in preparation.

Patches 1 to 5 fix various bugs and minor issues in the plane code.

Patch 6 replaces gem-vram with gem-shmem. The rational is that gem-vram
has corner cases on low-end devices and is limited in functionality. The
commit messages state a list of possible issues.

Switching to gem-shmem avoids these problems. It also enables buffer
sharing via dma_buf, which improves the hibmc driver's integration with
the overall graphics ecosystem.

We've done these changes on drivers for similar hardware, such as ast and
mgag200. Hibmc is the last of these drivers to run on gem-shmem. Gem-vram
instead is deprecated and can hopefully be removed in a later release.

Tested on an RH1288 v3 system.

v4:
- verify framebuffer pitch aligns to 128
- store fb in local variable in atomic_update (Yongbang)
v3:
- fix coding style
- rebase on display-detection fixes
v2:
- extend commit message of patch 2 (Yongbang)
- so not select TTM any longer

Thomas Zimmermann (6):
  drm/hibmc: Use drm_atomic_helper_check_plane_state()
  drm/hibmc: Fix list of formats on the primary plane
  drm/hibmc: Store fb in variable in atomic_update
  drm/hibmc: Do not use cpp from struct drm_format_info
  drm/hibmc: Verify the framebuffer pitch to be a multiple of 128
  drm/hibmc: Use gem-shmem with shadow-plane helpers for memory
    management

 drivers/gpu/drm/drm_gem_shmem_helper.c        |  22 +++-
 drivers/gpu/drm/hisilicon/hibmc/Kconfig       |   4 +-
 .../gpu/drm/hisilicon/hibmc/hibmc_drm_de.c    | 110 +++++++++---------
 .../gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c   |  78 ++++++++++---
 .../gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h   |   5 +
 include/drm/drm_gem_shmem_helper.h            |   4 +
 6 files changed, 145 insertions(+), 78 deletions(-)

-- 
2.54.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2026-06-18 12:48 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-18 12:28 [PATCH v4 0/6] drm/hibmc: Fix plane helpers and convert to gem-shmem Thomas Zimmermann
2026-06-18 12:28 ` [PATCH v4 1/6] drm/hibmc: Use drm_atomic_helper_check_plane_state() Thomas Zimmermann
2026-06-18 12:48   ` sashiko-bot
2026-06-18 12:28 ` [PATCH v4 2/6] drm/hibmc: Fix list of formats on the primary plane Thomas Zimmermann
2026-06-18 12:43   ` sashiko-bot
2026-06-18 12:28 ` [PATCH v4 3/6] drm/hibmc: Store fb in variable in atomic_update Thomas Zimmermann
2026-06-18 12:28 ` [PATCH v4 4/6] drm/hibmc: Do not use cpp from struct drm_format_info Thomas Zimmermann
2026-06-18 12:28 ` [PATCH v4 5/6] drm/hibmc: Verify the framebuffer pitch to be a multiple of 128 Thomas Zimmermann
2026-06-18 12:28 ` [PATCH v4 6/6] drm/hibmc: Use gem-shmem with shadow-plane helpers for memory management Thomas Zimmermann
2026-06-18 12:43   ` sashiko-bot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.