- Nov 15, 2017
-
-
Robert Foss authored
UseFallback can be enabled for the Android platform by setting the "LIBGL_ALWAYS_SOFTWARE" environment variable or setting the "debug.egl.force_software" Android property. Signed-off-by: Robert Foss <robert.foss@collabora.com>
-
Robert Foss authored
If no hardware driver is present, it is possible to fall back to the kms_swrast driver with any DRI node that supports dumb GEM create and mmap IOCTLs with softpipe/llvmpipe drivers. This patch makes the Android EGL platform code retry probe with kms_swrast if the hardware-only probe fails. Signed-off-by: Robert Foss <robert.foss@collabora.com> Suggested-by: Tomasz Figa <tfiga@chromium.org>
-
Robert Foss authored
Move initialization code into a separate function, so that it can be called with different options. Signed-off-by: Robert Foss <robert.foss@collabora.com>
-
Robert Foss authored
In order to simplify Android bringup on new devices, provide the property "debug.egl.force_software" which forces kms_swrast to be used. Signed-off-by: Robert Foss <robert.foss@collabora.com>
-
- Nov 08, 2017
-
-
Emil Velikov authored
Currently we were overwriting the existing warning flags, instead of adding new [as applicable]. Fixes c5d2e2d4 ("configure: Test for -Wno-initializer-overrides") Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
-
Emil Velikov authored
Currently we were overwriting the existing warning flags, instead of adding new [as applicable]. v2: Add missing space before -Werror (Eric) Fixes e4b2b69e ("configure: Add and use AX_CHECK_COMPILE_FLAG") Cc: Matt Turner <mattst88@gmail.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Matt Turner <mattst88@gmail.com> (v1) Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
-
Dylan Baker authored
Because meson mirrors the auototools logic, it needs the same changes to allow building glvnd based egl. v2: - change if to elif (Eric) Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Acked-by: Emil Velikov <emil.velikov@collabora.com>
-
Emil Velikov authored
Targets such as omx and va can work w/o anything X related. Mandate the xcb* dependencies only when the X11 platform is selected. Reported-by: Lukas Rusak <lorusak@gmail.com> Fixes: 63e11ac2 ("configure: error out if building VA w/o supported platform") Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Tested-by: Lukas Rusak <lorusak@gmail.com> (v1)
-
Emil Velikov authored
Currently we error out when building GLVND w/o GLX. That was the original premice before we had EGL. As the commit says, that error should be reworked to honour both - do so. v2: Drop noop *);; (Eric) Reported-by: Lukas Rusak <lorusak@gmail.com> Fixes: ce562f9e ("EGL: Implement the libglvnd interface for EGL (v3)") Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Tested-by: Lukas Rusak <lorusak@gmail.com> (v1)
-
Emil Velikov authored
Android implements the API and does the native damage handling itself. At the same time it a) does call the vendor's eglSwapBuffersWithDamageKHR b) does not implement eglSetDamageRegionKHR There's something strange happening here. For now simply note about the 'lack' of eglSwapBuffersWithDamageKHR support. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
-
Emil Velikov authored
The function is effectively a direct function call into libwayland-server.so. Thus GBM no longer depends on the wayland-drm static library, making the build more straight forward. And the resulting binary is a bit smaller. Note: we need to move struct wayland_drm_callbacks further up, otherwise we'll get an error since the type is incomplete. v2: Rebase, beef-up commit message, update meson, move struct wayland_drm_callbacks. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> (v1) Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> # meson bit only Acked-by: Eric Engestrom <eric.engestrom@imgtec.com> # for the rest Reviewed-by: Dylan Baker <dylan@pnwbakers.com> # meson
-
Emil Velikov authored
Commit 05fc62d8 sets the variable, yet it forgot the update the existing reference to append (instead of assign). Thus as-is the expat library was discarded from the link chain when building with Android. Fixes: 05fc62d8 ("automake: intel: move expat handling where it's used") Cc: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
-
Emil Velikov authored
Nearly all the distributions* that build Mesa OpenCL, enable the ICD. Since building a non-ICD driver has the chance of conflicting with existing OpenCL binary (libOpenCL.so). Furthermore, some applications expect the library to provide annotated/versioned symbols. https://lists.freedesktop.org/archives/mesa-dev/2017-September/171093.html *Fedora, Suse, Arch, Debian, Ubuntu, FreeBSD use the ICD Gentoo manages the conflicting files via eselect. Cc: Matt Turner <mattst88@gmail.com> Cc: Jan Vesely <jan.vesely@rutgers.edu> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Francisco Jerez <currojerez@riseup.net> Reviewed-By: Aaron Watry <awatry@gmail.com>
-
Emil Velikov authored
Use $(sysconfdir) instead of hardcoding /etc. While the OpenCL spec expects the file in /etc, people building their stack can override that, esp. !Linux users. Furthermore this removes a fundamental violation, which results in the system file being overwritten even as one explicitly sets --prefix and/or DESTDIR. Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Francisco Jerez <currojerez@riseup.net> Reviewed-By: Aaron Watry <awatry@gmail.com>
-
Emil Velikov authored
Otherwise it will be missing from the release tarball Fixes: 7f33e94e ("amd/addrlib: update to latest version") Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
-
Tobias Droste authored
LLVM 6 changed the API on the fast-math-flags: https://reviews.llvm.org/rL317488 NOTE: This also enables the new flag 'ApproxFunc' to allow for approximations for library functions (sin, cos, ...). I'm not completly convinced, that this is something mesa should do. Signed-off-by: Tobias Droste <tdroste@gmx.de> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-and-Tested-by: Michel Dänzer <michel.daenzer@amd.com>
-
Juan A. Suarez Romero authored
This patch is mostly a patch done by Ilia Mirkin. It fixes KHR-GL45.enhanced_layouts.varying_structure_locations. v2: fix locations for TCS/TES/GS inputs and outputs (Ilia) CC: Ilia Mirkin <imirkin@alum.mit.edu> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103098 Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
-
Timothy Arceri authored
Use the NIR helper rather than the GLSL IR helper to get in/out masks. This allows us to ignore varyings removed by NIR optimisations. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Timothy Arceri authored
We want to use nir_shader_gather_info() the GLSL IR version might be including varyings that NIR later eliminates. To do this we need to generate NIR before we we start using the in/out bitmasks. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Timothy Arceri authored
Delaying adding built-in uniforms until after we convert to NIR gives us a better chance to optimise them away. Also NIR allows us to iterate over the uniforms directly so should be faster. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- Nov 07, 2017
-
-
Marek Olšák authored
This uses C++11 initializer lists. I just overwrote all Mesa files with internal addrlib and discarded hunks that we should probably keep, but I might have missed something. The code depending on ADDR_AM_BUILD is removed. We can add it back next time if needed. Acked-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Eric Anholt authored
Fixes GL_OUT_OF_MEMORY from streaming-texture-leak (and will hopefully keep piglit from ooming on my no-swap platform, as well).
-
Eric Anholt authored
We were doing f16 unpacks, which trashed "1" values. Fixes many piglit texwrap GL_EXT_texture_integer cases.
-
Eric Anholt authored
Gallium disables it by removing the streamout buffers, not by binding a program that doesn't have TF outputs. Fixes piglit "ext_transform_feedback2/counting with pause"
-
Eric Anholt authored
Fixes piglit discard-drawarrays.
-
Eric Anholt authored
The v3d_qpu_writes_r*() were only checking for fixed-function accumulator writes, not normal ALU writes to those regs. Fixes fs-discard-exit-2 on simulation (but not HW).
-
Eric Anholt authored
We have to compute the queries in software, so we're counting the primitives by hand. We still need to make sure to not increment the PRIMITIVES_EMITTED if we overflowed, but leave that for later.
-
Eric Anholt authored
Fixes all of piglit's OQ tests.
-
Jason Ekstrand authored
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
-
Jason Ekstrand authored
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
-
Jason Ekstrand authored
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
-
Jason Ekstrand authored
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
-
Jason Ekstrand authored
Most of NIR doesn't allow doing array indexing on a vector (though it does on a matrix). However, nir_lower_io handles it just fine and this behavior is needed for shared variables in Vulkan. This commit makes glsl_get_array_element do something sensible for vector types and makes nir_validate happy with them. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-
Jason Ekstrand authored
We were already validating that the parent type goes along with the child type but we weren't actually validating that the parent type is reasonable. This fixes that. Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-
Jason Ekstrand authored
The GL_ARB_shader_ballot spec says that gl_SubGroupSizeARB is declared as a uniform. This means that it cannot change across an invocation such as a draw call or a compute dispatch. For compute shaders, we're ok because we only ever use one dispatch size. For fragment, however, the hardware dynamically chooses between SIMD8 and SIMD16 which violates the spec. Instead, let's just pick a subgroup size based on the shader stage. The fixed size we choose for compute shaders is a bit higher than strictly needed but there's no real harm in that. The advantage is that, if they do anything interesting with the value, NIR will see it as an immediate and can optimize better. Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-
Jason Ekstrand authored
Ballot intrinsics return a bitfield of subgroups. In GLSL and some SPIR-V extensions, they return a uint64_t. In SPV_KHR_shader_ballot, they return a uvec4. Also, some back-ends would rather pass around 32-bit values because it's easier than messing with 64-bit all the time. To solve this mess, we make nir_lower_subgroups take a new parameter called ballot_bit_size and it lowers whichever thing it gets in from the source language (uint64_t or uvec4) to a scalar with the specified number of bits. This replaces a chunk of the old lowering code. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-
Jason Ekstrand authored
This lets you easily build integer immediates of arbitrary bit size. Reviewed-by: Iago Toral Quiroga <itoral@igalia.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
-
Jason Ekstrand authored
The SUBGROUP_*_MASK system values are uint64_t when coming in from GLSL but uvec4 when coming in from SPIR-V. Lowering based on type allows us to nicely handle both. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-
Jason Ekstrand authored
This way they can return either a uvec4 or a uint64_t. At the moment, this is a no-op since we still always return a uint64_t. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-
Jason Ekstrand authored
This would be useful a number of places Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
-