summaryrefslogtreecommitdiff
path: root/include/drm-uapi
AgeCommit message (Collapse)AuthorFilesLines
2020-06-26turnip: semaphore support.Bas Nieuwenhuizen1-1/+23
There is only one queue for now, so for non-shared semaphores, the implementation is basically a no-op. For shared semaphores, this always uses syncobjs. This depends on syncobj support in the msm kernel driver. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2769>
2020-06-16drm-uapi: Add sync_file.hJan Beich1-0/+116
Based on <linux/sync_file.h> with BSD portability conditional. At least FreeBSD supports SYNC_IOC_* via LinuxKPI in DRM. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5463>
2020-05-07amd: update amdgpu_drm.hMarek Olšák1-1/+14
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4863>
2020-04-27drm-uapi,radv,radeonsi: Add amdgpu_drm.h header.Bas Nieuwenhuizen1-0/+1073
Use it instead of the libdrm provided amdgpu_drm.h header. I used the kernel revision from the README to get the header so the header versions should be consistent. Tested by removing /usr/include/libdrm/amdgpu_drm.h from my dev-machine. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4749>
2020-04-23include/drm-uapi: bump headersLionel Landwerlin2-4/+29
From drm-next at the following commit : commit 1aa63ddf726ea049279989b93b69b57ce6efd75b Merge: 774f1eeb18b0 14d0066b8477 Author: Dave Airlie <airlied@redhat.com> Date: Wed Apr 22 10:40:34 2020 +1000 Merge tag 'drm-misc-next-2020-04-14' of git://anongit.freedesktop.org/drm/drm-misc into drm-next Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com> Reviewed-by: Mark Janes <mark.a.janes@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4021>
2020-04-20drm-uapi: Update headers from Linux 5.7-rc1.Rafael Antognolli4-7/+101
commit 8f3d9f354286745c751374f5f1fcafee6b3f3136 Author: Linus Torvalds <torvalds@linux-foundation.org> Date: Sun Apr 12 12:35:55 2020 -0700 Linux 5.7-rc1 Acked-by: Jordan Justen <jordan.l.justen@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1675>
2020-01-30lima: sync lima_drm.h with kernelQiang Yu1-1/+8
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com> Tested-by: Andreas Baierl <ichgeh@imkreisrum.de> Signed-off-by: Qiang Yu <yuq825@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3264>
2020-01-10virgl/drm: update UAPIGurchetan Singh1-0/+182
This seems to compile. Header copied over from drm-misc-next 7da5492739db. Acked-by: Eric Engestrom <eric@engestrom.ch>
2019-10-23drm-uapi: Update headers from drm-nextLionel Landwerlin4-9/+141
Pull new updates from drm-next as of the following commit: commit f1b4a9217efd61d0b84c6dc404596c8519ff6f59 Merge: 400e91347e1d f3a36d469621 Author: Dave Airlie <airlied@redhat.com> Date: Tue Oct 22 15:04:00 2019 +1000 Merge tag 'du-next-20191016' of git://linuxtv.org/pinchartl/media into drm-next Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2019-10-18v3d: request the kernel to flush caches when TMU is dirtyIago Toral Quiroga1-2/+4
This adapts the v3d driver to the new CL submit ioctl interface that allows the driver to request a flush of the caches after the render job has completed. This seems to eliminate the kernel write violation errors reported during CTS and Piglit excutions, fixing some CTS tests and GPU resets along the way. v2: - Adapt to changes in the kernel side. - Disable shader storage and shader images if the kernel doesn't implement cache flushing. Fixes CTS tests: KHR-GLES31.core.shader_image_size.basic-nonMS-fs-float KHR-GLES31.core.shader_image_size.basic-nonMS-fs-int KHR-GLES31.core.shader_image_size.basic-nonMS-fs-uint KHR-GLES31.core.shader_image_size.advanced-nonMS-fs-float KHR-GLES31.core.shader_image_size.advanced-nonMS-fs-int KHR-GLES31.core.shader_image_size.advanced-nonMS-fs-uint KHR-GLES31.core.shader_atomic_counters.advanced-usage-many-draw-calls2 KHR-GLES31.core.shader_atomic_counters.advanced-usage-draw-update-draw KHR-GLES31.core.shader_storage_buffer_object.advanced-unsizedArrayLength-fs-int KHR-GLES31.core.shader_storage_buffer_object.advanced-unsizedArrayLength-fs-std140-matR KHR-GLES31.core.shader_storage_buffer_object.advanced-unsizedArrayLength-fs-std140-struct KHR-GLES31.core.shader_storage_buffer_object.advanced-unsizedArrayLength-fs-std430-matC-pad KHR-GLES31.core.shader_storage_buffer_object.advanced-unsizedArrayLength-fs-std430-vec Reviewed-by: Eric Anholt <eric@anholt.net>
2019-10-08include: update drm-uapiEric Engestrom6-83/+566
`drm.h` was missing a `#include <stdint.h>`, which was completely breaking the non-linux builds after 272f9cfe6a19212354c8 ("dri: Use DRM_FORMAT_* instead of defining our own copy.") started making use of it. Fixes: 272f9cfe6a19212354c8 ("dri: Use DRM_FORMAT_* instead of defining our own copy.") Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/950 Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2019-09-11uapi: Update drm_fourcc.hEric Anholt1-1/+39
Taken from drm-misc-next 268de6530aa1 ("drm: mst: Fix query_payload ack reply struct") Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
2019-08-21drm-uapi: Update headers for fp16 formatsKevin Strasser1-0/+11
From drm-next commit 88ab9c76d191ad8645b483f31e2b394b0f3e280e Signed-off-by: Kevin Strasser <kevin.strasser@intel.com> Reviewed-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2019-08-19panfrost: Sync UAPI header from kernelRob Herring1-0/+61
Sync the panfrost_drm.h UAPI header with the latest from the kernel. This adds madvise ioctl and GPU feature params. Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Signed-off-by: Rob Herring <robh@kernel.org>
2019-08-08panfrost: Mark BOs as NOEXECTomeu Vizoso1-0/+27
Unless a BO has the EXECUTABLE flag, mark it as NOEXEC. v2: - Rework version detection (Alyssa). Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
2019-06-18panfrost: Adapt to constant name change in UABITomeu Vizoso1-2/+4
We hadn't updated the kernel header after the driver got into mainline. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
2019-06-05etnaviv: drm: Move uapi headerGuido Günther1-0/+289
Signed-off-by: Guido Günther <guido.gunther@puri.sm> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
2019-05-14freedreno: Restore msm_drm.h to a pristine "make headers_install" copy.Eric Anholt1-1/+1
This diverged back in f1374805a86d ("drm-uapi: use local files, not system libdrm") to point at drm-uapi's copy, which we don't need now that we're actually in drm-uapi. Reviewed-by: Rob Clark <robdclark@gmail.com>
2019-05-14freedreno: Move msm_drm.h to the same spot as other DRM uapi.Eric Anholt1-0/+335
The new location matches other drivers, and has a README about the rules for updating it. Reviewed-by: Rob Clark <robdclark@gmail.com>
2019-05-08drm-uapi: Update i915_drm.h for I915_CONTEXT_PARAM_RECOVERABLEChris Wilson1-0/+20
Pull i915_drm.h to include kernel commit ba4fda620a5f7db521aa9e0262cf49854c1b1d9c Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Mon Feb 18 10:58:21 2019 +0000 drm/i915: Optionally disable automatic recovery after a GPU reset for improved resilience in handling GPU hangs.
2019-04-11drm-uapi: add lima_drm.hQiang Yu1-0/+169
Acked-by: Eric Anholt <eric@anholt.net> Signed-of-by: Qiang Yu <yuq825@gmail.com>
2019-03-14panfrost: Adapt to uapi changesTomeu Vizoso1-2/+2
Two ioctls had wrong DRM_IO* flags. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Rob Herring <robh@kernel.org>
2019-03-13panfrost: Set bo->size[0] in the DRM backendTomeu Vizoso1-1/+0
So we can unmap it later. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2019-03-10panfrost: Add backend targeting the DRM driverTomeu Vizoso1-0/+141
This backend interacts with the new DRM driver for Midgard GPUs which is currently in development. When using this backend, Panfrost has roughly on-par functionality as when using the non-DRM driver from Arm. Alyssa Rosenzweig: To do so, we implement additional routines for runtime GPU version detection and fencing. We cleanup some duplicate code interfering with the new driver. We fix a long-standing memory leak which is aggravated on the new driver. Finally, we implement BO import/export in a way compatible with the new driver. These changes are squashed to preserve bisectability given the hard-to-track ABI shifts in the nondrm module Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
2019-02-26drm-uapi: Update headers from drm-nextVivek Kasireddy7-16/+849
Pull new updates from drm-next as of the following commit: commit a5f2fafece141ef3509e686cea576366d55cabb6 Merge: 71f4e45a4ed3 860433ed2a55 Author: Dave Airlie <airlied@redhat.com> Date: Wed Feb 20 12:16:30 2019 +1000 Merge https://gitlab.freedesktop.org/drm/msm into drm-next Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
2019-02-14drm-uapi/README: remove explicit list of driver namesEric Engestrom1-2/+2
These headers are used by a lot more than just the intel drivers nowadays. Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org>
2019-01-22freedreno: drm_fourcc.h header includeFritz Koenig1-0/+13
Add Qualcomm modifier for UBWC
2018-12-07v3d: Add the V3D TFU submit interface to the simulator.Eric Anholt1-2/+37
The TFU lets us format raster and SAND images into formats that can be read by the texture engine, and do mipmap generation. The UAPI comes from drm-next e69aa5f9b97f ("Merge tag 'drm-misc-next-2018-12-06' of git://anongit.freedesktop.org/drm/drm-misc into drm-next")
2018-07-18drm-uapi: Update drm_fourcc.h for new format modifiers.Eric Anholt1-0/+80
This brings in the Broadcom VC4 SAND and V3D 3.x+ UIF modifiers, from drm-next commit 4da1d4c751c9b1b713c13043bad7c4d27cd1418c.
2018-05-17drm-uapi: Update vc4 header with syncobj submit supportStefan Schake1-3/+10
v2: Synchronized with kernel v2 v3: Update for the finalized kernel ABI (pad2 field) Signed-off-by: Stefan Schake <stschake@gmail.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2018-05-16v3d: Switch the vc5 driver to using the finalized V3D UABI.Eric Anholt1-0/+194
In the process of merging to the kernel, I renamed the driver to the general product line's name (since we have both vc5 and vc6 supported already). Since the ABI is finalized, move the header to include/drm-uapi.
2018-03-22drm-uapi: bump headersLionel Landwerlin4-36/+189
Required updates from drm-next for changes in i965. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by: Kenneth Graunke <kenneth@whitecape.org
2018-03-09tegra: Initial supportThierry Reding1-0/+225
Tegra K1 and later use a GPU that can be driven by the Nouveau driver. But the GPU is a pure render node and has no display engine, hence the scanout needs to happen on the Tegra display hardware. The GPU and the display engine each have a separate DRM device node exposed by the kernel. To make the setup appear as a single device, this driver instantiates a Nouveau screen with each instance of a Tegra screen and forwards GPU requests to the Nouveau screen. For purposes of scanout it will import buffers created on the GPU into the display driver. Handles that userspace requests are those of the display driver so that they can be used to create framebuffers. This has been tested with some GBM test programs, as well as kmscube and weston. All of those run without modifications, but I'm sure there is a lot that can be improved. Some fixes contributed by Hector Martin <marcan@marcan.st>. Changes in v2: - duplicate file descriptor in winsys to avoid potential issues - require nouveau when building the tegra driver - check for nouveau driver name on render node - remove unneeded dependency on libdrm_tegra - remove zombie references to libudev - add missing headers to C_SOURCES variable - drop unneeded tegra/ prefix for includes - open device files with O_CLOEXEC - update copyrights Changes in v3: - properly unwrap resources in ->resource_copy_region() - support vertex buffers passed by user pointer - allocate custom stream and const uploader - silence error message on pre-Tegra124 - support X without explicit PRIME Changes in v4: - ship Meson build files in distribution tarball - drop duplicate driver_tegra dependency Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Acked-by: Emil Velikov <emil.velikov@collabora.com> Tested-by: Andre Heider <a.heider@gmail.com> Reviewed-by: Dmitry Osipenko <digetx@gmail.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
2018-03-09drm/tegra: Sanitize format modifiersThierry Reding1-17/+19
The existing format modifier definitions were merged prematurely, and recent work has unveiled that the definitions are suboptimal in several ways: - The format specifiers, except for one, are not Tegra specific, but the names don't reflect that. - The number space is split into two, reserving 32 bits for some "parameter" which most of the modifiers are not going to have. - Symbolic names for the modifiers are not using the standard DRM_FORMAT_MOD_* prefix, which makes them awkward to use. - The vendor prefix NV is somewhat ambiguous. Fortunately, nobody's started using these modifiers, so we can still fix the above issues. Do so by using the standard prefix. Also, remove TEGRA from the name of those modifiers that exist on NVIDIA GPUs as well. In case of the block linear modifiers, make the "parameter" smaller (4 bits, though only 6 values are valid) and don't let that leak into any of the other modifiers. Finally, also use the more canonical NVIDIA instead of the ambiguous NV prefix. This is based on commit 268892cb63a822315921a8dab48ac3e4abf7dd03 from Linux v4.16-rc1. Acked-by: Emil Velikov <emil.velikov@collabora.com> Tested-by: Andre Heider <a.heider@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
2018-03-09drm/fourcc: Fix fourcc_mod_code() definitionThierry Reding1-1/+1
Avoid a compiler warnings when the val parameter is an expression. This is based on commit 5843f4e02fbe86a59981e35adc6cabebee46fdc0 from Linux v4.16-rc1. Acked-by: Emil Velikov <emil.velikov@collabora.com> Tested-by: Andre Heider <a.heider@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
2018-03-05drm-uapi: Update vc4 header with perfmon related definitionsBoris Brezillon1-0/+76
v2: Update to the final version with the documentation. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Eric Anholt <eric@anholt.net>
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-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-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-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-08-28drm-uapi: Update headers from drm-nextJason Ekstrand5-9/+124
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2017-08-15intel/drm: Pull in the i915 fence array APIJason Ekstrand1-2/+28
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2017-08-14drm-uapi/forcc: Pull in new modifiersJason Ekstrand1-0/+31
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
2017-07-12vc4: Switch back to using a local copy of vc4_drm.h.Eric Anholt1-0/+318
Needing to get our uapi header from libdrm has only complicated things. Follow intel's lead and drop our requirement for it. Generated from the same commit mentioned in the README. v2: Update Android.mk as well, move vc4_drm.h reference for distcheck. Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-07-12intel: Move the DRM uapi headers to a non-Intel location.Eric Anholt5-0/+3535
I want to remove vc4's dependency on headers from libdrm as well, but storing multiple copies of drm_fourcc.h in our tree would be silly. v2: Update Android.mk as well, move distcheck drm*.h references to top-level noinst_HEADERS. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (v1) Reviewed-by: Daniel Stone <daniels@collabora.com> (v1) Reviewed-by: Rob Herring <robh@kernel.org>