summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers
Commit message (Collapse)AuthorAgeFilesLines
* gallium: fix tgsi SAMPLE_L opcode to use separate source for explicit lodRoland Scheidegger2013-02-121-7/+2
| | | | | | | | | | | | | | | | | | | | | It looks like using coord.w as explicit lod value is a mistake, most likely because some dx10 docs had it specified that way. Seems this was changed though: http://msdn.microsoft.com/en-us/library/windows/desktop/hh447229%28v=vs.85%29.aspx - let's just hope it doesn't depend on runtime build version or something. Not only would this need translation (so go against the stated goal these opcodes should be close to dx10 semantics) but it would prevent usage of this opcode with cube arrays, which is apparently possible: http://msdn.microsoft.com/en-us/library/windows/desktop/bb509699%28v=vs.85%29.aspx (Note not only does this show cube arrays using explicit lod, but also the confusion with this opcode: it lists an explicit lod parameter value, but then states last component of location is used as lod). (For "true" hw drivers, only nv50 had code to handle it, and it appears the code was already right for the new semantics, though fix up the seemingly wrong c/d arguments while there.) v2: fix comment, separate out other changes. Reviewed-by: Jose Fonseca <[email protected]>
* xorg: fix exa finish accessJerome Glisse2013-02-081-1/+1
| | | | | | | | The exa core will already set the pointer to NULL prior calling the callback function. So don't bail out in the callback if it's already NULL. Signed-off-by: Jerome Glisse <[email protected]>
* gallium/egl: Fix include dirs for VPATH buildQuentin Glidic2013-02-041-0/+1
| | | | | | NOTE: This is a candidate for the 9.1 branch. Reviewed-by: Matt Turner <[email protected]> Signed-off-by: Quentin Glidic <[email protected]>
* android: use gralloc_drm_get_gem_handle apiTapani Pälli2013-01-281-8/+2
| | | | | | | | Currently a gralloc internal structure is exposed to Mesa, Use a query function instead to maintain ABI compatibility. Signed-off-by: Tapani Pälli <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* st/dri: disallow recursion in dri_flushMarek Olšák2013-01-242-1/+13
| | | | | | | | | | | ST_FLUSH_FRONT may call driThrottle, which is implemented with dri_flush. This prevents double flush as well as fence leaks caused by a recursion in the middle of throttling. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=58839 Reviewed-by: Michel Dänzer <[email protected]> Tested-by: Michel Dänzer <[email protected]>
* st/dri: add null-pointer check, remove duplicated local variableMarek Olšák2013-01-241-4/+5
| | | | | Reviewed-by: Michel Dänzer <[email protected]> Tested-by: Michel Dänzer <[email protected]>
* scons: Fix dependencies of generated headers.José Fonseca2013-01-211-3/+3
| | | | | | | | | | | | | | It appears that scons implicit dependency scanners fail to chain dependencies of generated headers when these are outside the build tree. This patch ensures generated source files are _always_ put in the build tree. I'm not 100% this will fix all depency issues, but from my experiments it does seem to fix this. NOTE: For this to be effective it is necessary to clean the source tree from generated header/source files. Reviewed-by: Brian Paul <[email protected]>
* gallium/util: fix glClear with MRT by making the FS write to all cbufsMarek Olšák2013-01-151-1/+2
| | | | Reviewed-by: Brian Paul <[email protected]>
* xmlpool: Fix out-of-tree builds.Johannes Obermayr2013-01-132-0/+2
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* Remove hacks for static MakefilesMatt Turner2013-01-139-48/+0
| | | | | | | | | | | v2: Andreas Boll <[email protected]> - don't remove compatibility with scripts for the old build system v3: Andreas Boll <[email protected]> - remove more obsolete hacks v4: Andreas Boll <[email protected]> - add a previously removed TOP variable to fix vgapi build
* scons: Update for xmlpool/options.h generation.José Fonseca2013-01-122-0/+2
|
* Clean up .gitignore filesMatt Turner2013-01-1013-13/+0
|
* targets/pipe-loader: Convert to automakeMatt Turner2013-01-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | C++ linking (controlled by the nodist_EXTRA idiom) is needed unconditionally for: nouveau (uses C++ in the driver) r300 (since LLVM is always required) radeonsi (since LLVM is always required) swrast (if builting LLVM pipe) and conditionally (depends whether LLVM is enabled) for i915 r600 vmwgfx and never needed for swrast (softpipe). Unfortunately, automake seems to *always* link with C++ if nodist_EXTRA is specified, even inside a false conditional. Not sure if this is a bug, but it does seem to be weird behavior. v2: Johannes Obermayr <[email protected]> - Fix some undefined symbols. v3: Johannes Obermayr <[email protected]> - Install pipe_* to $(libdir)/gallium-pipe. v4: Johannes Obermayr <[email protected]> - Build it only once on --enable-gallium-gbm / --enable-opencl.
* state_trackers/xvmc/test: Convert to automakeMatt Turner2013-01-104-31/+25
|
* state_trackers/xvmc: Convert to automakeMatt Turner2013-01-103-14/+43
|
* state_trackers/xorg: Convert to automakeMatt Turner2013-01-103-23/+58
|
* state_trackers/xa: Convert to automakeMatt Turner2013-01-103-64/+48
|
* state_trackers/vega: Convert to automakeMatt Turner2013-01-103-53/+76
|
* state_trackers/vdpau: Convert to automakeMatt Turner2013-01-103-26/+56
|
* state_trackers/glx: Convert to automakeMatt Turner2013-01-104-44/+47
|
* state_trackers/gbm: Convert to automakeMatt Turner2013-01-103-50/+42
|
* state_trackers/egl: Convert to automakeMatt Turner2013-01-104-127/+111
|
* state_trackers: Convert to automakeMatt Turner2013-01-103-29/+24
|
* state_trackers/dri/sw: Convert to automakeMatt Turner2013-01-103-25/+44
|
* state_trackers/dri/drm: Convert to automakeMatt Turner2013-01-103-27/+44
|
* state_trackers/dri: Convert to automakeMatt Turner2013-01-103-12/+24
|
* clover: Adapt libclc's INCLUDEDIR and LIBEXECDIR to make use of the new ↵Johannes Obermayr2013-01-082-3/+4
| | | | | | | | | introduced libclc.pc. Tom Stellard: -Keep --with-libclc-path and mark it deprecated. Reviewed-by: Tom Stellard <[email protected]>
* st/glx: allow GLX_DONT_CARE for glXChooseFBConfig() attribute valuesBrian Paul2013-01-041-0/+14
| | | | | | | | Fixes piglit glx-dont-care-mask test. Note: This is a candidate for the stable branches. Reviewed-by: Chad Versace <[email protected]>
* clover: Fix build after the addition of enum pipe_flush_flagsTom Stellard2013-01-041-1/+1
| | | | Broken since commit 598cc1f74d7ae924e84dee801b456ab7b0b22f84
* gallium: extend pipe_context::flush for it to accept an END_OF_FRAME flagMarek Olšák2013-01-0419-24/+32
| | | | | | | | | | | | | | | | | Usage with pipe_context: pipe->flush(pipe, NULL, PIPE_FLUSH_END_OF_FRAME); Usage with st_context_iface: st->flush(st, ST_FLUSH_END_OF_FRAME, NULL); The flag is only a hint for drivers. Radeon will use it for buffer eviction heuristics in the kernel (e.g. for queries like how many frames have passed since a buffer was used). The flag is currently only generated by st/dri on SwapBuffers. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Stéphane Marchesin <[email protected]>
* wayland: Don't cancel a roundtrip when any event is receivedJonas Ådahl2013-01-031-1/+4
| | | | | | | | | | | Since wl_display_dispatch_queue() returns the number of processed events or -1 on error, only cancel the roundtrip if an -1 is returned. This also fixes a potential memory corruption bug happening when the roundtrip does an early return and the callback later writes to the then out of scope stack allocated `done' parameter. Reviewed-by: Kristian Høgsberg <[email protected]>
* vega: fix for object handle leakAndreas Pokorny2012-12-174-1/+8
| | | | | | | | frees the object handle when a OpenVG is destroyed. Signed-off-by: Andreas Pokorny <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* clover: Fix build since removal of pipe_surface::usageTom Stellard2012-12-131-1/+0
| | | | by commit 25409c6da8163d9acb386511aef0c11577c7aadb
* clover: Add support for compiler flagsTom Stellard2012-12-135-12/+71
| | | | Reviewed-by: Francisco Jerez <[email protected]>
* clover: Don't erase build info of devices not being builtTom Stellard2012-12-131-2/+2
| | | | | | | | | Every call to _cl_program::build() was erasing the binaries and logs for every device associated with the program. This is incorrect because it is possible to build a program for only a subset of devices and so any device not being build should not have this information erased. Reviewed-by: Francisco Jerez <[email protected]>
* st/dri: add a way to force MSAA on with an environment variableMarek Olšák2012-12-121-4/+39
| | | | | | | | | | | There are 2 ways. I prefer the former: GALLIUM_MSAA=n __GL_FSAA_MODE=n Tested with ETQW, which doesn't support MSAA on Linux. This is the only way to get MSAA there. Reviewed-by: Brian Paul <[email protected]>
* gallium: remove pipe_surface::usageMarek Olšák2012-12-1212-33/+11
| | | | | | Not really used by anybody now. Reviewed-by: Brian Paul <[email protected]>
* st/egl/drm: only unref the udev device if neededTobias Droste2012-12-111-4/+5
| | | | | | | | | | | Fixes compiler warning: drm/native_drm.c: In function ‘native_create_display’: drm/native_drm.c:180:21: warning: ‘device’ may be used uninitialized in this function [-Wmaybe-uninitialized] drm/native_drm.c:157:24: note: ‘device’ was declared here Signed-off-by: Tobias Droste <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* clover: Install CL headers.Johannes Obermayr2012-12-101-0/+10
| | | | Note: This is a candidate for the stable branches.
* vega: remove unused variablesFabio Pedretti2012-12-101-3/+1
| | | | Signed-off-by: Brian Paul <[email protected]>
* st/dri: implement MSAA for GLX/DRI2 framebuffersMarek Olšák2012-12-074-11/+110
| | | | | | | | | | | | | All MSAA buffers are allocated privately and resolved into the DRI-provided back and front buffers. If an MSAA visual is chosen, the buffers st/mesa receives are all multi-sample. st/mesa doesn't have access to the single-sample buffers in that case. This makes MSAA work in games like Nexuiz. Reviewed-by: Brian Paul <[email protected]>
* gallium: pass the current context to the flush_front state tracker functionMarek Olšák2012-12-078-11/+19
| | | | | | I will later use the context to resolve an MSAA front buffer. Reviewed-by: Brian Paul <[email protected]>
* st/dri: don't expose MSAA configs with accumulation bufferMarek Olšák2012-12-071-1/+13
| | | | Reviewed-by: Brian Paul <[email protected]>
* st/dri: refactor dri_fill_in_modesMarek Olšák2012-12-074-109/+45
| | | | | | | | | | - We can use a single loop for adding new configs. - The useless parameter depth_bits is removed. - The maximum number of samples is bumped to 32. - We can support Z16_UNORM and Z32_UNORM unconditionally since the zbuffers are private. Reviewed-by: Brian Paul <[email protected]>
* st/dri: always allocate private depth-stencil buffersMarek Olšák2012-12-071-59/+49
| | | | | | | | | | | | This disables DRI2 sharing of zbuffers. The window zbuffer is allocated just like any other texture - through resource_create. The idea of allocating a zbuffer through DRI2 isn't very useful with MSAA, where a single-sample zbuffer is useless. IIRC, the Intel driver does the same thing. Reviewed-by: Brian Paul <[email protected]>
* scons: Require drm to build gallium/state_trackers/egl/x11/x11_screen.c.Vinson Lee2012-12-041-2/+4
| | | | | | | | | | | | x11_screen.c includes xf86drm.h, which comes from libdrm-dev. This patch fixes this build error. Compiling src/gallium/state_trackers/egl/x11/x11_screen.c ... src/gallium/state_trackers/egl/x11/x11_screen.c:30:21: fatal error: xf86drm.h: No such file or directory Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: José Fonseca <[email protected]>
* st/glx: accept GLX_SAMPLE_BUFFERS/SAMPLES_ARB == 0Brian Paul2012-12-031-4/+6
| | | | | | | | | | | | Only fail if GLX_SAMPLE_BUFFERS_ARB or GLX_SAMPLES_ARB are non-zero. We were already doing this in the older swrast/glx code. This fixes a piglit/waffle problem where we'd always fail to get a visual/config and report the test as "skip". Note: This is a candidate for the stable branches. Reviewed-by: Kenneth Graunke <[email protected]>
* st/dri: implement new driver hook flush_with_flagsMarek Olšák2012-12-024-56/+89
| | | | v2: added documentation for dri_flush as per Brian's request
* mesa: Rename API_OPENGL to API_OPENGL_COMPAT.Paul Berry2012-11-291-3/+3
| | | | | | | | | | This should help avoid confusion now that we're using the gl_api enum to distinguishing between core and compatibility API's. The corresponding enum value for core API's is API_OPENGL_CORE. Acked-by: Eric Anholt <[email protected]> Acked-by: Matt Turner <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* gallium/postprocess: share pipe_context and cso_context with the state trackerMarek Olšák2012-11-291-1/+3
| | | | | | | Using one context instead of two is more efficient and we can skip another context flush. Reviewed-by: Brian Paul <[email protected]>