[Mesa-dev] new i965g pipe driver for Intel GEN6 (and later)
Chia-I Wu
olvaffe at gmail.com
Wed Dec 12 14:41:59 PST 2012
Hi list,
I've been working on i965g, a new pipe driver for Intel GEN6 (and
later), for a while now. I would like to know if there is any
interest in it and if it can be merged upstream. The code is
currently available here
https://github.com/olvaffe/mesa/tree/i965g
The project was started for my own fun and for self-learning. It was
later sponsored by LunarG. While it is still new, it does work for
many of mesa-demos. Right now it passes 6884 of 7547 piglit
quick-driver.tests. I also tried it with gnome-shell, OpenArena, and
Nexuiz, and they all seem to work.
The driver is written from scratch. However, it follows classic i965
driver for many of the design decisions. It comes with its own toy
compiler to translate TGSI tokens to GEN instructions. The compiler
still lacks several functions (register spilling and most TGSI
indirections), but more importantly, almost no optimization is
performed. It thus generates much worse code comparing to that
generated by classic i965.
I rebased the code tonight and cleaned up the history. The branch now
has 24 new commits on top of master
winsys/intel: new winsys for intel
i965g: new pipe driver for Intel GEN6+
i965g: add debug flags settable through I965_DEBUG
i965g: hook up pipe_screen param and fence functions
i965g: add functions to translate pipe enums to HW enums
i965g: hook up pipe screen format functions
i965g: hook up pipe screen resource functions
i965g: add command parser
i965g: hook up pipe context flush function
i965g: add functions to manage shaders
i965g: hook up pipe context state functions
i965g: hook up pipe context blit functions
i965g: hook up pipe context transfer functions
i965g: hook up pipe context query functions
i965g: add GEN6 GPE
i965g: add GEN6 3D context
i965g: hook up pipe context 3D functions
i965g: add support for timer/occlusion/primitive queries
i965g: hook up pipe context video functions
i965g: hook up pipe context GPGPU functions
i965g: add a toy shader compiler
i965g: compile VS and FS with the toy compiler
i965g: support the new driver in various targets
i965g: add to --with-gallium-drivers
It is quite self-contained. If preferred, I can send the patches to the list.
Oh, and my account on fdo is disabled because of my own mistake[1]. I
contacted some of the developers in the thread but did not get any
response. Could anyone help me with that, or how do I have it
re-enabled?
[1] http://lists.freedesktop.org/archives/mesa-dev/2012-July/023901.html
--
olv at LunarG.com
More information about the mesa-dev
mailing list