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

Commit d7d85d85 authored by Jani Nikula's avatar Jani Nikula
Browse files

drm/i915/dsi: abstract get pclk platform differences



Hide away the platform differences in intel_dsi_get_pckl() within
intel_dsi_pll.c. No functional changes.

Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1452249940-2605-1-git-send-email-jani.nikula@intel.com
parent 8ac3e1bb
Loading
Loading
Loading
Loading
+2 −7
Original line number Diff line number Diff line
@@ -702,7 +702,7 @@ static bool intel_dsi_get_hw_state(struct intel_encoder *encoder,
static void intel_dsi_get_config(struct intel_encoder *encoder,
				 struct intel_crtc_state *pipe_config)
{
	u32 pclk = 0;
	u32 pclk;
	DRM_DEBUG_KMS("\n");

	pipe_config->has_dsi_encoder = true;
@@ -713,12 +713,7 @@ static void intel_dsi_get_config(struct intel_encoder *encoder,
	 */
	pipe_config->dpll_hw_state.dpll_md = 0;

	if (IS_BROXTON(encoder->base.dev))
		pclk = bxt_get_dsi_pclk(encoder, pipe_config->pipe_bpp);
	else if (IS_VALLEYVIEW(encoder->base.dev) ||
		 IS_CHERRYVIEW(encoder->base.dev))
		pclk = vlv_get_dsi_pclk(encoder, pipe_config->pipe_bpp);

	pclk = intel_dsi_get_pclk(encoder, pipe_config->pipe_bpp);
	if (!pclk)
		return;

+1 −2
Original line number Diff line number Diff line
@@ -126,8 +126,7 @@ static inline struct intel_dsi *enc_to_intel_dsi(struct drm_encoder *encoder)

extern void intel_enable_dsi_pll(struct intel_encoder *encoder);
extern void intel_disable_dsi_pll(struct intel_encoder *encoder);
extern u32 vlv_get_dsi_pclk(struct intel_encoder *encoder, int pipe_bpp);
extern u32 bxt_get_dsi_pclk(struct intel_encoder *encoder, int pipe_bpp);
extern u32 intel_dsi_get_pclk(struct intel_encoder *encoder, int pipe_bpp);
extern void intel_dsi_reset_clocks(struct intel_encoder *encoder,
							enum port port);

+10 −2
Original line number Diff line number Diff line
@@ -322,7 +322,7 @@ static void assert_bpp_mismatch(int pixel_format, int pipe_bpp)
	     bpp, pipe_bpp);
}

u32 vlv_get_dsi_pclk(struct intel_encoder *encoder, int pipe_bpp)
static u32 vlv_dsi_get_pclk(struct intel_encoder *encoder, int pipe_bpp)
{
	struct drm_i915_private *dev_priv = encoder->base.dev->dev_private;
	struct intel_dsi *intel_dsi = enc_to_intel_dsi(&encoder->base);
@@ -384,7 +384,7 @@ u32 vlv_get_dsi_pclk(struct intel_encoder *encoder, int pipe_bpp)
	return pclk;
}

u32 bxt_get_dsi_pclk(struct intel_encoder *encoder, int pipe_bpp)
static u32 bxt_dsi_get_pclk(struct intel_encoder *encoder, int pipe_bpp)
{
	u32 pclk;
	u32 dsi_clk;
@@ -419,6 +419,14 @@ u32 bxt_get_dsi_pclk(struct intel_encoder *encoder, int pipe_bpp)
	return pclk;
}

u32 intel_dsi_get_pclk(struct intel_encoder *encoder, int pipe_bpp)
{
	if (IS_BROXTON(encoder->base.dev))
		return bxt_dsi_get_pclk(encoder, pipe_bpp);
	else
		return vlv_dsi_get_pclk(encoder, pipe_bpp);
}

static void vlv_dsi_reset_clocks(struct intel_encoder *encoder, enum port port)
{
	u32 temp;