mirror-linux/drivers/gpu/drm/exynos
Thomas Zimmermann 63c971af40 drm/fb-helper: Allocate and release fb_info in single place
Move the calls to drm_fb_helper_alloc_info() from drivers into a
single place in fbdev helpers. Allocates struct fb_info for a new
framebuffer device. Then call drm_fb_helper_single_fb_probe() to
create an fbdev screen buffer. Also release the instance on errors
by calling drm_fb_helper_release_info().

Simplifies the code and fixes the error cleanup for some of the
drivers.

Regular release of the struct fb_info instance still happens in
drm_fb_helper_fini() as before.

v2:
- remove error rollback in driver implementations (kernel test robot)
- initialize info in TTM implementation (kernel test robot)

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Christian König <christian.koenig@amd.com> # radeon
Acked-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> # msm
Acked-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patch.msgid.link/20251027081245.80262-1-tzimmermann@suse.de
2025-11-25 11:02:43 +01:00
..
Kconfig
Makefile
exynos7_drm_decon.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos5433_drm_decon.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_dp.c
exynos_drm_crtc.c
exynos_drm_crtc.h
exynos_drm_dma.c
exynos_drm_dpi.c
exynos_drm_drv.c
exynos_drm_drv.h
exynos_drm_dsi.c drm/exynos: dsi: add support for exynos7870 2025-09-15 20:19:23 +09:00
exynos_drm_fb.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_drm_fb.h drm/exynos: Pass along the format info from .fb_create() to drm_helper_mode_fill_fb_struct() 2025-07-16 20:07:55 +03:00
exynos_drm_fbdev.c drm/fb-helper: Allocate and release fb_info in single place 2025-11-25 11:02:43 +01:00
exynos_drm_fbdev.h
exynos_drm_fimc.c
exynos_drm_fimd.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_drm_g2d.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_drm_g2d.h
exynos_drm_gem.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_drm_gem.h
exynos_drm_gsc.c
exynos_drm_ipp.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_drm_ipp.h
exynos_drm_mic.c
exynos_drm_plane.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_drm_plane.h
exynos_drm_rotator.c
exynos_drm_scaler.c
exynos_drm_vidi.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
exynos_drm_vidi.h
exynos_hdmi.c
exynos_mixer.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
regs-decon7.h
regs-decon5433.h
regs-fimc.h
regs-gsc.h
regs-hdmi.h
regs-mixer.h
regs-rotator.h
regs-scaler.h
regs-vp.h