Commit Graph

166 Commits (f31fd57c604fa1563243f3522924466be65f5e9a)

Author SHA1 Message Date
Daniel Stone 8ec043ecea headers: Update README
Nouveau has made a very deliberate choice to hide its actual kernel ABI
behind libdrm. i915 is no longer out of date.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
2018-03-30 16:11:01 +01:00
Daniel Stone 8e535dd214 headers: Sync with drm-next
Taken from the drm-next pull for 4.17-rc1 (694f54f680f7), and manually
reconciled:

  core:
    - Dropped DRM_MODE_TYPE_ALL and DRM_MODE_FLAG_ALL; these are purely
      internal details of the bits accepted by the currently running
      kernel, and can not be generally relied on by userspace
    - Add HDCP flags
    - Note CTM entry representation is sign-magnitude format, not
      two's-complement
  amdgpu:
    - Add QUERY_STATE2 context op
    - Add VCN firmware version query
  etnaviv:
    - Add more GPU feature flags
  i915:
    - Add caps, params and ioctls for PMU / perf-stream
    - Add support for explicit fencing
  nouveau:
    - Add TILE_COMP layout
  vc4:
    - Add perfmon ioctls
  virtgpu:
    - Add capset-fix param
  vmware:
    - Add handle-close ioctl and explicit-fencing support

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2018-03-30 16:10:03 +01:00
Rex Zhu 2fa58c77fb headers: sync up amdgpu_drm.h with drm-next
Add sensor_info type
AMDGPU_INFO_SENSOR_STABLE_PSTATE_GFX_MCLK
AMDGPU_INFO_SENSOR_STABLE_PSTATE_GFX_SCLK

Reviewed-by: Evan Quan <evan.quan@amd.com>
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
2018-03-30 10:50:27 +08:00
Thierry Reding ab5aaf6c8e drm/tegra: Sanitize format modifiers
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 5843f4e02fbe86a59981e35adc6cabebee46fdc0 from
Linux v4.16-rc1 and also updates modetest to use the new defines.

Acked-by: Emil Velikov <emil.velikov@collabora.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2018-02-19 14:58:57 +01:00
Thierry Reding b3c4c79e16 drm/fourcc: Fix fourcc_mod_code() definition
Avoid 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>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2018-02-19 14:56:20 +01:00
Christian König 0a3c01f4ad headers: sync up amdgpu_drm.h with drm-next
Sync up amdgpu changes from drm-next.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2018-01-09 17:15:06 +01:00
Eric Anholt 21885876af headers: Drop outdated node about a delta in drm_mode.h.
Fixed in 9433b702fc ("headers: Sync drm{,_mode}.h with the kernel")

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-11-10 12:10:19 -08:00
Eric Anholt f696698e02 headers: Sync up kernel changes to use kernel types instead of stdint.h.
This pulls in pieces of drm-next d65d31388a23 ("Merge tag
'drm-misc-next-fixes-2017-11-07' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next")

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-11-10 12:10:17 -08:00
Eric Anholt 59808bcacd headers: Sync up mga_drm.h from drm-next.
The kernel started using the struct from drm.h instead of the typedef.

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-11-10 12:10:15 -08:00
Eric Anholt 8affa26995 headers: Sync up some comment spelling and whitespace fixes from drm-next.
This pulls in pieces of drm-next d65d31388a23
("Merge tag 'drm-misc-next-fixes-2017-11-07' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next")

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-11-10 12:10:13 -08:00
Eric Anholt 8d34bba212 headers: Sync up some header guard changes from drm-next.
This pulls in pieces of drm-next d65d31388a23
("Merge tag 'drm-misc-next-fixes-2017-11-07' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next")

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-11-10 12:10:12 -08:00
Eric Anholt e38de51799 headers: Sync vc4 header from drm-next.
This updates the header with the contents from drm-next d65d31388a23
("Merge tag 'drm-misc-next-fixes-2017-11-07' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next")

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-11-10 12:10:09 -08:00
Christian König 0c2481edf7 Revert "amdgpu: use the high VA range if possible"
This reverts commit 6c0ea4b0c5.

Accidentially pushed an incomplete patch.

Signed-off-by: Christian König <christian.koenig@amd.com>
2017-11-09 10:35:44 +01:00
Christian König 6c0ea4b0c5 amdgpu: use the high VA range if possible
This frees up the low range for HMM.

Signed-off-by: Christian König <christian.koenig@amd.com>
2017-11-08 16:12:56 +01:00
Dave Airlie 0d889201d1 drm: sync drm headers from drm-next.
This updates the headers with the contents in drm-next
at 62884cd386b876638720ef88374b31a84ca7ee5f

This adds leasing and aspect ratio.
2017-10-25 16:38:13 +10:00
Marek Olšák f579747485 amdgpu: add padding to the fence to handle ioctl
copied from Dave's kernel patch.
2017-10-21 00:20:00 +02:00
Andres Rodriguez bcae7226a1 headers: Sync amdgpu_drm.h with drm-next
Generated using make headers_install from:
airlied/drm-next 282dc83 Merge tag 'drm-intel-next-2017-10-12' ...

Signed-off-by: Andres Rodriguez <andresx7@gmail.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
2017-10-20 21:21:07 +02:00
Marek Olšák ad4df736a9 include: sync drm.h and amdgpu_drm.h with airlied/drm-next 2017-10-12 20:35:57 +02:00
Dave Airlie d27fd2d023 headers: sync syncobj ioctl defines.
This syncs the drm.h header with my drm-next branch as of
bb7a9c8d712f37385a706a594d6edf6e6d2669d0

Signed-off-by: Dave Airlie <airlied@redhat.com>
2017-10-11 10:41:25 +10:00
Rob Herring 965133914b headers: sync DRM_MODE_ROTATE/REFLECT defines from kernel v4.14-rc1
Add the new DRM_MODE_ROTATE_* and DRM_MODE_REFLECT_* defines from v4.14-rc1
kernel.

Reviewed-by: Thierry Reding <treding@nvidia.com>
Reviewed-by: Robert Foss <robert.foss@collabora.com>
Signed-off-by: Rob Herring <robh@kernel.org>
2017-10-09 09:22:35 -05:00
Jason Ekstrand 7ec689a540 drm: Pull new modifier uapi into drm_fourcc and drm_mode
Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-08-15 07:50:46 -07:00
Dave Airlie 3832374daf drm: update drm.h to latest in drm-next.
This syncs the drm.h header with my drm-next branch as of
6d61e70ccc21606ffb8a0a03bd3aba24f659502b.

It brings over the semaphore API changes.

Generated using make headers_install.
Generated from git://people.freedesktop.org/~airlied/linux drm-next commit 6d61e70ccc2.

[airlied: I split patch in two, split reviewed by across both]

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2017-06-29 05:31:23 +10:00
Dave Airlie 92b5b308ca amdgpu: sync amdgpu_drm with kernel.
This syncs the amdgpu_drm header with my drm-next branch as of
6d61e70ccc21606ffb8a0a03bd3aba24f659502b.

It brings over the VM and semaphore API changes.

Generated using make headers_install.
Generated from git://people.freedesktop.org/~airlied/linux drm-next commit 6d61e70ccc2.

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2017-06-27 13:08:39 +10:00
Eric Anholt b9549c954e headers: Update drm_fourcc and vc4_drm.h with new VC4 tiling UAPI.
Taken from make headers_install of drm-misc-next
(34c8ea400ff6383b028f63df2453914163afc07c)

Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-06-22 10:49:00 +01:00
Eric Engestrom 48aac8c6ef headers: sync drm_sarea.h with airlied/drm-next
Adds the C++ extern guards from
ebbb0e5cfd2ceb1150b1 drm: add extern C guard for the UAPI headers

Generated using `make headers_install` from airlied/drm-next
at commit 2a1720376adda5ecf8e636fbfb05339c7dad1c55

Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-06-03 23:39:22 +01:00
Eric Engestrom 1b8db17779 headers: sync drm_fourcc.h with airlied/drm-next
This adds a bunch of modifiers stuff, as well as a few new formats.
Includes the following changes:
ebbb0e5cfd2ceb1150b1 drm: add extern C guard for the UAPI headers
b9fb2a21ac8058965a6b drm_fourcc: Document linear modifier
af913418261d6d3e7a29 drm_fourcc: Fix DRM_FORMAT_MOD_LINEAR #define
fd056f05b9fcba35b77e drm: add fourcc codes for 16bit R and RG
73f1a5858bf82f3bf232 drm/fourcc: add vivante tiled layout format modifiers
ba2b5277dc52cc96944d drm: add RGB formats with separate alpha plane
5e91144dd702d068b22a drm/tegra: Add tiling FB modifiers

Generated using `make headers_install` from airlied/drm-next
at commit 2a1720376adda5ecf8e636fbfb05339c7dad1c55

Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-06-03 23:39:12 +01:00
Leo Liu eeb51df3ce amdgpu/drm: add AMDGPU_HW_IP_VCN_ENC
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
2017-05-23 17:43:46 -04:00
Leo Liu 5faee77272 amdgpu/drm: add AMDGPU_HW_IP_VCN_DEC
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
2017-05-23 17:43:07 -04:00
Hawking Zhang 3f457d2a6e amdgpu: add raven family id
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Chunming Zhou <David1.Zhou@amd.com>
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
2017-05-23 17:41:31 -04:00
Daniel Stone e379c6a137 Headers: Sync drm{,_mode}.h with the kernel
Generated using make headers_install, based on drm-misc-next commit
5db06a8a98f515f67446a69c57577c4c363ec65d.

This clarifies the comments around modifiers such that they are
per-framebuffer rather than per-plane, adds the beginnings of aspect
ratio mode flags, link status properties, and updates the 'reserved'
field from vblank events to include the CRTC ID.

v2: Split into separate patch, pull in full kernel changes.
v3: Undo revert of connector-type enums, since it is not actually
    harmful.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-04-06 20:32:43 +01:00
Nicolai Hähnle 0a4626fead headers: the uint*_t vs. __u* discrepancy in amdgpu_drm is fixed
This was already done in commit 3dc002df3e ("amdgpu: sync amdgpu_drm.h
with kernel 4.11-rc2"), now update the README accordingly.

Signed-off-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Emil Velikov <emil.velikov@collabora.com>
2017-04-03 18:32:09 +02:00
Nicolai Hähnle f104148e40 headers: sync amdgpu_drm.h from airlied/drm-next
Changes include: PRT and preemption flags, sensor info, and some more
changes for Vega10.

Generated using make headers_install from airlied/drm-next commit
320d8c3d38739fa8e31a076b86cbdafcf8897d5e.

Signed-off-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Emil Velikov <emil.velikov@collabora.com>
2017-04-03 18:31:47 +02:00
Leo Liu c7b5aaeb1f amdgpu_drm: add AMDGPU_HW_IP_UVD_ENC
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Marek Olšák <marek.olsak@amd.com>
2017-03-27 21:45:50 +02:00
Marek Olšák c34b28ae9b amdgpu: update amdgpu_drm.h for Vega10
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2017-03-27 21:42:07 +02:00
Marek Olšák 3dc002df3e amdgpu: sync amdgpu_drm.h with kernel 4.11-rc2
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2017-03-27 21:42:07 +02:00
Emil Velikov f6499b1153 headers: add explicit note against local changes in the README
Even with the step by step guide people sometimes get confused.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-02-14 01:35:56 +00:00
Chris Wilson a3d715ee14 Import uapi/i915_drm.h from v4.10-rc5-950-g152d5750dda9
To sync with "drm/i915: Support explicit fencing for execbuf"
2017-01-27 20:00:38 +00:00
Eric Anholt a8315834a9 vc4: Add new GETPARAMs that have been merged to drm-next.
Signed-off-by: Eric Anholt <eric@anholt.net>
2016-11-28 10:24:22 -08:00
Grazvydas Ignotas 1924b6704a libdrm: random typo fixes
Just some trivial boring typo fixes all over the tree.
READMEs and comments only.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2016-11-22 13:54:31 +00:00
Emil Velikov de13ea3877 headers: Add README file
Since we're trying to standardise and make things more consistent in
the area, add a basic README which covers some of the more popular
topics.

v2:
 - Drop drm-misc (Daniel Vetter)
v3:
 - Elaborate on when and which headers to update
 - Add a list of headers and the respective "issues"
 - Add file to EXTRA_DIST

Cc: Dave Airlie <airlied@redhat.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> (v1)
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2016-11-14 19:52:38 +00:00
Michel Dänzer 9433b702fc headers: Sync drm{,_mode}.h with the kernel
Generated using make headers_install, based on linus master commit
b67be92feb486f800d80d72c67fd87b47b79b18e.

Acked-by: Daniel Vetter <daniel@ffwll.ch>
2016-10-13 16:53:36 +09:00
Yang Rong 98887140e3 intel: Export pooled EU and min no. of eus in a pool.
Update kernel interface with new I915_GETPARAM ioctl entries for
pooled EU and min no. of eus in a pool. Add a wrapping function
for each parameter. Userspace drivers need these values when decide
the thread count. This kernel enabled pooled eu by default for BXT
and for fused down 2x6 parts it is advised to turn it off.

But there is another HW issue in these parts (fused
down 2x6 parts) before C0 that requires Pooled EU to be enabled as a
workaround. In this case the pool configuration changes depending upon
which subslice is disabled and the no. of eus in a pool is different,
So userspace need to know min no. of eus in a pool.

V2: use return value as the query results.
    ret < 0 when error, ret = 0 when not support, and ret > 0 indicate
    query results.(Chris)
V3: Correct V2 errors.

Signed-off-by: Yang Rong <rong.r.yang@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-09-07 13:50:23 +01:00
Marek Olšák 77bc69ae9c amdgpu: sync amdgpu_drm.h with the kernel
Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
2016-09-05 15:43:22 +02:00
Marek Olšák 39fff59962 radeon: sync radeon_drm.h with the kernel
the CIK tile mode definitions are moved out,
userspace doesn't use them

Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
2016-09-05 15:43:22 +02:00
Flora Cui 4462303700 amdgpu: expose the AMDGPU_GEM_CREATE_VRAM_CLEARED flag
With this flag specified, VRAM buffer will be cleared at
allocation time.

Signed-off-by: Flora Cui <Flora.Cui@amd.com>
Reviewed-by: Alexandre Demers <alexandre.f.demers@gmail.com>
2016-09-02 17:30:19 -04:00
Andreas Boll 9af2ccdef3 virtgpu: Update kernel header
Generated using make headers_install.

This brings the C++ guard, proper include path for drm.h and the
switching to kernel types for fixed-with integers.

Generated from drm-next commit c11dea5b0290984fa48111957ba3fdc5b3bdae5a

Suggested-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Andreas Boll <andreas.boll.dev@gmail.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2016-07-23 09:45:53 +02:00
Eric Anholt 2212a6465d vc4: Update kernel headers for getparam addition.
This also brings over the C++ guard introduced recently in the kernel
headers.

Signed-off-by: Eric Anholt <eric@anholt.net>
2016-07-15 15:38:12 -07:00
Daniel Vetter cc9a53f076 headers: Update drm.h
This needs the kernel patch to make sure the C++ protection is in place.

Otherwise just new defines, using the right fixed-width types and
some shuffling in where stuff is defined (the DRM_CAP list moved, but
the #defines are the same).

Generated using make headers_install.

Generated fromd drm-misc commit 249c4f538b1aae55d41699f8bafc6cb762a7f48f

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-12 13:15:49 +02:00
Daniel Vetter 89cdda3d5f headers: Update drm_mode.h
Generated using make headers_install.

Only cosmetics&new definitions here now.

Generated fromd drm-misc commit 249c4f538b1aae55d41699f8bafc6cb762a7f48f

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-12 13:15:49 +02:00
Daniel Vetter 268ae7cae5 headers: Update drm_fourcc.h
Only real difference is switching to kernel types for fixed-width
integers, like we should.

Generated fromd drm-misc commit 249c4f538b1aae55d41699f8bafc6cb762a7f48f

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-04-12 13:15:49 +02:00