[PATCH 13/22] nds32: use generic dma_noncoherent_ops

Greentime Hu green.hu at gmail.com
Tue Apr 24 18:43:43 PDT 2018


2018-04-25 3:16 GMT+08:00 Christoph Hellwig <hch at lst.de>:
> Hi Greentime,
>
> thanks for testing the patch!
>
> It looks like nds32 doesn't have a buildbot yet, so this code didn't
> even get syntax checkin, sorry.
>
> Below is the incremental fixes based on this thread.
>
> Can you check if my tree works if you just revert the
> "nds32: use generic dma_noncoherent_ops" commit?
>
> diff --git a/arch/nds32/kernel/dma.c b/arch/nds32/kernel/dma.c
> index 688f1a03dee6..48018275e7f4 100644
> --- a/arch/nds32/kernel/dma.c
> +++ b/arch/nds32/kernel/dma.c
> @@ -330,7 +330,7 @@ void arch_sync_dma_for_device(struct device *dev, phys_addr_t paddr,
>         void *addr = kmap_atomic_pfn(PHYS_PFN(paddr));
>         unsigned long start = (unsigned long)addr;
>
> -       switch (direction) {
> +       switch (dir) {
>         case DMA_FROM_DEVICE:
>                 break;
>         case DMA_TO_DEVICE:
> @@ -350,12 +350,12 @@ void arch_sync_dma_for_cpu(struct device *dev, phys_addr_t paddr,
>         void *addr = kmap_atomic_pfn(PHYS_PFN(paddr));
>         unsigned long start = (unsigned long)addr;
>
> -       switch (direction) {
> +       switch (dir) {
>         case DMA_TO_DEVICE:
>                 break;
>         case DMA_FROM_DEVICE:
>         case DMA_BIDIRECTIONAL:
> -               cpu_dma_inval_range(start, end);
> +               cpu_dma_inval_range(start, start + size);
>                 break;
>         default:
>                 BUG();

Hi Crhistoph,

The ftmac100 works if I revert this commit.

commit de46b9ba5298aafc47284735a4f21baa8e4ed4b7
Author: Greentime Hu <greentime at andestech.com>
Date:   Wed Apr 25 09:33:51 2018 +0800

    Revert "nds32: use generic dma_noncoherent_ops"

    This reverts commit 0489ce952072e7542456e0d962437062916ce0df.



More information about the linux-arm-kernel mailing list