Some fixes for 3.8: - Watermark fixups from Chris Wilson (4 pieces). - 2 snb workarounds, seem to be recently added to our internal DB. - workaround for the infamous i830/i845 hang, seems now finally solid! Based on Chris' fix for SNA, now also for UXA/mesa&old SNA. - Some more fixlets for shrinker-pulls-the-rug issues (Chris&me). - Fix dma-buf flags when exporting (you). - Disable the VGA plane if it's enabled on lid open - similar fix in spirit to the one I've sent you last weeek, BIOS' really like to mess with the display when closing the lid (awesome debug work from Krzysztof Mazur). * 'drm-intel-fixes' of git://people.freedesktop.org/~danvet/drm-intel: drm/i915: disable shrinker lock stealing for create_mmap_offset drm/i915: optionally disable shrinker lock stealing drm/i915: fix flags in dma buf exporting i915: ensure that VGA plane is disabled drm/i915: Preallocate the drm_mm_node prior to manipulating the GTT drm_mm manager drm: Export routines for inserting preallocated nodes into the mm manager drm/i915: don't disable disconnected outputs drm/i915: Implement workaround for broken CS tlb on i830/845 drm/i915: Implement WaSetupGtModeTdRowDispatch drm/i915: Implement WaDisableHiZPlanesWhenMSAAEnabled drm/i915: Prefer CRTC 'active' rather than 'enabled' during WM computations drm/i915: Clear self-refresh watermarks when disabled drm/i915: Double the cursor self-refresh latency on Valleyview drm/i915: Fixup cursor latency used for IVB lp3 watermarks
Showing the changes to include/uapi (1 of 14 files). Show all
Unified · Split
| @@ -307,6 +307,7 @@ typedef struct drm_i915_irq_wait { · 306 unmodified lines | ||
| 307 | 307 | #define I915_PARAM_HAS_PRIME_VMAP_FLUSH 21 |
| 308 | 308 | #define I915_PARAM_RSVD_FOR_FUTURE_USE 22 |
| 309 | 309 | #define I915_PARAM_HAS_SECURE_BATCHES 23 |
| 310 | +#define I915_PARAM_HAS_PINNED_BATCHES 24 | |
| 310 | 311 | |
| 311 | 312 | typedef struct drm_i915_getparam { |
| 312 | 313 | int param; |
| @@ -677,6 +678,15 @@ struct drm_i915_gem_execbuffer2 { · 364 unmodified lines | ||
| 677 | 678 | */ |
| 678 | 679 | #define I915_EXEC_SECURE (1<<9) |
| 679 | 680 | |
| 681 | +/** Inform the kernel that the batch is and will always be pinned. This | |
| 682 | + * negates the requirement for a workaround to be performed to avoid | |
| 683 | + * an incoherent CS (such as can be found on 830/845). If this flag is | |
| 684 | + * not passed, the kernel will endeavour to make sure the batch is | |
| 685 | + * coherent with the CS before execution. If this flag is passed, | |
| 686 | + * userspace assumes the responsibility for ensuring the same. | |
| 687 | + */ | |
| 688 | +#define I915_EXEC_IS_PINNED (1<<10) | |
| 689 | + | |
| 680 | 690 | #define I915_EXEC_CONTEXT_ID_MASK (0xffffffff) |
| 681 | 691 | #define i915_execbuffer2_set_context_id(eb2, context) \ |
| 682 | 692 | (eb2).rsvd1 = context & I915_EXEC_CONTEXT_ID_MASK |