[alsa-devel] [PATCH 1/3] ASoC: davinci: Convert to use devm_ioremap_resource

Peter Ujfalusi peter.ujfalusi at ti.com
Mon Aug 24 12:27:48 CEST 2015


On 08/24/2015 11:47 AM, Axel Lin wrote:
> Use devm_ioremap_resource() instead of open code.

Acked-by: Peter Ujfalusi <peter.ujfalusi at ti.com>

> Signed-off-by: Axel Lin <axel.lin at ingics.com>
> ---
>  sound/soc/davinci/davinci-i2s.c   | 25 ++++++-------------------
>  sound/soc/davinci/davinci-mcasp.c | 18 ++++--------------
>  2 files changed, 10 insertions(+), 33 deletions(-)
> 
> diff --git a/sound/soc/davinci/davinci-i2s.c b/sound/soc/davinci/davinci-i2s.c
> index 56cb4d9..ec98548 100644
> --- a/sound/soc/davinci/davinci-i2s.c
> +++ b/sound/soc/davinci/davinci-i2s.c
> @@ -651,23 +651,15 @@ static const struct snd_soc_component_driver davinci_i2s_component = {
>  static int davinci_i2s_probe(struct platform_device *pdev)
>  {
>  	struct davinci_mcbsp_dev *dev;
> -	struct resource *mem, *ioarea, *res;
> +	struct resource *mem, *res;
> +	void __iomem *io_base;
>  	int *dma;
>  	int ret;
>  
>  	mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> -	if (!mem) {
> -		dev_err(&pdev->dev, "no mem resource?\n");
> -		return -ENODEV;
> -	}
> -
> -	ioarea = devm_request_mem_region(&pdev->dev, mem->start,
> -					 resource_size(mem),
> -					 pdev->name);
> -	if (!ioarea) {
> -		dev_err(&pdev->dev, "McBSP region already claimed\n");
> -		return -EBUSY;
> -	}
> +	io_base = devm_ioremap_resource(&pdev->dev, mem);
> +	if (IS_ERR(io_base))
> +		return PTR_ERR(io_base);
>  
>  	dev = devm_kzalloc(&pdev->dev, sizeof(struct davinci_mcbsp_dev),
>  			   GFP_KERNEL);
> @@ -679,12 +671,7 @@ static int davinci_i2s_probe(struct platform_device *pdev)
>  		return -ENODEV;
>  	clk_enable(dev->clk);
>  
> -	dev->base = devm_ioremap(&pdev->dev, mem->start, resource_size(mem));
> -	if (!dev->base) {
> -		dev_err(&pdev->dev, "ioremap failed\n");
> -		ret = -ENOMEM;
> -		goto err_release_clk;
> -	}
> +	dev->base = io_base;
>  
>  	dev->dma_data[SNDRV_PCM_STREAM_PLAYBACK].addr =
>  	    (dma_addr_t)(mem->start + DAVINCI_MCBSP_DXR_REG);
> diff --git a/sound/soc/davinci/davinci-mcasp.c b/sound/soc/davinci/davinci-mcasp.c
> index b960e62..add6bb9 100644
> --- a/sound/soc/davinci/davinci-mcasp.c
> +++ b/sound/soc/davinci/davinci-mcasp.c
> @@ -1613,7 +1613,7 @@ static int davinci_mcasp_get_dma_type(struct davinci_mcasp *mcasp)
>  static int davinci_mcasp_probe(struct platform_device *pdev)
>  {
>  	struct snd_dmaengine_dai_dma_data *dma_data;
> -	struct resource *mem, *ioarea, *res, *dat;
> +	struct resource *mem, *res, *dat;
>  	struct davinci_mcasp_pdata *pdata;
>  	struct davinci_mcasp *mcasp;
>  	char *irq_name;
> @@ -1648,22 +1648,12 @@ static int davinci_mcasp_probe(struct platform_device *pdev)
>  		}
>  	}
>  
> -	ioarea = devm_request_mem_region(&pdev->dev, mem->start,
> -			resource_size(mem), pdev->name);
> -	if (!ioarea) {
> -		dev_err(&pdev->dev, "Audio region already claimed\n");
> -		return -EBUSY;
> -	}
> +	mcasp->base = devm_ioremap_resource(&pdev->dev, mem);
> +	if (IS_ERR(mcasp->base))
> +		return PTR_ERR(mcasp->base);
>  
>  	pm_runtime_enable(&pdev->dev);
>  
> -	mcasp->base = devm_ioremap(&pdev->dev, mem->start, resource_size(mem));
> -	if (!mcasp->base) {
> -		dev_err(&pdev->dev, "ioremap failed\n");
> -		ret = -ENOMEM;
> -		goto err;
> -	}
> -
>  	mcasp->op_mode = pdata->op_mode;
>  	/* sanity check for tdm slots parameter */
>  	if (mcasp->op_mode == DAVINCI_MCASP_IIS_MODE) {
> 


-- 
Péter


More information about the Alsa-devel mailing list