summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers
Commit message (Collapse)AuthorAgeFilesLines
* st/dri: resolve sRGB buffers in linear colorspaceMarek Olšák2013-12-141-2/+23
| | | | Reviewed-by: Brian Paul <[email protected]>
* swrast* (gallium, classic): add MESA_copy_sub_buffer support (v3)Dave Airlie2013-12-136-9/+59
| | | | | | | | | | | | | | | | | | | | | | | This patches add MESA_copy_sub_buffer support to the dri sw loader and then to gallium state tracker, llvmpipe, softpipe and other bits. It reuses the dri1 driver extension interface, and it updates the swrast loader interface for a new putimage which can take a stride. I've tested this with gnome-shell with a cogl hacked to reenable sub copies for llvmpipe and the one piglit test. I could probably split this patch up as well. v2: pass a pipe_box, to reduce the entrypoints, as per Jose's review, add to p_screen doc comments. v3: finish off winsys interfaces, add swrast classic support as well. Reviewed-by: Jose Fonseca <[email protected]> Signed-off-by: Dave Airlie <[email protected]> swrast: add support for copy_sub_buffer
* gallium: allow choosing which colorbuffers to clearMarek Olšák2013-12-121-1/+1
| | | | | | | | | | | | | | Required for glClearBuffer, which only clears one colorbuffer attachment. Example: If the first colorbuffer is float and the second one is int: pipe->clear(pipe, PIPE_CLEAR_COLOR0, float_clear_color, ...); pipe->clear(pipe, PIPE_CLEAR_COLOR1, int_clear_color, ...); This doesn't need any driver changes yet, because all drivers just use: if (flags & PIPE_CLEAR_COLOR) .. The drivers which support GL 3.0 will have to implement it properly though.
* gallium/dri: Support DRI Image extension version 7Christopher James Halse Rogers2013-12-101-10/+104
| | | | | | | | | | | v2: Fix up queryImage return for ATTRIB_FD Use driver_descriptor.configuration to determine whether the driver supports DMA-BUF import/export. v3: Really, truly, fix up queryImage return for ATTRIB_FD Signed-off-by: Christopher James Halse Rogers <[email protected]> Reviewed-by: Thomas Hellstrom <[email protected]> Signed-off-by: Maarten Lankhorst <[email protected]>
* gallium/dri2: Set winsys_handle type to KMS for stride query.Christopher James Halse Rogers2013-12-101-0/+1
| | | | | | | | | Otherwise the default is TYPE_SHARED, which will flink the bo. This seems rather unnecessary for a simple stride query. Signed-off-by: Christopher James Halse Rogers <[email protected]> Reviewed-by: Thomas Hellstrom <[email protected]> Signed-off-by: Maarten Lankhorst <[email protected]>
* gallium/winsys/drm: Prepare for passing prime fds in winsys_handleChristopher James Halse Rogers2013-12-103-0/+4
| | | | | | Signed-off-by: Christopher James Halse Rogers <[email protected]> Reviewed-by: Thomas Hellstrom <[email protected]> Signed-off-by: Maarten Lankhorst <[email protected]>
* gallium/dri: Support DRI Image extension version 6Christopher James Halse Rogers2013-12-101-1/+71
| | | | | | | | | | v2: Pick out the correct gl_context pointer v3: Don't leak pipe_resources on error path Set img->dri_format correctly Signed-off-by: Christopher James Halse Rogers <[email protected]> Reviewed-by: Thomas Hellstrom <[email protected]> Signed-off-by: Maarten Lankhorst <[email protected]>
* st/xa: Bump major version number to 2Thomas Hellstrom2013-12-061-1/+1
| | | | | | | For some reason this was left out when the version was changed... Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Jakob Bornecrantz <[email protected]>
* clover: Fix missing minus sign in 'iterator_adaptor::operator-='.Francisco Jerez2013-12-021-1/+1
| | | | | The method is currently unused, this probably doesn't fix anything at this point.
* clover: Optionally return context's devices from clGetProgramInfo()Tom Stellard2013-11-181-2/+6
| | | | | | | | | | | | | The spec allows clGetProgramInfo() to return information about either the devices associated with the program or the devices associated with the context. If there are no devices associated with the program, then we return devices associated with the context. https://bugs.freedesktop.org/show_bug.cgi?id=52171 Reviewed-by: Francisco Jerez <[email protected]> CC: "10.0" <[email protected]>
* osmesa: add support for postprocess filtersBrian Paul2013-11-181-0/+87
| | | | | | | | | | Add new OSMesaPostprocess() function to allow using the gallium postprocessing filters. This only works for OSMesa with gallium drivers, not the legacy swrast OSMesa. Bump OSMESA_MAJOR/MINOR_VERSION numbers to 10.0 Reviewed-by: Marek Olšák <[email protected]>
* st/vega: Fix broken assertChris Forbes2013-11-171-1/+1
| | | | | | | This would never fire. Signed-off-by: Chris Forbes <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* st/xvmc: enable automake subdir-objectsEmil Velikov2013-11-161-0/+1
| | | | Signed-off-by: Emil Velikov <[email protected]>
* st/egl: use *_FILE over *_SOURCES names for filelistsEmil Velikov2013-11-164-23/+23
| | | | | | | | | | | | | | Silence automake warnings about missing program/library whenever the _SOURCES suffix is used for temporary variable names. warning: variable 'gdi_SOURCES' is defined but no program or library has 'gdi' as canonical name (possible typo) Acked-by: Matt Turner <[email protected]> Reported-by: Ilia Mirkin <[email protected]> Reported-by: Johannes Obermayr <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70581 Signed-off-by: Emil Velikov <[email protected]>
* clover: Remove dead file from Makefile.sources.Matt Turner2013-11-151-1/+0
| | | | | | Reviewed-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* clover: Support multiple devices in clCreateContextFromType() v2Tom Stellard2013-11-151-3/+9
| | | | | | | | | v2: - Use clGetDeviceIDs to query devices. Reviewed-by: Francisco Jerez <[email protected]> CC: "10.0" <[email protected]>
* clover: Fix the const variant of adaptor_range::end to deal with mismatching ↵Francisco Jerez2013-11-121-1/+2
| | | | | | | | | | | range sizes. Fixes infinite loop in find_grid_optimal_factor() in cases where the user specifies a grid size with less dimensions than the device supports. Reported-by: Tom Stellard <[email protected]> Cc: "10.0" <[email protected]>
* st/dri: Fix dri_create_context declaration prototype.José Fonseca2013-11-081-0/+1
|
* mesa/dri: Move context flag validation down into the driversIan Romanick2013-11-071-0/+5
| | | | | | | | | | | | | | | Soon some drivers will support a different set of flags than other drivers. If some flags have to be filtered in the driver, we might as well filter all of them in the driver. The changes in nouveau use tabs because nouveau seems to have it's own indentation rules. v2: Fix some rebase failures noticed by Ken (returning the wrong types, etc.). Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa/dri: Add basic plumbing for GLX_ARB_robustness reset notification strategyIan Romanick2013-11-071-0/+6
| | | | | | | | | | | No drivers advertise the DRI2 extension yet, so no driver should ever see a value other than false for notify_reset. The changes in nouveau use tabs because nouveau seems to have it's own indentation rules. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* st/xorg: Delete.Matt Turner2013-11-0721-7077/+0
| | | | Acked-by: Lucas Stach <[email protected]>
* st/vdpau: resolve delayed rendering for GL interop v2Grigori Goronzy2013-11-061-0/+4
| | | | | | | | | Otherwise OutputSurface interop has funny results sometimes. This fixes interop with the mpv media player. v2 (chk): add proper locking Signed-off-by: Christian König <[email protected]>
* clover: Calculate optimal work group size when it's not specified by the user.Francisco Jerez2013-11-045-15/+176
| | | | | | | | Inspired by a patch sent to the mailing list by Tom Stellard, but using a different algorithm to calculate the optimal block size that has been found to be considerably more effective. Reviewed-by: Tom Stellard <[email protected]>
* clover: Constify some command_queue arguments.Francisco Jerez2013-11-041-4/+4
|
* clover: Workaround compiler bug present in GCC 4.7.0-4.7.2.Francisco Jerez2013-11-041-16/+13
| | | | | Variadic template aliases make these versions of GCC very confused, write down the full type spec instead.
* st/xorg: handle updates to DamageUnregister APIEmil Velikov2013-11-041-0/+4
| | | | | | | | | | | | | | xserver 1.14.99.2 simplified the DamageUnregister API, by dropping the drawable argument. Follow xf86-video-intel and xf86-video-vmware approach and handle the new API by checking XORG_VERSION_CURRENT. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71110 Reported-by: Michał Górny <[email protected]> Reported-by: Vinson Lee <[email protected]> Tested-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* clover: fix build with LLVM 3.4Aaron Watry2013-11-041-5/+0
| | | | | | | | dso_list was added as an argument for createInternalizePass in 3.4, and then it was removed again in the same llvm version. Tested-by: Mike Lothian <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* clover: Don't install headers when using the icdTom Stellard2013-10-301-10/+11
| | | | | | | The ICD loader should be responsible for installing headers. Reviewed and Tested-by: Aaron Watry <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* st/xorg: drop set but unsused variables dxo, dyoEmil Velikov2013-10-291-4/+0
| | | | | | | | Commit a9f8baf00b264 removed the first and only use of the variables but forgot to remove them. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* st/xorg: add sanity checks after mallocEmil Velikov2013-10-291-0/+6
| | | | | Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* st/xorg: remove unnecessary headersEmil Velikov2013-10-292-8/+0
| | | | | | | v2: Remove xf86PciInfo.h, all drivers provide their own PCI ID list Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* clover: Use context device list for error checking in clGetProgramBuildInfo.Francisco Jerez2013-10-291-1/+1
| | | | | | Fixes https://bugs.freedesktop.org/show_bug.cgi?id=70891. Reported-by: Bruno Jiménez <[email protected]>
* vl/h264: split fields into SPS/PPSChristian König2013-10-281-21/+26
| | | | | | Add alot of missing fields as well. Signed-off-by: Christian König <[email protected]>
* implement NV_vdpau_interop v7Christian König2013-10-264-8/+61
| | | | | | | | | | | | | | | | | | | v2: Actually implement interop between the gallium state tracker and the VDPAU backend. v3: Make it also available in non legacy contexts, fix video buffer sharing. v4: deny interop if we don't have the same screen object v5: rebased on upstream changes v6: implemented VDPAUGetSurfaceivNV, improved error handling, unregister all surfaces in VDPAUFiniNV v7: squash merge with Mareks changes Signed-off-by: Christian König <[email protected]>
* dri: Move driver config options to dri driver extensions.Eric Anholt2013-10-244-3/+11
| | | | | | | | | This way they aren't all sitting in the global namespace (with the same name per driver). Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* clover: Query maximum kernel block size from the device instead of the ↵Francisco Jerez2013-10-244-10/+18
| | | | | | | | kernel object. Based on a similar fix from Aaron Watry. It seems unlikely that we will ever need a kernel-specific setting for this, and the Gallium API doesn't support it. Remove kernel::max_block_size() altogether.
* clover: fix build after a3ed98f7aa85636579a5696bf036ec13e5c9104aDavid Heidelberger2013-10-231-3/+4
|
* st/dri: minor formatting clean-ups in dri_context.cBrian Paul2013-10-221-4/+6
|
* clover: Improve region and pitch argument handling in memory transfer APIs.Francisco Jerez2013-10-211-130/+270
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Add a pixel_size() method to the image class.Francisco Jerez2013-10-212-0/+7
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Implement support for the ICD extension.Francisco Jerez2013-10-2115-78/+1040
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Make sure hidden is the default symbol visibility.Francisco Jerez2013-10-211-2/+5
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Prepare the build system for ICD support.Tom Stellard2013-10-211-0/+4
| | | | Signed-off-by: Francisco Jerez <[email protected]>
* clover: Fix memory leak when initializing a device object fails.Francisco Jerez2013-10-211-1/+3
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Tidy up resource::mapping.Francisco Jerez2013-10-212-11/+9
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Simplify command_queue::flush().Francisco Jerez2013-10-212-11/+10
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Clean up the kernel and program object interface.Francisco Jerez2013-10-218-136/+139
| | | | | [ Tom Stellard: Make sure to bind global arguments before retrieving handles. ] Tested-by: Tom Stellard <[email protected]>
* clover: Clean up the interface of the context object slightly.Francisco Jerez2013-10-216-27/+23
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Delete copy constructors and assignment operators in all ↵Francisco Jerez2013-10-2111-22/+44
| | | | | | non-copiable objects. Tested-by: Tom Stellard <[email protected]>
* clover: Define a few convenience equality operators.Francisco Jerez2013-10-2110-5/+47
| | | | Tested-by: Tom Stellard <[email protected]>