History

Merge tag 'drm-intel-next-2017-06-19' of git://anongit.freedesktop.org/git/drm-intel into drm-next

Final pile of features for 4.13 New uabi: - batch bo in first slot, for faster execbuf assembly in userspace (Chris Wilson) - (sub)slice getparam, needed for mesa perf support (Robert Bragg) First pile of patches for cnl/cfl support, maintained by Rodrigo but with lots of contributions from others. Still incomplete since public review still ongoing. Features/refactoring: - Make execbuf faster (Chris Wilson), a pile of series to make execbuf buffer handling have fewer passes, use less list walking, postpone more work to async workers and shuffle buffers less, all to make the common case much faster (in some cases at least). - cold boot support for glk dsi (Madhav Chauhan) - Clean up pipe A quirk and related old platform hacks (Ville) - perf sampling support for kbl/glk (Lionel) - perf cleanups (Robert Bragg) - wire atomic state to backlight code, to avoid pipe lookup hacks (Maarten) - reduce request waiting latency/overhead to remove the spinning and associated cpu cycle wasting (Chris) - fix 90/270 rotation wm computation (Ville) - new ddb allocation algo for skl (Kumar Mahesh) - fix regression due to system suspend optimiazatino (Imre) - the usual pile of small cleanups and refactors all over GVT updates contained in this tag: - optimization for per-VM mmio save/restore (Changbin) - optimization for mmio hash table (Changbin) - scheduler optimization with event (Ping) - vGPU reset refinement (Fred) - other misc refactor and cleanups, etc. * tag 'drm-intel-next-2017-06-19' of git://anongit.freedesktop.org/git/drm-intel: (170 commits) drm/i915: Update DRIVER_DATE to 20170619 drm/i915/cfl: Introduce Coffee Lake workarounds. drm/i915: Store 9 bits of PCI Device ID for platforms with a LP PCH drm/i915: Stash a pointer to the obj's resv in the vma drm/i915: Async GPU relocation processing drm/i915: Allow execbuffer to use the first object as the batch drm/i915: Wait upon userptr get-user-pages within execbuffer drm/i915: First try the previous execbuffer location drm/i915: Store a persistent reference for an object in the execbuffer cache drm/i915: Eliminate lots of iterations over the execobjects array drm/i915: Disable EXEC_OBJECT_ASYNC when doing relocations drm/i915: Pass vma to relocate entry drm/i915: Store a direct lookup from object handle to vma drm/i915: Fix retrieval of hangcheck stats drm/i915: Store i915_gem_object_is_coherent() as a bit next to cache-dirty drm/i915: Mark CPU cache as dirty on every transition for CPU writes drm/i915: Make i915_vma_destroy() static drm/i915: Actually attach the tv_format property to the SDVO connector Revert "drm/i915/skl: New ddb allocation algorithm" drm/i915/glk: Add cold boot sequence for GLK DSI ...

Dave Airlie committed 9 years ago

Commit 305b9ed2 parents eafae13 9ddb8e1108 files · +36839 −3301Browse files

Showing the changes to include/uapi (1 of 108 files). Show all

Unified · Split

include/uapi/drm/i915_drm.h+36−8
@@ -418,6 +418,19 @@ typedef struct drm_i915_irq_wait { · 417 unmodified lines
418 */418 */
419#define I915_PARAM_HAS_EXEC_CAPTURE 45419#define I915_PARAM_HAS_EXEC_CAPTURE 45
420 420
421#define I915_PARAM_SLICE_MASK 46
422
423/* Assuming it's uniform for each slice, this queries the mask of subslices
424 * per-slice for this system.
425 */
426#define I915_PARAM_SUBSLICE_MASK 47
427
428/*
429 * Query whether DRM_I915_GEM_EXECBUFFER2 supports supplying the batch buffer
430 * as the first execobject as opposed to the last. See I915_EXEC_BATCH_FIRST.
431 */
432#define I915_PARAM_HAS_EXEC_BATCH_FIRST 48
433
421typedef struct drm_i915_getparam {434typedef struct drm_i915_getparam {
422 __s32 param;435 __s32 param;
423 /*436 /*
@@ -904,7 +917,17 @@ struct drm_i915_gem_execbuffer2 { · 480 unmodified lines
904 */917 */
905#define I915_EXEC_FENCE_OUT (1<<17)918#define I915_EXEC_FENCE_OUT (1<<17)
906 919
907#define __I915_EXEC_UNKNOWN_FLAGS (-(I915_EXEC_FENCE_OUT<<1))920/*
921 * Traditionally the execbuf ioctl has only considered the final element in
922 * the execobject[] to be the executable batch. Often though, the client
923 * will known the batch object prior to construction and being able to place
924 * it into the execobject[] array first can simplify the relocation tracking.
925 * Setting I915_EXEC_BATCH_FIRST tells execbuf to use element 0 of the
926 * execobject[] as the * batch instead (the default is to use the last
927 * element).
928 */
929#define I915_EXEC_BATCH_FIRST (1<<18)
930#define __I915_EXEC_UNKNOWN_FLAGS (-(I915_EXEC_BATCH_FIRST<<1))
908 931
909#define I915_EXEC_CONTEXT_ID_MASK (0xffffffff)932#define I915_EXEC_CONTEXT_ID_MASK (0xffffffff)
910#define i915_execbuffer2_set_context_id(eb2, context) \933#define i915_execbuffer2_set_context_id(eb2, context) \
@@ -1308,13 +1331,18 @@ struct drm_i915_gem_context_param { · 397 unmodified lines
1308};1331};
1309 1332
1310enum drm_i915_oa_format {1333enum drm_i915_oa_format {
1311 I915_OA_FORMAT_A13 = 1,1334 I915_OA_FORMAT_A13 = 1, /* HSW only */
1312 I915_OA_FORMAT_A29,1335 I915_OA_FORMAT_A29, /* HSW only */
1313 I915_OA_FORMAT_A13_B8_C8,1336 I915_OA_FORMAT_A13_B8_C8, /* HSW only */
1314 I915_OA_FORMAT_B4_C8,1337 I915_OA_FORMAT_B4_C8, /* HSW only */
1315 I915_OA_FORMAT_A45_B8_C8,1338 I915_OA_FORMAT_A45_B8_C8, /* HSW only */
1316 I915_OA_FORMAT_B4_C8_A16,1339 I915_OA_FORMAT_B4_C8_A16, /* HSW only */
1317 I915_OA_FORMAT_C4_B8,1340 I915_OA_FORMAT_C4_B8, /* HSW+ */
1341
1342 /* Gen8+ */
1343 I915_OA_FORMAT_A12,
1344 I915_OA_FORMAT_A12_B8_C8,
1345 I915_OA_FORMAT_A32u40_A4u32_B8_C8,
1318 1346
1319 I915_OA_FORMAT_MAX /* non-ABI */1347 I915_OA_FORMAT_MAX /* non-ABI */
1320};1348};

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t