summaryrefslogtreecommitdiff
path: root/src/gallium
AgeCommit message (Collapse)AuthorFilesLines
2014-08-28st/egl: cleanup sw winsys header inclusionsEmil Velikov6-12/+8
- Drop duplicate include compiler directives. - Leave the sw/ prefix for all the software winsys headers. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2014-08-28winsys/radeon: move radeon_cs_dump.h to drmEmil Velikov2-2/+2
... to ease packaging (make dist). Update it to fetch libdrm's include/libs via pkg-config. Cc: Marek Olšák <marek.olsak@amd.com> Cc: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2014-08-28gallium/radeon: cleanup header inclusionEmil Velikov32-36/+36
- Add top_srcdir/src/gallium/winsys to GALLIUM_DRIVER_C{XXFLAGS}. - Remove top_srcdir/src/gallium/drivers/radeon from the includes. As a result: - Common radeon headers are prefixed with 'radeon/' - Winsys header inclusion is prefixed 'radeon/drm' Cc: Marek Olšák <marek.olsak@amd.com> Cc: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2014-08-28winsys/svga: build: cleanup the includesEmil Velikov2-6/+1
gallium/drivers is already part fo GALLIUM_WINSYS_CFLAGS. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2014-08-28winsys/i915: remove the software winsysEmil Velikov8-490/+0
We stopped building it recently as it was unused and not tested. Good bye, it's been nice knowing you :) Cc: Stephane Marchesin <stephane.marchesin@gmail.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Stephane Marchesin <stephane.marchesin@gmail.com>
2014-08-28gallium/ilo: cleanup intel_winsys.hEmil Velikov7-8/+13
Make the header location, inclusion and contents more common with its i915,r* and nouveau counterparts: - Move the header within drivers/ilo. - Separate out intel_winsys_create_for_fd into 'drm_public' header. - Cleanup the compiler includes. v2: Move the header to drivers/ilo. Suggested by Chia-I. v3: Correct intel_winsys.h inclusion. Spotted by Chia-I. Cc: Chia-I Wu <olvaffe@gmail.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
2014-08-27gallium: add cap for MAX_VERTEX_ATTRIB_STRIDETimothy Arceri15-0/+34
Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au> Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2014-08-28st/clover: Fix build against LLVM SVN >= r216583Michel Dänzer1-0/+5
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
2014-08-28draw: fix base instance handling in llvm pathRoland Scheidegger5-12/+20
The base instance needs to be passed to the jited function, otherwise the instanced data fetch will only work with the same start instance when the jit function was created (and baking that into the key instead is not a viable option). This fixes piglit arb_base_instance-drawarrays (modulo some unrelated core/compat context trouble I get for the test). And fix the pipe cap bit in llvmpipe for it now that it actually works (it already worked for softpipe). Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
2014-08-27radeon/uvd: remove comment about RV770Alex Deucher1-1/+0
It doesn't seem to support field based decode after testing. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
2014-08-26radeon/uvd: fix field handling on R6XX style UVDChristian König1-2/+5
The first UVD generation can only do frame based output. Signed-off-by: Christian König <christian.koenig@amd.com>
2014-08-26vl/compositor: set the scissor before clearing the render targetChristian König1-1/+1
Otherwise we clear areas that shouldn't be cleared. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: mesa-stable@lists.freedesktop.org
2014-08-26st/vdpau: fix vlVdpOutputSurfaceRender(Output|Bitmap)SurfaceChristian König3-15/+71
Correctly handle that the source_surface is only optional. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=80561 Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: mesa-stable@lists.freedesktop.org
2014-08-26ilo: use genhw command opcodesChia-I Wu5-134/+184
Replace ILO_GPE_MI and ILO_GPE_CMD with magic values by descriptive genhw macros.
2014-08-26ilo: rename intel_bo_map_unsynchronized()Chia-I Wu4-13/+11
Rename it to intel_bo_map_gtt_async().
2014-08-26ilo: remove max_batch_sizeChia-I Wu5-14/+4
It is used to derive an artificial limit on max relocs per bo. We choose not to export it anymore.
2014-08-26ilo: replace domains by reloc flagsChia-I Wu11-125/+90
It is simpler and is supported by the kernel. It cannot be used with libdrm_intel yet though.
2014-08-25radeonsi: handle PIPE_BIND_BLENDABLEMarek Olšák1-1/+5
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2014-08-25r600g: only set PIPE_BIND_BLENDABLE if colorbuffer rendering is supportedMarek Olšák2-20/+10
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2014-08-25r300g: handle PIPE_BIND_BLENDABLEMarek Olšák1-1/+44
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2014-08-24vc4: Stop doing qpu_inst(add, NOP) or qpu_inst(NOP, mul).Eric Anholt1-84/+47
Now that the extra WADDR is set, we can knock this off. Saves a lot of typing, and makes this code much more legible.
2014-08-24vc4: Set the other WADDR in the qpu instruction helpers.Eric Anholt1-1/+5
Now you don't need to qpu_inst() your instruction with a NOP to get the other waddr set.
2014-08-24vc4: Merge qpu_a_NOP() and qpu_m_NOP to a single qpu_NOP() helper.Eric Anholt3-57/+45
Now that qpu_inst() ignores the WADDR from the other half of the instruction, we can set both the ADD and MUL WADDRs in the NOP helper. Thanks to that, we also no longer need to qpu_inst(NOP, NOP).
2014-08-24vc4: Ignore WADDRs from the other half of the instruction when merging.Eric Anholt1-1/+2
This allows setting the opposite-side WADDR to NOP (a non-zero value) in qpu_* helpers, so that we don't need to qpu_inst() merge them with NOPs all the time just to get the waddr set.
2014-08-24vc4: Fix LT/GE set-0-or-1 compares.Eric Anholt1-1/+1
We were using the integer sub, which worked for the common case of EQ and NE. Fixes fs-lessThan-ivec2-ivec2 and other tests.
2014-08-24u_vbuf: Add a few more format fallbacks.Eric Anholt1-0/+32
Fixes piglit draw-vertices and gl-2.0-vertexattribpointer on vc4, where I'm only advertising R32F to RGBA32F support so far. Note: regresses gl-1.5-normal3b3s-invariance due to introduced flushes and missing depth buffer load/store support in the driver. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2014-08-24u_vbuf: Simplify the format fallback translation.Eric Anholt3-117/+87
Individual caps made supporting new fallbacks more complicated than it needed to be. Instead, just make a table of fallbacks at context init time. v2: Fix inverted "do we need to install vbuf?" flagging caught by Marek. Reviewed-by: Marek Olšák <marek.olsak@amd.com> (v2)
2014-08-24freedreno/a2xx: fix segfaultRob Clark1-0/+1
Signed-off-by: Rob Clark <robclark@freedesktop.org>
2014-08-24freedreno/a3xx: handle first/last level properlyRob Clark3-9/+13
Fixes some assumptions about first_level being zero. Signed-off-by: Rob Clark <robclark@freedesktop.org>
2014-08-24freedreno: implement pipe_flush_resource()Rob Clark1-1/+5
Signed-off-by: Rob Clark <robclark@freedesktop.org>
2014-08-24freedreno: don't ignore src/dst levelRob Clark1-39/+63
Don't ignore src/dst_level in pipe_copy_region. Signed-off-by: Rob Clark <robclark@freedesktop.org>
2014-08-23vc4: Fix save/restore of the VS/FS in the blitter.Eric Anholt1-2/+2
When I made the shader cache take the .fs member and moved the binding point to .bind_fs, I failed to update these. Fixes crashes in copyteximage-related tests.
2014-08-23vc4: Clear padding of ioctl arguments.Eric Anholt1-0/+1
Fixes valgrind complaints from valgrind being unaware of our ioctls.
2014-08-22auxilary/os: Add Solaris support in os_get_total_physical_memory.Vinson Lee1-2/+2
The patch fixes the build on Oracle Solaris. CC os/os_misc.lo "os/os_misc.c", line 59: #error: unexpected platform in os_sysinfo.c Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2014-08-22gallium/targets: Haiku, Fix some improper type warningsAlexander von Gluck IV2-2/+2
2014-08-22gallium/targets: Clean up Haiku softpipe renderer visualAlexander von Gluck IV2-102/+98
* Drop creating gl_config first as it's only really used to create the state tracker visual.
2014-08-22vc4: Add support for fragment discards.Eric Anholt4-0/+43
Fixes piglit glsl-fs-discard-01 and -03, and allows a lot of mesa demos to start running. glsl-fs-discard-02 has a problem where the first tile is not getting stored on the first render.
2014-08-22vc4: Make some helpers for setting condition codes in instructions.Eric Anholt3-15/+27
2014-08-22vc4: Avoid using undefined values when there's no color write.Eric Anholt1-8/+27
The simulator assertion fails when you read-before-write a temporary value, and there's no point in doing the packing if there was no color written.
2014-08-22vc4: Emit the scoreboard wait just when it's needed.Eric Anholt1-2/+25
This should improve performance on real hardware by allowing more shader instances to run in parallel. It also fixes assertion failures in tests that don't emit a fragment color, since otherwise we didn't have enough instructions to fit our signals in.
2014-08-22vc4: Fix FLR for integer values less than 0.Eric Anholt1-1/+7
If we didn't truncate at all, then we don't need to fix for truncation happening in the wrong direction. Fixes piglit builtin-functions/*-floor-*
2014-08-22vc4: Fix totally broken assertions about inter-instruction reg conflicts.Eric Anholt1-3/+18
The spec citation talked about A and B, and I proceeded to pay no attention to whether the waddrs were for A or B. As a result, this pair of instructions would claim to conflict: mov ra4, ra4 ; nop nop, r0, r0 mov.ns ra4, rb4 ; nop nop, r0, r0
2014-08-22vc4: Add support for all the texture and FBO formats we can.Eric Anholt7-72/+203
Now that tiling is in place, we can expose the other formats. Depth is still broken (need to make changes in the shader), but if you don't expose it things crash all over. SNORM is dropped, but we could re-add it later with some shader fixes to handle converting between [0,1] and [-1,1].
2014-08-22vc4: Add support for texture tiling.Eric Anholt10-53/+626
This still treats everything as RGBA8888 for the most part, same as before. This is a prerequisite for handling other texture formats, since only RGBA8888 has a raster-layout mode.
2014-08-22vc4: Fix a typo in the validation for miplevels.Eric Anholt1-1/+1
It meant that LUMALPHA was being marked as *many* miplevels, and unsurprisingly wouldn't validate. On the other hand, some miplevel counts wouldn't get the small mips validated at all.
2014-08-22vc4: Convert to using an enum for texture data typesEric Anholt2-20/+43
2014-08-22vc4: Stop complaining about unknown texture channel types.Eric Anholt1-10/+0
It doesn't matter to this code -- the sampler always returns 8-bit unorm rgba.
2014-08-22vc4: Include stdio/stdlib in headers so I don't have to include it per file.Eric Anholt15-21/+4
There are a few tools I want to have always available, and fprintf() and abort() are among them.
2014-08-22st/clover: Change platform name from Default to CloverAaron Watry1-1/+1
Signed-off-by: Aaron Watry <awatry at gmail.com> Reviewed-by: Francisco Jerez <currojerez@riseup.net>
2014-08-21llvmpipe: change LP_MAX_SHADER_INSTRUCTIONS definitionRoland Scheidegger1-1/+1
This change will double cache size for branches which have a lower LP_MAX_SHADER_VARIANTS limit (it will not do anything on master). The reason is that nowadays shaders tend to be quite a bit larger than they were (they were big when llvmpipe didn't have a fs loop, got much smaller with that loop, and since then have gradually increased quite a bit though still smaller than without the fs loop for various reasons - among them being d3d10 compliance, usage of 8-wide vectors, non-swizzled blend code). Thus effectively less shaders would be cached (unless they were very small and the variant limit was hit first). Also, since we're getting rid of the IR nowadays, the cached shaders shouldn't need all that much memory actually.