aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers
Commit message (Collapse)AuthorAgeFilesLines
* st/glx: whitespace, 80-column fixesBrian Paul2011-03-071-35/+50
|
* st/wgl: No need to initialize OneTimeLock anymore.José Fonseca2011-03-061-6/+0
|
* egl/wayland: Move wayland-egl into a subdirBenjamin Franzke2011-03-041-1/+1
| | | | | This hopefully fixes wayland-egl's dependency resolution for autogenerated wayland-drm headers.
* egl: Add EGL_WL_bind_wayland_displayBenjamin Franzke2011-03-012-0/+2
|
* st/egl: Implement swapbuffer throttlingThomas Hellstrom2011-03-013-4/+141
| | | | | | | | | | | | | | | When doing copy swapbuffers using drm, throttle on outstanding copy operations. Introduces a new environment variable, EGL_THROTTLE_FENCES that the user can use to indicate the desired number of outstanding swapbuffers, or disable throttling using EGL_THROTTLE_FENCES=0. This can and perhaps should be extended to the pageflip case as well, since with some hardware pageflips can be pipelined. In case the pageflip syncs, the throttle operation will be a no-op anyway. Update copyright notices. Signed-off-by: Thomas Hellstrom <[email protected]>
* st/egl/drm: Rework swapbuffersThomas Hellstrom2011-03-012-7/+32
| | | | | | | | Use the pageflip ioctl when available. Otherwise, or when the backbuffer contents need to be preserved, fall back to a copy operation. Signed-off-by: Thomas Hellstrom <[email protected]>
* st/egl: Add a helper to perform a copy swap on a resource surfaceThomas Hellstrom2011-03-012-0/+45
| | | | | | | The copy swap can be used when we need to preserve the contents of the back buffer or when there is no way to do native page-flipping. Signed-off-by: Thomas Hellstrom <[email protected]>
* st/egl: Move the copy context to the native display structureThomas Hellstrom2011-03-019-20/+39
| | | | | | | | This makes it usable also for native helpers. Also add inline functions to access the context and to uninit the native display structure. Signed-off-by: Thomas Hellstrom <[email protected]>
* st/dri: one more missing array sizeDave Airlie2011-03-011-0/+1
| | | | | | whats one more between friends. again bnf on irc.
* st/dri: fix missing array size init.Dave Airlie2011-03-011-0/+1
| | | | | | Init array size to 1, reported by bnf on irc.
* egl/st: add array size initialisorDave Airlie2011-03-011-0/+1
| | | | reported by bnf on irc.
* st/dri: Track drawable context bindingsJakob Bornecrantz2011-02-204-2/+14
| | | | | | | | | | | | | | | | | | | Needs to track this ourself since because we get into a race condition with the dri_util.c code on make current when rendering to the front buffer. This is what happens: Old context is rendering to the front buffer. App calls MakeCurrent with a new context. dri_util.c sets drawable->driContextPriv to the new context and then calls the driver make current. st/dri make current flushes the old context, which calls back into st/dri via the flush frontbuffer hook. st/dri calls dri loader flush frontbuffer, which calls invalidate buffer on the drawable into st/dri. This is where things gets wrong. st/dri grabs the context from the dri drawable (which now points to the new context) and calls invalidate framebuffer to the new context which has not yet set the new drawable as its framebuffers since we have not called make current yet, it asserts.
* st/python: add usage parameter to pipe_buffer_createVinson Lee2011-02-152-2/+3
| | | | | | This is a follow-up to commit eafb7f234d11a290b00dcaf5492b9bdad1cf5148. Fixes Linux SCons build.
* gallium: add usage parameter to pipe_buffer_createMarek Olšák2011-02-153-2/+6
| | | | | And set a reasonable buffer usage flag everywhere instead of just PIPE_USAGE_DEFAULT.
* st/python: remove pipe_vertex_buffer::max_indexVinson Lee2011-02-141-3/+0
| | | | This is a follow-up to commit cdca3c58aa2d9549f5188910e2a77b438516714f.
* gallium: remove pipe_vertex_buffer::max_indexMarek Olšák2011-02-143-4/+0
| | | | | This is redundant to pipe_draw_info::max_index and doesn't really fit in the optimizations I plan.
* gallium: always save and restore vertex buffers using cso_cacheMarek Olšák2011-02-142-4/+4
|
* st/egl wayland: Sync front buffer releaseBenjamin Franzke2011-02-102-1/+33
|
* st/dri: Set render_buffer in dri_fill_st_visualBenjamin Franzke2011-02-101-2/+4
| | | | | st/mesa/st_managaer.c needs render_buffer in order to determinde which buffer should be rendered to.
* st/dri: img_from_renderbuf: Fix incorrect usage of dri_context()Benjamin Franzke2011-02-101-1/+1
|
* st/dri: Fix surfaceless gl using contexts with previous bound surfacesBenjamin Franzke2011-02-101-2/+6
| | | | | | | | | | | ctx->dPriv might be != NULL then draw which is NULL is accessed: struct dri_drawable *draw = dri_drawable(driDrawPriv); [..] if (ctx->dPriv != driDrawPriv) { ctx->dPriv = driDrawPriv; draw->texture_stamp = driDrawPriv->lastStamp - 1; }
* st/egl wayland: Set color_format according to wl_visualBenjamin Franzke2011-02-101-5/+6
|
* st/egl: Fix platform selectionBenjamin Franzke2011-02-081-0/+1
| | | | | A break for case _EGL_PLATFORM_X11 is missing. introduced by: 381ea0d67a6d84a34d23571c49bbf4339ffda364
* st/egl: Add wayland platformBenjamin Franzke2011-02-075-0/+715
|
* st/egl: drm_image: Check for MESA_drm_imageBenjamin Franzke2011-02-071-2/+2
| | | | | MESA_drm_image isnt limited to drm platform, others can enable the extension too.
* st/egl: native_helper: Add resource_surface_import_resourceBenjamin Franzke2011-02-072-0/+13
|
* st/dri: Implement dri2::{Allocate,Release}BufferBenjamin Franzke2011-02-072-0/+111
|
* st/vega: Disable blending when the paint is opaque.Chia-I Wu2011-01-308-5/+37
| | | | | | | When the paint is opaque (currently, solid color with alpha 1.0f), no blending is needed for VG_BLEND_SRC_OVER. This eliminates the serious performance hit introduced by 859106f196ade77f59f8787b071739901cd1a843 for a common scenario.
* st/vega: Remove an invalid sanity check.Chia-I Wu2011-01-301-6/+0
| | | | | Before create_handle returns, obj->handle is 0. Calling handle_to_object will fail.
* st/vega: s/vg[A-Z]/vega[A-Z]/.Chia-I Wu2011-01-304-42/+42
|
* st/egl: Downgrade warning to debug when we can't create a drm screenKristian Høgsberg2011-01-262-2/+2
| | | | We try to load a DRI driver if this fails so don't confuse users.
* vega: implement handler/pointer conversion using a hash tableBrian Paul2011-01-249-9/+175
| | | | Before, we were just casting between 32-bit VGHandles and 64-bit pointers.
* vega: remove redundant functions found elsewhereBrian Paul2011-01-241-10/+0
|
* vega: replace casts with pointer/handle conversion functionsBrian Paul2011-01-2411-165/+297
| | | | | | | | | Per the spec, all OpenVG handles are 32-bit. We can't just cast them to/from integers on 64-bit systems. Start fixing that mess by introducing a set of handle/pointer conversion functions in handle.h. The next step is to implement a handle/pointer hash table...
* st/xorg: Fix build failure against xserver with XF86_CRTC_VERSION < 3.Michel Dänzer2011-01-241-4/+2
| | | | Reported by Vinson Lee.
* vega: sort filenames in Makefile, SConscriptBrian Paul2011-01-232-23/+24
|
* scons: Add support for GLES.Chia-I Wu2011-01-222-0/+6
| | | | | | | | | | | | | | | | | | GLES can be enabled by running scons with $ scons gles=yes When gles=yes is given, the build is changed in three ways. First, libmesa.a will be built with FEATURE_ES1 and FEATURE_ES2. This makes DRI drivers and libEGL support and advertise GLES support. Second, GLES libraries will be created. They are libGLESv1_CM, libGLESv2, and libglapi. Last, libGL or opengl32 will link to libglapi. This change is required as _glapi_* will be declared as __declspec(dllimport) in libmesa.a on windows. libmesa.a expects those symbols to be defined in another DLL. Due to this change to GL, GLES support is marked experimental. Note that GLES requires libxml2-python to generate some of its sources.
* st/dri: Fix warningJakob Bornecrantz2011-01-211-0/+1
|
* Remove executables from source tree.José Fonseca2011-01-185-0/+0
|
* d3d1x: Fix broken build.Chia-I Wu2011-01-161-1/+6
| | | | | st/egl native.h changed its interface in a22a332fc7cc54d4d0973dcd21a90159cc51de1a.
* egl: Improve driver selection.Chia-I Wu2011-01-136-63/+96
| | | | | | | | | | | | | | | | | | | | | | | The idea is to be able to match a driver using the following order try egl_gallium with hw renderer try egl_dri2 try egl_gallium with sw renderer try egl_glx given the module list egl_gallium egl_dri2 egl_glx For that, UseFallback initialization option is added. The module list is matched twice: with the option unset and with the option set. In the first pass, egl_gallium skips its sw renderer and egl_glx rejects to initialize since UseFallback is not set. In the second pass, egl_gallium skips its hw renderer and egl_dri2 rejects to initialize since UseFallback is set. The process stops at the first driver that initializes the display.
* egl: Simplify driver matching.Chia-I Wu2011-01-131-8/+3
| | | | | | Add initialization options that drv->API.Initialize should support. Replace drv->Probe by TestOnly initialization option and simplify _eglMatchDriver.
* egl: Cleanup _EGLDisplay initialization.Chia-I Wu2011-01-131-9/+8
| | | | | Reorder/rename and document the fields that should be set by the driver during initialization. Drop the major/minor arguments from drv->API.Initialize.
* scons: Updates for targets/egl-static.Chia-I Wu2011-01-121-11/+27
| | | | | | | | Update SConscripts to re-enable or add support for EGL on windows and x11 platforms respectively. targets/egl-gdi is replaced by targets/egl-static, where "-static" means pipe drivers and state trackers are linked to statically by egl_gallium, and egl_gallium is a built-in driver of libEGL. There is no more egl_gallium.dll on Windows.
* st/egl: Fix a void pointer arithmetic warning.Chia-I Wu2011-01-101-1/+1
|
* st/xorg: Flesh out colour map support and support depth 8.Michel Dänzer2011-01-053-1/+80
|
* st/egl: Fix eglChooseConfig when configs is NULL.Chia-I Wu2010-12-261-4/+4
| | | | | When configs is NULL, the app wants to know the number of matching configs.
* st/egl: Remove unnecessary header.Vinson Lee2010-12-231-1/+0
|
* st/vega: Remove unnecessary headers.Vinson Lee2010-12-226-12/+0
|
* st/egl: Assorted fixes for dri2_display_get_configs.Chia-I Wu2010-12-221-4/+36
| | | | | | Set window_bit only when the visual id is greater than zero. Correct visual types. Skip slow configs as they are not relevant. Finally, do not return duplicated configs.