Re: [Intel-gfx] [PATCH] drm/i915: Call intel_opregion_notify_encoder in intel_sanitize_encoder, v2.

2018-05-16 Thread Ville Syrjälä
On Wed, May 16, 2018 at 10:50:38AM +0200, Maarten Lankhorst wrote:
> Normally this is called on a modeset, but the call is missing when
> we inherit the mode from the BIOS, so make sure it's called somewhere
> in hardware readout.
> 
> Changes since v1:
> - Unconditionally call intel_opregion_notify_encoder. (Ville)
> 
> Signed-off-by: Maarten Lankhorst 
> Cc: Ville Syrjälä 
> ---
>  drivers/gpu/drm/i915/intel_display.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c 
> b/drivers/gpu/drm/i915/intel_display.c
> index 501b83a9a128..e9dc72341e5f 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -15176,6 +15176,9 @@ static void intel_sanitize_encoder(struct 
> intel_encoder *encoder)
>   connector->base.dpms = DRM_MODE_DPMS_OFF;
>   connector->base.encoder = NULL;
>   }
> +
> + /* notify opregion of the sanitized encoder state */
> + intel_opregion_notify_encoder(encoder, connector && has_active_crtc);

Seems reasonable. The only minor nit is that we call this before the
encoder hooks in the normal modeset path, here we call it after the
hooks. Not sure it really matters though, so

Reviewed-by: Ville Syrjälä 

>  }
>  
>  void i915_redisable_vga_power_on(struct drm_i915_private *dev_priv)
> -- 
> 2.17.0

-- 
Ville Syrjälä
Intel
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH] drm/i915: Call intel_opregion_notify_encoder in intel_sanitize_encoder, v2.

2018-05-16 Thread Maarten Lankhorst
Normally this is called on a modeset, but the call is missing when
we inherit the mode from the BIOS, so make sure it's called somewhere
in hardware readout.

Changes since v1:
- Unconditionally call intel_opregion_notify_encoder. (Ville)

Signed-off-by: Maarten Lankhorst 
Cc: Ville Syrjälä 
---
 drivers/gpu/drm/i915/intel_display.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index 501b83a9a128..e9dc72341e5f 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -15176,6 +15176,9 @@ static void intel_sanitize_encoder(struct intel_encoder 
*encoder)
connector->base.dpms = DRM_MODE_DPMS_OFF;
connector->base.encoder = NULL;
}
+
+   /* notify opregion of the sanitized encoder state */
+   intel_opregion_notify_encoder(encoder, connector && has_active_crtc);
 }
 
 void i915_redisable_vga_power_on(struct drm_i915_private *dev_priv)
-- 
2.17.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915: Call intel_opregion_notify_encoder in intel_sanitize_encoder

2017-12-07 Thread Ville Syrjälä
On Wed, Dec 06, 2017 at 09:52:51AM +0100, Maarten Lankhorst wrote:
> Op 01-12-17 om 14:32 schreef Ville Syrjälä:
> > On Thu, Nov 30, 2017 at 04:18:53PM +0100, Maarten Lankhorst wrote:
> >> Normally this is called on a modeset, but the call is missing when
> >> we inherit the mode from the BIOS, so make sure it's called somewhere
> >> in hardware readout.
> >>
> >> Signed-off-by: Maarten Lankhorst 
> >> ---
> >>  drivers/gpu/drm/i915/intel_display.c | 2 ++
> >>  1 file changed, 2 insertions(+)
> >>
> >> diff --git a/drivers/gpu/drm/i915/intel_display.c 
> >> b/drivers/gpu/drm/i915/intel_display.c
> >> index cd60b4d5cd9d..26edae07e006 100644
> >> --- a/drivers/gpu/drm/i915/intel_display.c
> >> +++ b/drivers/gpu/drm/i915/intel_display.c
> >> @@ -14843,6 +14843,8 @@ static void intel_sanitize_encoder(struct 
> >> intel_encoder *encoder)
> >>  
> >>connector->base.dpms = DRM_MODE_DPMS_OFF;
> >>connector->base.encoder = NULL;
> >> +  } else if (connector) {
> >> +  intel_opregion_notify_encoder(encoder, true);
> >
> > We should probably also do intel_opregion_notify_encoder(encoder, false)
> > when intel_sanitize_encoder() disables the encoder.
> Would it be terrible to always call intel_opregion_notify_encoder, with true 
> or false depending on need?

Sounds like a reasonable approach to me. But it's hard to say what the
correct thing is since this is all some form of BIOS magic.

-- 
Ville Syrjälä
Intel OTC
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915: Call intel_opregion_notify_encoder in intel_sanitize_encoder

2017-12-06 Thread Maarten Lankhorst
Op 01-12-17 om 14:32 schreef Ville Syrjälä:
> On Thu, Nov 30, 2017 at 04:18:53PM +0100, Maarten Lankhorst wrote:
>> Normally this is called on a modeset, but the call is missing when
>> we inherit the mode from the BIOS, so make sure it's called somewhere
>> in hardware readout.
>>
>> Signed-off-by: Maarten Lankhorst 
>> ---
>>  drivers/gpu/drm/i915/intel_display.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/i915/intel_display.c 
>> b/drivers/gpu/drm/i915/intel_display.c
>> index cd60b4d5cd9d..26edae07e006 100644
>> --- a/drivers/gpu/drm/i915/intel_display.c
>> +++ b/drivers/gpu/drm/i915/intel_display.c
>> @@ -14843,6 +14843,8 @@ static void intel_sanitize_encoder(struct 
>> intel_encoder *encoder)
>>  
>>  connector->base.dpms = DRM_MODE_DPMS_OFF;
>>  connector->base.encoder = NULL;
>> +} else if (connector) {
>> +intel_opregion_notify_encoder(encoder, true);
>
> We should probably also do intel_opregion_notify_encoder(encoder, false)
> when intel_sanitize_encoder() disables the encoder.
Would it be terrible to always call intel_opregion_notify_encoder, with true or 
false depending on need?

~Maarten
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915: Call intel_opregion_notify_encoder in intel_sanitize_encoder

2017-12-01 Thread Ville Syrjälä
On Thu, Nov 30, 2017 at 04:18:53PM +0100, Maarten Lankhorst wrote:
> Normally this is called on a modeset, but the call is missing when
> we inherit the mode from the BIOS, so make sure it's called somewhere
> in hardware readout.
> 
> Signed-off-by: Maarten Lankhorst 
> ---
>  drivers/gpu/drm/i915/intel_display.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c 
> b/drivers/gpu/drm/i915/intel_display.c
> index cd60b4d5cd9d..26edae07e006 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -14843,6 +14843,8 @@ static void intel_sanitize_encoder(struct 
> intel_encoder *encoder)
>  
>   connector->base.dpms = DRM_MODE_DPMS_OFF;
>   connector->base.encoder = NULL;
> + } else if (connector) {
> + intel_opregion_notify_encoder(encoder, true);


We should probably also do intel_opregion_notify_encoder(encoder, false)
when intel_sanitize_encoder() disables the encoder.

>   }
>  }
>  
> -- 
> 2.15.0
> 
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH] drm/i915: Call intel_opregion_notify_encoder in intel_sanitize_encoder

2017-11-30 Thread Maarten Lankhorst
Normally this is called on a modeset, but the call is missing when
we inherit the mode from the BIOS, so make sure it's called somewhere
in hardware readout.

Signed-off-by: Maarten Lankhorst 
---
 drivers/gpu/drm/i915/intel_display.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index cd60b4d5cd9d..26edae07e006 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -14843,6 +14843,8 @@ static void intel_sanitize_encoder(struct intel_encoder 
*encoder)
 
connector->base.dpms = DRM_MODE_DPMS_OFF;
connector->base.encoder = NULL;
+   } else if (connector) {
+   intel_opregion_notify_encoder(encoder, true);
}
 }
 
-- 
2.15.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx