dssdev->ops = &tvc_ops;
        dssdev->dev = &pdev->dev;
        dssdev->type = OMAP_DISPLAY_TYPE_VENC;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
 
 
        dssdev->ops = &dvic_ops;
        dssdev->dev = &pdev->dev;
        dssdev->type = OMAP_DISPLAY_TYPE_DVI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
 
 
        dssdev->ops = &hdmic_ops;
        dssdev->dev = &pdev->dev;
        dssdev->type = OMAP_DISPLAY_TYPE_HDMI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = ddata->hpd_gpio
 
        dssdev->ops = &opa362_ops;
        dssdev->dev = &pdev->dev;
        dssdev->type = OMAP_DISPLAY_TYPE_VENC;
-       dssdev->output_type = OMAP_DISPLAY_TYPE_VENC;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(1) | BIT(0);
 
 
        dssdev->ops = &tfp410_ops;
        dssdev->dev = &pdev->dev;
        dssdev->type = OMAP_DISPLAY_TYPE_DPI;
-       dssdev->output_type = OMAP_DISPLAY_TYPE_DVI;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(1) | BIT(0);
        dssdev->bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_SYNC_POSEDGE
 
        dssdev->ops = &tpd_ops;
        dssdev->dev = &pdev->dev;
        dssdev->type = OMAP_DISPLAY_TYPE_HDMI;
-       dssdev->output_type = OMAP_DISPLAY_TYPE_HDMI;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(1) | BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_DETECT
 
        dssdev->dev = &pdev->dev;
        dssdev->ops = &panel_dpi_ops;
        dssdev->type = OMAP_DISPLAY_TYPE_DPI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dssdev->ops = &dsicm_ops;
        dssdev->driver = &dsicm_dss_driver;
        dssdev->type = OMAP_DISPLAY_TYPE_DSI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dssdev->dev = &spi->dev;
        dssdev->ops = &lb035q02_ops;
        dssdev->type = OMAP_DISPLAY_TYPE_DPI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dssdev->dev = &spi->dev;
        dssdev->ops = &nec_8048_ops;
        dssdev->type = OMAP_DISPLAY_TYPE_DPI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dssdev->dev = &pdev->dev;
        dssdev->ops = &sharp_ls_ops;
        dssdev->type = OMAP_DISPLAY_TYPE_DPI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dssdev->dev = &spi->dev;
        dssdev->ops = &acx565akm_ops;
        dssdev->type = OMAP_DISPLAY_TYPE_SDI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dssdev->dev = &spi->dev;
        dssdev->ops = &td028ttec1_ops;
        dssdev->type = OMAP_DISPLAY_TYPE_DPI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dssdev->dev = &spi->dev;
        dssdev->ops = &tpo_td043_ops;
        dssdev->type = OMAP_DISPLAY_TYPE_DPI;
+       dssdev->display = true;
        dssdev->owner = THIS_MODULE;
        dssdev->of_ports = BIT(0);
        dssdev->ops_flags = OMAP_DSS_DEVICE_OP_MODES;
 
        dev_dbg(dst->dev, "disconnect\n");
 
        if (!dst->id && !omapdss_device_is_connected(dst)) {
-               WARN_ON(dst->output_type);
+               WARN_ON(!dst->display);
                return;
        }
 
 
 
        out->dev = &dpi->pdev->dev;
        out->id = OMAP_DSS_OUTPUT_DPI;
-       out->output_type = OMAP_DISPLAY_TYPE_DPI;
+       out->type = OMAP_DISPLAY_TYPE_DPI;
        out->dispc_channel = dpi_get_channel(dpi);
        out->of_ports = BIT(port_num);
        out->ops = &dpi_ops;
 
        out->id = dsi->module_id == 0 ?
                        OMAP_DSS_OUTPUT_DSI1 : OMAP_DSS_OUTPUT_DSI2;
 
-       out->output_type = OMAP_DISPLAY_TYPE_DSI;
+       out->type = OMAP_DISPLAY_TYPE_DSI;
        out->name = dsi->module_id == 0 ? "dsi.0" : "dsi.1";
        out->dispc_channel = dsi_get_channel(dsi);
        out->ops = &dsi_ops;
 
 
        out->dev = &hdmi->pdev->dev;
        out->id = OMAP_DSS_OUTPUT_HDMI;
-       out->output_type = OMAP_DISPLAY_TYPE_HDMI;
+       out->type = OMAP_DISPLAY_TYPE_HDMI;
        out->name = "hdmi.0";
        out->dispc_channel = OMAP_DSS_CHANNEL_DIGIT;
        out->ops = &hdmi_ops;
 
 
        out->dev = &hdmi->pdev->dev;
        out->id = OMAP_DSS_OUTPUT_HDMI;
-       out->output_type = OMAP_DISPLAY_TYPE_HDMI;
+       out->type = OMAP_DISPLAY_TYPE_HDMI;
        out->name = "hdmi.0";
        out->dispc_channel = OMAP_DSS_CHANNEL_DIGIT;
        out->ops = &hdmi_ops;
 
 
        struct list_head list;
 
+       /*
+        * DSS type that this device generates (for DSS internal devices) or
+        * requires (for external encoders, connectors and panels). Must be a
+        * non-zero (different than OMAP_DISPLAY_TYPE_NONE) value.
+        */
        enum omap_display_type type;
+
        /*
-        * DSS output type that this device generates (for DSS internal devices)
-        * or requires (for external encoders). Must be OMAP_DISPLAY_TYPE_NONE
-        * for display devices (connectors and panels) and to non-zero value for
-        * all other devices.
+        * True if the device is a display (panel or connector) at the end of
+        * the pipeline, false otherwise.
         */
-       enum omap_display_type output_type;
+       bool display;
 
        const char *name;
 
 
                return PTR_ERR(out->next);
        }
 
-       if (out->next && out->output_type != out->next->type) {
+       if (out->next && out->type != out->next->type) {
                dev_err(out->dev, "output type and display type don't match\n");
                return -EINVAL;
        }
 
 
        out->dev = &sdi->pdev->dev;
        out->id = OMAP_DSS_OUTPUT_SDI;
-       out->output_type = OMAP_DISPLAY_TYPE_SDI;
+       out->type = OMAP_DISPLAY_TYPE_SDI;
        out->name = "sdi.0";
        out->dispc_channel = OMAP_DSS_CHANNEL_LCD;
        /* We have SDI only on OMAP3, where it's on port 1 */
 
 
        out->dev = &venc->pdev->dev;
        out->id = OMAP_DSS_OUTPUT_VENC;
-       out->output_type = OMAP_DISPLAY_TYPE_VENC;
+       out->type = OMAP_DISPLAY_TYPE_VENC;
        out->name = "venc.0";
        out->dispc_channel = OMAP_DSS_CHANNEL_DIGIT;
        out->ops = &venc_ops;
 
        if (WARN_ON(omap_crtc->enabled == enable))
                return;
 
-       if (omap_crtc->pipe->output->output_type == OMAP_DISPLAY_TYPE_HDMI) {
+       if (omap_crtc->pipe->output->type == OMAP_DISPLAY_TYPE_HDMI) {
                priv->dispc_ops->mgr_enable(priv->dispc, channel, enable);
                omap_crtc->enabled = enable;
                return;
 
        }
 
        /* 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);
 }
 
         * 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;
        }
         * 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;
        }