diff options
author | Dave Airlie <airlied@redhat.com> | 2013-01-17 05:34:08 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2013-01-17 05:34:08 -0500 |
commit | b5cc6c0387b2f8d269c1df1e68c97c958dd22fed (patch) | |
tree | 697f2335b3a10f55e0ea226dcd044ee4ff3f0f7f /drivers/gpu/drm/i915/intel_ringbuffer.h | |
parent | 9931faca02c604c22335f5a935a501bb2ace6e20 (diff) | |
parent | c0c36b941b6f0be6ac74f340040cbb29d6a0b06c (diff) |
Merge tag 'drm-intel-next-2012-12-21' of git://people.freedesktop.org/~danvet/drm-intel into drm-next
Daniel writes:
- seqno wrap fixes and debug infrastructure from Mika Kuoppala and Chris
Wilson
- some leftover kill-agp on gen6+ patches from Ben
- hotplug improvements from Damien
- clear fb when allocated from stolen, avoids dirt on the fbcon (Chris)
- Stolen mem support from Chris Wilson, one of the many steps to get to
real fastboot support.
- Some DDI code cleanups from Paulo.
- Some refactorings around lvds and dp code.
- some random little bits&pieces
* tag 'drm-intel-next-2012-12-21' of git://people.freedesktop.org/~danvet/drm-intel: (93 commits)
drm/i915: Return the real error code from intel_set_mode()
drm/i915: Make GSM void
drm/i915: Move GSM mapping into dev_priv
drm/i915: Move even more gtt code to i915_gem_gtt
drm/i915: Make next_seqno debugs entry to use i915_gem_set_seqno
drm/i915: Introduce i915_gem_set_seqno()
drm/i915: Always clear semaphore mboxes on seqno wrap
drm/i915: Initialize hardware semaphore state on ring init
drm/i915: Introduce ring set_seqno
drm/i915: Missed conversion to gtt_pte_t
drm/i915: Bug on unsupported swizzled platforms
drm/i915: BUG() if fences are used on unsupported platform
drm/i915: fixup overlay stolen memory leak
drm/i915: clean up PIPECONF bpc #defines
drm/i915: add intel_dp_set_signal_levels
drm/i915: remove leftover display.update_wm assignment
drm/i915: check for the PCH when setting pch_transcoder
drm/i915: Clear the stolen fb before enabling
drm/i915: Access to snooped system memory through the GTT is incoherent
drm/i915: Remove stale comment about intel_dp_detect()
...
Conflicts:
drivers/gpu/drm/i915/intel_display.c
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.h')
-rw-r--r-- | drivers/gpu/drm/i915/intel_ringbuffer.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h index 6af87cd05725..d66208c2c48b 100644 --- a/drivers/gpu/drm/i915/intel_ringbuffer.h +++ b/drivers/gpu/drm/i915/intel_ringbuffer.h | |||
@@ -90,6 +90,8 @@ struct intel_ring_buffer { | |||
90 | */ | 90 | */ |
91 | u32 (*get_seqno)(struct intel_ring_buffer *ring, | 91 | u32 (*get_seqno)(struct intel_ring_buffer *ring, |
92 | bool lazy_coherency); | 92 | bool lazy_coherency); |
93 | void (*set_seqno)(struct intel_ring_buffer *ring, | ||
94 | u32 seqno); | ||
93 | int (*dispatch_execbuffer)(struct intel_ring_buffer *ring, | 95 | int (*dispatch_execbuffer)(struct intel_ring_buffer *ring, |
94 | u32 offset, u32 length, | 96 | u32 offset, u32 length, |
95 | unsigned flags); | 97 | unsigned flags); |
@@ -178,6 +180,13 @@ intel_read_status_page(struct intel_ring_buffer *ring, | |||
178 | return ring->status_page.page_addr[reg]; | 180 | return ring->status_page.page_addr[reg]; |
179 | } | 181 | } |
180 | 182 | ||
183 | static inline void | ||
184 | intel_write_status_page(struct intel_ring_buffer *ring, | ||
185 | int reg, u32 value) | ||
186 | { | ||
187 | ring->status_page.page_addr[reg] = value; | ||
188 | } | ||
189 | |||
181 | /** | 190 | /** |
182 | * Reads a dword out of the status page, which is written to from the command | 191 | * Reads a dword out of the status page, which is written to from the command |
183 | * queue by automatic updates, MI_REPORT_HEAD, MI_STORE_DATA_INDEX, or | 192 | * queue by automatic updates, MI_REPORT_HEAD, MI_STORE_DATA_INDEX, or |
@@ -208,7 +217,7 @@ static inline void intel_ring_emit(struct intel_ring_buffer *ring, | |||
208 | } | 217 | } |
209 | void intel_ring_advance(struct intel_ring_buffer *ring); | 218 | void intel_ring_advance(struct intel_ring_buffer *ring); |
210 | int __must_check intel_ring_idle(struct intel_ring_buffer *ring); | 219 | int __must_check intel_ring_idle(struct intel_ring_buffer *ring); |
211 | 220 | void intel_ring_init_seqno(struct intel_ring_buffer *ring, u32 seqno); | |
212 | int intel_ring_flush_all_caches(struct intel_ring_buffer *ring); | 221 | int intel_ring_flush_all_caches(struct intel_ring_buffer *ring); |
213 | int intel_ring_invalidate_all_caches(struct intel_ring_buffer *ring); | 222 | int intel_ring_invalidate_all_caches(struct intel_ring_buffer *ring); |
214 | 223 | ||