Commit 6806cdf9 authored by Daniel Vetter's avatar Daniel Vetter

drm/kms-helpers: Use recommened kerneldoc for struct member refs

I just learned that &struct_name.member_name works and looks pretty
even. It doesn't (yet) link to the member directly though, which would
be really good for big structures or vfunc tables (where the
per-member kerneldoc tends to be long).

Also some minor drive-by polish where it makes sense, I read a lot
of docs ...

v2: Comments from Gustavo.

Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Rewiewed-by: default avatarGustavo Padovan <gustavo.padovan@collabora.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170125062657.19270-2-daniel.vetter@ffwll.ch
parent 7b0a89a6
This diff is collapsed.
...@@ -53,9 +53,9 @@ ...@@ -53,9 +53,9 @@
* configuration on resume with drm_helper_resume_force_mode(). * configuration on resume with drm_helper_resume_force_mode().
* *
* Note that this helper library doesn't track the current power state of CRTCs * Note that this helper library doesn't track the current power state of CRTCs
* and encoders. It can call callbacks like ->dpms() even though the hardware is * and encoders. It can call callbacks like &drm_encoder_helper_funcs.dpms even
* already in the desired state. This deficiency has been fixed in the atomic * though the hardware is already in the desired state. This deficiency has been
* helpers. * fixed in the atomic helpers.
* *
* The driver callbacks are mostly compatible with the atomic modeset helpers, * The driver callbacks are mostly compatible with the atomic modeset helpers,
* except for the handling of the primary plane: Atomic helpers require that the * except for the handling of the primary plane: Atomic helpers require that the
...@@ -477,12 +477,12 @@ drm_crtc_helper_disable(struct drm_crtc *crtc) ...@@ -477,12 +477,12 @@ drm_crtc_helper_disable(struct drm_crtc *crtc)
* drm_crtc_helper_set_config - set a new config from userspace * drm_crtc_helper_set_config - set a new config from userspace
* @set: mode set configuration * @set: mode set configuration
* *
* The drm_crtc_helper_set_config() helper function implements the set_config * The drm_crtc_helper_set_config() helper function implements the of
* callback of &struct drm_crtc_funcs for drivers using the legacy CRTC helpers. * &drm_crtc_funcs.set_config callback for drivers using the legacy CRTC
* helpers.
* *
* It first tries to locate the best encoder for each connector by calling the * It first tries to locate the best encoder for each connector by calling the
* connector ->best_encoder() (&struct drm_connector_helper_funcs) helper * connector @drm_connector_helper_funcs.best_encoder helper operation.
* operation.
* *
* After locating the appropriate encoders, the helper function will call the * After locating the appropriate encoders, the helper function will call the
* mode_fixup encoder and CRTC helper operations to adjust the requested mode, * mode_fixup encoder and CRTC helper operations to adjust the requested mode,
...@@ -493,8 +493,7 @@ drm_crtc_helper_disable(struct drm_crtc *crtc) ...@@ -493,8 +493,7 @@ drm_crtc_helper_disable(struct drm_crtc *crtc)
* *
* If the adjusted mode is identical to the current mode but changes to the * If the adjusted mode is identical to the current mode but changes to the
* frame buffer need to be applied, the drm_crtc_helper_set_config() function * frame buffer need to be applied, the drm_crtc_helper_set_config() function
* will call the CRTC ->mode_set_base() (&struct drm_crtc_helper_funcs) helper * will call the CRTC &drm_crtc_helper_funcs.mode_set_base helper operation.
* operation.
* *
* If the adjusted mode differs from the current mode, or if the * If the adjusted mode differs from the current mode, or if the
* ->mode_set_base() helper operation is not provided, the helper function * ->mode_set_base() helper operation is not provided, the helper function
...@@ -851,14 +850,15 @@ static int drm_helper_choose_crtc_dpms(struct drm_crtc *crtc) ...@@ -851,14 +850,15 @@ static int drm_helper_choose_crtc_dpms(struct drm_crtc *crtc)
* @connector: affected connector * @connector: affected connector
* @mode: DPMS mode * @mode: DPMS mode
* *
* The drm_helper_connector_dpms() helper function implements the ->dpms() * The drm_helper_connector_dpms() helper function implements the
* callback of &struct drm_connector_funcs for drivers using the legacy CRTC helpers. * &drm_connector_funcs.dpms callback for drivers using the legacy CRTC
* helpers.
* *
* This is the main helper function provided by the CRTC helper framework for * This is the main helper function provided by the CRTC helper framework for
* implementing the DPMS connector attribute. It computes the new desired DPMS * implementing the DPMS connector attribute. It computes the new desired DPMS
* state for all encoders and CRTCs in the output mesh and calls the ->dpms() * state for all encoders and CRTCs in the output mesh and calls the
* callbacks provided by the driver in &struct drm_crtc_helper_funcs and struct * &drm_crtc_helper_funcs.dpms and &drm_encoder_helper_funcs.dpms callbacks
* &drm_encoder_helper_funcs appropriately. * provided by the driver.
* *
* This function is deprecated. New drivers must implement atomic modeset * This function is deprecated. New drivers must implement atomic modeset
* support, for which this function is unsuitable. Instead drivers should use * support, for which this function is unsuitable. Instead drivers should use
......
...@@ -725,7 +725,7 @@ MODULE_PARM_DESC(dp_aux_i2c_speed_khz, ...@@ -725,7 +725,7 @@ MODULE_PARM_DESC(dp_aux_i2c_speed_khz,
/* /*
* Transfer a single I2C-over-AUX message and handle various error conditions, * Transfer a single I2C-over-AUX message and handle various error conditions,
* retrying the transaction as appropriate. It is assumed that the * retrying the transaction as appropriate. It is assumed that the
* aux->transfer function does not modify anything in the msg other than the * &drm_dp_aux.transfer function does not modify anything in the msg other than the
* reply field. * reply field.
* *
* Returns bytes transferred on success, or a negative error code on failure. * Returns bytes transferred on success, or a negative error code on failure.
......
...@@ -66,11 +66,11 @@ static DEFINE_MUTEX(kernel_fb_helper_lock); ...@@ -66,11 +66,11 @@ static DEFINE_MUTEX(kernel_fb_helper_lock);
* Teardown is done with drm_fb_helper_fini(). * Teardown is done with drm_fb_helper_fini().
* *
* At runtime drivers should restore the fbdev console by calling * At runtime drivers should restore the fbdev console by calling
* drm_fb_helper_restore_fbdev_mode_unlocked() from their ->lastclose callback. * drm_fb_helper_restore_fbdev_mode_unlocked() from their &drm_driver.lastclose
* They should also notify the fb helper code from updates to the output * callback. They should also notify the fb helper code from updates to the
* configuration by calling drm_fb_helper_hotplug_event(). For easier * output configuration by calling drm_fb_helper_hotplug_event(). For easier
* integration with the output polling code in drm_crtc_helper.c the modeset * integration with the output polling code in drm_crtc_helper.c the modeset
* code provides a ->output_poll_changed callback. * code provides a &drm_mode_config_funcs.output_poll_changed callback.
* *
* All other functions exported by the fb helper library can be used to * All other functions exported by the fb helper library can be used to
* implement the fbdev driver interface by the driver. * implement the fbdev driver interface by the driver.
...@@ -79,7 +79,7 @@ static DEFINE_MUTEX(kernel_fb_helper_lock); ...@@ -79,7 +79,7 @@ static DEFINE_MUTEX(kernel_fb_helper_lock);
* hotplug detection using the fbdev helpers. The drm_fb_helper_prepare() * hotplug detection using the fbdev helpers. The drm_fb_helper_prepare()
* helper must be called first to initialize the minimum required to make * helper must be called first to initialize the minimum required to make
* hotplug detection work. Drivers also need to make sure to properly set up * hotplug detection work. Drivers also need to make sure to properly set up
* the dev->mode_config.funcs member. After calling drm_kms_helper_poll_init() * the &drm_mode_config.funcs member. After calling drm_kms_helper_poll_init()
* it is safe to enable interrupts and start processing hotplug events. At the * it is safe to enable interrupts and start processing hotplug events. At the
* same time, drivers should initialize all modeset objects such as CRTCs, * same time, drivers should initialize all modeset objects such as CRTCs,
* encoders and connectors. To finish up the fbdev helper initialization, the * encoders and connectors. To finish up the fbdev helper initialization, the
...@@ -88,9 +88,9 @@ static DEFINE_MUTEX(kernel_fb_helper_lock); ...@@ -88,9 +88,9 @@ static DEFINE_MUTEX(kernel_fb_helper_lock);
* should call drm_fb_helper_single_add_all_connectors() followed by * should call drm_fb_helper_single_add_all_connectors() followed by
* drm_fb_helper_initial_config(). * drm_fb_helper_initial_config().
* *
* If &drm_framebuffer_funcs ->dirty is set, the * If &drm_framebuffer_funcs.dirty is set, the
* drm_fb_helper_{cfb,sys}_{write,fillrect,copyarea,imageblit} functions will * drm_fb_helper_{cfb,sys}_{write,fillrect,copyarea,imageblit} functions will
* accumulate changes and schedule &drm_fb_helper ->dirty_work to run right * accumulate changes and schedule &drm_fb_helper.dirty_work to run right
* away. This worker then calls the dirty() function ensuring that it will * away. This worker then calls the dirty() function ensuring that it will
* always run in process context since the fb_*() function could be running in * always run in process context since the fb_*() function could be running in
* atomic context. If drm_fb_helper_deferred_io() is used as the deferred_io * atomic context. If drm_fb_helper_deferred_io() is used as the deferred_io
...@@ -247,7 +247,7 @@ static void drm_fb_helper_restore_lut_atomic(struct drm_crtc *crtc) ...@@ -247,7 +247,7 @@ static void drm_fb_helper_restore_lut_atomic(struct drm_crtc *crtc)
} }
/** /**
* drm_fb_helper_debug_enter - implementation for ->fb_debug_enter * drm_fb_helper_debug_enter - implementation for &fb_ops.fb_debug_enter
* @info: fbdev registered by the helper * @info: fbdev registered by the helper
*/ */
int drm_fb_helper_debug_enter(struct fb_info *info) int drm_fb_helper_debug_enter(struct fb_info *info)
...@@ -296,7 +296,7 @@ static struct drm_framebuffer *drm_mode_config_fb(struct drm_crtc *crtc) ...@@ -296,7 +296,7 @@ static struct drm_framebuffer *drm_mode_config_fb(struct drm_crtc *crtc)
} }
/** /**
* drm_fb_helper_debug_leave - implementation for ->fb_debug_leave * drm_fb_helper_debug_leave - implementation for &fb_ops.fb_debug_leave
* @info: fbdev registered by the helper * @info: fbdev registered by the helper
*/ */
int drm_fb_helper_debug_leave(struct fb_info *info) int drm_fb_helper_debug_leave(struct fb_info *info)
...@@ -445,7 +445,7 @@ static int restore_fbdev_mode(struct drm_fb_helper *fb_helper) ...@@ -445,7 +445,7 @@ static int restore_fbdev_mode(struct drm_fb_helper *fb_helper)
* drm_fb_helper_restore_fbdev_mode_unlocked - restore fbdev configuration * drm_fb_helper_restore_fbdev_mode_unlocked - restore fbdev configuration
* @fb_helper: fbcon to restore * @fb_helper: fbcon to restore
* *
* This should be called from driver's drm ->lastclose callback * This should be called from driver's drm &drm_driver.lastclose callback
* when implementing an fbcon on top of kms using this helper. This ensures that * when implementing an fbcon on top of kms using this helper. This ensures that
* the user isn't greeted with a black screen when e.g. X dies. * the user isn't greeted with a black screen when e.g. X dies.
* *
...@@ -585,7 +585,7 @@ static void drm_fb_helper_dpms(struct fb_info *info, int dpms_mode) ...@@ -585,7 +585,7 @@ static void drm_fb_helper_dpms(struct fb_info *info, int dpms_mode)
} }
/** /**
* drm_fb_helper_blank - implementation for ->fb_blank * drm_fb_helper_blank - implementation for &fb_ops.fb_blank
* @blank: desired blanking state * @blank: desired blanking state
* @info: fbdev registered by the helper * @info: fbdev registered by the helper
*/ */
...@@ -912,7 +912,7 @@ static void drm_fb_helper_dirty(struct fb_info *info, u32 x, u32 y, ...@@ -912,7 +912,7 @@ static void drm_fb_helper_dirty(struct fb_info *info, u32 x, u32 y,
* @info: fb_info struct pointer * @info: fb_info struct pointer
* @pagelist: list of dirty mmap framebuffer pages * @pagelist: list of dirty mmap framebuffer pages
* *
* This function is used as the &fb_deferred_io ->deferred_io * This function is used as the &fb_deferred_io.deferred_io
* callback function for flushing the fbdev mmap writes. * callback function for flushing the fbdev mmap writes.
*/ */
void drm_fb_helper_deferred_io(struct fb_info *info, void drm_fb_helper_deferred_io(struct fb_info *info,
...@@ -1103,7 +1103,7 @@ EXPORT_SYMBOL(drm_fb_helper_set_suspend); ...@@ -1103,7 +1103,7 @@ EXPORT_SYMBOL(drm_fb_helper_set_suspend);
* due to all the printk activity. * due to all the printk activity.
* *
* This function can be called multiple times with the same state since * This function can be called multiple times with the same state since
* &fb_info->state is checked to see if fbdev is running or not before locking. * &fb_info.state is checked to see if fbdev is running or not before locking.
* *
* Use drm_fb_helper_set_suspend() if you need to take the lock yourself. * Use drm_fb_helper_set_suspend() if you need to take the lock yourself.
*/ */
...@@ -1181,7 +1181,7 @@ static int setcolreg(struct drm_crtc *crtc, u16 red, u16 green, ...@@ -1181,7 +1181,7 @@ static int setcolreg(struct drm_crtc *crtc, u16 red, u16 green,
} }
/** /**
* drm_fb_helper_setcmap - implementation for ->fb_setcmap * drm_fb_helper_setcmap - implementation for &fb_ops.fb_setcmap
* @cmap: cmap to set * @cmap: cmap to set
* @info: fbdev registered by the helper * @info: fbdev registered by the helper
*/ */
...@@ -1238,7 +1238,7 @@ int drm_fb_helper_setcmap(struct fb_cmap *cmap, struct fb_info *info) ...@@ -1238,7 +1238,7 @@ int drm_fb_helper_setcmap(struct fb_cmap *cmap, struct fb_info *info)
EXPORT_SYMBOL(drm_fb_helper_setcmap); EXPORT_SYMBOL(drm_fb_helper_setcmap);
/** /**
* drm_fb_helper_check_var - implementation for ->fb_check_var * drm_fb_helper_check_var - implementation for &fb_ops.fb_check_var
* @var: screeninfo to check * @var: screeninfo to check
* @info: fbdev registered by the helper * @info: fbdev registered by the helper
*/ */
...@@ -1338,7 +1338,7 @@ int drm_fb_helper_check_var(struct fb_var_screeninfo *var, ...@@ -1338,7 +1338,7 @@ int drm_fb_helper_check_var(struct fb_var_screeninfo *var,
EXPORT_SYMBOL(drm_fb_helper_check_var); EXPORT_SYMBOL(drm_fb_helper_check_var);
/** /**
* drm_fb_helper_set_par - implementation for ->fb_set_par * drm_fb_helper_set_par - implementation for &fb_ops.fb_set_par
* @info: fbdev registered by the helper * @info: fbdev registered by the helper
* *
* This will let fbcon do the mode init and is called at initialization time by * This will let fbcon do the mode init and is called at initialization time by
...@@ -1422,7 +1422,7 @@ static int pan_display_atomic(struct fb_var_screeninfo *var, ...@@ -1422,7 +1422,7 @@ static int pan_display_atomic(struct fb_var_screeninfo *var,
} }
/** /**
* drm_fb_helper_pan_display - implementation for ->fb_pan_display * drm_fb_helper_pan_display - implementation for &fb_ops.fb_pan_display
* @var: updated screen information * @var: updated screen information
* @info: fbdev registered by the helper * @info: fbdev registered by the helper
*/ */
...@@ -1607,7 +1607,7 @@ static int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_helper, ...@@ -1607,7 +1607,7 @@ static int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_helper,
* additional constraints need to set up their own limits. * additional constraints need to set up their own limits.
* *
* Drivers should call this (or their equivalent setup code) from their * Drivers should call this (or their equivalent setup code) from their
* ->fb_probe callback. * &drm_fb_helper_funcs.fb_probe callback.
*/ */
void drm_fb_helper_fill_fix(struct fb_info *info, uint32_t pitch, void drm_fb_helper_fill_fix(struct fb_info *info, uint32_t pitch,
uint32_t depth) uint32_t depth)
...@@ -1636,11 +1636,11 @@ EXPORT_SYMBOL(drm_fb_helper_fill_fix); ...@@ -1636,11 +1636,11 @@ EXPORT_SYMBOL(drm_fb_helper_fill_fix);
* @fb_height: desired fb height * @fb_height: desired fb height
* *
* Sets up the variable fbdev metainformation from the given fb helper instance * Sets up the variable fbdev metainformation from the given fb helper instance
* and the drm framebuffer allocated in fb_helper->fb. * and the drm framebuffer allocated in &drm_fb_helper.fb.
* *
* Drivers should call this (or their equivalent setup code) from their * Drivers should call this (or their equivalent setup code) from their
* ->fb_probe callback after having allocated the fbdev backing * &drm_fb_helper_funcs.fb_probe callback after having allocated the fbdev
* storage framebuffer. * backing storage framebuffer.
*/ */
void drm_fb_helper_fill_var(struct fb_info *info, struct drm_fb_helper *fb_helper, void drm_fb_helper_fill_var(struct fb_info *info, struct drm_fb_helper *fb_helper,
uint32_t fb_width, uint32_t fb_height) uint32_t fb_width, uint32_t fb_height)
...@@ -2207,9 +2207,9 @@ static void drm_setup_crtcs(struct drm_fb_helper *fb_helper, ...@@ -2207,9 +2207,9 @@ static void drm_setup_crtcs(struct drm_fb_helper *fb_helper,
* Note that this also registers the fbdev and so allows userspace to call into * Note that this also registers the fbdev and so allows userspace to call into
* the driver through the fbdev interfaces. * the driver through the fbdev interfaces.
* *
* This function will call down into the ->fb_probe callback to let * This function will call down into the &drm_fb_helper_funcs.fb_probe callback
* the driver allocate and initialize the fbdev info structure and the drm * to let the driver allocate and initialize the fbdev info structure and the
* framebuffer used to back the fbdev. drm_fb_helper_fill_var() and * drm framebuffer used to back the fbdev. drm_fb_helper_fill_var() and
* drm_fb_helper_fill_fix() are provided as helpers to setup simple default * drm_fb_helper_fill_fix() are provided as helpers to setup simple default
* values for the fbdev info structure. * values for the fbdev info structure.
* *
......
...@@ -39,9 +39,9 @@ ...@@ -39,9 +39,9 @@
* *
* This helper library has two parts. The first part has support to implement * This helper library has two parts. The first part has support to implement
* primary plane support on top of the normal CRTC configuration interface. * primary plane support on top of the normal CRTC configuration interface.
* Since the legacy ->set_config interface ties the primary plane together with * Since the legacy &drm_mode_config_funcs.set_config interface ties the primary
* the CRTC state this does not allow userspace to disable the primary plane * plane together with the CRTC state this does not allow userspace to disable
* itself. To avoid too much duplicated code use * the primary plane itself. To avoid too much duplicated code use
* drm_plane_helper_check_update() which can be used to enforce the same * drm_plane_helper_check_update() which can be used to enforce the same
* restrictions as primary planes had thus. The default primary plane only * restrictions as primary planes had thus. The default primary plane only
* expose XRBG8888 and ARGB8888 as valid pixel formats for the attached * expose XRBG8888 and ARGB8888 as valid pixel formats for the attached
...@@ -384,7 +384,8 @@ EXPORT_SYMBOL(drm_primary_helper_update); ...@@ -384,7 +384,8 @@ EXPORT_SYMBOL(drm_primary_helper_update);
* is called in response to a userspace SetPlane operation on the plane with a * is called in response to a userspace SetPlane operation on the plane with a
* NULL framebuffer parameter. It unconditionally fails the disable call with * NULL framebuffer parameter. It unconditionally fails the disable call with
* -EINVAL the only way to disable the primary plane without driver support is * -EINVAL the only way to disable the primary plane without driver support is
* to disable the entier CRTC. Which does not match the plane ->disable hook. * to disable the entire CRTC. Which does not match the plane
* &drm_plane_funcs.disable_plane hook.
* *
* Note that some hardware may be able to disable the primary plane without * Note that some hardware may be able to disable the primary plane without
* disabling the whole CRTC. Drivers for such hardware should provide their * disabling the whole CRTC. Drivers for such hardware should provide their
......
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
* DOC: output probing helper overview * DOC: output probing helper overview
* *
* This library provides some helper code for output probing. It provides an * This library provides some helper code for output probing. It provides an
* implementation of the core connector->fill_modes interface with * implementation of the core &drm_connector_funcs.fill_modes interface with
* drm_helper_probe_single_connector_modes. * drm_helper_probe_single_connector_modes.
* *
* It also provides support for polling connectors with a work item and for * It also provides support for polling connectors with a work item and for
...@@ -174,9 +174,9 @@ drm_connector_detect(struct drm_connector *connector, bool force) ...@@ -174,9 +174,9 @@ drm_connector_detect(struct drm_connector *connector, bool force)
* be added to the connector's probed_modes list, then culled (based on validity * be added to the connector's probed_modes list, then culled (based on validity
* and the @maxX, @maxY parameters) and put into the normal modes list. * and the @maxX, @maxY parameters) and put into the normal modes list.
* *
* Intended to be used as a generic implementation of the ->fill_modes() * Intended to be used as a generic implementation of the
* @connector vfunc for drivers that use the CRTC helpers for output mode * &drm_connector_funcs.fill_modes() vfunc for drivers that use the CRTC helpers
* filtering and detection. * for output mode filtering and detection.
* *
* The basic procedure is as follows * The basic procedure is as follows
* *
...@@ -188,7 +188,7 @@ drm_connector_detect(struct drm_connector *connector, bool force) ...@@ -188,7 +188,7 @@ drm_connector_detect(struct drm_connector *connector, bool force)
* *
* - debugfs 'override_edid' (used for testing only) * - debugfs 'override_edid' (used for testing only)
* - firmware EDID (drm_load_edid_firmware()) * - firmware EDID (drm_load_edid_firmware())
* - connector helper ->get_modes() vfunc * - &drm_connector_helper_funcs.get_modes vfunc
* - if the connector status is connector_status_connected, standard * - if the connector status is connector_status_connected, standard
* VESA DMT modes up to 1024x768 are automatically added * VESA DMT modes up to 1024x768 are automatically added
* (drm_add_modes_noedid()) * (drm_add_modes_noedid())
...@@ -209,8 +209,8 @@ drm_connector_detect(struct drm_connector *connector, bool force) ...@@ -209,8 +209,8 @@ drm_connector_detect(struct drm_connector *connector, bool force)
* (if specified) * (if specified)
* - drm_mode_validate_flag() checks the modes againt basic connector * - drm_mode_validate_flag() checks the modes againt basic connector
* capabilites (interlace_allowed,doublescan_allowed,stereo_allowed) * capabilites (interlace_allowed,doublescan_allowed,stereo_allowed)
* - the optional connector ->mode_valid() helper can perform driver and/or * - the optional &drm_connector_helper_funcs.mode_valid helper can perform
* hardware specific checks * driver and/or hardware specific checks
* *
* 5. Any mode whose status is not OK is pruned from the connector's modes list, * 5. Any mode whose status is not OK is pruned from the connector's modes list,
* accompanied by a debug message indicating the reason for the mode's * accompanied by a debug message indicating the reason for the mode's
......
...@@ -177,7 +177,8 @@ int drm_atomic_helper_legacy_gamma_set(struct drm_crtc *crtc, ...@@ -177,7 +177,8 @@ int drm_atomic_helper_legacy_gamma_set(struct drm_crtc *crtc,
* *
* This iterates over the current state, useful (for example) when applying * This iterates over the current state, useful (for example) when applying
* atomic state after it has been checked and swapped. To iterate over the * atomic state after it has been checked and swapped. To iterate over the
* planes which *will* be attached (for ->atomic_check()) see * planes which *will* be attached (more useful in code called from
* &drm_mode_config_funcs.atomic_check) see
* drm_atomic_crtc_state_for_each_plane(). * drm_atomic_crtc_state_for_each_plane().
*/ */
#define drm_atomic_crtc_for_each_plane(plane, crtc) \ #define drm_atomic_crtc_for_each_plane(plane, crtc) \
...@@ -189,8 +190,9 @@ int drm_atomic_helper_legacy_gamma_set(struct drm_crtc *crtc, ...@@ -189,8 +190,9 @@ int drm_atomic_helper_legacy_gamma_set(struct drm_crtc *crtc,
* @crtc_state: the incoming crtc-state * @crtc_state: the incoming crtc-state
* *
* Similar to drm_crtc_for_each_plane(), but iterates the planes that will be * Similar to drm_crtc_for_each_plane(), but iterates the planes that will be
* attached if the specified state is applied. Useful during (for example) * attached if the specified state is applied. Useful during for example
* ->atomic_check() operations, to validate the incoming state. * in code called from &drm_mode_config_funcs.atomic_check operations, to
* validate the incoming state.
*/ */
#define drm_atomic_crtc_state_for_each_plane(plane, crtc_state) \ #define drm_atomic_crtc_state_for_each_plane(plane, crtc_state) \
drm_for_each_plane_mask(plane, (crtc_state)->state->dev, (crtc_state)->plane_mask) drm_for_each_plane_mask(plane, (crtc_state)->state->dev, (crtc_state)->plane_mask)
...@@ -202,8 +204,9 @@ int drm_atomic_helper_legacy_gamma_set(struct drm_crtc *crtc, ...@@ -202,8 +204,9 @@ int drm_atomic_helper_legacy_gamma_set(struct drm_crtc *crtc,
* @crtc_state: the incoming crtc-state * @crtc_state: the incoming crtc-state
* *
* Similar to drm_crtc_for_each_plane(), but iterates the planes that will be * Similar to drm_crtc_for_each_plane(), but iterates the planes that will be
* attached if the specified state is applied. Useful during (for example) * attached if the specified state is applied. Useful during for example
* ->atomic_check() operations, to validate the incoming state. * in code called from &drm_mode_config_funcs.atomic_check operations, to
* validate the incoming state.
* *
* Compared to just drm_atomic_crtc_state_for_each_plane() this also fills in a * Compared to just drm_atomic_crtc_state_for_each_plane() this also fills in a
* const plane_state. This is useful when a driver just wants to peek at other * const plane_state. This is useful when a driver just wants to peek at other
......
...@@ -493,8 +493,8 @@ struct drm_dp_mst_topology_mgr { ...@@ -493,8 +493,8 @@ struct drm_dp_mst_topology_mgr {
int total_pbn; int total_pbn;
/** /**
* @qlock: protects @tx_msg_downq, the tx_slots in struct * @qlock: protects @tx_msg_downq, the &drm_dp_mst_branch.txslost and
* &drm_dp_mst_branch and txmsg->state once they are queued * &drm_dp_sideband_msg_tx.state once they are queued
*/ */
struct mutex qlock; struct mutex qlock;
/** /**
...@@ -508,8 +508,7 @@ struct drm_dp_mst_topology_mgr { ...@@ -508,8 +508,7 @@ struct drm_dp_mst_topology_mgr {
struct mutex payload_lock; struct mutex payload_lock;
/** /**
* @proposed_vcpis: Array of pointers for the new VCPI allocation. The * @proposed_vcpis: Array of pointers for the new VCPI allocation. The
* VCPI structure itself is embedded into the corresponding * VCPI structure itself is &drm_dp_mst_port.vcpi.
* &drm_dp_mst_port structure.
*/ */
struct drm_dp_vcpi **proposed_vcpis; struct drm_dp_vcpi **proposed_vcpis;
/** /**
......
...@@ -54,7 +54,7 @@ typedef void (*drm_flip_func_t)(struct drm_flip_work *work, void *val); ...@@ -54,7 +54,7 @@ typedef void (*drm_flip_func_t)(struct drm_flip_work *work, void *val);
/** /**
* struct drm_flip_task - flip work task * struct drm_flip_task - flip work task
* @node: list entry element * @node: list entry element
* @data: data to pass to work->func * @data: data to pass to &drm_flip_work.func
*/ */
struct drm_flip_task { struct drm_flip_task {
struct list_head node; struct list_head node;
......
This diff is collapsed.
...@@ -77,9 +77,9 @@ struct drm_simple_display_pipe_funcs { ...@@ -77,9 +77,9 @@ struct drm_simple_display_pipe_funcs {
/** /**
* @prepare_fb: * @prepare_fb:
* *
* Optional, called by &struct drm_plane_helper_funcs ->prepare_fb . * Optional, called by &drm_plane_helper_funcs.prepare_fb. Please read
* Please read the documentation for the ->prepare_fb hook in * the documentation for the &drm_plane_helper_funcs.prepare_fb hook for
* &struct drm_plane_helper_funcs for more details. * more details.
*/ */
int (*prepare_fb)(struct drm_simple_display_pipe *pipe, int (*prepare_fb)(struct drm_simple_display_pipe *pipe,
struct drm_plane_state *plane_state); struct drm_plane_state *plane_state);
...@@ -87,9 +87,9 @@ struct drm_simple_display_pipe_funcs { ...@@ -87,9 +87,9 @@ struct drm_simple_display_pipe_funcs {
/** /**
* @cleanup_fb: * @cleanup_fb:
* *
* Optional, called by &struct drm_plane_helper_funcs ->cleanup_fb . * Optional, called by &drm_plane_helper_funcs.cleanup_fb. Please read
* Please read the documentation for the ->cleanup_fb hook in * the documentation for the &drm_plane_helper_funcs.cleanup_fb hook for
* &struct drm_plane_helper_funcs for more details. * more details.
*/ */
void (*cleanup_fb)(struct drm_simple_display_pipe *pipe, void (*cleanup_fb)(struct drm_simple_display_pipe *pipe,
struct drm_plane_state *plane_state); struct drm_plane_state *plane_state);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment