Skip to content

Commit

Permalink
drm/i915/dsi: merge pre_pll_enable hook to pre_enable
Browse files Browse the repository at this point in the history
For DSI, the pre_pll_enable and the pre_enable hooks are called
back-to-back on all platforms that support DSI. The distinction is
artificial for DSI, for which we enable the DSI PLL in the encoder
hooks. Do everything in pre_enable, and remove DSI pre_pll_enable hook.

Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1448619706-21293-1-git-send-email-jani.nikula@intel.com
  • Loading branch information
Jani Nikula committed Nov 30, 2015
1 parent b13b840 commit e3488e7
Showing 1 changed file with 5 additions and 11 deletions.
16 changes: 5 additions & 11 deletions drivers/gpu/drm/i915/intel_dsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -462,6 +462,8 @@ static void intel_dsi_enable(struct intel_encoder *encoder)
intel_panel_enable_backlight(intel_dsi->attached_connector);
}

static void intel_dsi_prepare(struct intel_encoder *intel_encoder);

static void intel_dsi_pre_enable(struct intel_encoder *encoder)
{
struct drm_device *dev = encoder->base.dev;
Expand All @@ -474,6 +476,9 @@ static void intel_dsi_pre_enable(struct intel_encoder *encoder)

DRM_DEBUG_KMS("\n");

intel_dsi_prepare(encoder);
intel_enable_dsi_pll(encoder);

/* Panel Enable over CRC PMIC */
if (intel_dsi->gpio_panel)
gpiod_set_value_cansleep(intel_dsi->gpio_panel, 1);
Expand Down Expand Up @@ -1026,15 +1031,6 @@ static void intel_dsi_prepare(struct intel_encoder *intel_encoder)
}
}

static void intel_dsi_pre_pll_enable(struct intel_encoder *encoder)
{
DRM_DEBUG_KMS("\n");

intel_dsi_prepare(encoder);
intel_enable_dsi_pll(encoder);

}

static enum drm_connector_status
intel_dsi_detect(struct drm_connector *connector, bool force)
{
Expand Down Expand Up @@ -1154,9 +1150,7 @@ void intel_dsi_init(struct drm_device *dev)

drm_encoder_init(dev, encoder, &intel_dsi_funcs, DRM_MODE_ENCODER_DSI);

/* XXX: very likely not all of these are needed */
intel_encoder->compute_config = intel_dsi_compute_config;
intel_encoder->pre_pll_enable = intel_dsi_pre_pll_enable;
intel_encoder->pre_enable = intel_dsi_pre_enable;
intel_encoder->enable = intel_dsi_enable_nop;
intel_encoder->disable = intel_dsi_pre_disable;
Expand Down

0 comments on commit e3488e7

Please sign in to comment.