drm/i915/dsi: add ports to intel_dsi to describe the ports being driven

Later on this can include multiple ports (e.g. (1 << PORT_A) | (1 <<
PORT_C)) to describe dual link DSI.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Gaurav K Singh <gaurav.k.singh@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Jani Nikula 2014-11-14 16:54:22 +02:00 committed by Daniel Vetter
parent e7d7cad08d
commit 17af40a835
2 changed files with 8 additions and 2 deletions

View File

@ -749,10 +749,13 @@ void intel_dsi_init(struct drm_device *dev)
intel_connector->unregister = intel_connector_unregister; intel_connector->unregister = intel_connector_unregister;
/* Pipe A maps to MIPI DSI port A, pipe B maps to MIPI DSI port C */ /* Pipe A maps to MIPI DSI port A, pipe B maps to MIPI DSI port C */
if (dev_priv->vbt.dsi.port == DVO_PORT_MIPIA) if (dev_priv->vbt.dsi.port == DVO_PORT_MIPIA) {
intel_encoder->crtc_mask = (1 << PIPE_A); intel_encoder->crtc_mask = (1 << PIPE_A);
else if (dev_priv->vbt.dsi.port == DVO_PORT_MIPIC) intel_dsi->ports = (1 << PORT_A);
} else if (dev_priv->vbt.dsi.port == DVO_PORT_MIPIC) {
intel_encoder->crtc_mask = (1 << PIPE_B); intel_encoder->crtc_mask = (1 << PIPE_B);
intel_dsi->ports = (1 << PORT_C);
}
for (i = 0; i < ARRAY_SIZE(intel_dsi_devices); i++) { for (i = 0; i < ARRAY_SIZE(intel_dsi_devices); i++) {
dsi = &intel_dsi_devices[i]; dsi = &intel_dsi_devices[i];

View File

@ -78,6 +78,9 @@ struct intel_dsi {
struct intel_connector *attached_connector; struct intel_connector *attached_connector;
/* bit mask of ports being driven */
u16 ports;
/* if true, use HS mode, otherwise LP */ /* if true, use HS mode, otherwise LP */
bool hs; bool hs;