drm/doc: Move legacy kms helpers to the very end

We don't want people to accidentally stumble over there.

Also rename the plane helpers to legacy plane helpers. After Ville's
patch to make the clipping helper atomic and move it to
drm_atomic_helper.c there's nothing left in there that should be
useful for modern drivers.

v2: Laurent had a few questions around how state is added to
drm_atomic_state, tried to clarify that. And spotted another sentence
where the docs suggested subclassing.

v3: Small polish (Alex).

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171214203054.20141-6-daniel.vetter@ffwll.ch
This commit is contained in:
Daniel Vetter 2017-12-14 21:30:54 +01:00
parent da6c059697
commit 5fca5ece6a
3 changed files with 26 additions and 22 deletions

View File

@ -74,15 +74,6 @@ Helper Functions Reference
.. kernel-doc:: drivers/gpu/drm/drm_atomic_helper.c .. kernel-doc:: drivers/gpu/drm/drm_atomic_helper.c
:export: :export:
Legacy CRTC/Modeset Helper Functions Reference
==============================================
.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
:doc: overview
.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
:export:
Simple KMS Helper Reference Simple KMS Helper Reference
=========================== ===========================
@ -282,15 +273,6 @@ Flip-work Helper Reference
.. kernel-doc:: drivers/gpu/drm/drm_flip_work.c .. kernel-doc:: drivers/gpu/drm/drm_flip_work.c
:export: :export:
Plane Helper Reference
======================
.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
:doc: overview
.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
:export:
Auxiliary Modeset Helpers Auxiliary Modeset Helpers
========================= =========================
@ -308,3 +290,21 @@ Framebuffer GEM Helper Reference
.. kernel-doc:: drivers/gpu/drm/drm_gem_framebuffer_helper.c .. kernel-doc:: drivers/gpu/drm/drm_gem_framebuffer_helper.c
:export: :export:
Legacy Plane Helper Reference
=============================
.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
:doc: overview
.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
:export:
Legacy CRTC/Modeset Helper Functions Reference
==============================================
.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
:doc: overview
.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
:export:

View File

@ -263,10 +263,10 @@ Taken all together there's two consequences for the atomic design:
- An atomic update is assembled and validated as an entirely free-standing pile - An atomic update is assembled and validated as an entirely free-standing pile
of structures within the :c:type:`drm_atomic_state <drm_atomic_state>` of structures within the :c:type:`drm_atomic_state <drm_atomic_state>`
container. Again drivers can subclass that container for their own state container. Driver private state structures are also tracked in the same
structure tracking needs. Only when a state is committed is it applied to the structure; see the next chapter. Only when a state is committed is it applied
driver and modeset objects. This way rolling back an update boils down to to the driver and modeset objects. This way rolling back an update boils down
releasing memory and unreferencing objects like framebuffers. to releasing memory and unreferencing objects like framebuffers.
Read on in this chapter, and also in :ref:`drm_atomic_helper` for more detailed Read on in this chapter, and also in :ref:`drm_atomic_helper` for more detailed
coverage of specific topics. coverage of specific topics.

View File

@ -246,6 +246,10 @@ struct __drm_private_objs_state {
* @num_private_objs: size of the @private_objs array * @num_private_objs: size of the @private_objs array
* @private_objs: pointer to array of private object pointers * @private_objs: pointer to array of private object pointers
* @acquire_ctx: acquire context for this atomic modeset state update * @acquire_ctx: acquire context for this atomic modeset state update
*
* States are added to an atomic update by calling drm_atomic_get_crtc_state(),
* drm_atomic_get_plane_state(), drm_atomic_get_connector_state(), or for
* private state structures, drm_atomic_get_private_obj_state().
*/ */
struct drm_atomic_state { struct drm_atomic_state {
struct kref ref; struct kref ref;