Re: [PATCH V2] staging: ion: replace ion_phys_addr_t with phys_addr_t

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/16/2014 04:00 PM, Tomas Winkler wrote:
> Looks like phys_addr_t's are fully plumbed in the kernel.

This needs a better commit description.

Also you should include Colin and the rest of the Android kernel folks
(cc'ed in this mail) so they can review and hopefully provide acks.

thanks
-john

>
> Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
> ---
> V2: remove one more comment regarding ion_phys_addr_t
>
>  drivers/staging/android/ion/ion.c               |  2 +-
>  drivers/staging/android/ion/ion.h               | 12 +++---------
>  drivers/staging/android/ion/ion_carveout_heap.c | 14 +++++++-------
>  drivers/staging/android/ion/ion_chunk_heap.c    |  2 +-
>  drivers/staging/android/ion/ion_cma_heap.c      |  2 +-
>  drivers/staging/android/ion/ion_priv.h          | 10 +++++-----
>  drivers/staging/android/ion/ion_system_heap.c   |  2 +-
>  7 files changed, 19 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/staging/android/ion/ion.c b/drivers/staging/android/ion/ion.c
> index 14cb6c6..fb0d105 100644
> --- a/drivers/staging/android/ion/ion.c
> +++ b/drivers/staging/android/ion/ion.c
> @@ -547,7 +547,7 @@ void ion_free(struct ion_client *client, struct ion_handle *handle)
>  EXPORT_SYMBOL(ion_free);
>  
>  int ion_phys(struct ion_client *client, struct ion_handle *handle,
> -	     ion_phys_addr_t *addr, size_t *len)
> +	     phys_addr_t *addr, size_t *len)
>  {
>  	struct ion_buffer *buffer;
>  	int ret;
> diff --git a/drivers/staging/android/ion/ion.h b/drivers/staging/android/ion/ion.h
> index dcd2a0c..43b76f3 100644
> --- a/drivers/staging/android/ion/ion.h
> +++ b/drivers/staging/android/ion/ion.h
> @@ -28,12 +28,6 @@ struct ion_mapper;
>  struct ion_client;
>  struct ion_buffer;
>  
> -/* This should be removed some day when phys_addr_t's are fully
> -   plumbed in the kernel, and all instances of ion_phys_addr_t should
> -   be converted to phys_addr_t.  For the time being many kernel interfaces
> -   do not accept phys_addr_t's that would have to */
> -#define ion_phys_addr_t unsigned long
> -
>  /**
>   * struct ion_platform_heap - defines a heap in the given platform
>   * @type:	type of the heap from ion_heap_type enum
> @@ -52,9 +46,9 @@ struct ion_platform_heap {
>  	enum ion_heap_type type;
>  	unsigned int id;
>  	const char *name;
> -	ion_phys_addr_t base;
> +	phys_addr_t base;
>  	size_t size;
> -	ion_phys_addr_t align;
> +	phys_addr_t align;
>  	void *priv;
>  };
>  
> @@ -145,7 +139,7 @@ void ion_free(struct ion_client *client, struct ion_handle *handle);
>   * holding a reference.
>   */
>  int ion_phys(struct ion_client *client, struct ion_handle *handle,
> -	     ion_phys_addr_t *addr, size_t *len);
> +	     phys_addr_t *addr, size_t *len);
>  
>  /**
>   * ion_map_dma - return an sg_table describing a handle
> diff --git a/drivers/staging/android/ion/ion_carveout_heap.c b/drivers/staging/android/ion/ion_carveout_heap.c
> index 3cb05b9..295340e 100644
> --- a/drivers/staging/android/ion/ion_carveout_heap.c
> +++ b/drivers/staging/android/ion/ion_carveout_heap.c
> @@ -28,10 +28,10 @@
>  struct ion_carveout_heap {
>  	struct ion_heap heap;
>  	struct gen_pool *pool;
> -	ion_phys_addr_t base;
> +	phys_addr_t base;
>  };
>  
> -ion_phys_addr_t ion_carveout_allocate(struct ion_heap *heap,
> +phys_addr_t ion_carveout_allocate(struct ion_heap *heap,
>  				      unsigned long size,
>  				      unsigned long align)
>  {
> @@ -45,7 +45,7 @@ ion_phys_addr_t ion_carveout_allocate(struct ion_heap *heap,
>  	return offset;
>  }
>  
> -void ion_carveout_free(struct ion_heap *heap, ion_phys_addr_t addr,
> +void ion_carveout_free(struct ion_heap *heap, phys_addr_t addr,
>  		       unsigned long size)
>  {
>  	struct ion_carveout_heap *carveout_heap =
> @@ -58,11 +58,11 @@ void ion_carveout_free(struct ion_heap *heap, ion_phys_addr_t addr,
>  
>  static int ion_carveout_heap_phys(struct ion_heap *heap,
>  				  struct ion_buffer *buffer,
> -				  ion_phys_addr_t *addr, size_t *len)
> +				  phys_addr_t *addr, size_t *len)
>  {
>  	struct sg_table *table = buffer->priv_virt;
>  	struct page *page = sg_page(table->sgl);
> -	ion_phys_addr_t paddr = PFN_PHYS(page_to_pfn(page));
> +	phys_addr_t paddr = PFN_PHYS(page_to_pfn(page));
>  
>  	*addr = paddr;
>  	*len = buffer->size;
> @@ -75,7 +75,7 @@ static int ion_carveout_heap_allocate(struct ion_heap *heap,
>  				      unsigned long flags)
>  {
>  	struct sg_table *table;
> -	ion_phys_addr_t paddr;
> +	phys_addr_t paddr;
>  	int ret;
>  
>  	if (align > PAGE_SIZE)
> @@ -111,7 +111,7 @@ static void ion_carveout_heap_free(struct ion_buffer *buffer)
>  	struct ion_heap *heap = buffer->heap;
>  	struct sg_table *table = buffer->priv_virt;
>  	struct page *page = sg_page(table->sgl);
> -	ion_phys_addr_t paddr = PFN_PHYS(page_to_pfn(page));
> +	phys_addr_t paddr = PFN_PHYS(page_to_pfn(page));
>  
>  	ion_heap_buffer_zero(buffer);
>  
> diff --git a/drivers/staging/android/ion/ion_chunk_heap.c b/drivers/staging/android/ion/ion_chunk_heap.c
> index d40f5f8..86b467e 100644
> --- a/drivers/staging/android/ion/ion_chunk_heap.c
> +++ b/drivers/staging/android/ion/ion_chunk_heap.c
> @@ -27,7 +27,7 @@
>  struct ion_chunk_heap {
>  	struct ion_heap heap;
>  	struct gen_pool *pool;
> -	ion_phys_addr_t base;
> +	phys_addr_t base;
>  	unsigned long chunk_size;
>  	unsigned long size;
>  	unsigned long allocated;
> diff --git a/drivers/staging/android/ion/ion_cma_heap.c b/drivers/staging/android/ion/ion_cma_heap.c
> index f0f9889..f1e9211 100644
> --- a/drivers/staging/android/ion/ion_cma_heap.c
> +++ b/drivers/staging/android/ion/ion_cma_heap.c
> @@ -129,7 +129,7 @@ static void ion_cma_free(struct ion_buffer *buffer)
>  
>  /* return physical address in addr */
>  static int ion_cma_phys(struct ion_heap *heap, struct ion_buffer *buffer,
> -			ion_phys_addr_t *addr, size_t *len)
> +			phys_addr_t *addr, size_t *len)
>  {
>  	struct ion_cma_heap *cma_heap = to_cma_heap(buffer->heap);
>  	struct device *dev = cma_heap->dev;
> diff --git a/drivers/staging/android/ion/ion_priv.h b/drivers/staging/android/ion/ion_priv.h
> index 0942a7f..f16e70f 100644
> --- a/drivers/staging/android/ion/ion_priv.h
> +++ b/drivers/staging/android/ion/ion_priv.h
> @@ -42,7 +42,7 @@ struct ion_buffer *ion_handle_buffer(struct ion_handle *handle);
>   * @priv_virt:		private data to the buffer representable as
>   *			a void *
>   * @priv_phys:		private data to the buffer representable as
> - *			an ion_phys_addr_t (and someday a phys_addr_t)
> + *			an phys_addr_t
>   * @lock:		protects the buffers cnt fields
>   * @kmap_cnt:		number of times the buffer is mapped to the kernel
>   * @vaddr:		the kenrel mapping if kmap_cnt is not zero
> @@ -69,7 +69,7 @@ struct ion_buffer {
>  	size_t size;
>  	union {
>  		void *priv_virt;
> -		ion_phys_addr_t priv_phys;
> +		phys_addr_t priv_phys;
>  	};
>  	struct mutex lock;
>  	int kmap_cnt;
> @@ -106,7 +106,7 @@ struct ion_heap_ops {
>  			unsigned long align, unsigned long flags);
>  	void (*free)(struct ion_buffer *buffer);
>  	int (*phys)(struct ion_heap *heap, struct ion_buffer *buffer,
> -		    ion_phys_addr_t *addr, size_t *len);
> +		    phys_addr_t *addr, size_t *len);
>  	struct sg_table * (*map_dma)(struct ion_heap *heap,
>  				     struct ion_buffer *buffer);
>  	void (*unmap_dma)(struct ion_heap *heap, struct ion_buffer *buffer);
> @@ -282,9 +282,9 @@ void ion_cma_heap_destroy(struct ion_heap *);
>   * kernel api to allocate/free from carveout -- used when carveout is
>   * used to back an architecture specific custom heap
>   */
> -ion_phys_addr_t ion_carveout_allocate(struct ion_heap *heap, unsigned long size,
> +phys_addr_t ion_carveout_allocate(struct ion_heap *heap, unsigned long size,
>  				      unsigned long align);
> -void ion_carveout_free(struct ion_heap *heap, ion_phys_addr_t addr,
> +void ion_carveout_free(struct ion_heap *heap, phys_addr_t addr,
>  		       unsigned long size);
>  /**
>   * The carveout heap returns physical addresses, since 0 may be a valid
> diff --git a/drivers/staging/android/ion/ion_system_heap.c b/drivers/staging/android/ion/ion_system_heap.c
> index 9849f39..79422c3 100644
> --- a/drivers/staging/android/ion/ion_system_heap.c
> +++ b/drivers/staging/android/ion/ion_system_heap.c
> @@ -442,7 +442,7 @@ static void ion_system_contig_heap_free(struct ion_buffer *buffer)
>  
>  static int ion_system_contig_heap_phys(struct ion_heap *heap,
>  				       struct ion_buffer *buffer,
> -				       ion_phys_addr_t *addr, size_t *len)
> +				       phys_addr_t *addr, size_t *len)
>  {
>  	struct sg_table *table = buffer->priv_virt;
>  	struct page *page = sg_page(table->sgl);

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux