[PATCH v4 3/8] drm/connector: Make ->atomic_commit() optional
Boris Brezillon
boris.brezillon at bootlin.com
Tue Jul 3 07:50:17 UTC 2018
Not all writeback connector implementations might want to commit things
from the connector driver. Some, like the malidp driver, commit things
from their main commit_tail() function, and would rather not have to
implement a dummy hook for drm_connector_helper_funcs.atomic_commit().
Make this function optional and reflect this fact in the doc.
Signed-off-by: Boris Brezillon <boris.brezillon at bootlin.com>
Acked-by: Liviu Dudau <liviu.dudau at arm.com>
---
Changes in v4:
- Add Liviu's ack
- Fix a build failure
Changes in v3:
- New patch
---
drivers/gpu/drm/drm_atomic_helper.c | 2 ++
include/drm/drm_modeset_helper_vtables.h | 2 ++
2 files changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
index 69063bcf2334..5026096d0b52 100644
--- a/drivers/gpu/drm/drm_atomic_helper.c
+++ b/drivers/gpu/drm/drm_atomic_helper.c
@@ -1184,6 +1184,8 @@ static void drm_atomic_helper_commit_writebacks(struct drm_device *dev,
const struct drm_connector_helper_funcs *funcs;
funcs = connector->helper_private;
+ if (!funcs->atomic_commit)
+ continue;
if (new_conn_state->writeback_job && new_conn_state->writeback_job->fb) {
WARN_ON(connector->connector_type != DRM_MODE_CONNECTOR_WRITEBACK);
diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h
index fb841f44949c..d0eb76c4b309 100644
--- a/include/drm/drm_modeset_helper_vtables.h
+++ b/include/drm/drm_modeset_helper_vtables.h
@@ -983,6 +983,8 @@ struct drm_connector_helper_funcs {
* The writeback_job to commit is available in
* &drm_connector_state.writeback_job.
*
+ * This hook is optional.
+ *
* This callback is used by the atomic modeset helpers.
*/
void (*atomic_commit)(struct drm_connector *connector,
--
2.14.1
More information about the dri-devel
mailing list