2011-02-21 13:45:26

by Hans-Christian Egtvedt

[permalink] [raw]
Subject: Re: [PATCH repost 4/4] avr32: at32ap700x: specify DMA src and dst masters

On Fri, 2011-01-21 at 14:11 +0000, Jamie Iles wrote:
> Now that the dw_dmac DMA driver supports configurable source and
> destination masters we need to specify which ones to use. This was
> previously hardcoded to 0 and 1 respectively in the driver.
>
> Cc: Hans-Christian Egtvedt <[email protected]>
> Cc: Dan Williams <[email protected]>
> Signed-off-by: Jamie Iles <[email protected]>
> ---
> arch/avr32/mach-at32ap/at32ap700x.c | 6 ++++++
> 1 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c
> index e67c999..2747cde 100644
> --- a/arch/avr32/mach-at32ap/at32ap700x.c
> +++ b/arch/avr32/mach-at32ap/at32ap700x.c
> @@ -2048,6 +2048,8 @@ at32_add_device_ac97c(unsigned int id, struct ac97c_platform_data *data,
> rx_dws->reg_width = DW_DMA_SLAVE_WIDTH_16BIT;
> rx_dws->cfg_hi = DWC_CFGH_SRC_PER(3);
> rx_dws->cfg_lo &= ~(DWC_CFGL_HS_DST_POL | DWC_CFGL_HS_SRC_POL);
> + rx_dws->src_master = 0;
> + rx_dws->dst_master = 1;
> }
>
> /* Check if DMA slave interface for playback should be configured. */
> @@ -2056,6 +2058,8 @@ at32_add_device_ac97c(unsigned int id, struct ac97c_platform_data *data,
> tx_dws->reg_width = DW_DMA_SLAVE_WIDTH_16BIT;
> tx_dws->cfg_hi = DWC_CFGH_DST_PER(4);
> tx_dws->cfg_lo &= ~(DWC_CFGL_HS_DST_POL | DWC_CFGL_HS_SRC_POL);
> + rx_dws->src_master = 0;
> + rx_dws->dst_master = 1;

Spotted by Nicolas Ferre, you use the wrong struct here, should be
tx_dws, not rx_dws.

<snipp>

--
Hans-Christian Egtvedt


2011-02-21 14:46:02

by Jamie Iles

[permalink] [raw]
Subject: Re: [PATCH repost 4/4] avr32: at32ap700x: specify DMA src and dst masters

On Mon, Feb 21, 2011 at 02:45:00PM +0100, Hans-Christian Egtvedt wrote:
> On Fri, 2011-01-21 at 14:11 +0000, Jamie Iles wrote:
> > Now that the dw_dmac DMA driver supports configurable source and
> > destination masters we need to specify which ones to use. This was
> > previously hardcoded to 0 and 1 respectively in the driver.
> >
> > Cc: Hans-Christian Egtvedt <[email protected]>
> > Cc: Dan Williams <[email protected]>
> > Signed-off-by: Jamie Iles <[email protected]>
> > ---
> > arch/avr32/mach-at32ap/at32ap700x.c | 6 ++++++
> > 1 files changed, 6 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c
> > index e67c999..2747cde 100644
> > --- a/arch/avr32/mach-at32ap/at32ap700x.c
> > +++ b/arch/avr32/mach-at32ap/at32ap700x.c
> > @@ -2048,6 +2048,8 @@ at32_add_device_ac97c(unsigned int id, struct ac97c_platform_data *data,
> > rx_dws->reg_width = DW_DMA_SLAVE_WIDTH_16BIT;
> > rx_dws->cfg_hi = DWC_CFGH_SRC_PER(3);
> > rx_dws->cfg_lo &= ~(DWC_CFGL_HS_DST_POL | DWC_CFGL_HS_SRC_POL);
> > + rx_dws->src_master = 0;
> > + rx_dws->dst_master = 1;
> > }
> >
> > /* Check if DMA slave interface for playback should be configured. */
> > @@ -2056,6 +2058,8 @@ at32_add_device_ac97c(unsigned int id, struct ac97c_platform_data *data,
> > tx_dws->reg_width = DW_DMA_SLAVE_WIDTH_16BIT;
> > tx_dws->cfg_hi = DWC_CFGH_DST_PER(4);
> > tx_dws->cfg_lo &= ~(DWC_CFGL_HS_DST_POL | DWC_CFGL_HS_SRC_POL);
> > + rx_dws->src_master = 0;
> > + rx_dws->dst_master = 1;
>
> Spotted by Nicolas Ferre, you use the wrong struct here, should be
> tx_dws, not rx_dws.

Apologies, here's a patch to fix it up.

Jamie

8<--------

>From 9068d500450ad6f5189b9a71463851349700c505 Mon Sep 17 00:00:00 2001
From: Jamie Iles <[email protected]>
Date: Mon, 21 Feb 2011 14:38:32 +0000
Subject: [PATCH] avr32: at32ap700x: fix typo in DMA master configuration

Commit 4aa5f366431fe (avr32: at32ap700x: specify DMA src and dst
masters) specified the masters for the ac97c playback device
but incorrectly set them in the capture slave information rather
than playback.

Cc: Hans-Christian Egtvedt <[email protected]>
Cc: Dan Williams <[email protected]>
Signed-off-by: Jamie Iles <[email protected]>
---
arch/avr32/mach-at32ap/at32ap700x.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c
index 2747cde..4635c7c 100644
--- a/arch/avr32/mach-at32ap/at32ap700x.c
+++ b/arch/avr32/mach-at32ap/at32ap700x.c
@@ -2058,8 +2058,8 @@ at32_add_device_ac97c(unsigned int id, struct ac97c_platform_data *data,
tx_dws->reg_width = DW_DMA_SLAVE_WIDTH_16BIT;
tx_dws->cfg_hi = DWC_CFGH_DST_PER(4);
tx_dws->cfg_lo &= ~(DWC_CFGL_HS_DST_POL | DWC_CFGL_HS_SRC_POL);
- rx_dws->src_master = 0;
- rx_dws->dst_master = 1;
+ tx_dws->src_master = 0;
+ tx_dws->dst_master = 1;
}

if (platform_device_add_data(pdev, data,
--
1.7.4

2011-03-15 14:59:29

by Jamie Iles

[permalink] [raw]
Subject: Re: [PATCH repost 4/4] avr32: at32ap700x: specify DMA src and dst masters

On Mon, Feb 21, 2011 at 02:45:40PM +0000, Jamie Iles wrote:
> On Mon, Feb 21, 2011 at 02:45:00PM +0100, Hans-Christian Egtvedt wrote:
> > Spotted by Nicolas Ferre, you use the wrong struct here, should be
> > tx_dws, not rx_dws.
>
> Apologies, here's a patch to fix it up.

Is anyone able to take this for the next merge?

Jamie

>
> Jamie
>
> 8<--------
>
> From 9068d500450ad6f5189b9a71463851349700c505 Mon Sep 17 00:00:00 2001
> From: Jamie Iles <[email protected]>
> Date: Mon, 21 Feb 2011 14:38:32 +0000
> Subject: [PATCH] avr32: at32ap700x: fix typo in DMA master configuration
>
> Commit 4aa5f366431fe (avr32: at32ap700x: specify DMA src and dst
> masters) specified the masters for the ac97c playback device
> but incorrectly set them in the capture slave information rather
> than playback.
>
> Cc: Hans-Christian Egtvedt <[email protected]>
> Cc: Dan Williams <[email protected]>
> Signed-off-by: Jamie Iles <[email protected]>
> ---
> arch/avr32/mach-at32ap/at32ap700x.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c
> index 2747cde..4635c7c 100644
> --- a/arch/avr32/mach-at32ap/at32ap700x.c
> +++ b/arch/avr32/mach-at32ap/at32ap700x.c
> @@ -2058,8 +2058,8 @@ at32_add_device_ac97c(unsigned int id, struct ac97c_platform_data *data,
> tx_dws->reg_width = DW_DMA_SLAVE_WIDTH_16BIT;
> tx_dws->cfg_hi = DWC_CFGH_DST_PER(4);
> tx_dws->cfg_lo &= ~(DWC_CFGL_HS_DST_POL | DWC_CFGL_HS_SRC_POL);
> - rx_dws->src_master = 0;
> - rx_dws->dst_master = 1;
> + tx_dws->src_master = 0;
> + tx_dws->dst_master = 1;
> }
>
> if (platform_device_add_data(pdev, data,
> --
> 1.7.4
>

2011-03-16 02:38:08

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH repost 4/4] avr32: at32ap700x: specify DMA src and dst masters

On Tue, 2011-03-15 at 20:26 +0530, Jamie Iles wrote:
> On Mon, Feb 21, 2011 at 02:45:40PM +0000, Jamie Iles wrote:
> > On Mon, Feb 21, 2011 at 02:45:00PM +0100, Hans-Christian Egtvedt wrote:
> > > Spotted by Nicolas Ferre, you use the wrong struct here, should be
> > > tx_dws, not rx_dws.
> >
> > Apologies, here's a patch to fix it up.
>
> Is anyone able to take this for the next merge?
>
> Jamie
>
> >
> > Jamie
> >
> > 8<--------
> >
> > From 9068d500450ad6f5189b9a71463851349700c505 Mon Sep 17 00:00:00 2001
> > From: Jamie Iles <[email protected]>
> > Date: Mon, 21 Feb 2011 14:38:32 +0000
> > Subject: [PATCH] avr32: at32ap700x: fix typo in DMA master configuration
> >
> > Commit 4aa5f366431fe (avr32: at32ap700x: specify DMA src and dst
> > masters) specified the masters for the ac97c playback device
> > but incorrectly set them in the capture slave information rather
> > than playback.
> >
> > Cc: Hans-Christian Egtvedt <[email protected]>
> > Cc: Dan Williams <[email protected]>
> > Signed-off-by: Jamie Iles <[email protected]>
> > ---
> > arch/avr32/mach-at32ap/at32ap700x.c | 4 ++--
> > 1 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c
> > index 2747cde..4635c7c 100644
> > --- a/arch/avr32/mach-at32ap/at32ap700x.c
> > +++ b/arch/avr32/mach-at32ap/at32ap700x.c
> > @@ -2058,8 +2058,8 @@ at32_add_device_ac97c(unsigned int id, struct ac97c_platform_data *data,
> > tx_dws->reg_width = DW_DMA_SLAVE_WIDTH_16BIT;
> > tx_dws->cfg_hi = DWC_CFGH_DST_PER(4);
> > tx_dws->cfg_lo &= ~(DWC_CFGL_HS_DST_POL | DWC_CFGL_HS_SRC_POL);
> > - rx_dws->src_master = 0;
> > - rx_dws->dst_master = 1;
> > + tx_dws->src_master = 0;
> > + tx_dws->dst_master = 1;
> > }
> >
> > if (platform_device_add_data(pdev, data,
> > --
> > 1.7.4
> >
Looks good to me,

Acked-By: Vinod Koul <[email protected]>

Dan, please put this into you next queue as well

--
~Vinod