public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1] dma: mmp-tdma: add multiple burst size support for 910-squ
@ 2013-10-09  5:40 Qiao Zhou
  2013-10-09  5:40 ` [PATCH] dma: mmp_tdma: " Qiao Zhou
  0 siblings, 1 reply; 4+ messages in thread
From: Qiao Zhou @ 2013-10-09  5:40 UTC (permalink / raw)
  To: vinod.koul, dan.j.williams, zhangfei.gao, linux-kernel, chao.xie
  Cc: Qiao Zhou

v1: add multiple burst size support. remove previous fixed 32-byte setting.

Qiao Zhou (1):
  dma: mmp_tdma: add multiple burst size support for 910-squ

 drivers/dma/mmp_tdma.c |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] dma: mmp_tdma: add multiple burst size support for 910-squ
  2013-10-09  5:40 [PATCH v1] dma: mmp-tdma: add multiple burst size support for 910-squ Qiao Zhou
@ 2013-10-09  5:40 ` Qiao Zhou
  2013-10-10 13:54   ` zhangfei gao
  0 siblings, 1 reply; 4+ messages in thread
From: Qiao Zhou @ 2013-10-09  5:40 UTC (permalink / raw)
  To: vinod.koul, dan.j.williams, zhangfei.gao, linux-kernel, chao.xie
  Cc: Qiao Zhou

add multiple burst size support for 910-squ.

Signed-off-by: Qiao Zhou <zhouqiao@marvell.com>
---
 drivers/dma/mmp_tdma.c |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
index 38cb517..d84354b 100644
--- a/drivers/dma/mmp_tdma.c
+++ b/drivers/dma/mmp_tdma.c
@@ -228,8 +228,31 @@ static int mmp_tdma_config_chan(struct mmp_tdma_chan *tdmac)
 			return -EINVAL;
 		}
 	} else if (tdmac->type == PXA910_SQU) {
-		tdcr |= TDCR_BURSTSZ_SQU_32B;
 		tdcr |= TDCR_SSPMOD;
+
+		switch (tdmac->burst_sz) {
+		case 1:
+			tdcr |= TDCR_BURSTSZ_SQU_1B;
+			break;
+		case 2:
+			tdcr |= TDCR_BURSTSZ_SQU_2B;
+			break;
+		case 4:
+			tdcr |= TDCR_BURSTSZ_SQU_4B;
+			break;
+		case 8:
+			tdcr |= TDCR_BURSTSZ_SQU_8B;
+			break;
+		case 16:
+			tdcr |= TDCR_BURSTSZ_SQU_16B;
+			break;
+		case 32:
+			tdcr |= TDCR_BURSTSZ_SQU_32B;
+			break;
+		default:
+			dev_err(tdmac->dev, "mmp_tdma: unknown burst size.\n");
+			return -EINVAL;
+		}
 	}
 
 	writel(tdcr, tdmac->reg_base + TDCR);
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] dma: mmp_tdma: add multiple burst size support for 910-squ
  2013-10-09  5:40 ` [PATCH] dma: mmp_tdma: " Qiao Zhou
@ 2013-10-10 13:54   ` zhangfei gao
  2013-10-11  1:08     ` Qiao Zhou
  0 siblings, 1 reply; 4+ messages in thread
From: zhangfei gao @ 2013-10-10 13:54 UTC (permalink / raw)
  To: Qiao Zhou
  Cc: Vinod Koul, Dan Williams, linux-kernel@vger.kernel.org, chao.xie

On Wed, Oct 9, 2013 at 1:40 PM, Qiao Zhou <zhouqiao@marvell.com> wrote:
> add multiple burst size support for 910-squ.
>
> Signed-off-by: Qiao Zhou <zhouqiao@marvell.com>
> ---
>  drivers/dma/mmp_tdma.c |   25 ++++++++++++++++++++++++-
>  1 files changed, 24 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
> index 38cb517..d84354b 100644
> --- a/drivers/dma/mmp_tdma.c
> +++ b/drivers/dma/mmp_tdma.c
> @@ -228,8 +228,31 @@ static int mmp_tdma_config_chan(struct mmp_tdma_chan *tdmac)
>                         return -EINVAL;
>                 }
>         } else if (tdmac->type == PXA910_SQU) {
> -               tdcr |= TDCR_BURSTSZ_SQU_32B;
>                 tdcr |= TDCR_SSPMOD;
> +
> +               switch (tdmac->burst_sz) {
> +               case 1:
> +                       tdcr |= TDCR_BURSTSZ_SQU_1B;
> +                       break;
> +               case 2:
> +                       tdcr |= TDCR_BURSTSZ_SQU_2B;
> +                       break;
> +               case 4:
> +                       tdcr |= TDCR_BURSTSZ_SQU_4B;
> +                       break;
> +               case 8:
> +                       tdcr |= TDCR_BURSTSZ_SQU_8B;
> +                       break;
> +               case 16:
> +                       tdcr |= TDCR_BURSTSZ_SQU_16B;
> +                       break;
> +               case 32:
> +                       tdcr |= TDCR_BURSTSZ_SQU_32B;
> +                       break;
> +               default:
> +                       dev_err(tdmac->dev, "mmp_tdma: unknown burst size.\n");
> +                       return -EINVAL;
> +               }

Sorry, do I make mistake,
Not find definition TDCR_BURSTSZ_SQU_16B ~
Only find
#define TDCR_BURSTSZ_SQU_32B    (0x7 << 6)

Thanks

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] dma: mmp_tdma: add multiple burst size support for 910-squ
  2013-10-10 13:54   ` zhangfei gao
@ 2013-10-11  1:08     ` Qiao Zhou
  0 siblings, 0 replies; 4+ messages in thread
From: Qiao Zhou @ 2013-10-11  1:08 UTC (permalink / raw)
  To: zhangfei gao
  Cc: Vinod Koul, Dan Williams, linux-kernel@vger.kernel.org, Chao Xie

On 10/10/2013 09:54 PM, zhangfei gao wrote:
> On Wed, Oct 9, 2013 at 1:40 PM, Qiao Zhou <zhouqiao@marvell.com> wrote:
>> add multiple burst size support for 910-squ.
>>
>> Signed-off-by: Qiao Zhou <zhouqiao@marvell.com>
>> ---
>>   drivers/dma/mmp_tdma.c |   25 ++++++++++++++++++++++++-
>>   1 files changed, 24 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
>> index 38cb517..d84354b 100644
>> --- a/drivers/dma/mmp_tdma.c
>> +++ b/drivers/dma/mmp_tdma.c
>> @@ -228,8 +228,31 @@ static int mmp_tdma_config_chan(struct mmp_tdma_chan *tdmac)
>>                          return -EINVAL;
>>                  }
>>          } else if (tdmac->type == PXA910_SQU) {
>> -               tdcr |= TDCR_BURSTSZ_SQU_32B;
>>                  tdcr |= TDCR_SSPMOD;
>> +
>> +               switch (tdmac->burst_sz) {
>> +               case 1:
>> +                       tdcr |= TDCR_BURSTSZ_SQU_1B;
>> +                       break;
>> +               case 2:
>> +                       tdcr |= TDCR_BURSTSZ_SQU_2B;
>> +                       break;
>> +               case 4:
>> +                       tdcr |= TDCR_BURSTSZ_SQU_4B;
>> +                       break;
>> +               case 8:
>> +                       tdcr |= TDCR_BURSTSZ_SQU_8B;
>> +                       break;
>> +               case 16:
>> +                       tdcr |= TDCR_BURSTSZ_SQU_16B;
>> +                       break;
>> +               case 32:
>> +                       tdcr |= TDCR_BURSTSZ_SQU_32B;
>> +                       break;
>> +               default:
>> +                       dev_err(tdmac->dev, "mmp_tdma: unknown burst size.\n");
>> +                       return -EINVAL;
>> +               }
>
> Sorry, do I make mistake,
> Not find definition TDCR_BURSTSZ_SQU_16B ~
> Only find
> #define TDCR_BURSTSZ_SQU_32B    (0x7 << 6)
uploaded the wrong version. sorry. I have already submitted the v2 
patch. thanks.
>
> Thanks
>


-- 

Best Regards
Qiao

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-10-11  1:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-09  5:40 [PATCH v1] dma: mmp-tdma: add multiple burst size support for 910-squ Qiao Zhou
2013-10-09  5:40 ` [PATCH] dma: mmp_tdma: " Qiao Zhou
2013-10-10 13:54   ` zhangfei gao
2013-10-11  1:08     ` Qiao Zhou

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox