Re: DRI integration

Jon Smirl <jonsmirl-/[email protected]>
Newsgroups gmane.comp.freedesktop.xserver
Message-ID <[email protected]>
--- Keith Packard <[email protected]> wrote:
>  1)	Device detection
yes
>  2)	Device arbitration
yes
>  3)	DMA/IRQ management
yes
>  4)	Video memory allocation
yes
>  5)	AGP memory allocation
yes
>  6)	Mode selection (maybe with user-mode help?)
various people are in disagreement here. The radeon mode setting/EDID/DDC/VT
save/restore code is over 100KB. I don't think it belongs in a device driver. 
>  7)	Input devices (/dev/input + hotplug)
yes
> 
> That way GL apps could talk directly to the hardware when appropriate, or 
> share the system with X at other times.  I'd also like to look into 
> ways to share surfaces across X and GL so that we can use GL to composite 
> X window contents.

What do you think about modifying xserver to use Mesa/OpenGL for it's drawing
API? 
I've been looking at this model:
1) Base layer a DRI kernel driver (tiny driver for non-3D cards)
2) next Mesa/OpenGl support (either hardware or software)
3) third a window manager based on OpenGL/Mesa (includes font support)
4) X compatibility layer written to the OpenGL API 

The X compatibility layer doesn't have to stick to the exact OpenGL API. Since
we are also implementing Mesa there can be special entry points.

Advantages to this scheme are:
1) Strong separation of components. Right now XFree86 is a bowl of spaghetti.
Everything is strongly connected to everything else. These layers can function
independently.
2) Life is easy for Nvidia/ATI with binary drivers.
3) Every window will support OpenGL API with it's corresponding vector API. --
scalable drawing
4) OpenGl gives good basis to build compositing window manager

> If you've got kernel support for EDID and other Radeon bits merged into 
> the DRI, it would be fun to write a DRI-based Radeon kdrive server and see 
> how fast we can make it go.

I'm working on standalone mesa. This brings up the OpenGL API with having
Xfree86 around. I'm currently bogged down trying to break 10,000 lines of mode
setting/EDID code out of Xfree86 and making it work standalone. I have it
compiling now but it doesn't work yet.

BenH has been going the other route and building the mode setting/EDID code into
the framebuffer driver. He started before I did so he is further along. His
driver handles most LCDs but laptop support is not finished.

> 
> -keith
> 
> 

=====
Jon Smirl
jonsmirl-/[email protected]

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.