mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
drm/simple-kms: Deprecate simple-kms helpers
Deprecate simple-encoder and simple-display-pipe helpers in favor of regular atomic helpers. Remove the related documentation. Add TODO item for converting the remaining drivers. These helpers have been deprecated for years and many drivers have been updated to not use them. Still there are a few left and we occasionally receive new drivers build upon them. Marking them as deprecated will hopefully resolve these problems. The TODO items should be easy enough for getting new voluteers started on DRM driver development. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Acked-by: David Lechner <david@lechnology.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://patch.msgid.link/20260319160110.109610-17-tzimmermann@suse.de
This commit is contained in:
@@ -104,18 +104,6 @@ VBLANK Helper Reference
|
||||
.. kernel-doc:: drivers/gpu/drm/drm_vblank_helper.c
|
||||
:export:
|
||||
|
||||
Simple KMS Helper Reference
|
||||
===========================
|
||||
|
||||
.. kernel-doc:: drivers/gpu/drm/drm_simple_kms_helper.c
|
||||
:doc: overview
|
||||
|
||||
.. kernel-doc:: include/drm/drm_simple_kms_helper.h
|
||||
:internal:
|
||||
|
||||
.. kernel-doc:: drivers/gpu/drm/drm_simple_kms_helper.c
|
||||
:export:
|
||||
|
||||
fbdev Helper Functions Reference
|
||||
================================
|
||||
|
||||
|
||||
@@ -119,12 +119,6 @@ Simple DRM drivers to use as examples
|
||||
The DRM subsystem contains a lot of helper functions to ease writing drivers for
|
||||
simple graphic devices. For example, the `drivers/gpu/drm/tiny/` directory has a
|
||||
set of drivers that are simple enough to be implemented in a single source file.
|
||||
|
||||
These drivers make use of the `struct drm_simple_display_pipe_funcs`, that hides
|
||||
any complexity of the DRM subsystem and just requires drivers to implement a few
|
||||
functions needed to operate the device. This could be used for devices that just
|
||||
need a display pipeline with one full-screen scanout buffer feeding one output.
|
||||
|
||||
The tiny DRM drivers are good examples to understand how DRM drivers should look
|
||||
like. Since are just a few hundreds lines of code, they are quite easy to read.
|
||||
|
||||
|
||||
@@ -29,6 +29,38 @@ refactorings already and are an expert in the specific area
|
||||
Subsystem-wide refactorings
|
||||
===========================
|
||||
|
||||
Open-code drm_simple_encoder_init()
|
||||
-----------------------------------
|
||||
|
||||
The helper drm_simple_encoder_init() was supposed to simplify encoder
|
||||
initialization. Instead it only added an intermediate layer between atomic
|
||||
modesetting and the DRM driver.
|
||||
|
||||
The task here is to remove drm_simple_encoder_init(). Search for a driver
|
||||
that calls drm_simple_encoder_init() and inline the helper. The driver will
|
||||
also need its own instance of drm_encoder_funcs.
|
||||
|
||||
Contact: Thomas Zimmermann, respective driver maintainer
|
||||
|
||||
Level: Easy
|
||||
|
||||
Replace struct drm_simple_display_pipe with regular atomic helpers
|
||||
------------------------------------------------------------------
|
||||
|
||||
The data type struct drm_simple_display_pipe and its helpers were supposed
|
||||
to simplify driver development. Instead they only added an intermediate layer
|
||||
between atomic modesetting and the DRM driver.
|
||||
|
||||
There are still drivers that use drm_simple_display_pipe. The task here is to
|
||||
convert them to use regular atomic helpers. Search for a driver that calls
|
||||
drm_simple_display_pipe_init() and inline all helpers from drm_simple_kms_helper.c
|
||||
into the driver, such that no simple-KMS interfaces are required. Please also
|
||||
rename all inlined fucntions according to driver conventions.
|
||||
|
||||
Contact: Thomas Zimmermann, respective driver maintainer
|
||||
|
||||
Level: Easy
|
||||
|
||||
Remove custom dumb_map_offset implementations
|
||||
---------------------------------------------
|
||||
|
||||
|
||||
Reference in New Issue
Block a user