[PATCH] drm/nouveau: fix regression in vblanking

2013-03-05 Thread Marcin Slusarz
On Tue, Mar 05, 2013 at 02:59:26PM +0100, Maarten Lankhorst wrote:
> nv50_vblank_enable/disable got switched from 
> NV50_PDISPLAY_INTR_EN_1_VBLANK_CRTC_0 (4) << head to 1 << head, which is 
> wrong.
> 
> 4 << head is the correct value.
> 
> Fixes regression with vblanking since 1d7c71a3e2f77 "drm/nouveau/disp: port 
> vblank handling to event interface"
> 
> Signed-off-by: Maarten Lankhorst 
> ---
> diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c 
> b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
> index 5fa1326..02e369f 100644
> --- a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
> +++ b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
> @@ -544,13 +544,13 @@ nv50_disp_curs_ofuncs = {
>  static void
>  nv50_disp_base_vblank_enable(struct nouveau_event *event, int head)
>  {
> - nv_mask(event->priv, 0x61002c, (1 << head), (1 << head));
> + nv_mask(event->priv, 0x61002c, (4 << head), (4 << head));
>  }
>  
>  static void
>  nv50_disp_base_vblank_disable(struct nouveau_event *event, int head)
>  {
> - nv_mask(event->priv, 0x61002c, (1 << head), (0 << head));
> + nv_mask(event->priv, 0x61002c, (4 << head), 0);
>  }
>  
>  static int
> 

It fixes vblank on my NVA8, thanks.

Tested-by: Marcin Slusarz 


[PATCH] drm/nouveau: fix regression in vblanking

2013-03-05 Thread Maarten Lankhorst
nv50_vblank_enable/disable got switched from 
NV50_PDISPLAY_INTR_EN_1_VBLANK_CRTC_0 (4) << head to 1 << head, which is wrong.

4 << head is the correct value.

Fixes regression with vblanking since 1d7c71a3e2f77 "drm/nouveau/disp: port 
vblank handling to event interface"

Signed-off-by: Maarten Lankhorst 
---
diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c 
b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
index 5fa1326..02e369f 100644
--- a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
+++ b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
@@ -544,13 +544,13 @@ nv50_disp_curs_ofuncs = {
 static void
 nv50_disp_base_vblank_enable(struct nouveau_event *event, int head)
 {
-   nv_mask(event->priv, 0x61002c, (1 << head), (1 << head));
+   nv_mask(event->priv, 0x61002c, (4 << head), (4 << head));
 }

 static void
 nv50_disp_base_vblank_disable(struct nouveau_event *event, int head)
 {
-   nv_mask(event->priv, 0x61002c, (1 << head), (0 << head));
+   nv_mask(event->priv, 0x61002c, (4 << head), 0);
 }

 static int



[PATCH] drm/nouveau: fix regression in vblanking

2013-03-05 Thread Maarten Lankhorst
nv50_vblank_enable/disable got switched from 
NV50_PDISPLAY_INTR_EN_1_VBLANK_CRTC_0 (4)  head to 1  head, which is wrong.

4  head is the correct value.

Fixes regression with vblanking since 1d7c71a3e2f77 drm/nouveau/disp: port 
vblank handling to event interface

Signed-off-by: Maarten Lankhorst maarten.lankho...@canonical.com
---
diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c 
b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
index 5fa1326..02e369f 100644
--- a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
+++ b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
@@ -544,13 +544,13 @@ nv50_disp_curs_ofuncs = {
 static void
 nv50_disp_base_vblank_enable(struct nouveau_event *event, int head)
 {
-   nv_mask(event-priv, 0x61002c, (1  head), (1  head));
+   nv_mask(event-priv, 0x61002c, (4  head), (4  head));
 }
 
 static void
 nv50_disp_base_vblank_disable(struct nouveau_event *event, int head)
 {
-   nv_mask(event-priv, 0x61002c, (1  head), (0  head));
+   nv_mask(event-priv, 0x61002c, (4  head), 0);
 }
 
 static int

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [PATCH] drm/nouveau: fix regression in vblanking

2013-03-05 Thread Marcin Slusarz
On Tue, Mar 05, 2013 at 02:59:26PM +0100, Maarten Lankhorst wrote:
 nv50_vblank_enable/disable got switched from 
 NV50_PDISPLAY_INTR_EN_1_VBLANK_CRTC_0 (4)  head to 1  head, which is 
 wrong.
 
 4  head is the correct value.
 
 Fixes regression with vblanking since 1d7c71a3e2f77 drm/nouveau/disp: port 
 vblank handling to event interface
 
 Signed-off-by: Maarten Lankhorst maarten.lankho...@canonical.com
 ---
 diff --git a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c 
 b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
 index 5fa1326..02e369f 100644
 --- a/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
 +++ b/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c
 @@ -544,13 +544,13 @@ nv50_disp_curs_ofuncs = {
  static void
  nv50_disp_base_vblank_enable(struct nouveau_event *event, int head)
  {
 - nv_mask(event-priv, 0x61002c, (1  head), (1  head));
 + nv_mask(event-priv, 0x61002c, (4  head), (4  head));
  }
  
  static void
  nv50_disp_base_vblank_disable(struct nouveau_event *event, int head)
  {
 - nv_mask(event-priv, 0x61002c, (1  head), (0  head));
 + nv_mask(event-priv, 0x61002c, (4  head), 0);
  }
  
  static int
 

It fixes vblank on my NVA8, thanks.

Tested-by: Marcin Slusarz marcin.slus...@gmail.com
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel