Bumping Unichrome Mesa dri driver version number?

2004-11-18 Thread Thomas Hellström
Hi!

Could somebody with CVS access to the Mesa tree bump the drm version
number that the unichrome_dri driver expects from 1.1.x to 2.0.x?

We had to bump the via drm major version a couple of weeks ago due to a
fix on a bad IOCTL interface.

Also I think the unichrome_dri driver needs to update it's definition of
the private sarea.

/Thomas




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: Bad display on Radeon when DRI syncd w vblank

2004-11-18 Thread Felix Kühling
Am Do, den 18.11.2004 schrieb Kevin O'Brien um 8:03:
 I need to get a animated line drawing graphics package working on a
 Radeon 9000 without artifacts.  Currently, I get remnants of the
 previous frame after glXSwapBuffers on large windows, 1024x768 for
 example.  This results in a tearing effect on the screen.
 
 Pseudo code:
 glFinish();
 glXSwapBuffers(dpy, win);
 glFinish();
 PrintCurrentVerticalLine();  // reads current vline from Radeon chip
 
 The value reported by the code is approx. the scan line where the
 tearing occurs.
 
 This can also be demonstrated with glxgears by resizing the window to
 1024x768 and moving the window up high enough so the title bar is mostly
 hidden.  /etc/drirc has vblank_mode set to 3 for all apps, including
 glxgears.
 
 As a test application, I create a window and draw a vertical line where
 the x component increases by one each frame.  If the window is small
 enough, there is no problem; large enough, it tears  The portion of the
 previous frame is related to the size of the window.
 
 I've also tried setting vblank_mode to 0 and invoking:
 
 drm_wait_vblank_t ioctl_arg;
 glFinish();
 ioctl_arg.request.type = _DRM_VBLANK_RELATIVE;
 ioctl_arg.request.sequence = 1;
 ioctl(fd, DRM_IOCTL_WAIT_VBLANK, ioctl_arg);
 glXSwapBuffers(dpy, win);
 glFinish();
 PrintCurrentVerticalLine();
 
 and the results are the same as before.
 
 My environment:
 Multiple computers
 Xorg 6.8.0-r1 (Gentoo) or XFree 4.3.99 (SuSE 9.1)
 Radeon Mobility 9000 M9 or Radeon Mobility 7500 M7
 Desktop: 1024x768 16bit or 24bit
 Xorg/XFree w/ DRI/DRM or Xorg w/ ATI's proprietary driver.
 
 I don't see this effect when using an nVidia Corporation NV18 [GeForce4
 MX] w/ nVidia's drivers.  Unfortunately, I have to get a Radeon solution
 working.
 
 Any thoughts where to look for a solution, or why it is related to
 window size, would be greatly appreciated.

There is a problem in the radeon driver WRT to waiting for the refresh.
The driver can wait for the refresh but there is no guarantee that the
next operation can take place immediately, because there may still be
more commands pending in the command queue. Calling glFinish before
glXSwapBuffers should normally fix this. If there is still visible
tearing the only reason I could imagine is that the blit from back
buffer to front buffer takes longer than the vertical retrace. In that
case page flipping might solve your problem. Set 'Option
EnablePageFlip true' in the Device section of xorg.conf or
XF86Config[-4] respectively.

Also make sure that interrupts are working. Does the radeon DRM show up
in /proc/interrupts?

 
 TIA,
 
 Kevin O'Brien

HTH,
  Felix

-- 
| Felix Kühling [EMAIL PROTECTED] http://fxk.de.vu |
| PGP Fingerprint: 6A3C 9566 5B30 DDED 73C3  B152 151C 5CC1 D888 E595 |



---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: Bumping Unichrome Mesa dri driver version number?

2004-11-18 Thread Keith Whitwell
Thomas Hellström wrote:
Hi!
Could somebody with CVS access to the Mesa tree bump the drm version
number that the unichrome_dri driver expects from 1.1.x to 2.0.x?
We had to bump the via drm major version a couple of weeks ago due to a
fix on a bad IOCTL interface.
Also I think the unichrome_dri driver needs to update it's definition of
the private sarea.
Is CVS back online (properly)?  The website is still down.
I'll do this once Daniel's finished mucking with it.
Keith
---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: Bumping Unichrome Mesa dri driver version number?

2004-11-18 Thread Thomas Hellström
Keith Whitwell wrote:
Thomas Hellström wrote:
Hi!
Could somebody with CVS access to the Mesa tree bump the drm version
number that the unichrome_dri driver expects from 1.1.x to 2.0.x?
We had to bump the via drm major version a couple of weeks ago due to a
fix on a bad IOCTL interface.
Also I think the unichrome_dri driver needs to update it's definition of
the private sarea.

Is CVS back online (properly)?  The website is still down.
I'll do this once Daniel's finished mucking with it.
Keith

Thanks!
/Thomas

---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-deve
l


---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Freedesktop.org (DRI and Mesa) aren't up, again?

2004-11-18 Thread Dieter Ntzel
/opt/Mesa date
Do Nov 18 20:36:13 CET 2004

/opt/Mesa cvs update
cvs [update aborted]: connect to pdx.freedesktop.org(131.252.208.82):2401 
failed: Connection refused

dri-trunk/xc cvs update
cvs [update aborted]: connect to dri.freedesktop.org(131.252.208.82):2401 
failed: Connection refused

Thanks,
Dieter


---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: Freedesktop.org (DRI and Mesa) aren't up, again?

2004-11-18 Thread sjhill
 /opt/Mesa cvs update
 cvs [update aborted]: connect to pdx.freedesktop.org(131.252.208.82):2401 
 failed: Connection refused
 
Read www.freedesktop.org...the machine was compromised and CVS has
been shut down.

-Steve


---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


dri triple buffering?

2004-11-18 Thread Dave Airlie

I've got my internal app currently running with vblank_mode=2 at 60Hz, if
I put in vblank_mode=3 I get a drop to about 40Hz which is no good for
what I need I'm told that triple buffering might be the solution to
this, does anyone know how much work this would be to implement in the
radeon/r200 drivers? or dri in general?

Initially I'd like to do it for a single full screen app (my case) and not
worry about the issues with multiple apps...

I would assume I need to allocate a 3rd buffer (wayback buffer...) in VRAM
and have the bufferswap take an extra step to go wayback-back-front..

Dave.

-- 
David Airlie, Software Engineer
http://www.skynet.ie/~airlied / airlied at skynet.ie
pam_smb / Linux DECstation / Linux VAX / ILUG person



---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: compatibility problem with drm-core.

2004-11-18 Thread Thomas Hellström
Hi!
Jon Smirl wrote:
I think this is happening for Thomas because he is running an older X
server that isn't negotiating to the most current DRM interface.  I
believe the attached patch will fix the problem but we all need to
test it to make sure it doesn't have unintended side effects. I don' t
have an old X server around anymore to test for his exact problem.
 

The patch you sent fixes the problem.
/Thomas

---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: dri triple buffering?

2004-11-18 Thread Ian Romanick
Dave Airlie wrote:
I've got my internal app currently running with vblank_mode=2 at 60Hz, if
I put in vblank_mode=3 I get a drop to about 40Hz which is no good for
what I need I'm told that triple buffering might be the solution to
this, does anyone know how much work this would be to implement in the
radeon/r200 drivers? or dri in general?
Initially I'd like to do it for a single full screen app (my case) and not
worry about the issues with multiple apps...
I would assume I need to allocate a 3rd buffer (wayback buffer...) in VRAM
and have the bufferswap take an extra step to go wayback-back-front..
The problem with that is the X-server will have to render everything 3 
times.  That's going to suck.  You'll have some of the same problems 
that Jacek had with his stereo patch.

A better sollution would be to forget pageflipping and have two 
back-buffers.  The bufferswap routine would queue a blit from the 
current back-buffer to the front-buffer and switch back-buffers.  You 
might want to coordinate some of this with Jacek.

---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: compatibility problem with drm-core.

2004-11-18 Thread Jon Smirl
On Thu, 18 Nov 2004 22:13:23 +0100, Thomas Hellström
[EMAIL PROTECTED] wrote:
 The patch you sent fixes the problem.

I'm in the middle of moving to a new house so I will be off-line for
at least a few more days. I don't have internet access at the new
house yet, something is messed up in the CAT5 wiring. Maybe Dave can
take care of this or you will need to wait for me to get moved in.

-- 
Jon Smirl
[EMAIL PROTECTED]


---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: dri triple buffering?

2004-11-18 Thread Dave Airlie

 The problem with that is the X-server will have to render everything 3 times.
 That's going to suck.  You'll have some of the same problems that Jacek had
 with his stereo patch.

hehe, that's why I was mentioning only doing it for full screen apps :-),
I'm using solo in my application at the moment anyways... I've also not
used pageflipping as the Radeon M7 chip seems to have issues with it...
 
 The bufferswap routine would queue a blit from the current back-buffer to the
 front-buffer and switch back-buffers.  You might want to coordinate some of
 this with Jacek.

I think a fix in my app has made the tearing less often, I might get away
with it, I also realised triplebuffer is freerunning CPU user I would like
to use some of my CPU for other processes :-) so blocking on the swap is
useful feature...

Dave.

-- 
David Airlie, Software Engineer
http://www.skynet.ie/~airlied / airlied at skynet.ie
pam_smb / Linux DECstation / Linux VAX / ILUG person



---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: dri triple buffering?

2004-11-18 Thread Alan Cox
On Iau, 2004-11-18 at 23:22, Ian Romanick wrote:
 The problem with that is the X-server will have to render everything 3 
 times.  That's going to suck.  You'll have some of the same problems 
 that Jacek had with his stereo patch.

No the X server needs to render everything (expensive bit) _once_. It
needs to blit it to the other surfaces (cheap) once per surface.

Thats a very important distinction. Especially as the shadowfb code just
happens to include all the needed rectangle list stuff...

Alan



---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: Bad display on Radeon when DRI syncd w vblank

2004-11-18 Thread Kevin O'Brien

On Thu, 2004-11-18 at 03:57, Felix Khling wrote:
 Am Do, den 18.11.2004 schrieb Kevin O'Brien um 8:03:
  I need to get a animated line drawing graphics package working on a
  Radeon 9000 without artifacts.  Currently, I get remnants of the
  previous frame after glXSwapBuffers on large windows, 1024x768 for
  example.  This results in a tearing effect on the screen.
  
  Pseudo code:
  glFinish();
  glXSwapBuffers(dpy, win);
  glFinish();
  PrintCurrentVerticalLine();  // reads current vline from Radeon chip
  
  The value reported by the code is approx. the scan line where the
  tearing occurs.
  
  This can also be demonstrated with glxgears by resizing the window to
  1024x768 and moving the window up high enough so the title bar is mostly
  hidden.  /etc/drirc has vblank_mode set to 3 for all apps, including
  glxgears.
  
  As a test application, I create a window and draw a vertical line where
  the x component increases by one each frame.  If the window is small
  enough, there is no problem; large enough, it tears  The portion of the
  previous frame is related to the size of the window.
  
  I've also tried setting vblank_mode to 0 and invoking:
  
  drm_wait_vblank_t ioctl_arg;
  glFinish();
  ioctl_arg.request.type = _DRM_VBLANK_RELATIVE;
  ioctl_arg.request.sequence = 1;
  ioctl(fd, DRM_IOCTL_WAIT_VBLANK, ioctl_arg);
  glXSwapBuffers(dpy, win);
  glFinish();
  PrintCurrentVerticalLine();
  
  and the results are the same as before.
  
  My environment:
  Multiple computers
  Xorg 6.8.0-r1 (Gentoo) or XFree 4.3.99 (SuSE 9.1)
  Radeon Mobility 9000 M9 or Radeon Mobility 7500 M7
  Desktop: 1024x768 16bit or 24bit
  Xorg/XFree w/ DRI/DRM or Xorg w/ ATI's proprietary driver.
  
  I don't see this effect when using an nVidia Corporation NV18 [GeForce4
  MX] w/ nVidia's drivers.  Unfortunately, I have to get a Radeon solution
  working.
  
  Any thoughts where to look for a solution, or why it is related to
  window size, would be greatly appreciated.
 
 There is a problem in the radeon driver WRT to waiting for the refresh.
 The driver can wait for the refresh but there is no guarantee that the
 next operation can take place immediately, because there may still be
 more commands pending in the command queue. Calling glFinish before
 glXSwapBuffers should normally fix this. If there is still visible
 tearing the only reason I could imagine is that the blit from back
 buffer to front buffer takes longer than the vertical retrace. In that
 case page flipping might solve your problem. Set 'Option
 EnablePageFlip true' in the Device section of xorg.conf or
 XF86Config[-4] respectively.
 

Page flipping doesn't work with Merge Frame Buffer, another requirement.

 Also make sure that interrupts are working. Does the radeon DRM show up
 in /proc/interrupts?
 

Yes.

  
  TIA,
  
  Kevin O'Brien
 
 HTH,
   Felix

Thanks for the response.

Is there a way to ensure the Radeon blits from top to bottom? 
radeon_accelfuncs.c has code that suggests it is programming the chip
for top down blits.  And modifying the code to reverse the blit
direction has no effect on my problem.

Since blitting is faster than refresh rate, blitting from the top to
bottom should produce a tear free display - if the blit begins before
start of active display.

If the Radeon is blitting from bottom to top, a tear would occur if
the blit is longer than vertical blank when the active picture meets the
blit.

Reading the current vertical line for start of blit (return from
glXSwapBuffers) to end of blit (the glFinish following the
glXSwapBuffers) produces values suggesting a limit around 384K pixels
for bottom to top blits.  And windows sized this way reveal they're at
the boundary between tearing and tear free rendering.

Thanks again,

Kevin




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel