[PATCH 3/3] ARM: S3C64XX: Stop and flush requests on freeing

Jassi Brar jassisinghbrar at gmail.com
Sun Aug 15 09:28:41 EDT 2010


On Mon, May 31, 2010 at 8:34 PM, Maurus Cuelenaere
<mcuelenaere at gmail.com> wrote:
> When a DMA channel is freed, its pending requests should be flushed and the
> channel should be halted. This patch ensures that happens.
>
> Signed-off-by: Maurus Cuelenaere <mcuelenaere at gmail.com>
> ---
>  arch/arm/mach-s3c64xx/dma.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/mach-s3c64xx/dma.c b/arch/arm/mach-s3c64xx/dma.c
> index 1fd9d0c..e1f22af 100644
> --- a/arch/arm/mach-s3c64xx/dma.c
> +++ b/arch/arm/mach-s3c64xx/dma.c
> @@ -560,7 +560,8 @@ int s3c2410_dma_free(unsigned int channel, struct s3c2410_dma_client *client)
>                       channel, chan->client, client);
>        }
>
> -       /* sort out stopping and freeing the channel */
> +       s3c64xx_dma_flush(chan);
> +       s3c64xx_dma_stop(chan);

I think, the order should be reverted.



More information about the linux-arm-kernel mailing list