From 0dbfc396672025d3ef8bacc934b80a5463e75c6d Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Mon, 10 Dec 2018 14:00:38 +0200 Subject: drm/omap: Merge omap_dss_device type and output_type fields The omap_dss_device type and output_type fields differ mostly for historical reasons. The output_type field is required for all devices but the display at the end of the pipeline, and must be set to OMAP_DISPLAY_TYPE_NONE for the latter. The type field is required for all devices but the internal encoder, for which it is ignored. The only reason why the output_type field must be set to OMAP_DISPLAY_TYPE_NONE for the display at the end of the pipeline is to identify omap_dss_device instances corresponding to displays. This is not documented and confusing. Clean the code by adding a new display field to the omap_dss_device structure to identify displays, and merge the type and output_type fields. Signed-off-by: Laurent Pinchart Reviewed-by: Sebastian Reichel Tested-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_encoder.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'drivers/gpu/drm/omapdrm/omap_encoder.c') diff --git a/drivers/gpu/drm/omapdrm/omap_encoder.c b/drivers/gpu/drm/omapdrm/omap_encoder.c index 367234de5dc7..42748479d374 100644 --- a/drivers/gpu/drm/omapdrm/omap_encoder.c +++ b/drivers/gpu/drm/omapdrm/omap_encoder.c @@ -138,7 +138,7 @@ static void omap_encoder_mode_set(struct drm_encoder *encoder, } /* Set the HDMI mode and HDMI infoframe if applicable. */ - if (omap_encoder->output->output_type == OMAP_DISPLAY_TYPE_HDMI) + if (omap_encoder->output->type == OMAP_DISPLAY_TYPE_HDMI) omap_encoder_hdmi_mode_set(encoder, adjusted_mode); } @@ -161,7 +161,7 @@ static void omap_encoder_disable(struct drm_encoder *encoder) * DSI is treated as an exception as DSI pipelines still use the legacy * flow where the pipeline output controls the encoder. */ - if (dssdev->output_type != OMAP_DISPLAY_TYPE_DSI) { + if (dssdev->type != OMAP_DISPLAY_TYPE_DSI) { dssdev->ops->disable(dssdev); dssdev->state = OMAP_DSS_DISPLAY_DISABLED; } @@ -189,7 +189,7 @@ static void omap_encoder_enable(struct drm_encoder *encoder) * DSI is treated as an exception as DSI pipelines still use the legacy * flow where the pipeline output controls the encoder. */ - if (dssdev->output_type != OMAP_DISPLAY_TYPE_DSI) { + if (dssdev->type != OMAP_DISPLAY_TYPE_DSI) { dssdev->ops->enable(dssdev); dssdev->state = OMAP_DSS_DISPLAY_ACTIVE; } -- cgit v1.2.3