George Sapountzis
03c4573eca
st/dri: minor cosmetic for buffers
2010-03-25 17:01:52 +02:00
George Sapountzis
c049d58a22
st/dri: minor cosmetic for screen
...
- put extensions above init_screen
- split out destroy_option_cache
2010-03-25 17:01:52 +02:00
George Sapountzis
d7f78065ac
st/dri: add inline for dri2 check done in multiple places
2010-03-25 17:01:51 +02:00
George Sapountzis
20755c5c4c
drisw_util: add fields for gallium swrast_dri
2010-03-25 17:01:51 +02:00
Joakim Sindholt
204c88014b
r300g/radeong: fix scons build
2010-03-25 15:51:23 +01:00
Jakob Bornecrantz
7d17de4b47
Merge branch 'gallium-targets'
2010-03-25 14:48:41 +01:00
Jakob Bornecrantz
0d0220fedc
gallium: Fix libgl-xlib path to sw xlib winsys
2010-03-25 14:43:37 +01:00
Vinson Lee
8b12c58ce4
r300g: Remove unnecessary header.
2010-03-25 00:20:05 -07:00
Vinson Lee
3fcfd69fec
progs/glsl: Fix vsraytrace GLSL compilation error.
...
Fixes the following GLSL error on Mac OS X.
'=' : assigning non-constant to 'const 3-component vector of float'
2010-03-24 22:53:23 -07:00
Vinson Lee
3bccb5447b
progs/glsl: Add raytracing demos to SCons build.
2010-03-24 22:36:49 -07:00
Brian Paul
9a52417582
llvmpipe: fix up some questionable fence code
...
Jose should probably review this since he wrote the original code.
2010-03-24 20:49:54 -06:00
Brian Paul
a9063cad0f
llvmpipe: optimize the lp_setup_fence() function
...
Avoid emitting fences when not needed.
Speeds up glReadPixels quite a bit when reading image row by row.
2010-03-24 20:49:39 -06:00
Brian Paul
d7ddb589f4
llvmpipe: call lp_fence_signal()
2010-03-24 19:30:32 -06:00
Brian Paul
331729c8c8
llvmpipe: added lp_fence_signal()
2010-03-24 19:30:27 -06:00
Jakob Bornecrantz
b4b4ac6681
i915g: Correct and add supperted texture formats
2010-03-25 00:45:31 +01:00
Jakob Bornecrantz
372011bc89
st/dri: Fix for X server 1.6.0 (DRI2 version 1)
2010-03-25 00:45:28 +01:00
Brian Paul
2ad8692aad
llvmpipe: fix texture reference counting bug
...
We weren't saving the per-scene texture references at the right point.
Fixes piglit cubemap segfault. The segfault resulted from referencing
texture memory which was prematurely freed because of a missed reference
count.
Fixes fd.o bug 27276.
2010-03-24 16:29:17 -06:00
Brian Paul
f0e04b0944
progs/demos: add other modes/patterns to dissolve demo
2010-03-24 16:29:17 -06:00
Alex Deucher
d9a19d8649
r100/r200/r300/r600: enable accel for Copy/DrawPixels without kms
...
meta ops should work ok without kms.
2010-03-24 15:42:13 -04:00
Jakob Bornecrantz
f5ae5b5396
gallium: Add warnings incase pipe drivers are not built in targets
2010-03-24 19:16:29 +01:00
Jakob Bornecrantz
738850e522
gallium: Make scons build dri/xorg drivers again
2010-03-24 18:42:35 +01:00
Eric Anholt
3695cdd606
i965: Handle the negate and abs swizzles on brw_wm_glsl.c immediate args.
...
Fixes piglit glsl-orangebook-ch06-bump, regressed with
4fc5732225
2010-03-24 10:27:30 -07:00
Jakob Bornecrantz
42a1bcc22f
radeong: Fix scons build
2010-03-24 18:09:19 +01:00
Jakob Bornecrantz
c9f98673c5
gallium: Reorg winsys directories
...
Attached output from commit.
delete mode 100644 src/gallium/winsys/drm/SConscript
delete mode 100644 src/gallium/winsys/drm/i965/SConscript
delete mode 100644 src/gallium/winsys/drm/intel/Makefile
delete mode 100644 src/gallium/winsys/drm/intel/SConscript
delete mode 100644 src/gallium/winsys/drm/nouveau/Makefile
delete mode 100644 src/gallium/winsys/drm/radeon/Makefile
delete mode 100644 src/gallium/winsys/drm/radeon/SConscript
delete mode 100644 src/gallium/winsys/drm/vmware/Makefile
delete mode 100644 src/gallium/winsys/drm/vmware/SConscript
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/Makefile (82%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_api.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_batchbuffer.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_buffer.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_fence.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_winsys.h (100%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/Makefile (78%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_api.c (98%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_buffer.c (100%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_winsys.h (100%)
rename src/gallium/winsys/{drm => }/i965/xlib/Makefile (97%)
rename src/gallium/winsys/{drm => }/i965/xlib/xlib_i965.c (100%)
rename src/gallium/winsys/{drm => }/nouveau/drm/Makefile (79%)
rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_dri.h (100%)
rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_drm_api.c (100%)
rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_drm_api.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/Makefile (79%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_buffer.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm.c (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm_buffer.c (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_r300.c (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_r300.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_winsys.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/Makefile (63%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_buffer.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_buffer.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_context.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_context.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_fence.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_fence.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_dri.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_ioctl.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_pools.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_svga.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_surface.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_surface.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmwgfx_drm.h (100%)
rename src/gallium/winsys/{drm/i965 => sw}/Makefile (61%)
copy src/gallium/winsys/{drm/sw => sw/drm}/Makefile (73%)
rename src/gallium/winsys/{drm/sw => sw/drm}/sw_drm_api.c (98%)
rename src/gallium/winsys/{drm/sw => sw/drm}/sw_drm_api.h (100%)
rename src/gallium/winsys/{ => sw}/gdi/SConscript (100%)
rename src/gallium/winsys/{ => sw}/gdi/gdi_sw_winsys.c (100%)
rename src/gallium/winsys/{ => sw}/gdi/gdi_sw_winsys.h (100%)
rename src/gallium/winsys/{ => sw}/null/Makefile (78%)
rename src/gallium/winsys/{ => sw}/null/SConscript (100%)
rename src/gallium/winsys/{ => sw}/null/null_sw_winsys.c (100%)
rename src/gallium/winsys/{ => sw}/null/null_sw_winsys.h (100%)
rename src/gallium/winsys/{drm/sw => sw/wrapper}/Makefile (65%)
rename src/gallium/winsys/{drm/sw => sw/wrapper}/wrapper_sw_winsys.c (100%)
rename src/gallium/winsys/{drm/sw => sw/wrapper}/wrapper_sw_winsys.h (100%)
rename src/gallium/winsys/{ => sw}/xlib/Makefile (79%)
rename src/gallium/winsys/{ => sw}/xlib/SConscript (100%)
rename src/gallium/winsys/{ => sw}/xlib/xlib_sw_winsys.c (100%)
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz
43218a45a4
gallium: Move xorg drivers to targets
...
Attached output from git commit:
rename src/gallium/{winsys/drm/intel/xorg => targets/xorg-i915}/Makefile (95%)
rename src/gallium/{winsys/drm/intel/xorg => targets/xorg-i915}/intel_xorg.c (98%)
rename src/gallium/{winsys/drm/i965/xorg => targets/xorg-i965}/Makefile (78%)
rename src/gallium/{winsys/drm/i965/xorg => targets/xorg-i965}/intel_xorg.c (98%)
rename src/gallium/{winsys/drm/nouveau/xorg => targets/xorg-nouveau}/Makefile (96%)
rename src/gallium/{winsys/drm/nouveau/xorg => targets/xorg-nouveau}/nouveau_xorg.c (98%)
rename src/gallium/{winsys/drm/radeon/xorg => targets/xorg-radeon}/Makefile (73%)
rename src/gallium/{winsys/drm/radeon/xorg => targets/xorg-radeon}/radeon_xorg.c (98%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/Makefile (97%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/SConscript (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_driver.h (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_hook.h (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_ioctl.c (99%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_screen.c (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_video.c (99%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_xorg.c (100%)
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz
f5ba2cdeb9
gallium: Move egl drivers to targets
...
Atteched output from git commit:
rename src/gallium/{winsys/drm => targets}/Makefile.egl (100%)
rename src/gallium/{winsys/drm/intel/egl => targets/egl-i915}/Makefile (86%)
rename src/gallium/{winsys/drm/i965/egl => targets/egl-i915}/dummy.c (100%)
rename src/gallium/{winsys/drm/i965/egl => targets/egl-i965}/Makefile (86%)
rename src/gallium/{winsys/drm/intel/egl => targets/egl-i965}/dummy.c (100%)
rename src/gallium/{winsys/drm/nouveau/egl => targets/egl-nouveau}/Makefile (88%)
rename src/gallium/{winsys/drm/nouveau/egl => targets/egl-nouveau}/dummy.c (100%)
rename src/gallium/{winsys/drm/radeon/egl => targets/egl-radeon}/Makefile (87%)
rename src/gallium/{winsys/drm/radeon/egl => targets/egl-radeon}/dummy.c (100%)
create mode 100644 src/gallium/targets/egl-swrast/Makefile
create mode 100644 src/gallium/targets/egl-swrast/swrast_glue.c
rename src/gallium/{winsys/drm/vmware/egl => targets/egl-vmwgfx}/Makefile (86%)
rename src/gallium/{winsys/drm/swrast/egl => targets/egl-vmwgfx}/dummy.c (100%)
delete mode 100644 src/gallium/winsys/drm/swrast/Makefile
delete mode 100644 src/gallium/winsys/drm/swrast/core/Makefile
delete mode 100644 src/gallium/winsys/drm/swrast/core/swrast_drm_api.c
delete mode 100644 src/gallium/winsys/drm/swrast/egl/Makefile
delete mode 100644 src/gallium/winsys/drm/vmware/egl/dummy.c
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz
be38b32531
gallium: Move dri drivers to targets
...
Attached output from git commit:
rename src/gallium/{winsys/drm/Makefile.template => targets/Makefile.dri} (100%)
rename src/gallium/{winsys/drm/intel/dri => targets/dri-i915}/Makefile (75%)
rename src/gallium/{winsys/drm/intel/dri => targets/dri-i915}/SConscript (100%)
rename src/gallium/{winsys/drm/i965/dri => targets/dri-i965}/Makefile (76%)
rename src/gallium/{winsys/drm/i965/dri => targets/dri-i965}/SConscript (100%)
rename src/gallium/{winsys/drm/nouveau/dri => targets/dri-nouveau}/Makefile (86%)
rename src/gallium/{winsys/drm/radeon/dri => targets/dri-radeong}/Makefile (85%)
rename src/gallium/{winsys/drm/radeon/dri => targets/dri-radeong}/SConscript (100%)
rename src/gallium/{winsys/drm/vmware/dri => targets/dri-vmwgfx}/Makefile (85%)
rename src/gallium/{winsys/drm/vmware/dri => targets/dri-vmwgfx}/SConscript (100%)
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz
41d2ebf202
gallium: Remove GALLIUM_WINSYS_DRM_DIRS
2010-03-24 17:02:17 +01:00
Brian Paul
01f7acb700
progs/glsl: remove/replace //-style comments
2010-03-24 09:08:24 -06:00
Brian Paul
79394f0267
progs/glsl: silence warnings, remove debug code, adjust window size, etc
2010-03-24 09:04:17 -06:00
RALOVICH, Kristóf
4e328774d4
demos: import GLSL raytracing demos
2010-03-24 09:04:14 -06:00
Brian Paul
e71c1589d8
st/mesa: fix typo in prev commit
2010-03-24 09:04:10 -06:00
Brian Paul
2d6befd9d1
st/mesa: fix sampler_view destruction bug when texture is shared
...
Since texture's can be shared by many contexts, the texture's sampler
view's context pointer might be invalid by time we delete the texture.
Prevent crashes/etc by setting the sampler view's context to be the
calling context before deleting it. This should be safe as long as
all contexts which share the texture are using the same gallium driver.
That's a reasonable assumption since pipe_texture objects aren't
compatible between different drivers anyway.
2010-03-24 08:34:37 -06:00
Brian Paul
ab93f8d067
st/mesa: code clean-ups, formatting fixes, comments, etc
2010-03-24 08:25:24 -06:00
Brian Paul
3374b26f52
st/mesa: rename st_clear() to st_Clear()
...
To be consistent with other Mesa driver functions.
2010-03-24 08:18:21 -06:00
Brian Paul
f66d70b930
st/mesa: return GL_TRUE/GL_FALSE if return type is GLboolean
...
Just to be consistent.
2010-03-24 08:16:27 -06:00
Chia-I Wu
99386921e7
progs/egl: Link xeglthreads to libpthread.
...
This should hopefully fix a build failure reported by Chris Ball when
binutils-gold is used.
2010-03-24 08:46:10 +08:00
Brian Paul
2b5de09b3e
swrast: improve depth texture mipmap selection
...
We still don't do proper min/mag filtering but this is better than just
sampling the base mipmap level all the time.
Fixes piglit depth-level-clamp test. Fixes fd.o bug 27256.
2010-03-23 17:55:43 -06:00
Brian Paul
8ba47561dd
st/glx: add support for multiple displays
...
This is a quick & dirty solution, but it works. See comments in
the code for other ideas.
Fixes regressions/breakage seen in progs/xdemos/glxheads, etc. from commit
6632915e95 .
2010-03-23 17:24:54 -06:00
Brian Paul
2d84d58975
glslcompiler: added option to do linking of vert/frag shaders
2010-03-23 16:20:02 -06:00
Luca Barbieri
3790199e04
dri: fix dri_test.c for non-TLS build
...
_glapi_Context and _glapi_Dispatch have different constness between
TLS and non-TLS builds.
2010-03-23 22:59:44 +01:00
Luca Barbieri
5f229547a5
dri: add _glthread_GetID to dri_test.c dummy glapi
2010-03-23 22:57:25 +01:00
Luca Barbieri
7e246e6aa6
dri: make unresolved symbol test link work even without a libGL.so
...
Currently the test link uses -lGL to define the glapi symbols.
This makes it impossible to build DRI drivers on systems without
Mesa installed and without building the libGL from the Mesa tree
first.
Some automated build systems trigger this problem.
This commit removes -lGL and instead adds a dummy implementation of
glapi to dri_test.c
This, along with Kristian's commit, should fix all known regressions
due to the addition of unresolved symbol checking.
2010-03-23 21:32:09 +01:00
Dan Nicholson
e725ef171b
Change libX11 variables to not conflict with AC_PATH_XTRA
...
The variable X_LIBS from AC_PATH_XTRA contains only the -L searchdir
parameter and not the -lX11 to link to Xlib. Use X11 prefixed build vars
for linking with Xlib to avoid the conflict.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2010-03-23 13:26:50 -07:00
Kristian Høgsberg
ba5a53edd1
dri: Add $(DRI_LIB_DEPS) when linking the test binary
...
This will make sure we pick up libdrm_$(chipset).so from the right place.
2010-03-23 15:50:23 -04:00
Eric Anholt
3d99e990c0
i965: Stop abusing ctx->NewState flags for storing driver internal changes.
...
We're still abusing the flags by putting them where our driver stores
ctx->NewState changes. Making them into more restricted state change
flags would be a project for later.
Fixes a failure where calling intel_draw_buffer() too often would trip
up Mesa assertions about when Mesa state could get changed, when it hadn't.
Bug #27034 .
2010-03-23 15:29:54 -04:00
Kristian Høgsberg
57edf6b1fc
mesa: Also print _NEW_STENCIL in _mesa_print_state()
2010-03-23 15:29:05 -04:00
Luca Barbieri
3428a30515
nvfx: add NOUVEAU_VTXIDX_IN_VRAM variable to put vertex/index buffers in VRAM
...
On some systems, putting vertex and index buffers in VRAM instead of GART
memory eliminates massive graphics corruption which is otherwise present,
due to unclear causes.
This patch adds an environment variable that does that, along with helpful
messages.
It turns it on by default on G7x, as it is what I am seeing corruption
on and some other reports also seemed to pinpoint these cards.
2010-03-23 18:11:25 +01:00
Luca Barbieri
208f5bf3cd
nvfx: delay allocation of buffers in GART/VRAM to validation time
...
Currently we allocate buffers in GART or VRAM at creation time.
However, when using swtnl, this results in reads from uncached
memory, which drastically impair performance.
So, for now, cause nouveau_screen.c to not pass any placement flags
to buffer creation, so that the buffers are moved later.
Previously libdrm itself did this, but was changed to not to do it.
This may introduce an extra copy in normal usage, but this currently
does not seem to introduce significant performance degradation.
This will be revisited when pipebuffer is integrated.
Note that for AGP systems, properly solving this may be complex
since currently there is no fast way of reading from GART/VRAM.
We will probably need to try mapping AGP as writethrough and, in
addition, make buffer creation more aware of future buffer usage.
2010-03-23 18:10:59 +01:00
Luca Barbieri
9f0e302cc7
st/mesa: make st_manager.c set have[Stencil|Depth]Buffer only if bits > 0
...
Fixes a segfault when clearing a non-existent stencil buffer.
2010-03-23 18:02:51 +01:00