[PATCH 20/32] dmaengine: ste_dma40: Move rev error-check up to revision acquisition

Vinod Koul vinod.koul at intel.com
Mon Apr 22 05:41:25 EDT 2013


On Thu, Apr 18, 2013 at 11:12:02AM +0100, Lee Jones wrote:
> At the moment we fetch the hardware revision, then do some stuff, then
> check whether the revision is correct and return in error if it's not.
> Well we may as well check it as soon as we know what it is, so let's
> move the check right up underneath where we acquire the version.
> 
> Cc: Vinod Koul <vinod.koul at intel.com>
> Cc: Dan Williams <djbw at fb.com>
> Cc: Per Forlin <per.forlin at stericsson.com>
> Cc: Rabin Vincent <rabin at rab.in>
> Signed-off-by: Lee Jones <lee.jones at linaro.org>
Acked-by: Vinod Koul <vnod.koul at intel.com>

--
~Vinod
> ---
>  drivers/dma/ste_dma40.c |   10 ++++------
>  1 file changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
> index 28fe153..282dd59 100644
> --- a/drivers/dma/ste_dma40.c
> +++ b/drivers/dma/ste_dma40.c
> @@ -3185,6 +3185,10 @@ static struct d40_base * __init d40_hw_detect_init(struct platform_device *pdev)
>  	 * DB8540v1 has revision 4
>  	 */
>  	rev = AMBA_REV_BITS(pid);
> +	if (rev < 2) {
> +		d40_err(&pdev->dev, "hardware revision: %d is not supported", rev);
> +		goto failure;
> +	}
>  
>  	plat_data = pdev->dev.platform_data;
>  
> @@ -3199,12 +3203,6 @@ static struct d40_base * __init d40_hw_detect_init(struct platform_device *pdev)
>  	dev_info(&pdev->dev, "hardware revision: %d @ 0x%x with %d physical channels\n",
>  		 rev, res->start, num_phy_chans);
>  
> -	if (rev < 2) {
> -		d40_err(&pdev->dev, "hardware revision: %d is not supported",
> -			rev);
> -		goto failure;
> -	}
> -
>  	base = kzalloc(ALIGN(sizeof(struct d40_base), 4) +
>  		       (num_phy_chans + num_log_chans + ARRAY_SIZE(dma40_memcpy_channels)) *
>  		       sizeof(struct d40_chan), GFP_KERNEL);
> -- 
> 1.7.10.4
> 



More information about the linux-arm-kernel mailing list