ARM: OMAP: Fix the use of uninitialized dma_lch_count
authorChen Gang <gang.chen@asianux.com>
Fri, 11 Jan 2013 05:39:18 +0000 (13:39 +0800)
committerTony Lindgren <tony@atomide.com>
Fri, 1 Feb 2013 22:39:54 +0000 (14:39 -0800)
  'omap_dma_reserve_channels' when used is suppose to be from command.
    so, it alreay has value before 1st call of omap_system_dma_probe.
    and it will never be changed again during running (not from ioctl).

  but 'dma_lch_count' is zero before 1st call of omap_system_dma_probe.
    so it will be failed for omap_dma_reserve_channels, when 1st call.

  so, need use 'd->lch_count' instead of 'dma_lch_count' for judging.

Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/plat-omap/dma.c

index 4136b20cba3cc257534900894a1a8767baab585e..e06c34bdc34aa11c2bcac80097391dddfb552f5d 100644 (file)
@@ -2019,7 +2019,7 @@ static int omap_system_dma_probe(struct platform_device *pdev)
        errata                  = p->errata;
 
        if ((d->dev_caps & RESERVE_CHANNEL) && omap_dma_reserve_channels
-                       && (omap_dma_reserve_channels <= dma_lch_count))
+                       && (omap_dma_reserve_channels < d->lch_count))
                d->lch_count    = omap_dma_reserve_channels;
 
        dma_lch_count           = d->lch_count;