Thread (6 messages) 6 messages, 4 authors, 2013-01-03

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

From: Santosh Shilimkar <hidden>
Date: 2013-01-03 08:37:57
Also in: linux-omap, lkml
Subsystem: arm port, the rest · Maintainers: Russell King, Linus Torvalds

On Thursday 03 January 2013 12:58 PM, R Sricharan wrote:
Hi,

On Sunday 30 December 2012 02:13 AM, ahemaily at gmail.com wrote:
quoted
From: ahemaily <redacted>

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 <redacted>
---
  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
You are right. I missed it in last review. Below should be enough.
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c
index 37a488a..555ff7b 100644
--- a/arch/arm/plat-omap/dma.c
+++ b/arch/arm/plat-omap/dma.c
@@ -2019,7 +2019,7 @@ static int __devinit 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_coun))
  		d->lch_count	= omap_dma_reserve_channels;

  	dma_lch_count		= d->lch_count;
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help