Re: [Nouveau] Fix for vblank on nvc0

2012-11-11 Thread Marcin Slusarz
On Tue, Nov 06, 2012 at 07:30:00PM +0100, Maarten Lankhorst wrote:
 
 
 Op 06-11-12 15:48, Kelly Doran schreef:
  The vblank on nvc0 was not working correctly and would freeze X, I managed
  to track it down and fix it with some help from m.b.lankhorst, see
  https://bugs.freedesktop.org/show_bug.cgi?id=56692 for details.
 
 Reviewed-by: Maarten Lankhorst maarten.lankho...@canonical.com
 
 I recommended the bar flush since nvd0 does as well, and there might be a 
 small race
 otherwise.
 
 Can this still get in before final 3.7 release?

This patch breaks vblank here (nv92) completely.

[ 6879.200427] Console: switching to colour VGA+ 80x25
[ 6879.202884] drm: unregistered panic notifier
[ 6879.334278] [TTM] Finalizing pool allocator
[ 6879.334518] [TTM] Finalizing DMA pool allocator
[ 6879.334765] [TTM] Zone  kernel: Used memory at exit: 0 kiB
[ 6879.335004] [TTM] Zone   dma32: Used memory at exit: 0 kiB
[ 6879.340472] [drm] Module unloaded
[ 6879.397744] [drm] Initialized drm 1.1.0 20060810
[ 6879.408149] nouveau  [  DEVICE][:02:00.0] BOOT0  : 0x092a00a2
[ 6879.408401] nouveau  [  DEVICE][:02:00.0] Chipset: G92 (NV92)
[ 6879.408641] nouveau  [  DEVICE][:02:00.0] Family : NV50
[ 6879.409752] nouveau  [   VBIOS][:02:00.0] checking PRAMIN for image...
[ 6879.409997] nouveau  [   VBIOS][:02:00.0] ... signature not found
[ 6879.410236] nouveau  [   VBIOS][:02:00.0] checking PROM for image...
[ 6879.549018] nouveau  [   VBIOS][:02:00.0] ... appears to be valid
[ 6879.549259] nouveau  [   VBIOS][:02:00.0] using image from PROM
[ 6879.549640] nouveau  [   VBIOS][:02:00.0] BIT signature found
[ 6879.549879] nouveau  [   VBIOS][:02:00.0] version 62.92.63.00
[ 6879.570275] nouveau  [ MXM][:02:00.0] no VBIOS data, nothing to do
[ 6879.572488] nouveau  [ PFB][:02:00.0] RAM type: GDDR3
[ 6879.572726] nouveau  [ PFB][:02:00.0] RAM size: 512 MiB
[ 6879.572964] nouveau  [ PFB][:02:00.0]ZCOMP: 4032 tags
[ 6879.597652] [TTM] Zone  kernel: Available graphics memory: 3047140 kiB
[ 6879.597892] [TTM] Zone   dma32: Available graphics memory: 2097152 kiB
[ 6879.598130] [TTM] Initializing pool allocator
[ 6879.598367] [TTM] Initializing DMA pool allocator
[ 6879.602860] nouveau  [ DRM] VRAM: 512 MiB
[ 6879.603102] nouveau  [ DRM] GART: 512 MiB
[ 6879.603339] nouveau  [ DRM] BIT BIOS found
[ 6879.603575] nouveau  [ DRM] Bios version 62.92.63.00
[ 6879.603813] nouveau  [ DRM] TMDS table version 2.0
[ 6879.604050] nouveau  [ DRM] DCB version 4.0
[ 6879.604287] nouveau  [ DRM] DCB outp 00: 02000300 0028
[ 6879.604524] nouveau  [ DRM] DCB outp 01: 01000302 00020030
[ 6879.604763] nouveau  [ DRM] DCB outp 02: 04011310 0028
[ 6879.605000] nouveau  [ DRM] DCB outp 03: 02011312 00020030
[ 6879.605238] nouveau  [ DRM] DCB conn 00: 1030
[ 6879.605516] nouveau  [ DRM] DCB conn 01: 2130
[ 6879.648012] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[ 6879.648257] [drm] No driver support for vblank timestamp query.
[ 6879.648708] nouveau  [ DRM] 1 available performance level(s)
[ 6879.648953] nouveau  [ DRM] 3: core 650MHz shader 1625MHz memory 1000MHz 
voltage 1050mV fanspeed 100%
[ 6879.649391] nouveau  [ DRM] c: core 399MHz shader 810MHz memory 399MHz 
voltage 1050mV fanspeed 34%
[ 6879.693947] nouveau  [ DRM] MM: using CRYPT for buffer copies
[ 6879.791680] nouveau  [ DRM] allocated 1920x1080 fb: 0x7, bo 
880018f20800
[ 6879.792175] fbcon: nouveaufb (fb0) is primary device
[ 6879.850216] Console: switching to colour frame buffer device 240x67
[ 6879.897075] fb0: nouveaufb frame buffer device
[ 6879.897075] drm: registered panic notifier
[ 6879.897078] [drm] Initialized nouveau 1.1.0 20120801 for :02:00.0 on 
minor 0
I'm starting glxgears here
xorg hangs, with occasional mouse movement
[ 6907.054696] nouveau  [   PFIFO][:02:00.0] unknown intr 0x0040, ch 2
pkill glxgears from fbcon
[ 6963.987969] nouveau E[   15318] failed to idle channel 0x
xorg still hangs
[ 7034.713069] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_2D - TP 0 - Unknown 
fault at address 002006
[ 7034.713167] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_2D - TP 0 - e0c: 
, e18: , e1c: , e20: 0037, e24: 0c03
[ 7034.713286] nouveau  [  PGRAPH][:02:00.0]  TRAP
[ 7034.713353] nouveau E[  PGRAPH][:02:00.0] ch 2 [0x001faf9000] subc 2 
class 0x502d mthd 0x060c data 0x000b
[ 7034.713454] nouveau E[ PFB][:02:00.0] trapped write at 0x00 
on channel 0x0001fea0 PEEPHOLE/PFIFO_WRITE/00 reason: NULL_DMAOBJ
[ 7034.713624] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_RT - TP 0 - Unknown 
fault at address 002006
[ 7034.713713] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_RT - TP 0 - e0c: 
, e18: , e1c: 0002, e20: 3b00, e24: 0003
[ 7034.713834] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_RT - TP 1 - 

Re: [Nouveau] Fix for vblank on nvc0

2012-11-11 Thread Marcin Slusarz
On Sun, Nov 11, 2012 at 07:26:17PM +0100, Marcin Slusarz wrote:
 On Tue, Nov 06, 2012 at 07:30:00PM +0100, Maarten Lankhorst wrote:
  
  
  Op 06-11-12 15:48, Kelly Doran schreef:
   The vblank on nvc0 was not working correctly and would freeze X, I managed
   to track it down and fix it with some help from m.b.lankhorst, see
   https://bugs.freedesktop.org/show_bug.cgi?id=56692 for details.
  
  Reviewed-by: Maarten Lankhorst maarten.lankho...@canonical.com
  
  I recommended the bar flush since nvd0 does as well, and there might be a 
  small race
  otherwise.
  
  Can this still get in before final 3.7 release?
 
 This patch breaks vblank here (nv92) completely.
 
 [ 6879.200427] Console: switching to colour VGA+ 80x25
 [ 6879.202884] drm: unregistered panic notifier
 [ 6879.334278] [TTM] Finalizing pool allocator
 [ 6879.334518] [TTM] Finalizing DMA pool allocator
 [ 6879.334765] [TTM] Zone  kernel: Used memory at exit: 0 kiB
 [ 6879.335004] [TTM] Zone   dma32: Used memory at exit: 0 kiB
 [ 6879.340472] [drm] Module unloaded
 [ 6879.397744] [drm] Initialized drm 1.1.0 20060810
 [ 6879.408149] nouveau  [  DEVICE][:02:00.0] BOOT0  : 0x092a00a2
 [ 6879.408401] nouveau  [  DEVICE][:02:00.0] Chipset: G92 (NV92)
 [ 6879.408641] nouveau  [  DEVICE][:02:00.0] Family : NV50
 [ 6879.409752] nouveau  [   VBIOS][:02:00.0] checking PRAMIN for image...
 [ 6879.409997] nouveau  [   VBIOS][:02:00.0] ... signature not found
 [ 6879.410236] nouveau  [   VBIOS][:02:00.0] checking PROM for image...
 [ 6879.549018] nouveau  [   VBIOS][:02:00.0] ... appears to be valid
 [ 6879.549259] nouveau  [   VBIOS][:02:00.0] using image from PROM
 [ 6879.549640] nouveau  [   VBIOS][:02:00.0] BIT signature found
 [ 6879.549879] nouveau  [   VBIOS][:02:00.0] version 62.92.63.00
 [ 6879.570275] nouveau  [ MXM][:02:00.0] no VBIOS data, nothing to do
 [ 6879.572488] nouveau  [ PFB][:02:00.0] RAM type: GDDR3
 [ 6879.572726] nouveau  [ PFB][:02:00.0] RAM size: 512 MiB
 [ 6879.572964] nouveau  [ PFB][:02:00.0]ZCOMP: 4032 tags
 [ 6879.597652] [TTM] Zone  kernel: Available graphics memory: 3047140 kiB
 [ 6879.597892] [TTM] Zone   dma32: Available graphics memory: 2097152 kiB
 [ 6879.598130] [TTM] Initializing pool allocator
 [ 6879.598367] [TTM] Initializing DMA pool allocator
 [ 6879.602860] nouveau  [ DRM] VRAM: 512 MiB
 [ 6879.603102] nouveau  [ DRM] GART: 512 MiB
 [ 6879.603339] nouveau  [ DRM] BIT BIOS found
 [ 6879.603575] nouveau  [ DRM] Bios version 62.92.63.00
 [ 6879.603813] nouveau  [ DRM] TMDS table version 2.0
 [ 6879.604050] nouveau  [ DRM] DCB version 4.0
 [ 6879.604287] nouveau  [ DRM] DCB outp 00: 02000300 0028
 [ 6879.604524] nouveau  [ DRM] DCB outp 01: 01000302 00020030
 [ 6879.604763] nouveau  [ DRM] DCB outp 02: 04011310 0028
 [ 6879.605000] nouveau  [ DRM] DCB outp 03: 02011312 00020030
 [ 6879.605238] nouveau  [ DRM] DCB conn 00: 1030
 [ 6879.605516] nouveau  [ DRM] DCB conn 01: 2130
 [ 6879.648012] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
 [ 6879.648257] [drm] No driver support for vblank timestamp query.
 [ 6879.648708] nouveau  [ DRM] 1 available performance level(s)
 [ 6879.648953] nouveau  [ DRM] 3: core 650MHz shader 1625MHz memory 
 1000MHz voltage 1050mV fanspeed 100%
 [ 6879.649391] nouveau  [ DRM] c: core 399MHz shader 810MHz memory 399MHz 
 voltage 1050mV fanspeed 34%
 [ 6879.693947] nouveau  [ DRM] MM: using CRYPT for buffer copies
 [ 6879.791680] nouveau  [ DRM] allocated 1920x1080 fb: 0x7, bo 
 880018f20800
 [ 6879.792175] fbcon: nouveaufb (fb0) is primary device
 [ 6879.850216] Console: switching to colour frame buffer device 240x67
 [ 6879.897075] fb0: nouveaufb frame buffer device
 [ 6879.897075] drm: registered panic notifier
 [ 6879.897078] [drm] Initialized nouveau 1.1.0 20120801 for :02:00.0 on 
 minor 0
 I'm starting glxgears here
 xorg hangs, with occasional mouse movement
 [ 6907.054696] nouveau  [   PFIFO][:02:00.0] unknown intr 0x0040, ch 2
 pkill glxgears from fbcon
 [ 6963.987969] nouveau E[   15318] failed to idle channel 0x
 xorg still hangs
 [ 7034.713069] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_2D - TP 0 - 
 Unknown fault at address 002006
 [ 7034.713167] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_2D - TP 0 - e0c: 
 , e18: , e1c: , e20: 0037, e24: 0c03
 [ 7034.713286] nouveau  [  PGRAPH][:02:00.0]  TRAP
 [ 7034.713353] nouveau E[  PGRAPH][:02:00.0] ch 2 [0x001faf9000] subc 2 
 class 0x502d mthd 0x060c data 0x000b
 [ 7034.713454] nouveau E[ PFB][:02:00.0] trapped write at 
 0x00 on channel 0x0001fea0 PEEPHOLE/PFIFO_WRITE/00 reason: NULL_DMAOBJ
 [ 7034.713624] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_RT - TP 0 - 
 Unknown fault at address 002006
 [ 7034.713713] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_RT - 

Re: [Nouveau] Fix for vblank on nvc0

2012-11-11 Thread Kelly Doran
I was under the impression that the else block was only executed for nvc0
code, but maybe the nv92 code was executing it too, so that may need an
extra code block to work again.  Otherwise the bar flush in the nv50
section is causing the problems...  I can write up some patches later if
you want but I don't have any cards from these chipsets to test with, and I
gotta go for the afternoon.

On Sun, Nov 11, 2012 at 12:35 PM, Marcin Slusarz
marcin.slus...@gmail.comwrote:

 On Sun, Nov 11, 2012 at 07:26:17PM +0100, Marcin Slusarz wrote:
  On Tue, Nov 06, 2012 at 07:30:00PM +0100, Maarten Lankhorst wrote:
  
  
   Op 06-11-12 15:48, Kelly Doran schreef:
The vblank on nvc0 was not working correctly and would freeze X, I
 managed
to track it down and fix it with some help from m.b.lankhorst, see
https://bugs.freedesktop.org/show_bug.cgi?id=56692 for details.
   
   Reviewed-by: Maarten Lankhorst maarten.lankho...@canonical.com
  
   I recommended the bar flush since nvd0 does as well, and there might
 be a small race
   otherwise.
  
   Can this still get in before final 3.7 release?
 
  This patch breaks vblank here (nv92) completely.
 
  [ 6879.200427] Console: switching to colour VGA+ 80x25
  [ 6879.202884] drm: unregistered panic notifier
  [ 6879.334278] [TTM] Finalizing pool allocator
  [ 6879.334518] [TTM] Finalizing DMA pool allocator
  [ 6879.334765] [TTM] Zone  kernel: Used memory at exit: 0 kiB
  [ 6879.335004] [TTM] Zone   dma32: Used memory at exit: 0 kiB
  [ 6879.340472] [drm] Module unloaded
  [ 6879.397744] [drm] Initialized drm 1.1.0 20060810
  [ 6879.408149] nouveau  [  DEVICE][:02:00.0] BOOT0  : 0x092a00a2
  [ 6879.408401] nouveau  [  DEVICE][:02:00.0] Chipset: G92 (NV92)
  [ 6879.408641] nouveau  [  DEVICE][:02:00.0] Family : NV50
  [ 6879.409752] nouveau  [   VBIOS][:02:00.0] checking PRAMIN for
 image...
  [ 6879.409997] nouveau  [   VBIOS][:02:00.0] ... signature not found
  [ 6879.410236] nouveau  [   VBIOS][:02:00.0] checking PROM for
 image...
  [ 6879.549018] nouveau  [   VBIOS][:02:00.0] ... appears to be valid
  [ 6879.549259] nouveau  [   VBIOS][:02:00.0] using image from PROM
  [ 6879.549640] nouveau  [   VBIOS][:02:00.0] BIT signature found
  [ 6879.549879] nouveau  [   VBIOS][:02:00.0] version 62.92.63.00
  [ 6879.570275] nouveau  [ MXM][:02:00.0] no VBIOS data, nothing
 to do
  [ 6879.572488] nouveau  [ PFB][:02:00.0] RAM type: GDDR3
  [ 6879.572726] nouveau  [ PFB][:02:00.0] RAM size: 512 MiB
  [ 6879.572964] nouveau  [ PFB][:02:00.0]ZCOMP: 4032 tags
  [ 6879.597652] [TTM] Zone  kernel: Available graphics memory: 3047140 kiB
  [ 6879.597892] [TTM] Zone   dma32: Available graphics memory: 2097152 kiB
  [ 6879.598130] [TTM] Initializing pool allocator
  [ 6879.598367] [TTM] Initializing DMA pool allocator
  [ 6879.602860] nouveau  [ DRM] VRAM: 512 MiB
  [ 6879.603102] nouveau  [ DRM] GART: 512 MiB
  [ 6879.603339] nouveau  [ DRM] BIT BIOS found
  [ 6879.603575] nouveau  [ DRM] Bios version 62.92.63.00
  [ 6879.603813] nouveau  [ DRM] TMDS table version 2.0
  [ 6879.604050] nouveau  [ DRM] DCB version 4.0
  [ 6879.604287] nouveau  [ DRM] DCB outp 00: 02000300 0028
  [ 6879.604524] nouveau  [ DRM] DCB outp 01: 01000302 00020030
  [ 6879.604763] nouveau  [ DRM] DCB outp 02: 04011310 0028
  [ 6879.605000] nouveau  [ DRM] DCB outp 03: 02011312 00020030
  [ 6879.605238] nouveau  [ DRM] DCB conn 00: 1030
  [ 6879.605516] nouveau  [ DRM] DCB conn 01: 2130
  [ 6879.648012] [drm] Supports vblank timestamp caching Rev 1
 (10.10.2010).
  [ 6879.648257] [drm] No driver support for vblank timestamp query.
  [ 6879.648708] nouveau  [ DRM] 1 available performance level(s)
  [ 6879.648953] nouveau  [ DRM] 3: core 650MHz shader 1625MHz memory
 1000MHz voltage 1050mV fanspeed 100%
  [ 6879.649391] nouveau  [ DRM] c: core 399MHz shader 810MHz memory
 399MHz voltage 1050mV fanspeed 34%
  [ 6879.693947] nouveau  [ DRM] MM: using CRYPT for buffer copies
  [ 6879.791680] nouveau  [ DRM] allocated 1920x1080 fb: 0x7, bo
 880018f20800
  [ 6879.792175] fbcon: nouveaufb (fb0) is primary device
  [ 6879.850216] Console: switching to colour frame buffer device 240x67
  [ 6879.897075] fb0: nouveaufb frame buffer device
  [ 6879.897075] drm: registered panic notifier
  [ 6879.897078] [drm] Initialized nouveau 1.1.0 20120801 for :02:00.0
 on minor 0
  I'm starting glxgears here
  xorg hangs, with occasional mouse movement
  [ 6907.054696] nouveau  [   PFIFO][:02:00.0] unknown intr
 0x0040, ch 2
  pkill glxgears from fbcon
  [ 6963.987969] nouveau E[   15318] failed to idle channel 0x
  xorg still hangs
  [ 7034.713069] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_2D - TP 0 -
 Unknown fault at address 002006
  [ 7034.713167] nouveau E[  PGRAPH][:02:00.0] TRAP_TPDMA_2D - TP 0 -
 e0c: , e18: , 

Re: [Nouveau] [PATCH] drm/nv50: decode PGRAPH status registers on TLB flush fail

2012-11-11 Thread Marcin Slusarz
On Wed, Nov 07, 2012 at 08:04:41PM +0100, Marcin Slusarz wrote:
 On Wed, Nov 07, 2012 at 10:08:47AM +1000, Ben Skeggs wrote:
  On Tue, Nov 06, 2012 at 10:48:52PM +0100, Marcin Slusarz wrote:
   Now it outputs:
   nouveau E[  PGRAPH][:02:00.0] PGRAPH TLB flush idle timeout fail
   nouveau E[  PGRAPH][:02:00.0] PGRAPH_STATUS: BUSY DISPATCH VFETCH 
   CCACHE_UNK4 STRMOUT_GSCHED_UNK5 UNK14XX UNK1CXX CLIPID ZCULL ENG2D 
   UNK34XX TPRAST TPROP ROP (0x011fde03)
   nouveau E[  PGRAPH][:02:00.0] PGRAPH_VSTATUS: CCACHE (0x00145b4d) 
   (0x002d) ENG2D ROP (0x0034db40)
  
  How about this instead?
  
  PGRAPH_STATUS  : 0x011fde03 [BUSY DISPATCH VFETCH CCACHE_UNK4 
  STRMOUT_GSCHED_UNK5 UNK14XX UNK1CXX CLIPID ZCULL ENG2D UNK34XX TPRAST TPROP 
  ROP]
  PGRAPH_VSTATUS0: 0x00145b4d [CCACHE]
  PGRAPH_VSTATUS1: 0x002d []
  PGRAPH_VSTATUS2: 0x0034db40 [ENG2D ROP]
 
 Looks good too. I'll post updated patch tomorrow.

I removed square brackets to make this code as simple as possible (think about
last space before ]).
---
From: Marcin Slusarz marcin.slus...@gmail.com
Subject: [PATCH] drm/nv50: decode PGRAPH status registers on TLB flush fail

Now it prints:
nouveau E[  PGRAPH][:02:00.0] PGRAPH TLB flush idle timeout fail
nouveau E[  PGRAPH][:02:00.0] PGRAPH_STATUS  : 0x011fde03 BUSY DISPATCH 
VFETCH CCACHE_UNK4 STRMOUT_GSCHED_UNK5 UNK14XX UNK1CXX CLIPID ZCULL ENG2D 
UNK34XX TPRAST TPROP ROP
nouveau E[  PGRAPH][:02:00.0] PGRAPH_VSTATUS0: 0x00145b4d CCACHE
nouveau E[  PGRAPH][:02:00.0] PGRAPH_VSTATUS0: 0x002d
nouveau E[  PGRAPH][:02:00.0] PGRAPH_VSTATUS0: 0x0034db40 ENG2D ROP

instead of:
[drm] nouveau :02:00.0: PGRAPH TLB flush idle timeout fail: 0x011fde03 
0x00145b4d 0x002d 0x0034db40

Signed-off-by: Marcin Slusarz marcin.slus...@gmail.com
---
 drivers/gpu/drm/nouveau/core/engine/graph/nv50.c | 76 ++--
 1 file changed, 72 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c 
b/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c
index ab3b9dc..0d67e86 100644
--- a/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c
+++ b/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c
@@ -184,6 +184,65 @@ nv50_graph_tlb_flush(struct nouveau_engine *engine)
return 0;
 }
 
+static const struct nouveau_bitfield nv50_pgraph_status[] = {
+   { 0x0001, BUSY }, /* set when any bit is set */
+   { 0x0002, DISPATCH },
+   { 0x0004, UNK2 },
+   { 0x0008, UNK3 },
+   { 0x0010, UNK4 },
+   { 0x0020, UNK5 },
+   { 0x0040, M2MF },
+   { 0x0080, UNK7 },
+   { 0x0100, CTXPROG },
+   { 0x0200, VFETCH },
+   { 0x0400, CCACHE_UNK4 },
+   { 0x0800, STRMOUT_GSCHED_UNK5 },
+   { 0x1000, UNK14XX },
+   { 0x2000, UNK24XX_CSCHED },
+   { 0x4000, UNK1CXX },
+   { 0x8000, CLIPID },
+   { 0x0001, ZCULL },
+   { 0x0002, ENG2D },
+   { 0x0004, UNK34XX },
+   { 0x0008, TPRAST },
+   { 0x0010, TPROP },
+   { 0x0020, TEX },
+   { 0x0040, TPVP },
+   { 0x0080, MP },
+   { 0x0100, ROP },
+   {}
+};
+
+static const char *const nv50_pgraph_vstatus_0[] = {
+   VFETCH, CCACHE, UNK4, UNK5, GSCHED, STRMOUT, UNK14XX, NULL
+};
+
+static const char *const nv50_pgraph_vstatus_1[] = {
+   TPRAST, TPROP, TEXTURE, TPVP, MP, NULL
+};
+
+static const char *const nv50_pgraph_vstatus_2[] = {
+   UNK24XX, CSCHED, UNK1CXX, CLIPID, ZCULL, ENG2D, UNK34XX,
+   ROP, NULL
+};
+
+static void nouveau_pgraph_vstatus_print(struct nv50_graph_priv *priv, int r,
+   const char *const units[], u32 status)
+{
+   int i;
+
+   nv_error(priv, PGRAPH_VSTATUS%d: 0x%08x, r, status);
+
+   for (i = 0; units[i]  status; i++) {
+   if ((status  7) == 1)
+   pr_cont( %s, units[i]);
+   status = 3;
+   }
+   if (status)
+   pr_cont( (invalid: 0x%x), status);
+   pr_cont(\n);
+}
+
 static int
 nv84_graph_tlb_flush(struct nouveau_engine *engine)
 {
@@ -219,10 +278,19 @@ nv84_graph_tlb_flush(struct nouveau_engine *engine)
 !(timeout = ptimer-read(ptimer) - start  20));
 
if (timeout) {
-   nv_error(priv, PGRAPH TLB flush idle timeout fail: 
- 0x%08x 0x%08x 0x%08x 0x%08x\n,
-nv_rd32(priv, 0x400700), nv_rd32(priv, 0x400380),
-nv_rd32(priv, 0x400384), nv_rd32(priv, 0x400388));
+   nv_error(priv, PGRAPH TLB flush idle timeout fail\n);
+
+   tmp = nv_rd32(priv, 0x400700);
+   nv_error(priv, PGRAPH_STATUS  : 0x%08x, tmp);
+   nouveau_bitfield_print(nv50_pgraph_status, tmp);
+   pr_cont(\n);
+
+   nouveau_pgraph_vstatus_print(priv, 0, nv50_pgraph_vstatus_0,
+   nv_rd32(priv, 0x400380));
+   

[Nouveau] [PATCH] drm/nouveau: remove unused variable from nouveau_bios_shadow_of

2012-11-11 Thread Marcin Slusarz
drivers/gpu/drm/nouveau/core/subdev/bios/base.c: warning: unused variable 'i'

Reported-by: Geert Uytterhoeven ge...@linux-m68k.org
Signed-off-by: Marcin Slusarz marcin.slus...@gmail.com
---

It's powerpc only code, so this wasn't compile tested.

---
 drivers/gpu/drm/nouveau/core/subdev/bios/base.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/nouveau/core/subdev/bios/base.c 
b/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
index 1cf818d..8963e36 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
+++ b/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
@@ -63,7 +63,7 @@ nouveau_bios_shadow_of(struct nouveau_bios *bios)
struct pci_dev *pdev = nv_device(bios)-pdev;
struct device_node *dn;
const u32 *data;
-   int size, i;
+   int size;
 
dn = pci_device_to_OF_node(pdev);
if (!dn) {
-- 
1.7.12

___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


[Nouveau] [Bug 56461] NV11 black screen kernel hang on loading nouveaufb

2012-11-11 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=56461

--- Comment #3 from Marcin Slusarz marcin.slus...@gmail.com ---
Please attach VBIOS image. See
http://nouveau.freedesktop.org/wiki/DumpingVideoBios for description how to
obtain it.

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


Re: [Nouveau] [PATCH] kms: Let the server know if we got more than 1 EDID block

2012-11-11 Thread Emil Velikov
On 04/11/12 18:06, Emil Velikov wrote:
 Verbatim copy from xf86-video-radeon commit 809cacb
 
 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32341
 Signed-off-by: Emil Velikov emil.l.veli...@gmail.com
 ---
  src/drmmode_display.c | 5 -
  1 file changed, 4 insertions(+), 1 deletion(-)
 
 diff --git a/src/drmmode_display.c b/src/drmmode_display.c
 index 803785d..8ec69f5 100644
 --- a/src/drmmode_display.c
 +++ b/src/drmmode_display.c
 @@ -640,9 +640,12 @@ drmmode_output_get_modes(xf86OutputPtr output)
   drmModeFreeProperty(props);
   }
  
 - if (drmmode_output-edid_blob)
 + if (drmmode_output-edid_blob) {
   ddc_mon = xf86InterpretEDID(output-scrn-scrnIndex,
   drmmode_output-edid_blob-data);
 + if (ddc_mon  drmmode_output-edid_blob-length  128)
 + ddc_mon-flags |= MONITOR_EDID_COMPLETE_RAWDATA;
 + }
   xf86OutputSetEDID(output, ddc_mon);
  
   /* modes should already be available */
 
ping
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


Re: [Nouveau] [PATCH] kms: Let the server know if we got more than 1 EDID block

2012-11-11 Thread Marcin Slusarz
On Sun, Nov 11, 2012 at 08:09:08PM +, Emil Velikov wrote:
 On 04/11/12 18:06, Emil Velikov wrote:
  Verbatim copy from xf86-video-radeon commit 809cacb

s/radeon/ati/

Here's direct link: 
http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=809cacb

  
  Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32341
  Signed-off-by: Emil Velikov emil.l.veli...@gmail.com
  ---
   src/drmmode_display.c | 5 -
   1 file changed, 4 insertions(+), 1 deletion(-)
  
  diff --git a/src/drmmode_display.c b/src/drmmode_display.c
  index 803785d..8ec69f5 100644
  --- a/src/drmmode_display.c
  +++ b/src/drmmode_display.c
  @@ -640,9 +640,12 @@ drmmode_output_get_modes(xf86OutputPtr output)
  drmModeFreeProperty(props);
  }
   
  -   if (drmmode_output-edid_blob)
  +   if (drmmode_output-edid_blob) {
  ddc_mon = xf86InterpretEDID(output-scrn-scrnIndex,
  drmmode_output-edid_blob-data);
  +   if (ddc_mon  drmmode_output-edid_blob-length  128)
  +   ddc_mon-flags |= MONITOR_EDID_COMPLETE_RAWDATA;
  +   }
  xf86OutputSetEDID(output, ddc_mon);
   
  /* modes should already be available */
  
 ping

Cc'ing Adam.

___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


Re: [Nouveau] Fix for vblank on nvc0

2012-11-11 Thread Maarten Lankhorst
Op 11-11-12 19:35, Marcin Slusarz schreef:
 On Sun, Nov 11, 2012 at 07:26:17PM +0100, Marcin Slusarz wrote:
 On Tue, Nov 06, 2012 at 07:30:00PM +0100, Maarten Lankhorst wrote:

 Op 06-11-12 15:48, Kelly Doran schreef:
 The vblank on nvc0 was not working correctly and would freeze X, I managed
 to track it down and fix it with some help from m.b.lankhorst, see
 https://bugs.freedesktop.org/show_bug.cgi?id=56692 for details.

 Reviewed-by: Maarten Lankhorst maarten.lankho...@canonical.com

 I recommended the bar flush since nvd0 does as well, and there might be a 
 small race
 otherwise.

 Can this still get in before final 3.7 release?
 This patch breaks vblank here (nv92) completely.
Does removing the bar flush help?

~Maarte
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


[Nouveau] [Bug 48464] Crash when GLXVBlank set to true

2012-11-11 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=48464

Marcin Slusarz marcin.slus...@gmail.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


[Nouveau] [Bug 53219] ION: crash in nouveau_mm_head+0x37/0x170 (regression of module rework)

2012-11-11 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=53219

--- Comment #2 from Marcin Slusarz marcin.slus...@gmail.com ---
I think this bug was recently fixed.

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commit;h=5cad16acd25b16681a060d28d10eeacf98d07701
or
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commit;h=a7dbf00433fa9dc6f4a3828a17d56a9df2bd06b1

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


Re: [Nouveau] Linux 3.7 Nouveau msi module parameter

2012-11-11 Thread Daniel J Blueman
On 10 November 2012 19:31, Rui Salvaterra rsalvate...@gmail.com wrote:
 I noticed the nouveau module dropped support for the msi parameter on Linux
 3.7. I've been enabling message signaled interrupts on my ION/MCP79 for a
 while with no adverse effects. Is this intended behaviour our just fallout
 from the rewrite? (I'm not subscribed to this mailing list.)

I was going to ask exactly the same question. For some platforms
IOAPICs (thus legacy interrupts) aren't possible eg with PCIe hotplug
or such, so MSI interrupts are required. The PCIe spec mandates that
they are available for perhaps these purposes, just there is no
mechanism in linux to test and fall back to legacy interrupts if there
are platform issues.

Thanks,
  Daniel
--
Daniel J Blueman
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


[Nouveau] [Bug 56601] 9600m GT HDMI output no video or audio.

2012-11-11 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=56601

Kevin N. vek...@gmail.com changed:

   What|Removed |Added

 Status|NEEDINFO|REOPENED

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


[Nouveau] [Bug 47965] I can't modify brightness with nVidia 1000m Quadro

2012-11-11 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=47965

--- Comment #6 from Charles-Antoine Couret cacou...@wanadoo.fr ---
I would help your to solve this bug, but I don't know how how... Do you need
more information ? An another action ?

-- 
You are receiving this mail because:
You are the assignee for the bug.
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau