diff mbox series

dmaengine: bestcomm: Use of_address_to_resource()

Message ID 20230319163222.226377-1-robh@kernel.org (mailing list archive)
State Accepted
Commit f60a150822a7946c97059dad3416ea3de501eaed
Headers show
Series dmaengine: bestcomm: Use of_address_to_resource() | expand

Commit Message

Rob Herring (Arm) March 19, 2023, 4:32 p.m. UTC
Replace of_get_address() and of_translate_address() calls with single
call to of_address_to_resource().

Signed-off-by: Rob Herring <robh@kernel.org>
---
 drivers/dma/bestcomm/sram.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

Comments

Vinod Koul March 31, 2023, 12:31 p.m. UTC | #1
On 19-03-23, 11:32, Rob Herring wrote:
> Replace of_get_address() and of_translate_address() calls with single
> call to of_address_to_resource().

Applied, thanks

> 
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  drivers/dma/bestcomm/sram.c | 19 ++++++++-----------
>  1 file changed, 8 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/dma/bestcomm/sram.c b/drivers/dma/bestcomm/sram.c
> index c465758e7193..103174cbda65 100644
> --- a/drivers/dma/bestcomm/sram.c
> +++ b/drivers/dma/bestcomm/sram.c
> @@ -38,7 +38,7 @@ int bcom_sram_init(struct device_node *sram_node, char *owner)
>  {
>  	int rv;
>  	const u32 *regaddr_p;
> -	u64 regaddr64, size64;
> +	struct resource res;
>  	unsigned int psize;
>  
>  	/* Create our state struct */
> @@ -56,21 +56,18 @@ int bcom_sram_init(struct device_node *sram_node, char *owner)
>  	}
>  
>  	/* Get address and size of the sram */
> -	regaddr_p = of_get_address(sram_node, 0, &size64, NULL);
> -	if (!regaddr_p) {
> +	rv = of_address_to_resource(sram_node, 0, &res);
> +	if (rv) {
>  		printk(KERN_ERR "%s: bcom_sram_init: "
>  			"Invalid device node !\n", owner);
> -		rv = -EINVAL;
>  		goto error_free;
>  	}
>  
> -	regaddr64 = of_translate_address(sram_node, regaddr_p);
> -
> -	bcom_sram->base_phys = (phys_addr_t) regaddr64;
> -	bcom_sram->size = (unsigned int) size64;
> +	bcom_sram->base_phys = res.start;
> +	bcom_sram->size = resource_size(&res);
>  
>  	/* Request region */
> -	if (!request_mem_region(bcom_sram->base_phys, bcom_sram->size, owner)) {
> +	if (!request_mem_region(res.start, resource_size(&res), owner)) {
>  		printk(KERN_ERR "%s: bcom_sram_init: "
>  			"Couldn't request region !\n", owner);
>  		rv = -EBUSY;
> @@ -79,7 +76,7 @@ int bcom_sram_init(struct device_node *sram_node, char *owner)
>  
>  	/* Map SRAM */
>  		/* sram is not really __iomem */
> -	bcom_sram->base_virt = (void*) ioremap(bcom_sram->base_phys, bcom_sram->size);
> +	bcom_sram->base_virt = (void*) ioremap(res.start, resource_size(&res));
>  
>  	if (!bcom_sram->base_virt) {
>  		printk(KERN_ERR "%s: bcom_sram_init: "
> @@ -120,7 +117,7 @@ int bcom_sram_init(struct device_node *sram_node, char *owner)
>  	return 0;
>  
>  error_release:
> -	release_mem_region(bcom_sram->base_phys, bcom_sram->size);
> +	release_mem_region(res.start, resource_size(&res));
>  error_free:
>  	kfree(bcom_sram);
>  	bcom_sram = NULL;
> -- 
> 2.39.2
diff mbox series

Patch

diff --git a/drivers/dma/bestcomm/sram.c b/drivers/dma/bestcomm/sram.c
index c465758e7193..103174cbda65 100644
--- a/drivers/dma/bestcomm/sram.c
+++ b/drivers/dma/bestcomm/sram.c
@@ -38,7 +38,7 @@  int bcom_sram_init(struct device_node *sram_node, char *owner)
 {
 	int rv;
 	const u32 *regaddr_p;
-	u64 regaddr64, size64;
+	struct resource res;
 	unsigned int psize;
 
 	/* Create our state struct */
@@ -56,21 +56,18 @@  int bcom_sram_init(struct device_node *sram_node, char *owner)
 	}
 
 	/* Get address and size of the sram */
-	regaddr_p = of_get_address(sram_node, 0, &size64, NULL);
-	if (!regaddr_p) {
+	rv = of_address_to_resource(sram_node, 0, &res);
+	if (rv) {
 		printk(KERN_ERR "%s: bcom_sram_init: "
 			"Invalid device node !\n", owner);
-		rv = -EINVAL;
 		goto error_free;
 	}
 
-	regaddr64 = of_translate_address(sram_node, regaddr_p);
-
-	bcom_sram->base_phys = (phys_addr_t) regaddr64;
-	bcom_sram->size = (unsigned int) size64;
+	bcom_sram->base_phys = res.start;
+	bcom_sram->size = resource_size(&res);
 
 	/* Request region */
-	if (!request_mem_region(bcom_sram->base_phys, bcom_sram->size, owner)) {
+	if (!request_mem_region(res.start, resource_size(&res), owner)) {
 		printk(KERN_ERR "%s: bcom_sram_init: "
 			"Couldn't request region !\n", owner);
 		rv = -EBUSY;
@@ -79,7 +76,7 @@  int bcom_sram_init(struct device_node *sram_node, char *owner)
 
 	/* Map SRAM */
 		/* sram is not really __iomem */
-	bcom_sram->base_virt = (void*) ioremap(bcom_sram->base_phys, bcom_sram->size);
+	bcom_sram->base_virt = (void*) ioremap(res.start, resource_size(&res));
 
 	if (!bcom_sram->base_virt) {
 		printk(KERN_ERR "%s: bcom_sram_init: "
@@ -120,7 +117,7 @@  int bcom_sram_init(struct device_node *sram_node, char *owner)
 	return 0;
 
 error_release:
-	release_mem_region(bcom_sram->base_phys, bcom_sram->size);
+	release_mem_region(res.start, resource_size(&res));
 error_free:
 	kfree(bcom_sram);
 	bcom_sram = NULL;