summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* haiku-softpipe: Minor cleanup and color space fixesAlexander von Gluck IV2013-10-292-20/+13
| | | | | | | | | | * Use more consistant data sources * Fix improper color space assignments * Remove unnecessary comments and code * Drop unnecessary round_up function (this was leftover from moving winsys code out of renderer) Acked-by: Brian Paul <[email protected]>
* winsys: Correct Haiku winsys display target codeAlexander von Gluck IV2013-10-294-8/+41
| | | | | | | | | * Instead of assuming the displaytarget is the same stride / colorspace as the destination, lets actually check the source bitmap. * Fixes random stride issues in rendering Acked-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]>
* llvmpipe: fix bogus layer clamping in setupRoland Scheidegger2013-10-292-8/+25
| | | | | | | | | | | | | | | | | | | | | The layer coming from GS needs to be clamped (not sure if that's actually the correct error behavior but we need something) as the number can be higher than the amount of layers in the fb. However, this code was using the layer calculation from the scene, and this was actually calculated in lp_scene_begin_rasterization() hence too late (so setup was using the value from the _previous_ scene or just zero if it was the first scene). Since the value is used in both rasterization and setup, move calculation up to lp_scene_begin_binning() though it's a bit more inconvenient to calculate there. (Theoretically could move _all_ code which was in lp_scene_begin_rasterization() to there, because ever since we got rid of swizzled render/depth buffers our "map" functions preparing the fb data for render don't actually change the data in there at all, but it feels like it would be a hack.) v2: improve comments Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jose Fonseca <[email protected]>
* util,llvmpipe: correctly set the minimum representable depth valueMatthew McClure2013-10-293-19/+64
| | | | | Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Jose Fonseca <[email protected]>
* svga: reindent drawing codeBrian Paul2013-10-293-266/+199
|
* r600g/sb: fix value::is_fixed()Vadim Girlin2013-10-291-2/+2
| | | | | | | | | | | This prevents unnecessary (and wrong) register allocation in the scheduler for preloaded values in fixed registers. Fixes interpolation-mixed.shader_test on rv770 (and probably on all other pre-evergreen chips). Signed-off-by: Vadim Girlin <[email protected]> Tested-by: Andreas Boll <[email protected]>
* vl/h264: split fields into SPS/PPSChristian König2013-10-287-125/+169
| | | | | | Add alot of missing fields as well. Signed-off-by: Christian König <[email protected]>
* radeon/uvd: fix H264 chroma format handlingChristian König2013-10-281-1/+15
| | | | Signed-off-by: Christian König <[email protected]>
* vl: add 400 chroma format as wellChristian König2013-10-281-0/+1
| | | | Signed-off-by: Christian König <[email protected]>
* ilo: minor cleanups for recent interface changesChia-I Wu2013-10-283-156/+9
| | | | | Kill ilo_bind_sampler_states2 and ilo_set_sampler_views2. Map PIPE_FORMAT_R10G10B10A2_UINT to BRW_SURFACEFORMAT_R10G10B10A2_UINT.
* implement NV_vdpau_interop v7Christian König2013-10-265-8/+110
| | | | | | | | | | | | | | | | | | | 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]>
* winsys/radeon: make radeon_drm_winsys_create publicChristian König2013-10-261-1/+1
| | | | | | Otherwise OpenGL/VDPAU interop won't work as expected. Signed-off-by: Christian König <[email protected]>
* gallium: add PIPE_CAP_MIXED_FRAMEBUFFER_SIZESIlia Mirkin2013-10-2614-1/+17
| | | | | | | | | This CAP will determine whether ARB_framebuffer_object can be enabled. The nv30 driver does not allow mixing swizzled and linear zsbuf/cbuf textures. Signed-off-by: Ilia Mirkin <[email protected]> Signed-off-by: Marek Olšák <[email protected]>
* r600g,radeonsi: use fences provided by the winsysMarek Olšák2013-10-258-462/+37
|
* winsys/radeon: add the implementation of fences from r300gMarek Olšák2013-10-254-33/+87
|
* radeonsi: add the vertex shader position output if it's missingMarek Olšák2013-10-251-0/+13
| | | | | | This fixes a lockup in piglit/spec/glsl-1.40/execution/tf-no-position. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: respect semantic indices for COLOR[i] fragment shader outputsMarek Olšák2013-10-251-5/+2
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* freedreno/a3xx/compiler: relative addressingRob Clark2013-10-241-1/+123
| | | | Signed-off-by: Rob Clark <[email protected]>
* freedreno/a3xx: fix const/rel/const-rel encodingRob Clark2013-10-244-88/+300
| | | | | | | | | | | | | | | | | | | | | | | | The encoding of constant, relative, and relative-const src registers is a bit more complex than originally thought, which gives an extra bit to encode const reg # at expense of taking a bit from relative offset. In most cases a3xx seems to actually use a scheme whereby it can encode an extra bit for const register. You have three possible encodings in thirteen bits: register: (11 bits for N.c) 00........... rN.c relative: (10 bits for N) 010.......... r<a0.x + N> 011.......... c<a0.x + N> const: (12 bits for N.c) 1............ cN.c Which means we can deal w/ more consts than previously thought. Signed-off-by: Rob Clark <[email protected]>
* freedreno/a3xx: add blend stateRob Clark2013-10-242-5/+23
| | | | Signed-off-by: Rob Clark <[email protected]>
* freedreno/resource: fail more gracefullyRob Clark2013-10-241-1/+13
| | | | | | Fail more gracefully when buffer allocation/import fails. Signed-off-by: Rob Clark <[email protected]>
* gallivm: implement fully accurate corner filtering for seamless cube mapsRoland Scheidegger2013-10-251-13/+151
| | | | | | | | | | | | | | | | | | | | | | d3d10 requires that cube corners are filtered with accurate weights (that is, the weight of the non-existing corner texel should be evenly distributed to the other 3 texels). OpenGL does not require this (but recommends it). This requires us to use different filtering code, since we need per-texel weights which our 2d lerp doesn't (and can't) do. And of course the (now per element) weights need to be adjusted too for it to work. Invoke the new filtering code whenever there's an edge to keep things simpler, as it will work for edges too not just corners but of course it's only needed with corners. More ugly code for not much gain but at least a hacked up cubemap demo shows very nice corners now... Not sure yet if and how this should be configurable... v2: incorporate feedback from Jose, only use special corner filtering code when there's a corner not when there's only an edge (as corner filtering code is slower, though a perf difference was only measureable when always forcing edge code). Plus some minor style fixes. Reviewed-by: Jose Fonseca <[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.
* svga: remove user-space vertex/index buffer codeBrian Paul2013-10-246-259/+13
| | | | | | | | The gallium vbuf module, which we've been using for some time now, takes care of uploading user-space vertex/index data into real buffers. The upload code in the svga driver was unused. Reviewed-by: José Fonseca <[email protected]>
* freedreno: fix compile errorRob Clark2013-10-231-1/+1
| | | | | | Small typo introduced in a3ed98f. Signed-off-by: Rob Clark <[email protected]>
* clover: fix build after a3ed98f7aa85636579a5696bf036ec13e5c9104aDavid Heidelberger2013-10-231-3/+4
|
* nv50: clamp PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS to PIPE_MAX_SAMPLERSBrian Paul2013-10-231-1/+1
| | | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70212 Tested-by: Aaron Watry <[email protected]>
* radeonsi: remove unused si_set_cs_sampler_view()Brian Paul2013-10-231-4/+0
| | | | | | | Fixes build breakage. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70804 Tested-by: Vinson Lee <[email protected]>
* gallium: new, unified pipe_context::set_sampler_views() functionBrian Paul2013-10-2344-492/+277
| | | | | | | | | | | | The new function replaces four old functions: set_fragment/vertex/ geometry/compute_sampler_views(). Note: at this time, it's expected that the 'start' parameter will always be zero. Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Tested-by: Emil Velikov <[email protected]>
* svga: remove unneeded include of u_double_list.hBrian Paul2013-10-231-2/+0
|
* 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-2117-78/+1046
| | | | 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-212-8/+11
| | | | 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]>
* clover: Simplify the platform object by using util/range.Francisco Jerez2013-10-213-28/+8
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Add property list helpers with a syntax consistent with other API ↵Francisco Jerez2013-10-215-50/+91
| | | | | | objects. Tested-by: Tom Stellard <[email protected]>
* clover: Switch samplers to the new model.Francisco Jerez2013-10-217-53/+53
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Switch memory objects to the new model.Francisco Jerez2013-10-219-302/+267
| | | | Tested-by: Tom Stellard <[email protected]>
* clover: Switch kernel and program objects to the new model.Francisco Jerez2013-10-2111-492/+458
| | | | Tested-by: Tom Stellard <[email protected]>