[PATCH 1/1] arm :omap :DMA: fix a bug on reserving the omap SDMA channels

R Sricharan r.sricharan at ti.com
Thu Jan 3 02:28:11 EST 2013


Hi,

On Sunday 30 December 2012 02:13 AM, ahemaily at gmail.com wrote:
> From: ahemaily <ahemaily at gmail.com>
>
> The variable  dma_lch_count  used for comparison  (omap_dma_reserve_channels <= dma_lch_count)
> before it initialized to the value from omap_dma_dev_attr : d->lch_count.
>
> I change the place of dma_lch_count initialization to be before the comparison.
>
> Signed-off-by: Abdelrahman Hemaily <ahemaily at gmail.com>
> ---
>   arch/arm/plat-omap/dma.c |    4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c
> index c76ed8b..cb3e321 100644
> --- a/arch/arm/plat-omap/dma.c
> +++ b/arch/arm/plat-omap/dma.c
> @@ -2014,12 +2014,12 @@ static int __devinit omap_system_dma_probe(struct platform_device *pdev)
>
>   	d			= p->dma_attr;
>   	errata			= p->errata;
> -
> +	dma_lch_count           = d->lch_count;
> +
>   	if ((d->dev_caps & RESERVE_CHANNEL) && omap_dma_reserve_channels
>   			&& (omap_dma_reserve_channels <= dma_lch_count))
>   		d->lch_count	= omap_dma_reserve_channels;
>
> -	dma_lch_count		= d->lch_count;
    By removing this line, you are effectively not assigning
    d->lch_count after reserving. So the patch should only change
    dma_lch_count in the above "if statement" to d->lch_count

Regards,
  Sricharan





More information about the linux-arm-kernel mailing list