[Dri-devel] Re: [Mesa3d-dev] miniglx and DDX version checking

2004-03-15 Thread Keith Whitwell
Jon Smirl wrote:
I don't think they are necessary so the _SOLO defines could be extended. Keith
wrote the code  so I'm not sure what he intentions were.
--- Dave Airlie [EMAIL PROTECTED] wrote:

The current miniglx fakes up some DDX version numbers but these only work
for the radeon drivers, (4.0) is used, but the i810 drivers is only on
version 1.0,
Is there any need for this to be checked at all should the _SOLO defines
in utils.c:driCheckDriDdxDrmVersions be extended to cover the DDX check?
There's no need to check the faked up numbers.  Feel free to patch them out of 
existence, if possible.

Keith



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: Three proposed new generic DRM IOCTLs

2004-03-15 Thread Keith Whitwell
Michel Dnzer wrote:
On Sun, 2004-03-14 at 07:14, Jon Smirl wrote:

This is a first pass at the three new IOCTL patch.

It is against the DRM copy in the Mesa tree. 


And exactly why does that still exist? I know you don't listen to me,
but I don't think you can ignore Keith.
If there's any reason for this remaining, I'd like to hear it.  Keeping the 
headers is justifiable, I guess, but I don't want to see the DRM drivers 
living in two places.

If there's an argument that it's time to start a new tree for the DRM code to 
live in, I'm happy to progress in that direction.

In general, having one client of the drm blessed with the duty of holding 
the DRM code gives a skewed approach to the design of those modules.  Having 
them become a first-class project with their own tree  hopefully their own, 
concerned, developers looks like a more rational way forward.

So, I guess that's a vote from me for a new tree.  But certainly I don't want 
to see the guts of the DRM jump into the Mesa tree.

Keith



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: Three concepts for changing the way video works in Linux

2004-03-15 Thread llewelly
Michel Dänzer [EMAIL PROTECTED] writes:

 On Sun, 2004-03-14 at 21:00, Jon Smirl wrote:
  
  Linux's current design has lots of holes in it. Start two X servers on two
  different VTs (not just two sessions to the same X server) 
 
 How do you start two sessions to the same X server? *shrug*
 
  you're going to reboot your machine. 
 
 Works fine here...

Works fine for me too, but only one of the two Xservers is opengl
accelerated. I've been using this for months - I run ratpoison on
one Xserver and E on the other.



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id70alloc_id638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] Re: [Mesa3d-dev] miniglx and DDX version checking

2004-03-15 Thread Daniel Borca
Hi!

Yep, I had the same problems, trying to get the
TDFX/solo work.

Keith?

I don't think they are necessary so the _SOLO defines
could be extended. Keith wrote the code  so I'm not
sure what he intentions were.

--- Dave Airlie [EMAIL PROTECTED] wrote:
 
 The current miniglx fakes up some DDX version
 numbers but these only work
 for the radeon drivers, (4.0) is used, but the i810
 drivers is only on
 version 1.0,
 
 Is there any need for this to be checked at all
 should the _SOLO defines
 in utils.c:driCheckDriDdxDrmVersions be extended to
 cover the DDX check?
 
 Dave.
 
 -- 
 David Airlie, Software Engineer
 http://www.skynet.ie/~airlied / airlied at
skynet.ie
 pam_smb / Linux DECstation / Linux VAX / ILUG
person


=
Regards,
Borca Daniel

http://www.geocities.com/dborca/

__
Do you Yahoo!?
Yahoo! Mail - More reliable, more storage, less spam
http://mail.yahoo.com


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] DRM locks usage?

2004-03-15 Thread Thomas Hellström
Hi!

Is it possible to use the heavyweight drm locking mechanisms for other
locks than the global hardware lock?

What I'm after is a mechanism to suspend drm-aware processes until a
display resource gets available and then wake them up on a FIFO basis when
the process that currently holds the resource signals it's availability.
Typically processes hold the resource for at least 10 ms, so the global
lock is not an option; spinlocks are too cpu-consuming.

I was wondering if one could implement a second lock struct in the private
part of the SAREA and then use a drm IOCTL on that one, but briefly
browsing the headers I see no way to pass a private lock to the DRM?

Any help would be greatly appreciated.

Regards
Thomas



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id70alloc_id638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: [Dri-users] Binary incompatibility breaks snapshots (was: DRI savage on FC1 w/2.4)

2004-03-15 Thread avilella
I've got no problem with savage-20040303-linux.i386.tar.bz2,

Next step would be to have it working on 2.6:

Should I be following the steps in install.sh? Which differences are
there between 2.4 and 2.6 installation of DRM and DRI stuff?

Thanks,

Albert.


On Fri, 2004-03-12 at 15:33, Alex Deucher wrote:
 --- Felix Khling [EMAIL PROTECTED] wrote:
  On Fri, 12 Mar 2004 14:48:45 +
  avilella [EMAIL PROTECTED] wrote:
  
   The DRI seems to be enabled:
   
   -
  [snip]
  
  yes, looks good.
  
   -
   
   and here is the log of:
   
   [avb]$ LIBGL_DEBUG=verbose glxinfo
   
   -
   
   name of display: :0.0
   libGL: XF86DRIGetClientDriverName: 1.1.16 savage (screen 0)
   libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/savage_dri.so
   display: :0  screen: 0
   direct rendering: No
  [snip]
  
  This looks like the binary incompatibility. The old Xserver or
  server-side glx code (not sure) doesn't work correctly with the new
  client-side glx code. With a new Xserver compiled from CVS I get
  this:
  
  name of display: :0.0
  libGL: XF86DRIGetClientDriverName: 1.1.16 savage (screen 0)
  libGL: OpenDriver: trying
  /usr/X11R6-DRI/lib/modules/dri/savage_dri.so
  drmOpenByBusid: Searching for BusID pci::01:00.0
  drmOpenDevice: node name is /dev/dri/card0
  drmOpenDevice: open result is 4, (OK)
  drmOpenByBusid: drmOpenMinor returns 4
  drmOpenByBusid: drmGetBusid reports pci::01:00.0
  display: :0  screen: 0
  direct rendering: Yes
  [...]
  
  In other word, your only option is to compile from source until this
  is
  tracked down and fixed.
 
 we could provide an updated xfree86 binary and associated glx libs in
 the mean time.  I'm not sure which files we need off hand.
 
 Alex
 
  
  Regards,
Felix
  
 
 
 __
 Do you Yahoo!?
 Yahoo! Search - Find what youre looking for faster
 http://search.yahoo.com
 
 
 ---
 This SF.Net email is sponsored by: IBM Linux Tutorials
 Free Linux tutorial presented by Daniel Robbins, President and CEO of
 GenToo technologies. Learn everything from fundamentals to system
 administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
 --
 ___
 Dri-devel mailing list
 [EMAIL PROTECTED]
 https://lists.sourceforge.net/lists/listinfo/dri-devel
 
 



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: [Dri-users] Binary incompatibility breaks snapshots (was: DRI savage on FC1 w/2.4)

2004-03-15 Thread Felix Kühling
On Mon, 15 Mar 2004 09:01:16 +
avilella [EMAIL PROTECTED] wrote:

 I've got no problem with savage-20040303-linux.i386.tar.bz2,
 
 Next step would be to have it working on 2.6:
 
 Should I be following the steps in install.sh? Which differences are
 there between 2.4 and 2.6 installation of DRM and DRI stuff?

The driver works with 2.6, though PCI cards are currently not supported
with 2.6 kernels. But install.sh in the snapshots needs to be updated
for 2.6. I'm going to tackle this ASAP.

 
 Thanks,
 
 Albert.

Felix


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] [Bug 1811] Error during compile 2.6.1-rc2-mm1

2004-03-15 Thread bugme-daemon
http://bugme.osdl.org/show_bug.cgi?id=1811

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |CLOSED
 Resolution||CODE_FIX



--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] DRM locks usage?

2004-03-15 Thread Ian Romanick
Thomas Hellström wrote:
Hi!

Is it possible to use the heavyweight drm locking mechanisms for other
locks than the global hardware lock?
What I'm after is a mechanism to suspend drm-aware processes until a
display resource gets available and then wake them up on a FIFO basis when
the process that currently holds the resource signals it's availability.
Typically processes hold the resource for at least 10 ms, so the global
lock is not an option; spinlocks are too cpu-consuming.
I was wondering if one could implement a second lock struct in the private
part of the SAREA and then use a drm IOCTL on that one, but briefly
browsing the headers I see no way to pass a private lock to the DRM?
Any help would be greatly appreciated.
You should look at the way vblank interrupt waiting is handled in the 
radeon driver.  That works by just having the calling process block in 
an ioctl.  The other way to do it would be by using a standard futex. 
Either should work.



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id70alloc_id638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Three proposed new generic DRM IOCTLs

2004-03-15 Thread Ian Romanick
Jon Smirl wrote:

1) GET_VBIOS -- gets a copy of the board's video BIOS ROM. It is implemented
2) VGA_ENABLE -- this is used to control the active VGA card in the system.
3) BLANK - simple call to allow Vesa power management to blank the display.
How does all this work on non-x86 systems?  Since the rest of the world, 
thankfully, doesn't use compiled machine code in the on-card firmware, 
how is that handled?  *Is* that handled? :)



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] DRM in a standalone tree

2004-03-15 Thread Jon Smirl
Could someone with admin privs at fd.o please make a new project and put the two
DRM directories into it? It is probably easier to get them from
Mesa/src/mesa/drivers/dri/drm since the two directories are isolated there.
Right now the mesa and dri versions are identical so it doesn't matter.

If you would rather get them from the DRI tree you need:
dri/xc/xc/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel
dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel

As soon as this is done I will alter the mesa build process to use a pointer to
the new tree. That will allow us to keep everything building off from a single
copy of the h files preventing them from getting out of sync. After I get the
pointer working I'll remove the copy from mesa.


=
Jon Smirl
[EMAIL PROTECTED]

__
Do you Yahoo!?
Yahoo! Mail - More reliable, more storage, less spam
http://mail.yahoo.com


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] drm:i830_wait_ring

2004-03-15 Thread Ian Romanick
Patrick Dohman wrote:
I have been able to reproduce several x server crashes by killing a
process from tty 1,2 or 3 that is running on tty5 this crash occurs
after killing a variety of process such as evolution and mozilla and
then attempting to switch to tty5 from tty 1,2 or 3. I am running 
XFree86 Version 4.3.0 (DRI mach64-0-0-6-branch) on Linux version
2.4.24(gcc version 3.2 20020903 (Red Hat Linux 8.0 3.2-7))

The errors printed to the terminal are below.
 
[drm:i830_wait_ring] *ERROR* space: 131048 wanted 131064 
[drm:i830_wait_ring] *ERROR* lockup 
Why, pray tell, are you using the mach64 branch with an i830?  Please go 
to http://dri.sourceforge.net/cgi-bin/moin.cgi/Download and get a recent 
binary snapshot.  That will install the *correct* driver for your chip. 
 If that still doesn't work (and it may not), please send your complete 
XF86Config (or XF86Config-4 depending on your system), 
/var/log/XFree86.0.log, and relevant information from /var/log/messages 
('grep -i drm' should do the trick).



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Mesa3d-dev] Re: [Dri-devel] Three proposed new generic DRM IOCTLs

2004-03-15 Thread Jon Smirl
--- Ian Romanick [EMAIL PROTECTED] wrote:
 How does all this work on non-x86 systems?  Since the rest of the world, 
 thankfully, doesn't use compiled machine code in the on-card firmware, 
 how is that handled?  *Is* that handled? :)

The main purpose is to initialize secondary adapters that the system BIOS did
not init. So the patch only gets activated when there are multiple video
adapters installed. A much better fix for this would be to alter the Linux
kernel to initialize these adapters during the very beginning of the boot
process before entering protected mode. This is really a BIOS shortcoming that
we are trying to fix in user space.

There are several problems but the problems are not unique to my patch, X and
framebuffer have the same issues. X contains a variation of this code that runs
in user space. Mucking with  PCI bridges from user space seems very risky to me.
The patch uses the kernel entry points to muck with the bridges.

1) X86 card in a non-X86 machine. People usually do this to save money. Most
common case is running X86 card in PPC. Another time this occurs is on the
Itanium. To address this I have the source for a x86 emulator that can be linked
into the video-reset program. I haven't tried doing this yet because I don't own
any non-X86 hardware.

2) OpenFirmware. These cards won't work as secondary unless the system BIOS
supports it. If someone has an OpenFirmware interpreter this could be made to
work on other architectures. Nothing bad will happen in my code, the entry point
where I jump to just has an x86 return instruction in it.

There is no universal solution for all platforms. Right now framebuffer doesn't
address secondary adapters, so I wouldn't be surprised if they took some of the
code out of the DRM patch and added it back to framebuffer. Other parts of the
code are copied straight from framebuffer; the code in framebuffer was derived
from the code in X.

Of course I wouldn't need to do this at all if we had enough information from
the manufacturers to add a reset function to the device drivers.

I'm trying to build a unified driver that combines the best of framebuffer and
DRM so there is code that I copied from both places. I then want to take the
unified driver and add some new features to it. 


=
Jon Smirl
[EMAIL PROTECTED]

__
Do you Yahoo!?
Yahoo! Mail - More reliable, more storage, less spam
http://mail.yahoo.com


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] DRM in a standalone tree

2004-03-15 Thread Keith Whitwell
Jon Smirl wrote:
Could someone with admin privs at fd.o please make a new project and put the two
DRM directories into it? It is probably easier to get them from
Mesa/src/mesa/drivers/dri/drm since the two directories are isolated there.
Right now the mesa and dri versions are identical so it doesn't matter.
If you would rather get them from the DRI tree you need:
dri/xc/xc/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel
dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel
As soon as this is done I will alter the mesa build process to use a pointer to
the new tree. That will allow us to keep everything building off from a single
copy of the h files preventing them from getting out of sync. After I get the
pointer working I'll remove the copy from mesa.
Just CC'ing Daniel Stone, the all-purpose fd.o admin guy  apparent melbournite.

Keith



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] Weekly IRC meeting reminder

2004-03-15 Thread Ian Romanick

This is just a friendly reminder that the weekly dri-devel IRC meeting will
be starting in the #dri-devel channel on irc.freenode.net at 2100 UTC (or
4:00PM EST or 1:00PM PST, if you prefer).

Time zone conversion available at:

http://www.timezoneconverter.com/cgi-bin/tzc.tzc

Logs of previous IRC meetings are available at:

http://dri.sourceforge.net/IRC-logs/


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Three proposed new generic DRM IOCTLs

2004-03-15 Thread Alan Cox
On Llu, 2004-03-15 at 16:51, Ian Romanick wrote:
 Jon Smirl wrote:
 
  1) GET_VBIOS -- gets a copy of the board's video BIOS ROM. It is implemented
  2) VGA_ENABLE -- this is used to control the active VGA card in the system.
  3) BLANK - simple call to allow Vesa power management to blank the display.
 
 How does all this work on non-x86 systems?  Since the rest of the world, 
 thankfully, doesn't use compiled machine code in the on-card firmware, 
 how is that handled?  *Is* that handled? :)

It doesn't work on x86 machines either. Not all cards even have a video
bios. Not all cards are VGA and not all cards do vesa blanking.

Take for example the Voodoo1. Does frame buffer nicely right now, does X
with the voodoo driver or glide driver, is not VGA, has no VBIOS and 
doesn't support vesa blanking



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Three concepts for changing the way video works in Linux

2004-03-15 Thread Alan Cox
On Sul, 2004-03-14 at 20:00, Jon Smirl wrote:
 However, I am saying that we need a blend between framebuffer and DRM. Not DRM
 bolted on top of framebuffer. 

You keep imposing policy in the mid layer. How do you know whether you
need a blend or not - its card specific. Some cards have 2D/3D seperate,
others have them closely intertwined so that the fb acceleration for
text does want to use the DRM layer.

 Virtual terminals may be implemented differently too. Why can't each virtual
 terminal have a screen buffer allocated in VRAM? Then on VT switch the video
 base pointer is simply moved around. Now run xserver with compositing. Since you
 have all of the VTs in video RAM they can be composited along with all of the
 other X windows.

Thats hardware specific. The voodoo for example can't do this, the frame
buffer layout is hardware fixed. A large number of very low end PDA like
graphics controllers are similar. There is one frame buffer image, it
starts at the beginning and you can't alter it.

 Linux's current design has lots of holes in it. Start two X servers on two
 different VTs (not just two sessions to the same X server) you're going to
 reboot your machine.

File a bug. It works for me I do it all the time, and it should work for
you.

  Modprobe in the framebuffer driver for your video card from
 an xterm window, you're going to reboot to fix it. 

Root is allowed to do stupid things, news at 11.

 1) There should be a single device drivers controlling access to the video
 hardware

You need this to handle hot plug as well. I don't think anyone disagrees

 2) There should a single device driver presenting virtual hardware. Other
 apps/devices can then use this virtual device however they see fit.

Why ?

 3) Every app and device driver has to completely cooperate with each other and
 never take an action that will interfere with another's user of the video
 hardware.

Thats a matter for locking. 

 4) Each VT session can do what it wants to the video hardware. At VT swap the
 entire state of all registers, VRAM, AGP memory, outstanding DMA, interrupt
 handlers, etc is saved and the state of the next VT is loaded.

That is an argument for #1, and maybe an argument that the device driver
has some responsibility for context management.




---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] DRM in a standalone tree

2004-03-15 Thread Keith Packard

Around 8 o'clock on Mar 15, Jon Smirl wrote:

 Could someone with admin privs at fd.o please make a new project

It would surely be a lot easier to just create a new module in an existing 
project.  I think the DRM fits reasonably well under the DRI banner.  

-keith




pgp0.pgp
Description: PGP signature


[Dri-devel] Re: DRM in a standalone tree

2004-03-15 Thread Michel Dänzer
On Mon, 2004-03-15 at 21:03, Keith Packard wrote:
 Around 8 o'clock on Mar 15, Jon Smirl wrote:
 
  Could someone with admin privs at fd.o please make a new project
 
 It would surely be a lot easier to just create a new module in an existing 
 project.  I think the DRM fits reasonably well under the DRI banner.

I was going to say the same thing. :)


-- 
Earthling Michel Dnzer  | Debian (powerpc), X and DRI developer
Libre software enthusiast|   http://svcs.affero.net/rm.php?r=daenzer



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] DRM in a standalone tree

2004-03-15 Thread Ian Romanick
Jon Smirl wrote:

Could someone with admin privs at fd.o please make a new project and put the two
DRM directories into it? It is probably easier to get them from
Mesa/src/mesa/drivers/dri/drm since the two directories are isolated there.
Right now the mesa and dri versions are identical so it doesn't matter.
If you would rather get them from the DRI tree you need:
dri/xc/xc/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel
dri/xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel
And dri/xc/xc/programs/Xserver/hw/xfree86/os-support/bsd/drm/kernel.



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] Re: Driconf

2004-03-15 Thread Paulo R. Dallan
Em Seg 15 Mar 2004 18:44, you wrote:
 On Mon, 15 Mar 2004 17:30:48 -0300

 Paulo R. Dallan [EMAIL PROTECTED] wrote:
  Em Ter 09 Mar 2004 20:09, you wrote:
   Paulo R. Dallan [EMAIL PROTECTED] wrote:
Em Seg 08 Mar 2004 13:31, you wrote:
 Em Seg 08 Mar 2004 08:35, you wrote:
 
  snip
 
  Hi Felix,
 
  How are you doing?
 
  Sorry for not talking about the driconfig support, but I was out of town
  for some days and was completely off-line. But did not forget about the
  help promised! :)
 
  Well, we have some progress, so here we go.
 
  snip
 
   See the end of the design doc for some XML-references. Though I don't
   think you need to deal with XML directly either. There are macro
   definitions for some common options in xmlpool.h. You only need to
   write some XML if you want to add new options. But that's pretty
   intuitive and the existing options in xmlpool.h should give good
   examples.
 
  snip
 
  I've been studing the dri configuration documentations, checked the macro
  possibilities in xmlpool.h, and following your tip, analysed how it was
  implemented for the mga card (the code in mga_xmesa.c). So, basically,
  it's a macro at compiling time, correct (actually a good idea)?

 The macros expand to exactly the XML document that you see with
 xdriinfo options mga.

  Ok, I checked the output of xdriinfo options mga and xdriinfo options
  savage. This last one, obviously, returned nothing (because this is what
  is supposed to be being implemented now), the other one returned a page
  of xml info (and, in fact, very /few/ options, basically vblank_mode,
  texture_depth and color_reduction).

 Yes, anyone is welcome to add new options. ;-)

  (i) Now comes one question: this options implemented, what is their
  relation to the options described in the man page of the driver (e.g.
  man mga or man savage? Is there any relation between both? Does the
  man page contains all of them, /plus/ others related to X86 general
  options etc?

 The man pages refer only to the 2D drivers. The 3D driver options aren't
 documented in any manpages. The hope was that they are self documenting,
 but currently the descriptions are rather terse. There is some more
 verbose documentation of some options in the Wiki.

  (ii) So, in order to implement the options for the savage driver, I have
  to go through the code itself, or is there any document which I should
  follow (i.e., how to verify which are the options of xmlpool.h which are
  aplicable)? If it is throught the code, good, will learn a lot; but it
  won't be that easy at the present stage! ;) - any tip for where to start
  from?

 The first step will be to add the necessary boilerplate to the screen-
 and context data structures, add a first simple (maybe empty) option
 description in __driConfigOptions and to call the initialization
 functions in CreateContext and CreateScreen. If you want to see output
 from xdriinfo you can safely add options without actually implementing
 any code that evaluates them.

 The hard part will be adding the actual implementation of options.
 That's where you'll have to go into different parts of the driver and
 make the behaviour depend on some options. Often it's a good idea to
 read an option value in CreateContext and store it somewhere in the
 Context structure. Then it can be accessed more quickly later on.

  Best regards,
 
  Paulo
 
  PS1: In parallel, have been studing the Redbook ( having a view in the
  Bluebook) and also following some tutorials in gl, glx and, more
  especifically, in glu  glut (for Linux). Have been having some problems
  in image viewing, or funcions not being implemented. Is it relevant, or
  not really fully implemented yet so we may get some trouble in it?

 Someone else complained about this. The funny thing is that the relevant
 mesa demo (don't remember the name, something with pix I think) works
 on my system, but not on another user's system. Someone is going to have
 to fix it at some point. I have other priorities ATM.

  PS2: Funny that to compile glu  glut programs, I have to especifically
  use the -L option to indicate the location of the libraries, although my
  ld.so.config file seem to include the path (/usr/X11R6/lib)... Have you
  had the same problem?

 I don't think so. I usually use this in Makefiles:

 LDFLAGS=-lGL -lGLU -lglut

 Though the search paths of the compiler don't have anything to do with
 the search paths of the dynamic linker IIRC.

  PS3: Will have a look at the meeting today (actually, have done that
  twice already). Will be quiet (as usual), just watching. :)
  The funny thing is that the messages seem to take so long to get. I don't
  know if I'm getting them delayed somehow.

 Don't know. Sometimes it's a bit hard to follow because all the threads
 of discussion are interleaved. And sometimes people take some time to
 type a good answer or have to look something up first.

 Cu,
   Felix

 P.S.: I think it would be good to make this thread 

[Dri-devel] DRM reorganization

2004-03-15 Thread Ian Romanick
We're looking at reorganizing the way DRM drivers are maintained. 
Currently, the DRM kernel code lives deep in a subdirectory of the DRI 
tree (which is a partial copy of the XFree86 tree).  We plan to move it 
up to its own module at the top level.  That should make it *much* 
easier for people that want to do things with the DRM but don't want all 
the rest of X (i.e., DRI w/DirectFB, etc.).

When we do this move, we're open to the possibility of reorganizing the 
file structure.  What can we do to make it easier for kernel release 
maintainers to merge changes into their trees?

This is cross-posted to LKML  dri-devel, and I'm not on LKML.  If you 
reply, please hit the 'Reply to all' button. :)



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] Re: DRM reorganization

2004-03-15 Thread Andrew Morton
Ian Romanick [EMAIL PROTECTED] wrote:

 We're looking at reorganizing the way DRM drivers are maintained. 
 Currently, the DRM kernel code lives deep in a subdirectory of the DRI 
 tree (which is a partial copy of the XFree86 tree).  We plan to move it 
 up to its own module at the top level.  That should make it *much* 
 easier for people that want to do things with the DRM but don't want all 
 the rest of X (i.e., DRI w/DirectFB, etc.).
 
 When we do this move, we're open to the possibility of reorganizing the 
 file structure.  What can we do to make it easier for kernel release 
 maintainers to merge changes into their trees?

- Make sure that the files in the main kernel distribution are up to date.

- Prepare a shell script which does all the relevant file moves, send to
  Linus, along with a diff which fixes up Kconfig and Makefiles.

- Start patching the files in their new locations.


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: DRM reorganization

2004-03-15 Thread Alex Deucher

--- Andrew Morton [EMAIL PROTECTED] wrote:
 Ian Romanick [EMAIL PROTECTED] wrote:
 
  We're looking at reorganizing the way DRM drivers are maintained. 
  Currently, the DRM kernel code lives deep in a subdirectory of the
 DRI 
  tree (which is a partial copy of the XFree86 tree).  We plan to
 move it 
  up to its own module at the top level.  That should make it
 *much* 
  easier for people that want to do things with the DRM but don't
 want all 
  the rest of X (i.e., DRI w/DirectFB, etc.).
  
  When we do this move, we're open to the possibility of reorganizing
 the 
  file structure.  What can we do to make it easier for kernel
 release 
  maintainers to merge changes into their trees?
 
 - Make sure that the files in the main kernel distribution are up to
 date.
 
 - Prepare a shell script which does all the relevant file moves, send
 to
   Linus, along with a diff which fixes up Kconfig and Makefiles.
 
 - Start patching the files in their new locations.
 
 

we (as dri developers) should probably also sync the other way more
regularly too.  sometimes there are changes in the kernel tree that
don't get back to the dri/drm tree in a timely manner.

Alex

__
Do you Yahoo!?
Yahoo! Mail - More reliable, more storage, less spam
http://mail.yahoo.com


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: DRM reorganization

2004-03-15 Thread Ian Romanick
Andrew Morton wrote:
Ian Romanick [EMAIL PROTECTED] wrote:

We're looking at reorganizing the way DRM drivers are maintained. 
Currently, the DRM kernel code lives deep in a subdirectory of the DRI 
tree (which is a partial copy of the XFree86 tree).  We plan to move it 
up to its own module at the top level.  That should make it *much* 
easier for people that want to do things with the DRM but don't want all 
the rest of X (i.e., DRI w/DirectFB, etc.).

When we do this move, we're open to the possibility of reorganizing the 
file structure.  What can we do to make it easier for kernel release 
maintainers to merge changes into their trees?
- Make sure that the files in the main kernel distribution are up to date.

- Prepare a shell script which does all the relevant file moves, send to
  Linus, along with a diff which fixes up Kconfig and Makefiles.
- Start patching the files in their new locations.
I'm not 100% sure what you mean.  Right now the files in our CVS are 
split between two directories.  There's a common directory, which is 
used on both Linux  BSD, and a Linux-specific directory.  Our intention 
is to shift around where some of the files are in our CVS.  I don't 
think we intend to move where things are in the Linux source tree.

That's part of why I'm asking.  From talking to Linus in the past, I 
know that merging in changes is a PITA due to our funky directory 
structure.  I'd like to make that easier. :)



---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: DRM reorganization

2004-03-15 Thread Andrew Morton
Ian Romanick [EMAIL PROTECTED] wrote:

 When we do this move, we're open to the possibility of reorganizing the 
 file structure.  What can we do to make it easier for kernel release 
 maintainers to merge changes into their trees?
  
  - Make sure that the files in the main kernel distribution are up to date.
  
  - Prepare a shell script which does all the relevant file moves, send to
Linus, along with a diff which fixes up Kconfig and Makefiles.
  
  - Start patching the files in their new locations.
 
 I'm not 100% sure what you mean.  Right now the files in our CVS are 
 split between two directories.  There's a common directory, which is 
 used on both Linux  BSD, and a Linux-specific directory.  Our intention 
 is to shift around where some of the files are in our CVS.  I don't 
 think we intend to move where things are in the Linux source tree.
 
 That's part of why I'm asking.  From talking to Linus in the past, I 
 know that merging in changes is a PITA due to our funky directory 
 structure.  I'd like to make that easier. :)

Oh.  So what was the question again?

As far as I know, there's nobody in DRI-land who actually prepares and
sends patches.  Fixing that would be a good first step ;)

I've had a 130k DRM patch in -mm since February 8th.  Presumably it's out
of date.  As far as I know nobody is pushing more recent patches upstream.

What's the process here, and who should I be dealing with?

Thanks.


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [Dri-devel] Re: DRM reorganization

2004-03-15 Thread Jon Smirl
--- Ian Romanick [EMAIL PROTECTED] wrote:
 That's part of why I'm asking.  From talking to Linus in the past, I 
 know that merging in changes is a PITA due to our funky directory 
 structure.  I'd like to make that easier. :)

Part of the pain could be caused by the shared/linux split in the DRM tree. The
kernel tree doesn't have that split. 

Also DRM makefile.kernel and the kernel char/drm/Makefile are similar but not
the same. So any changes to the build procedure would need to be updated into
char/drm/Makefile.

drmstat.c/dristat.c should be pulled out of the driver directory and put it in a
directory for apps.

Where should Doxyfile and config.in go?

The savage driver is not currently in the kernel. Should the mach64 driver be
moved out of the branch and into the DRM project?

The best solution would be to have some kind of scipt in the DRM project that
builds a directory that can simply be copied into char/drm.

=
Jon Smirl
[EMAIL PROTECTED]

__
Do you Yahoo!?
Yahoo! Mail - More reliable, more storage, less spam
http://mail.yahoo.com


---
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470alloc_id=3638op=click
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Dri-devel] [PATCH] tdfx build fixes and driinterface conversion

2004-03-15 Thread ajax
The first patch (against the Mesa tree) fixes tdfx_screen.c to use the new 
interface.  The second patch (against the DRI tree) fixes the Imakefilery to 
use the new interface and link against the common objects.

Without these two tdfx is completely broken.  With them, it works as well as 
it did before driinterface was merged (which for me means textured apps are 
hosed but glxgears works fine).  That's next on my chopping block.  I tested 
this on 16-bit and 24-bit depths.

Comments are welcome.  I don't particularly like how this duplicates loops in 
*_dri.c and *_screen.c.  I'd like to see a shared visual config table defined 
in a header somewhere so we don't have to touch multiple places, but I 
suspect that'd get ugly quick.


Index: src/mesa/drivers/dri/tdfx/tdfx_screen.c
===
RCS file: /cvs/mesa/Mesa/src/mesa/drivers/dri/tdfx/tdfx_screen.c,v
retrieving revision 1.2
diff -u -r1.2 tdfx_screen.c
--- src/mesa/drivers/dri/tdfx/tdfx_screen.c	8 Dec 2003 17:14:47 -	1.2
+++ src/mesa/drivers/dri/tdfx/tdfx_screen.c	16 Mar 2004 01:37:04 -
@@ -316,6 +316,129 @@
.SwapBuffersMSC  = NULL
 };
 
+#ifdef USE_NEW_INTERFACE
+/*
+ * new interface code, derived from radeon_screen.c
+ * XXX this may still be wrong
+ */
+static PFNGLXCREATECONTEXTMODES create_context_modes = NULL;
+
+static __GLcontextModes *tdfxFillInModes(unsigned pixel_bits,
+	 unsigned depth_bits,
+	 unsigned stencil_bits,
+	 GLboolean have_back_buffer)
+{
+	__GLcontextModes *modes;
+	__GLcontextModes *m;
+	unsigned num_modes;
+	unsigned vis[2] = { GLX_TRUE_COLOR, GLX_DIRECT_COLOR };
+	unsigned deep = (depth_bits  17);
+	unsigned i, db, depth, accum, stencil;
+
+	/* Right now GLX_SWAP_COPY_OML isn't supported, but it would be easy
+	 * enough to add support.  Basically, if a context is created with an
+	 * fbconfig where the swap method is GLX_SWAP_COPY_OML, pageflipping
+	 * will never be used.
+	 */
+
+	num_modes = (depth_bits == 16) ? 32 : 16;
+
+	modes = (*create_context_modes)(num_modes, sizeof(__GLcontextModes));
+	m = modes;
+
+	for (i = 0; i = 1; i++) {
+	for (db = 0; db = 1; db++) {
+		for (depth = 0; depth = 1; depth++) {
+		for (accum = 0; accum = 1; accum++) {
+			for (stencil = 0; stencil = !deep; stencil++) {
+			if (deep) stencil = depth;
+			m-redBits		= deep ? 8 : 5;
+			m-greenBits	= deep ? 8 : 6;
+			m-blueBits		= deep ? 8 : 5;
+			m-alphaBits	= deep ? 8 : 0;
+			m-redMask		= deep ?0xFF00 :0xF800;
+			m-greenMask	= deep ?0x00FF :0x07E0;
+			m-blueMask		= deep ?0xFF00 :0x001F;
+			m-alphaMask	= deep ? 0x00FF : 0;
+			m-rgbBits		= m-redBits + m-greenBits +
+						  m-blueBits + m-alphaBits;
+			m-accumRedBits	= accum ? 16 : 0;
+			m-accumGreenBits	= accum ? 16 : 0;
+			m-accumBlueBits	= accum ? 16 : 0;
+			m-accumAlphaBits	= accum ? 16 : 0;
+			m-stencilBits	= stencil ? 8 : 0;
+			m-depthBits	= deep
+						  ? (depth ? 24 : 0)
+						  : (depth ? 0 : depth_bits);
+			m-visualType	= i ? GLX_TRUE_COLOR
+						: GLX_DIRECT_COLOR;
+			m-renderType	= GLX_RGBA_BIT;
+			m-drawableType	= GLX_WINDOW_BIT;
+			m-rgbMode		= GL_TRUE;
+			m-doubleBufferMode = db ? GL_TRUE : GL_FALSE;
+			if (db)
+				m-swapMethod = GLX_SWAP_UNDEFINED_OML;
+			m-visualRating	= ((stencil  !deep) || accum)
+						  ? GLX_SLOW_CONFIG
+		  : GLX_NONE;
+			m = m-next;
+			if (deep) stencil = 0;
+			}
+		}
+		}
+	}
+	}
+
+	return modes;
+}
+
+/**
+ * This is the bootstrap function for the driver.  libGL supplies all of the
+ * requisite information about the system, and the driver initializes itself.
+ * This routine also fills in the linked list pointed to by \c driver_modes
+ * with the \c __GLcontextModes that the driver can support for windows or
+ * pbuffers.
+ *
+ * \return A pointer to a \c __DRIscreenPrivate on success, or \c NULL on
+ * failure.
+ */
+void * __driCreateNewScreen( Display *dpy, int scrn, __DRIscreen *psc,
+			 const __GLcontextModes * modes,
+			 const __DRIversion * ddx_version,
+			 const __DRIversion * dri_version,
+			 const __DRIversion * drm_version,
+			 const __DRIframebuffer * frame_buffer,
+			 drmAddress pSAREA, int fd,
+			 int internal_api_version,
+			 __GLcontextModes ** driver_modes )
+{
+   __DRIscreenPrivate *psp;
+
+   psp = __driUtilCreateNewScreen(dpy, scrn, psc, NULL,
+     ddx_version, dri_version, drm_version,
+  frame_buffer, pSAREA, fd,
+  internal_api_version, tdfxAPI);
+
+   create_context_modes = (PFNGLXCREATECONTEXTMODES)
+  glXGetProcAddress((const GLubyte *)__glXCreateContextModes);
+  
+   if (create_context_modes != NULL) {
+  /* divined from tdfx_dri.c, sketchy */
+  TDFXDRIPtr dri_priv = (TDFXDRIPtr) psp-pDevPriv;
+  int bpp = (dri_priv-cpp  2) ? 24 : 16;
+
+  /* XXX i wish it