[Intel-gfx] [PATCH 6/8] drm/i915: Generalize ring_space to take a ringbuf

Jesse Barnes jbarnes at virtuousgeek.org
Mon Jun 30 22:58:33 CEST 2014


On Thu, 26 Jun 2014 14:24:17 +0100
oscar.mateo at intel.com wrote:

> From: Oscar Mateo <oscar.mateo at intel.com>
> 
> It's simple enough that it doesn't need to know anything about the
> engine.
> 
> Trivial change.
> 
> Signed-off-by: Oscar Mateo <oscar.mateo at intel.com>
> ---
>  drivers/gpu/drm/i915/intel_ringbuffer.c | 13 ++++++-------
>  1 file changed, 6 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index ffdb366..405edec 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -48,9 +48,8 @@ static inline int __ring_space(int head, int tail, int size)
>  	return space;
>  }
>  
> -static inline int ring_space(struct intel_engine_cs *ring)
> +static inline int ring_space(struct intel_ringbuffer *ringbuf)
>  {
> -	struct intel_ringbuffer *ringbuf = ring->buffer;
>  	return __ring_space(ringbuf->head & HEAD_ADDR, ringbuf->tail, ringbuf->size);
>  }
>  
> @@ -545,7 +544,7 @@ static int init_ring_common(struct intel_engine_cs *ring)
>  	else {
>  		ringbuf->head = I915_READ_HEAD(ring);
>  		ringbuf->tail = I915_READ_TAIL(ring) & TAIL_ADDR;
> -		ringbuf->space = ring_space(ring);
> +		ringbuf->space = ring_space(ringbuf);
>  		ringbuf->last_retired_head = -1;
>  	}
>  
> @@ -1537,7 +1536,7 @@ static int intel_ring_wait_request(struct intel_engine_cs *ring, int n)
>  		ringbuf->head = ringbuf->last_retired_head;
>  		ringbuf->last_retired_head = -1;
>  
> -		ringbuf->space = ring_space(ring);
> +		ringbuf->space = ring_space(ringbuf);
>  		if (ringbuf->space >= n)
>  			return 0;
>  	}
> @@ -1560,7 +1559,7 @@ static int intel_ring_wait_request(struct intel_engine_cs *ring, int n)
>  	ringbuf->head = ringbuf->last_retired_head;
>  	ringbuf->last_retired_head = -1;
>  
> -	ringbuf->space = ring_space(ring);
> +	ringbuf->space = ring_space(ringbuf);
>  	return 0;
>  }
>  
> @@ -1589,7 +1588,7 @@ static int ring_wait_for_space(struct intel_engine_cs *ring, int n)
>  	trace_i915_ring_wait_begin(ring);
>  	do {
>  		ringbuf->head = I915_READ_HEAD(ring);
> -		ringbuf->space = ring_space(ring);
> +		ringbuf->space = ring_space(ringbuf);
>  		if (ringbuf->space >= n) {
>  			ret = 0;
>  			break;
> @@ -1641,7 +1640,7 @@ static int intel_wrap_ring_buffer(struct intel_engine_cs *ring)
>  		iowrite32(MI_NOOP, virt++);
>  
>  	ringbuf->tail = 0;
> -	ringbuf->space = ring_space(ring);
> +	ringbuf->space = ring_space(ringbuf);
>  
>  	return 0;
>  }

Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org>

-- 
Jesse Barnes, Intel Open Source Technology Center



More information about the Intel-gfx mailing list