Re: [PATCH 2/2] DMA: PL330: Removes useless function

2011-12-11 Thread Jassi Brar
On Thu, Dec 8, 2011 at 1:53 PM, Kukjin Kim kgene@samsung.com wrote:
 From: Boojin Kim boojin@samsung.com

 Cc: Jassi Brar jassisinghb...@gmail.com
 Cc: Linus Walleij linus.wall...@linaro.org
 Cc: Vinod Koul vinod.k...@intel.com
 Signed-off-by: Boojin Kim boojin@samsung.com
 Signed-off-by: Kukjin Kim kgene@samsung.com
 ---
  drivers/dma/pl330.c |   47 ---
  1 files changed, 0 insertions(+), 47 deletions(-)

 diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
 index 35f0904..b917477 100644
 --- a/drivers/dma/pl330.c
 +++ b/drivers/dma/pl330.c
 @@ -1512,53 +1512,6 @@ static int pl330_chan_ctrl(void *ch_id, enum 
 pl330_chan_op op)
        return ret;
  }

 -static int pl330_chan_status(void *ch_id, struct pl330_chanstatus *pstatus)
 -{
 -       struct pl330_thread *thrd = ch_id;
 -       struct pl330_dmac *pl330;
 -       struct pl330_info *pi;
 -       void __iomem *regs;
 -       int active;
 -       u32 val;
 -
 -       if (!pstatus || !thrd || thrd-free)
 -               return -EINVAL;
 -
 -       pl330 = thrd-dmac;
 -       pi = pl330-pinfo;
 -       regs = pi-base;
 -
 -       /* The client should remove the DMAC and add again */
 -       if (pl330-state == DYING)
 -               pstatus-dmac_halted = true;
 -       else
 -               pstatus-dmac_halted = false;
 -
 -       val = readl(regs + FSC);
 -       if (val  (1  thrd-id))
 -               pstatus-faulting = true;
 -       else
 -               pstatus-faulting = false;
 -
 -       active = _thrd_active(thrd);
 -
 -       if (!active) {
 -               /* Indicate that the thread is not running */
 -               pstatus-top_req = NULL;
 -               pstatus-wait_req = NULL;
 -       } else {
 -               active--;
 -               pstatus-top_req = thrd-req[active].r;
 -               pstatus-wait_req = !IS_FREE(thrd-req[1 - active])
 -                                       ? thrd-req[1 - active].r : NULL;
 -       }
 -
 -       pstatus-src_addr = readl(regs + SA(thrd-id));
 -       pstatus-dst_addr = readl(regs + DA(thrd-id));
 -
 -       return 0;
 -}

NAK.
Recently Samsung ASoC regressed to update DMA pointer only at period boundaries.
I am sure other platforms would like to have low audio latencies and
hence need this function.
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH 2/2] DMA: PL330: Removes useless function

2011-12-11 Thread Boojin Kim
Jassi Brar wrote:

 Subject: Re: [PATCH 2/2] DMA: PL330: Removes useless function

 On Thu, Dec 8, 2011 at 1:53 PM, Kukjin Kim kgene@samsung.com
 wrote:
  From: Boojin Kim boojin@samsung.com
 
  Cc: Jassi Brar jassisinghb...@gmail.com
  Cc: Linus Walleij linus.wall...@linaro.org
  Cc: Vinod Koul vinod.k...@intel.com
  Signed-off-by: Boojin Kim boojin@samsung.com
  Signed-off-by: Kukjin Kim kgene@samsung.com
  ---
   drivers/dma/pl330.c |   47 -
 --
   1 files changed, 0 insertions(+), 47 deletions(-)
 
  diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
  index 35f0904..b917477 100644
  --- a/drivers/dma/pl330.c
  +++ b/drivers/dma/pl330.c
  @@ -1512,53 +1512,6 @@ static int pl330_chan_ctrl(void *ch_id, enum
 pl330_chan_op op)
 return ret;
   }
 
  -static int pl330_chan_status(void *ch_id, struct pl330_chanstatus
 *pstatus)
  -{
  -   struct pl330_thread *thrd = ch_id;
  -   struct pl330_dmac *pl330;
  -   struct pl330_info *pi;
  -   void __iomem *regs;
  -   int active;
  -   u32 val;
  -
  -   if (!pstatus || !thrd || thrd-free)
  -   return -EINVAL;
  -
  -   pl330 = thrd-dmac;
  -   pi = pl330-pinfo;
  -   regs = pi-base;
  -
  -   /* The client should remove the DMAC and add again */
  -   if (pl330-state == DYING)
  -   pstatus-dmac_halted = true;
  -   else
  -   pstatus-dmac_halted = false;
  -
  -   val = readl(regs + FSC);
  -   if (val  (1  thrd-id))
  -   pstatus-faulting = true;
  -   else
  -   pstatus-faulting = false;
  -
  -   active = _thrd_active(thrd);
  -
  -   if (!active) {
  -   /* Indicate that the thread is not running */
  -   pstatus-top_req = NULL;
  -   pstatus-wait_req = NULL;
  -   } else {
  -   active--;
  -   pstatus-top_req = thrd-req[active].r;
  -   pstatus-wait_req = !IS_FREE(thrd-req[1 - active])
  -   ? thrd-req[1 - active].r : NULL;
  -   }
  -
  -   pstatus-src_addr = readl(regs + SA(thrd-id));
  -   pstatus-dst_addr = readl(regs + DA(thrd-id));
  -
  -   return 0;
  -}
 
 NAK.
 Recently Samsung ASoC regressed to update DMA pointer only at period
 boundaries.
 I am sure other platforms would like to have low audio latencies and
 hence need this function.

ASoC doesn't use DMA HW pointer to get its position with the new pl330 driver 
on dmaengine. So, pl330_chan_status() isn't used anymore. It just brings a 
build warning.

Thanks you.


 ___
 linux-arm-kernel mailing list
 linux-arm-ker...@lists.infradead.org
 http://lists.infradead.org/mailman/listinfo/linux-arm-kernel


--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 2/2] DMA: PL330: Removes useless function

2011-12-08 Thread Kukjin Kim
From: Boojin Kim boojin@samsung.com

Cc: Jassi Brar jassisinghb...@gmail.com
Cc: Linus Walleij linus.wall...@linaro.org
Cc: Vinod Koul vinod.k...@intel.com
Signed-off-by: Boojin Kim boojin@samsung.com
Signed-off-by: Kukjin Kim kgene@samsung.com
---
 drivers/dma/pl330.c |   47 ---
 1 files changed, 0 insertions(+), 47 deletions(-)

diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
index 35f0904..b917477 100644
--- a/drivers/dma/pl330.c
+++ b/drivers/dma/pl330.c
@@ -1512,53 +1512,6 @@ static int pl330_chan_ctrl(void *ch_id, enum 
pl330_chan_op op)
return ret;
 }
 
-static int pl330_chan_status(void *ch_id, struct pl330_chanstatus *pstatus)
-{
-   struct pl330_thread *thrd = ch_id;
-   struct pl330_dmac *pl330;
-   struct pl330_info *pi;
-   void __iomem *regs;
-   int active;
-   u32 val;
-
-   if (!pstatus || !thrd || thrd-free)
-   return -EINVAL;
-
-   pl330 = thrd-dmac;
-   pi = pl330-pinfo;
-   regs = pi-base;
-
-   /* The client should remove the DMAC and add again */
-   if (pl330-state == DYING)
-   pstatus-dmac_halted = true;
-   else
-   pstatus-dmac_halted = false;
-
-   val = readl(regs + FSC);
-   if (val  (1  thrd-id))
-   pstatus-faulting = true;
-   else
-   pstatus-faulting = false;
-
-   active = _thrd_active(thrd);
-
-   if (!active) {
-   /* Indicate that the thread is not running */
-   pstatus-top_req = NULL;
-   pstatus-wait_req = NULL;
-   } else {
-   active--;
-   pstatus-top_req = thrd-req[active].r;
-   pstatus-wait_req = !IS_FREE(thrd-req[1 - active])
-   ? thrd-req[1 - active].r : NULL;
-   }
-
-   pstatus-src_addr = readl(regs + SA(thrd-id));
-   pstatus-dst_addr = readl(regs + DA(thrd-id));
-
-   return 0;
-}
-
 /* Reserve an event */
 static inline int _alloc_event(struct pl330_thread *thrd)
 {
-- 
1.7.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html