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

Commit 814bde99 authored by Boris Brezillon's avatar Boris Brezillon
Browse files

drm/connector: Make ->atomic_commit() optional



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: default avatarBoris Brezillon <boris.brezillon@bootlin.com>
Acked-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180703075022.15138-4-boris.brezillon@bootlin.com
parent 425132fd
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -1184,6 +1184,8 @@ static void drm_atomic_helper_commit_writebacks(struct drm_device *dev,
		const struct drm_connector_helper_funcs *funcs;
		const struct drm_connector_helper_funcs *funcs;


		funcs = connector->helper_private;
		funcs = connector->helper_private;
		if (!funcs->atomic_commit)
			continue;


		if (new_conn_state->writeback_job && new_conn_state->writeback_job->fb) {
		if (new_conn_state->writeback_job && new_conn_state->writeback_job->fb) {
			WARN_ON(connector->connector_type != DRM_MODE_CONNECTOR_WRITEBACK);
			WARN_ON(connector->connector_type != DRM_MODE_CONNECTOR_WRITEBACK);
+2 −0
Original line number Original line Diff line number Diff line
@@ -983,6 +983,8 @@ struct drm_connector_helper_funcs {
	 * The writeback_job to commit is available in
	 * The writeback_job to commit is available in
	 * &drm_connector_state.writeback_job.
	 * &drm_connector_state.writeback_job.
	 *
	 *
	 * This hook is optional.
	 *
	 * This callback is used by the atomic modeset helpers.
	 * This callback is used by the atomic modeset helpers.
	 */
	 */
	void (*atomic_commit)(struct drm_connector *connector,
	void (*atomic_commit)(struct drm_connector *connector,