mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-10 07:00:48 +00:00
drm/atomic-helper: Make atomic_enable/disable crtc callbacks optional
Allow atomic_enable and atomic_disable operations from drm_crtc_helper_funcs struct optional. With this, the target display drivers don't need to define a dummy function if they don't need one. Changes since v2: * Don't make funcs optional * Update kerneldoc for atomic_enable/disable * Replace "if (funcs->atomic_enable)" by "if (funcs->commit)" * Improve commit message Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: http://patchwork.freedesktop.org/patch/msgid/20190314184845.gjmvkamobj4dilyp@smtp.gmail.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
36a1da15b5
commit
fe61692886
@ -1034,7 +1034,7 @@ disable_outputs(struct drm_device *dev, struct drm_atomic_state *old_state)
|
||||
funcs->atomic_disable(crtc, old_crtc_state);
|
||||
else if (funcs->disable)
|
||||
funcs->disable(crtc);
|
||||
else
|
||||
else if (funcs->dpms)
|
||||
funcs->dpms(crtc, DRM_MODE_DPMS_OFF);
|
||||
|
||||
if (!(dev->irq_enabled && dev->num_crtcs))
|
||||
@ -1277,10 +1277,9 @@ void drm_atomic_helper_commit_modeset_enables(struct drm_device *dev,
|
||||
if (new_crtc_state->enable) {
|
||||
DRM_DEBUG_ATOMIC("enabling [CRTC:%d:%s]\n",
|
||||
crtc->base.id, crtc->name);
|
||||
|
||||
if (funcs->atomic_enable)
|
||||
funcs->atomic_enable(crtc, old_crtc_state);
|
||||
else
|
||||
else if (funcs->commit)
|
||||
funcs->commit(crtc);
|
||||
}
|
||||
}
|
||||
|
@ -418,6 +418,8 @@ struct drm_crtc_helper_funcs {
|
||||
* Drivers can use the @old_crtc_state input parameter if the operations
|
||||
* needed to enable the CRTC don't depend solely on the new state but
|
||||
* also on the transition between the old state and the new state.
|
||||
*
|
||||
* This function is optional.
|
||||
*/
|
||||
void (*atomic_enable)(struct drm_crtc *crtc,
|
||||
struct drm_crtc_state *old_crtc_state);
|
||||
@ -441,6 +443,8 @@ struct drm_crtc_helper_funcs {
|
||||
* parameter @old_crtc_state which could be used to access the old
|
||||
* state. Atomic drivers should consider to use this one instead
|
||||
* of @disable.
|
||||
*
|
||||
* This function is optional.
|
||||
*/
|
||||
void (*atomic_disable)(struct drm_crtc *crtc,
|
||||
struct drm_crtc_state *old_crtc_state);
|
||||
|
Loading…
x
Reference in New Issue
Block a user