diff options
author | Dave Airlie <airlied@redhat.com> | 2013-02-07 20:08:10 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2013-02-07 20:08:10 -0500 |
commit | cd17ef4114ad5c514b17e6a0bb02a309ab90b692 (patch) | |
tree | 9c162eaa96931597b83e165702e3483ba5c6bb1e /include/uapi | |
parent | 67c964000236497e00c646472cd6b70b5c5109c8 (diff) | |
parent | 7d37beaaf3dbc6ff16f4d32a4dd6f8c557c6ab50 (diff) |
Merge tag 'drm-intel-next-2013-02-01' of git://people.freedesktop.org/~danvet/drm-intel into drm-next
Daniel writes:
"Probably the last feature pull for 3.9, there's some fixes outstanding
thought that I'd like to sneak in. And maybe 3.8 takes a bit longer ...
Anyway, highlights of this pull:
- Kill the horrible IS_DISPLAYREG hack to handle the mmio offset movements
on vlv, big thanks to Ville.
- Dynamic power well support for Haswell, shaves away a bit when only
using the eDP port on pipe A (Paulo). Plus unclaimed register fixes
uncovered by this.
- Clarifications of the gpu hang/reset state transitions, hopefully fixing
a few spurious -EIO deaths in userspace.
- Haswell ELD fixes.
- Some more (pp)gtt cleanups from Ben.
- A few smaller things all over.
Plus all the stuff from the previous rather small pull request:
- Broadcast RBG improvements and reduced color range fixes from Ville.
- Ben is on a "kill legacy gtt code for good" spree, first pile of patches
included.
- No-relocs and bo lut improvements for faster execbuf from Chris.
- Some refactorings from Imre."
* tag 'drm-intel-next-2013-02-01' of git://people.freedesktop.org/~danvet/drm-intel: (101 commits)
GPU/i915: Fix acpi_bus_get_device() check in drivers/gpu/drm/i915/intel_opregion.c
drm/i915: Set the SR01 "screen off" bit in i915_redisable_vga() too
drm/i915: Kill IS_DISPLAYREG()
drm/i915: Introduce i915_vgacntrl_reg()
drm/i915: gen6_gmch_remove can be static
drm/i915: dynamic Haswell display power well support
drm/i915: check the power down well on assert_pipe()
drm/i915: don't send DP "idle" pattern before "normal" on HSW PORT_A
drm/i915: don't run hsw power well code on !hsw
drm/i915: kill cargo-culted locking from power well code
drm/i915: Only run idle processing from i915_gem_retire_requests_worker
drm/i915: Fix CAGF for HSW
drm/i915: Reclaim GTT space for failed PPGTT
drm/i915: remove intel_gtt structure
drm/i915: Add probe and remove to the gtt ops
drm/i915: extract hw ppgtt setup/cleanup code
drm/i915: pte_encode is gen6+
drm/i915: vfuncs for ppgtt
drm/i915: vfuncs for gtt_clear_range/insert_entries
drm/i915: Error state should print /sys/kernel/debug
...
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/drm/i915_drm.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h index c4d2e9c74002..07d59419fe6b 100644 --- a/include/uapi/drm/i915_drm.h +++ b/include/uapi/drm/i915_drm.h | |||
@@ -308,6 +308,8 @@ typedef struct drm_i915_irq_wait { | |||
308 | #define I915_PARAM_RSVD_FOR_FUTURE_USE 22 | 308 | #define I915_PARAM_RSVD_FOR_FUTURE_USE 22 |
309 | #define I915_PARAM_HAS_SECURE_BATCHES 23 | 309 | #define I915_PARAM_HAS_SECURE_BATCHES 23 |
310 | #define I915_PARAM_HAS_PINNED_BATCHES 24 | 310 | #define I915_PARAM_HAS_PINNED_BATCHES 24 |
311 | #define I915_PARAM_HAS_EXEC_NO_RELOC 25 | ||
312 | #define I915_PARAM_HAS_EXEC_HANDLE_LUT 26 | ||
311 | 313 | ||
312 | typedef struct drm_i915_getparam { | 314 | typedef struct drm_i915_getparam { |
313 | int param; | 315 | int param; |
@@ -628,7 +630,11 @@ struct drm_i915_gem_exec_object2 { | |||
628 | __u64 offset; | 630 | __u64 offset; |
629 | 631 | ||
630 | #define EXEC_OBJECT_NEEDS_FENCE (1<<0) | 632 | #define EXEC_OBJECT_NEEDS_FENCE (1<<0) |
633 | #define EXEC_OBJECT_NEEDS_GTT (1<<1) | ||
634 | #define EXEC_OBJECT_WRITE (1<<2) | ||
635 | #define __EXEC_OBJECT_UNKNOWN_FLAGS -(EXEC_OBJECT_WRITE<<1) | ||
631 | __u64 flags; | 636 | __u64 flags; |
637 | |||
632 | __u64 rsvd1; | 638 | __u64 rsvd1; |
633 | __u64 rsvd2; | 639 | __u64 rsvd2; |
634 | }; | 640 | }; |
@@ -687,6 +693,20 @@ struct drm_i915_gem_execbuffer2 { | |||
687 | */ | 693 | */ |
688 | #define I915_EXEC_IS_PINNED (1<<10) | 694 | #define I915_EXEC_IS_PINNED (1<<10) |
689 | 695 | ||
696 | /** Provide a hint to the kernel that the command stream and auxilliary | ||
697 | * state buffers already holds the correct presumed addresses and so the | ||
698 | * relocation process may be skipped if no buffers need to be moved in | ||
699 | * preparation for the execbuffer. | ||
700 | */ | ||
701 | #define I915_EXEC_NO_RELOC (1<<11) | ||
702 | |||
703 | /** Use the reloc.handle as an index into the exec object array rather | ||
704 | * than as the per-file handle. | ||
705 | */ | ||
706 | #define I915_EXEC_HANDLE_LUT (1<<12) | ||
707 | |||
708 | #define __I915_EXEC_UNKNOWN_FLAGS -(I915_EXEC_HANDLE_LUT<<1) | ||
709 | |||
690 | #define I915_EXEC_CONTEXT_ID_MASK (0xffffffff) | 710 | #define I915_EXEC_CONTEXT_ID_MASK (0xffffffff) |
691 | #define i915_execbuffer2_set_context_id(eb2, context) \ | 711 | #define i915_execbuffer2_set_context_id(eb2, context) \ |
692 | (eb2).rsvd1 = context & I915_EXEC_CONTEXT_ID_MASK | 712 | (eb2).rsvd1 = context & I915_EXEC_CONTEXT_ID_MASK |