Benjamin Herrenschmidt <b...@kernel.crashing.org> writes:

> We don't initialize it, we don't use it, remove it.
>
> We can bring it back if we ever wish to have support for devices
> who have smaller than 32-bit DMA limitations but I don't think
> we care much anymore.
>
> Signed-off-by: Benjamin Herrenschmidt <b...@kernel.crashing.org>
> ---
>  arch/powerpc/Kconfig      |    2 +-
>  arch/powerpc/kernel/dma.c |   10 +---------
>  2 files changed, 2 insertions(+), 10 deletions(-)
>
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index 22b0940..4efbfba 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -712,7 +712,7 @@ config ISA
>  
>  config ZONE_DMA
>       bool
> -     default y
> +     default n
>  
>  config NEED_DMA_MAP_STATE
>       def_bool (PPC64 || NOT_COHERENT_CACHE)
> diff --git a/arch/powerpc/kernel/dma.c b/arch/powerpc/kernel/dma.c
> index e24e0ae..6306d4e 100644
> --- a/arch/powerpc/kernel/dma.c
> +++ b/arch/powerpc/kernel/dma.c
> @@ -63,16 +63,8 @@ void *dma_direct_alloc_coherent(struct device *dev, size_t 
> size,
>               return NULL;
>       }
>  
> -     switch (zone) {
> -     case ZONE_DMA:
> -             flag |= GFP_DMA;
> -             break;
> -#ifdef CONFIG_ZONE_DMA32
> -     case ZONE_DMA32:
> +     if (zone == ZONE_DMA32)
>               flag |= GFP_DMA32;
> -             break;
> -#endif
> -     };
>  

Why not do it also for DMA32 as below. We call limit_zone_pfn() only for few
platforms. They can select ZONE_DMA32. Everywhere else ZONE_DMA32 is
same as ZONE_NORMAL ? So instead of having confusing output for
show_mem(), we now have


Node 0 Normal: 6*64kB (UM) 566*128kB (UEM) 367*256kB (UM) 185*512kB 
(UM)59*1024kB (UEM) 11*2048kB (UM) 4*4096kB (UM) 3*8192kB (UEM) 4016*16384kB

Node 1 Normal: 42*64kB (UEM) 14*128kB (UEM) 10*256kB (UM) 2*512kB (UM) 6*1024kB 
(UM) 7*2048kB (UEM) 5*4096kB (UM) 2*8192kB (U) 3644*16384kB (MR) =

diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 38fe9c5409be..3a448cdaa22f 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -290,7 +290,7 @@ config PPC_EMULATE_SSTEP
 
 config ZONE_DMA32
        bool
-       default y if PPC64
+       default n
 
 source "init/Kconfig"
 
diff --git a/arch/powerpc/kernel/dma.c b/arch/powerpc/kernel/dma.c
index 03511968a9c6..253222ddb308 100644
--- a/arch/powerpc/kernel/dma.c
+++ b/arch/powerpc/kernel/dma.c
@@ -71,6 +71,11 @@ void *dma_direct_alloc_coherent(struct device *dev, size_t 
size,
        }
 
        switch (zone) {
+#ifdef CONFIG_ZONE_DMA
+       case ZONE_DMA:
+               flag |= GFP_DMA;
+               break;
+#endif
 #ifdef CONFIG_ZONE_DMA32
        case ZONE_DMA32:
                flag |= GFP_DMA32;

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to