summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2018-01-25vulkan: Update the XML and headers to 1.0.68Jason Ekstrand1-5/+49
Acked-by: Dave Airlie <airlied@redhat.com> Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Acked-by: Chad Versace <chadversary@chromium.org>
2018-01-22intel: Add Geminilake brand stringsAnuj Phogat1-2/+2
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Acked-by: Kenneth Graunke <kenneth@whitecape.org>
2018-01-12util: fix NORETURN for msvc, add HAVE_FUNC_ATTRIBUTE_NORETURN to c99_compat.hRoland Scheidegger1-0/+1
We've seen some problems internally due to macro redefinition. Fix this by adding HAVE_FUNC_ATTRIBUTE_NORETURN to c99_compat.h, and defining it for msvc. And avoid redefinition just in case. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
2018-01-11meson: add variable for including include/GL/internalDylan Baker1-0/+1
Signed-off-by: <dylan.c.baker@intel.com> Acked-by: Eric Engestrom <eric.engestrom@imgtec.com>
2018-01-11intel: Add more Coffee Lake PCI IDsAnuj Phogat1-1/+9
More Coffee Lake PCI IDs have been added to the spec. Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2018-01-08meson: build cloverDylan Baker1-0/+19
This has only been compile tested. v2: - Have a single option for opencl (Eric E) - fix typo "tgis" -> "tgsi" (Curro) - Don't add "lib" to pipe loader libraries, which matches the autotools behavior v3: - Remove trailing whitespace - Make PIPE_SEARCH_DIR an absolute path v4: - add trailing / to LIBCLC defines Acked-by: Curro Jerez <currojerez@riseup.net> Tested-by: Jan Vesely <jan.vesely@rutgers.edu> cc: Aaron Watry <awatry@gmail.com> Signed-off-by: Dylan Baker <dylan.c.baker@intel.com>
2018-01-03dri: Add 10 bpc formats as available formats. (v2)Mario Kleiner1-1/+9
Used to support ARGB2101010 and XRGB2101010 winsys framebuffers / drawables, but added other 10 bpc fourcc's as well for consistency with definitions in wayland_drm.h, gbm.h, and drm_fourcc.h. v2: Align new defines with tabs instead of spaces, for consistency with remainder of that block of definitions, as suggested by Tapani. Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Signed-off-by: Marek Olšák <marek.olsak@amd.com>
2017-12-20st/dri: allow direct YUYV importLucas Stach1-0/+1
Push this format to the pipe driver unchanged. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
2017-12-08include: Add GL_MESA_program_binary_formats to GL/GLES2 ext.h filesJordan Justen2-0/+10
Thus was merged into the OpenGL Registry in version 667c5a253781834b40a6ae9eb19d05af4542cfe1. Ref: https://github.com/KhronosGroup/OpenGL-Registry/pull/127 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
2017-12-04meson: build gallium nine state_trackerDylan Baker1-0/+8
v2: - set d3d_drivers_path instead of dri_drivers_path - Fix nine guard to check for all relavent gallium drivers - Link with libswdri and libswkmsdri when necessary - Fix pkg-config generation - Add missing comma Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-12-04drm-uapi: Update drm/i915 headers from drm-nextLionel Landwerlin4-6/+151
Taken from drm-next ca797d29cd63e7b71b4eea29aff3b1cefd1ecb59 Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
2017-12-01meson: install khrplatform header for EGL as well as GLESDylan Baker1-1/+1
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-12-01meson: install dri internal headerDylan Baker1-0/+4
Reported-by: Marc Dietrich <marvin24@gmx.de> Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-11-30meson: fix glxext.h installDylan Baker1-1/+1
Another typo, the glext.h header was being install instead. Reported-by: Marc Dietrich <marvin24@gmx.de> Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-11-30meson: fix GLES3/gl31.h installDylan Baker1-1/+1
This is a typo, gl32.h is installed twice. Reported-by: Marc Dietrich <marvin24@gmx.de> Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-11-27vulkan: Update the XML and headers to 1.0.66Jason Ekstrand1-9/+60
Acked-by: Dave Airlie <airlied@redhat.com>
2017-11-16threads,configure.ac,meson.build: define and use HAVE_TIMESPEC_GETNicolai Hähnle1-1/+1
Tested with Travis and Appveyor. v2: add HAVE_TIMESPEC_GET for non-Windows Scons builds v3: use check_functions in Scons (Eric) Cc: Rob Herring <robh@kernel.org> Cc: Alexander von Gluck IV <kallisti5@unixzen.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103674 Fixes: f1a364878431 ("threads: update for late C11 changes") Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Reviewed-by: Jon Turney <jon.turney@dronecode.org.uk> (v2)
2017-11-13c11/haiku: Define missing timespec_get on HaikuAlexander von Gluck IV1-1/+1
Reviewed-by: Brian Paul <brianp@vmware.com>
2017-11-09threads: fix MinGW build breakageBrian Paul1-1/+4
Fixes: f1a364878431c8 ("threads: update for late C11 changes") Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2017-11-09drm-uapi: Update vc4 header from drm-nextBoris Brezillon1-0/+19
Taken from drm-next d65d31388a23 ("Merge tag 'drm-misc-next-fixes-2017-11-07' of git://anongit.freedesktop.org/drm/drm-misc into drm-next") v2: Add the NOTSUPP definition from the final drm-next version, not the commit (anholt). Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
2017-11-09threads: update for late C11 changesNicolai Hähnle3-53/+47
C11 threads were changed to use struct timespec instead of xtime, and thrd_sleep got a second argument. See http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1554.htm and http://en.cppreference.com/w/c/thread/{thrd_sleep,cnd_timedwait,mtx_timedlock} Note that cnd_timedwait is spec'd to be relative to TIME_UTC / CLOCK_REALTIME. v2: Fix Windows build errors. Tested with a default Appveyor config that uses Visual Studio 2013. Judging from Brian's email and random internet sources, Visual Studio 2015 does have timespec and timespec_get, hence the _MSC_VER-based guard which I have not tested. Cc: Jose Fonseca <jfonseca@vmware.com> Cc: Brian Paul <brianp@vmware.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> (v1)
2017-11-07radeonsi: remove unused field in the PCI ID tableMarek Olšák1-229/+229
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2017-11-06dri: Add a flush control extensionNeil Roberts1-0/+25
This advertises that the driver can accept a new context attribute __DRI_CTX_ATTRIB_RELEASE_BEHAVIOR. Reviewed-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Neil Roberts <neil@linux.intel.com>
2017-10-27meson: build classic osmesaDylan Baker1-1/+1
This builds the classic (non-gallium) osmesa with meson. This has been tested with the osdemo application from mesa-demos. v2: - Remove unrelated change - Add SELinux dependency to osmesa Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-10-26vulkan: Update headers and registry to 1.0.64Alex Smith1-2/+48
Acked-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Alex Smith <asmith@feralinteractive.com>
2017-10-20meson: build libEGLDylan Baker1-0/+8
This is based heavily on Daniel Stone's work for the same, rebased on master and with a number of TODO's fixed. This does not implement glvnd (which is coming in a later patch) Meson builds egl slightly differently than autotools, namely it doesn't build an intermediate shared library. It doesn't do this because meson doesn't have problems with the name of the library being dynamically generated, so the glvnd and non-glvnd code can follow the same path. v2: - Don't reuse variable (Eric E.) Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Tested-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-10-21vulkan: update headers & registry to VK 1.0.63Andres Rodriguez1-2/+33
Signed-off-by: Andres Rodriguez <andresx7@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2017-10-20i965: Sync i915_drm.h from kernel for IMG_context_priorityChris Wilson1-3/+24
Pulling in changes up to kernel commit ac14fbd460d0ec16e7750e40dcd8199b0ff83d0a Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Tue Oct 3 21:34:53 2017 +0100 drm/i915/scheduler: Support user-defined priorities and including the fixup from kernel commit 822a4b673284672af697ccd66e8795f8a712a90d Author: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Date: Fri Oct 6 13:45:59 2017 +0300 drm/i915: Don't use BIT() in UAPI section for implementing IMG_context_priority. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2017-10-20egl,dri: Propagate context priority hint to driver->CreateContextChris Wilson1-0/+6
Jump through the layers of abstraction between egl and dri in order to feed the context priority attribute through to the backend. This requires us to read the value from the base _egl_context, convert it to a DRI attribute, parse it again in the generic context creator before passing it to the driver as a function parameter. In order to not require us to pass back the actual value of the context priority after creation, we impose that drivers should report the available set of priorities during screen setup (and then they may chose to fail if given an invalid value as that should have been checked at the user boundary.) Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Ben Widawsky <ben@bwidawsk.net> # i915/i965 Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2017-10-20egl: Support IMG_context_priorityChris Wilson1-0/+8
IMG_context_priority https://www.khronos.org/registry/egl/extensions/IMG/EGL_IMG_context_priority.txt "This extension allows an EGLContext to be created with a priority hint. It is possible that an implementation will not honour the hint, especially if there are constraints on the number of high priority contexts available in the system, or system policy limits access to high priority contexts to appropriate system privilege level. A query is provided to find the real priority level assigned to the context after creation." The extension adds a new eglCreateContext attribute for choosing a priority hint. This stub parses the attribute and copies into the base struct _egl_context, and hooks up the query similarly. Since the attribute is purely a hint, I have no qualms about the lack of implementation before reporting back the value the user gave! v2: Remember to set the default ContextPriority value to medium. v3: Use the driRendererQuery interface to probe the backend for supported priority values and use those to mask the EGL interface. v4: Treat the priority attrib as a hint and gracefully mask any requests not supported by the driver, the EGLContext will remain at medium priority. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Rob Clark <robdclark@gmail.com> Reviewed-by: Ben Widawsky <ben@bwidawsk.net> Reviewed-by: Emil Velikov <emli.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2017-10-13eglmesaext: add forward declaration for struct wl_buffersEmil Velikov1-0/+1
The user does not need to know the specifics of the struct, as only a pointer to it is used. Just forward declare the struct making the header self-contained. v2: Remove deprecation warning text/bugzilla - patch does no help there. Cc: Greg V <greg@unrelenting.technology> Fixes: 5cddb1ce3c9 ("wayland: Add an extension to create wl_buffers from EGLImages") Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> (v1)
2017-10-12include: Revert out the update of the Khronos GLX extension header.Eric Anholt1-11/+1
They made a mistake in the MESA_swap_control XML, which I'm pursuing in their github. Until then, we can just back this piece out. Tested-by: Mark Janes <mark.a.janes@intel.com> Reviewed-by: Mark Janes <mark.a.janes@intel.com>
2017-10-12include: Update GL headers from khronos opengl registry.Eric Anholt4-23/+84
Taken from their c6a99aff31874697741a08cbc8a3488606ce59c7, keeping the BUILDING_MESA hunk in place. Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Kenneth Graunke <kenneth@whitecape.org>
2017-10-12include/drm-uapi: clarify when headers can be updated.Dave Airlie1-0/+3
Clarify when headers can be updated here. Reviewed-by: Gurchetan Singh<gurchetansingh@chromium.org> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2017-10-10mesa: Implement a new GL_MESA_tile_raster_order extension.Eric Anholt1-0/+6
The intent is to use this extension on vc4 to allow X11 to do overlapping CopyArea() within a pixmap without first blitting the pixmap to a temporary. With associated glamor patches, improves x11perf -copywinwin100 performance on a Raspberry Pi 3 from ~4700/sec to ~5130/sec, and is an even larger boost to uncomposited window movement performance (most copywinwin100 copies don't overlap). v2: Fix glIsEnabled() on the new enums. v3: Drop the local spec since I'm upstreaming the spec. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
2017-10-10dri_interface: add an error-returning version of createImageFromRenderbufferNicolai Hähnle1-1/+18
We ought to be able to distinguish between allocation errors and bad parameters (non-existent renderbuffer object). Bumps the version of the DRI Image extension to 17. Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-10-09meson: build glxDylan Baker1-1/+1
This gets GLX and the loader building. The resulting GLX and i965 have been tested on piglit and seem to work fine. This patch leaves a lot of todo's in it's wake, GLX is quite complicated, and the build options involved are many, and the goal at the moment is to get dri and gallium drivers building. v2: - fix typo "vaule" -> "value" - put the not on the correct element of the conditional - Put correct description of dri3 option in this patch not the next one (Eric A) - fix non glvnd version (Eric A) - build glx tests - move loader include variables to this patch (Eric A) v3: - set the version correctly for GL_LIB_NAME in libglx v4: - set pkgconfig private fields Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2017-10-09meson: Build i965 and dri stackDylan Baker1-0/+38
This gets pretty much the entire classic tree building, as well as i965, including the various glapis. There are some workarounds for bugs that are fixed in meson 0.43.0, which is due out on October 8th. I have tested this with piglit using glx. v2: - fix typo "vaule" -> "value" - use gtest dep instead of linking to libgtest (rebase error) - use gtest dep instead of linking against libgtest (rebase error) - copy the megadriver, then create hard links from that, then delete the megadriver. This matches the behavior of the autotools build. (Eric A) - Use host_machine instead of target_machine (Eric A) - Put a comment in the right place (Eric A) - Don't have two variables for the same information (Eric A) - Put pre_args at top of file in this patch (Eric A) - Fix glx generators in this patch instead of next (Eric A) - Remove -DMESON hack (Eric A) - add sha1_h to mesa in this patch (Eric A) - Put generators in loops when possible to reduce code in mapi/glapi/gen (Eric A) v3: - put HAVE_X11_PLATFORM in this patch Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2017-09-27meson: Add build Intel "anv" vulkan driverDylan Baker1-0/+22
This allows building and installing the Intel "anv" Vulkan driver using meson and ninja, the driver has been tested against the CTS and has seems to pass the same series of tests (they both segfault when the CTS tries to run wayland wsi tests). There are still a mess of TODO, XXX, and FIXME comments in here. Those are mostly for meson bugs I'm trying to fix, or for additional things to implement for other drivers/features. I have configured all intermediate libraries and optional tools to not build by default, meaning they will only be built if they're pulled in as a dependency of a target that will actually be installed) this allows us to avoid massive if chains, while ensuring that only the bits that need to be built are. v2: - enable anv, x11, and wayland by default - add configure option to disable valgrind v3: - fix typo in meson_options (Nicholas) v4: - Remove dead code (Eric) - Remove change to generator that was from v0 (Eric) - replace if chain with loop (Eric) - Fix typos (Eric) - define HAVE_DLOPEN for both libdl and builtin dl cases (Eric) v5: - rebase on util string buffer implementation Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net> (v4)
2017-09-21Revert "intel: Remove unused Kabylake pci idsAnuj Phogat1-0/+8
drm-intel is in favor of keeping the unused pci-id's which are still listed in the h/w specs. To keep it uniform across multiple gfx stack components, I'm reverting below Mesa patches: b2dae9f8fd310c19e66b161a7ee9845af78f73e0 ebc5ccf3cc88990248695e833d9ff11e10d91240. Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2017-09-18vulkan: Add #ifdef hack to vk_android_native_buffer.hChad Versace1-0/+5
This patch consolidates many potential `#ifdef ANDROID` messes throughout src/vulkan and src/intel/vulkan into a simple, localized hack. The hack is an `#ifdef ANDROID` in vk_android_native_buffer.h that, on non-Android platorms, avoids including the Android platform headers and typedefs any Android-specific types to void*. This hack doesn't remove *all* the `#ifdef ANDROID`s in upcoming patches, but it does remove a lot. I first tried implementing VK_ANDROID_native_buffer without this hack, but eventually gave up when the yak shaving became too much. Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
2017-09-18vulkan: Import vk_android_native_buffer.hChad Versace1-0/+91
Just as Mesa imports the Khronos Vulkan headers, it should import this Android-private Vulkan header too. This guarantees that Mesa will continue to build even when upstream Android breaks header compatibility. This header is only for *implementers* of Vulkan, not for consumers of Vulkan. Imported from tag 'android-7.1.1_r28' in aosp/frameworks/native. References: https://android.googlesource.com/platform/frameworks/native/+/android-7.1.1_r28/vulkan/include/vulkan/vk_android_native_buffer.h Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
2017-09-15vulkan: update headers & registry to VK 1.0.61Lionel Landwerlin1-58/+460
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2017-09-14dri/image: Add a format modifier attributes queryJason Ekstrand1-1/+26
Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-09-11intel: Remove unused Kabylake pci idAnuj Phogat1-1/+0
I missed this one in Mesa commit ebc5ccf. Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-09-06intel: Add brand string for KBL-RAnuj Phogat1-1/+1
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-09-06intel: Change a KBL pci id to GT2 from GT1.5Anuj Phogat1-1/+1
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-09-06intel: Fix few KBL brand stringsAnuj Phogat1-2/+2
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-09-06intel: Remove unused Kabylake pci idsAnuj Phogat1-7/+0
These PCI IDs are not used in any Kabylake SKUs. Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-08-28drm-uapi: Update headers from drm-nextJason Ekstrand5-9/+124
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>