diff mbox

[1/3] drm/i915: Move PPS calls to edp_init

Message ID 1415618923-24110-2-git-send-email-vandana.kannan@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

vandana.kannan@intel.com Nov. 10, 2014, 11:28 a.m. UTC
Calls to setup eDP panel power sequencer were there in dp_init_connector()
function. Moving these calls to edp_init_connector() to keep all PPS calls
together and under edp init.

Signed-off-by: Vandana Kannan <vandana.kannan@intel.com>
---
 drivers/gpu/drm/i915/intel_dp.c | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

Comments

Jani Nikula Dec. 12, 2014, 10:35 a.m. UTC | #1
On Mon, 10 Nov 2014, Vandana Kannan <vandana.kannan@intel.com> wrote:
> Calls to setup eDP panel power sequencer were there in dp_init_connector()
> function. Moving these calls to edp_init_connector() to keep all PPS calls
> together and under edp init.

It's a bit tricky, but I think you need to setup the power sequencer
stuff on eDP before you do AUX communication.

BR,
Jani.



>
> Signed-off-by: Vandana Kannan <vandana.kannan@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_dp.c | 15 +++++----------
>  1 file changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index ceb528f..34d8105 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -5258,6 +5258,11 @@ static bool intel_edp_init_connector(struct intel_dp *intel_dp,
>  
>  	/* We now know it's not a ghost, init power sequence regs. */
>  	pps_lock(intel_dp);
> +	intel_dp_init_panel_power_timestamps(intel_dp);
> +	if (IS_VALLEYVIEW(dev))
> +		vlv_initial_power_sequencer_setup(intel_dp);
> +	else
> +		intel_dp_init_panel_power_sequencer(dev, intel_dp);
>  	intel_dp_init_panel_power_sequencer_registers(dev, intel_dp);
>  	pps_unlock(intel_dp);
>  
> @@ -5402,16 +5407,6 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
>  		BUG();
>  	}
>  
> -	if (is_edp(intel_dp)) {
> -		pps_lock(intel_dp);
> -		intel_dp_init_panel_power_timestamps(intel_dp);
> -		if (IS_VALLEYVIEW(dev))
> -			vlv_initial_power_sequencer_setup(intel_dp);
> -		else
> -			intel_dp_init_panel_power_sequencer(dev, intel_dp);
> -		pps_unlock(intel_dp);
> -	}
> -
>  	intel_dp_aux_init(intel_dp, intel_connector);
>  
>  	/* init MST on ports that can support it */
> -- 
> 2.0.1
>
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index ceb528f..34d8105 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -5258,6 +5258,11 @@  static bool intel_edp_init_connector(struct intel_dp *intel_dp,
 
 	/* We now know it's not a ghost, init power sequence regs. */
 	pps_lock(intel_dp);
+	intel_dp_init_panel_power_timestamps(intel_dp);
+	if (IS_VALLEYVIEW(dev))
+		vlv_initial_power_sequencer_setup(intel_dp);
+	else
+		intel_dp_init_panel_power_sequencer(dev, intel_dp);
 	intel_dp_init_panel_power_sequencer_registers(dev, intel_dp);
 	pps_unlock(intel_dp);
 
@@ -5402,16 +5407,6 @@  intel_dp_init_connector(struct intel_digital_port *intel_dig_port,
 		BUG();
 	}
 
-	if (is_edp(intel_dp)) {
-		pps_lock(intel_dp);
-		intel_dp_init_panel_power_timestamps(intel_dp);
-		if (IS_VALLEYVIEW(dev))
-			vlv_initial_power_sequencer_setup(intel_dp);
-		else
-			intel_dp_init_panel_power_sequencer(dev, intel_dp);
-		pps_unlock(intel_dp);
-	}
-
 	intel_dp_aux_init(intel_dp, intel_connector);
 
 	/* init MST on ports that can support it */