Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 092d01da authored by Daniel Vetter's avatar Daniel Vetter
Browse files

drm: Reorganize helper vtables and their docs



Currently we have 4 helper libraries (probe, crtc, plane & atomic)
that all use the same helper vtables. And that's by necessity since we
don't want to litter the core structs with one ops pointer per helper
library. Also often the reuse the same hooks (like atomic does, to
facilite conversion from existing drivers using crtc and plane
helpers).

Given all that it doesn't make sense to put the docs for these next to
specific helpers. Instead extract them into a new header file and
section in the docbook, and add references to them everywhere.

Unfortunately kernel-doc complains when an include directive doesn't
find anything (and it does by dumping crap into the output file). We
have to remove the now empty includes to avoid that, instead of leaving
them in for future proofing.

v2: More OCD in ordering functions.

v3: Spelling plus collate copyright headers properly.

Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1449218769-16577-4-git-send-email-daniel.vetter@ffwll.ch


Reviewed-by: default avatarThierry Reding <treding@nvidia.com>
parent b516a9ef
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -2301,10 +2301,14 @@ void intel_crt_init(struct drm_device *dev)
      </sect3>
!Iinclude/drm/drm_atomic_helper.h
!Edrivers/gpu/drm/drm_atomic_helper.c
    </sect2>
    <sect2>
      <title>Modeset Helper Reference for Common Vtables</title>
!Iinclude/drm/drm_modeset_helper_vtables.h
!Pinclude/drm/drm_modeset_helper_vtables.h overview
    </sect2>
    <sect2>
      <title>Modeset Helper Functions Reference</title>
!Iinclude/drm/drm_crtc_helper.h
!Edrivers/gpu/drm/drm_crtc_helper.c
!Pdrivers/gpu/drm/drm_crtc_helper.c overview
    </sect2>
+6 −0
Original line number Diff line number Diff line
@@ -52,6 +52,12 @@
 * drm_atomic_helper_disable_plane(), drm_atomic_helper_disable_plane() and the
 * various functions to implement set_property callbacks. New drivers must not
 * implement these functions themselves but must use the provided helpers.
 *
 * The atomic helper uses the same function table structures as all other
 * modesetting helpers. See the documentation for struct &drm_crtc_helper_funcs,
 * struct &drm_encoder_helper_funcs and struct &drm_connector_helper_funcs. It
 * also shares the struct &drm_plane_helper_funcs function table with the plane
 * helpers.
 */
static void
drm_atomic_helper_plane_changed(struct drm_atomic_state *state,
+5 −0
Original line number Diff line number Diff line
@@ -62,6 +62,11 @@
 * converting to the plane helpers). New drivers must not use these functions
 * but need to implement the atomic interface instead, potentially using the
 * atomic helpers for that.
 *
 * These legacy modeset helpers use the same function table structures as
 * all other modesetting helpers. See the documentation for struct
 * &drm_crtc_helper_funcs, struct &drm_encoder_helper_funcs and struct
 * &drm_connector_helper_funcs.
 */
MODULE_AUTHOR("David Airlie, Jesse Barnes");
MODULE_DESCRIPTION("DRM KMS helper");
+4 −0
Original line number Diff line number Diff line
@@ -57,6 +57,10 @@
 * by the atomic helpers.
 *
 * Again drivers are strongly urged to switch to the new interfaces.
 *
 * The plane helpers share the function table structures with other helpers,
 * specifically also the atomic helpers. See struct &drm_plane_helper_funcs for
 * the details.
 */

/*
+3 −0
Original line number Diff line number Diff line
@@ -53,6 +53,9 @@
 * This helper library can be used independently of the modeset helper library.
 * Drivers can also overwrite different parts e.g. use their own hotplug
 * handling code to avoid probing unrelated outputs.
 *
 * The probe helpers share the function table structures with other display
 * helper libraries. See struct &drm_connector_helper_funcs for the details.
 */

static bool drm_kms_helper_poll = true;
Loading