diff mbox

drm/i915: Fix incorrect definition of ADPA HSYNC and VSYNC bits

Message ID 1362506977-2089-1-git-send-email-patrik.r.jakobsson@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Patrik Jakobsson March 5, 2013, 6:09 p.m. UTC
Disable bits for ADPA HSYNC and VSYNC where mixed up resulting in suspend
becoming standby and vice versa. Fixed by swapping their bit position.

Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
---
 drivers/gpu/drm/i915/i915_reg.h |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Eric Anholt March 5, 2013, 10:19 p.m. UTC | #1
Patrik Jakobsson <patrik.r.jakobsson@gmail.com> writes:

> Disable bits for ADPA HSYNC and VSYNC where mixed up resulting in suspend
> becoming standby and vice versa. Fixed by swapping their bit position.
>
> Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>

Confirmed in the 945 and 845 specs.

Reviewed-by: Eric Anholt <eric@anholt.net>
Paul Menzel March 5, 2013, 11:17 p.m. UTC | #2
Dear Patrik,


Am Dienstag, den 05.03.2013, 19:09 +0100 schrieb Patrik Jakobsson:
> Disable bits for ADPA HSYNC and VSYNC where mixed up resulting in suspend
> becoming standby and vice versa.

nice find. Could you elaborate on the symptoms please as I have never
experienced any issues with suspend and resume on my ASUS Eee PC 701 4G?

> Fixed by swapping their bit position.
> 
> Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Where did Ville report this? Maybe my questions are already answered
there.

> Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
> ---
>  drivers/gpu/drm/i915/i915_reg.h |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

[…]


Thanks,

Paul
Daniel Vetter March 6, 2013, 9:10 a.m. UTC | #3
On Tue, Mar 05, 2013 at 02:19:31PM -0800, Eric Anholt wrote:
> Patrik Jakobsson <patrik.r.jakobsson@gmail.com> writes:
> 
> > Disable bits for ADPA HSYNC and VSYNC where mixed up resulting in suspend
> > becoming standby and vice versa. Fixed by swapping their bit position.
> >
> > Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
> 
> Confirmed in the 945 and 845 specs.
> 
> Reviewed-by: Eric Anholt <eric@anholt.net>

Picked up for -fixes, thanks for the patch.
-Daniel
Patrik Jakobsson March 6, 2013, 11:55 a.m. UTC | #4
On Wed, Mar 6, 2013 at 12:17 AM, Paul Menzel
<paulepanter@users.sourceforge.net> wrote:
> Dear Patrik,

Hi Paul

> Am Dienstag, den 05.03.2013, 19:09 +0100 schrieb Patrik Jakobsson:
>> Disable bits for ADPA HSYNC and VSYNC where mixed up resulting in suspend
>> becoming standby and vice versa.
>
> nice find. Could you elaborate on the symptoms please as I have never
> experienced any issues with suspend and resume on my ASUS Eee PC 701 4G?

Ville did all the finding, I just wrote the patch to make sure it wasn't
forgotten.

This isn't related to suspend/resume of the system, but putting external
monitors in suspend or standby state. When in standby, the monitor consumes more
power than in suspend but wakes up faster.

>> Fixed by swapping their bit position.
>>
>> Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Where did Ville report this? Maybe my questions are already answered
> there.

He found it while looking at another patch I've sent:
http://lists.freedesktop.org/archives/intel-gfx/2013-March/025418.html

-Patrik
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 527b664..848992f 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -1613,9 +1613,9 @@ 
 #define   ADPA_CRT_HOTPLUG_FORCE_TRIGGER (1<<16)
 #define   ADPA_USE_VGA_HVPOLARITY (1<<15)
 #define   ADPA_SETS_HVPOLARITY	0
-#define   ADPA_VSYNC_CNTL_DISABLE (1<<11)
+#define   ADPA_VSYNC_CNTL_DISABLE (1<<10)
 #define   ADPA_VSYNC_CNTL_ENABLE 0
-#define   ADPA_HSYNC_CNTL_DISABLE (1<<10)
+#define   ADPA_HSYNC_CNTL_DISABLE (1<<11)
 #define   ADPA_HSYNC_CNTL_ENABLE 0
 #define   ADPA_VSYNC_ACTIVE_HIGH (1<<4)
 #define   ADPA_VSYNC_ACTIVE_LOW	0