Skip to content

Commit

Permalink
drm/i915/ringbuffer: Implement advance using set_tail
Browse files Browse the repository at this point in the history
As noted by Zhenyu, we can now simply replace the existing advance hook
by calling the new set_tail function pointer directly.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
  • Loading branch information
Chris Wilson committed Sep 21, 2010
1 parent d46eefa commit a3f07cd
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 17 deletions.
16 changes: 1 addition & 15 deletions drivers/gpu/drm/i915/intel_ringbuffer.c
Original file line number Diff line number Diff line change
Expand Up @@ -147,12 +147,6 @@ static unsigned int render_ring_get_active_head(struct drm_device *dev,
return I915_READ(acthd_reg);
}

static void render_ring_advance_ring(struct drm_device *dev,
struct intel_ring_buffer *ring)
{
render_ring_set_tail(dev, ring->tail);
}

static int init_ring_common(struct drm_device *dev,
struct intel_ring_buffer *ring)
{
Expand Down Expand Up @@ -418,12 +412,6 @@ static inline unsigned int bsd_ring_get_active_head(struct drm_device *dev,
return I915_READ(BSD_RING_ACTHD);
}

static inline void bsd_ring_advance_ring(struct drm_device *dev,
struct intel_ring_buffer *ring)
{
bsd_ring_set_tail(dev, ring->tail);
}

static int init_bsd_ring(struct drm_device *dev,
struct intel_ring_buffer *ring)
{
Expand Down Expand Up @@ -785,7 +773,7 @@ void intel_ring_advance(struct drm_device *dev,
struct intel_ring_buffer *ring)
{
ring->tail &= ring->size - 1;
ring->advance_ring(dev, ring);
ring->set_tail(dev, ring->tail);
}

void intel_fill_struct(struct drm_device *dev,
Expand Down Expand Up @@ -829,7 +817,6 @@ static struct intel_ring_buffer render_ring = {
.get_tail = render_ring_get_tail,
.set_tail = render_ring_set_tail,
.get_active_head = render_ring_get_active_head,
.advance_ring = render_ring_advance_ring,
.flush = render_ring_flush,
.add_request = render_ring_add_request,
.get_gem_seqno = render_ring_get_gem_seqno,
Expand Down Expand Up @@ -868,7 +855,6 @@ static struct intel_ring_buffer bsd_ring = {
.get_tail = bsd_ring_get_tail,
.set_tail = bsd_ring_set_tail,
.get_active_head = bsd_ring_get_active_head,
.advance_ring = bsd_ring_advance_ring,
.flush = bsd_ring_flush,
.add_request = bsd_ring_add_request,
.get_gem_seqno = bsd_ring_get_gem_seqno,
Expand Down
2 changes: 0 additions & 2 deletions drivers/gpu/drm/i915/intel_ringbuffer.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,6 @@ struct intel_ring_buffer {
u32 value);
unsigned int (*get_active_head)(struct drm_device *dev,
struct intel_ring_buffer *ring);
void (*advance_ring)(struct drm_device *dev,
struct intel_ring_buffer *ring);
void (*flush)(struct drm_device *dev,
struct intel_ring_buffer *ring,
u32 invalidate_domains,
Expand Down

0 comments on commit a3f07cd

Please sign in to comment.