[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191031154759.GA7162@lst.de>
Date: Thu, 31 Oct 2019 16:47:59 +0100
From: Christoph Hellwig <hch@....de>
To: Nicolas Saenz Julienne <nsaenzjulienne@...e.de>
Cc: Christoph Hellwig <hch@....de>,
Marek Szyprowski <m.szyprowski@...sung.com>,
Robin Murphy <robin.murphy@....com>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
Michael Ellerman <mpe@...erman.id.au>,
Heiko Carstens <heiko.carstens@...ibm.com>,
Vasily Gorbik <gor@...ux.ibm.com>,
Christian Borntraeger <borntraeger@...ibm.com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linuxppc-dev@...ts.ozlabs.org, linux-s390@...r.kernel.org,
iommu@...ts.linux-foundation.org
Subject: Re: [PATCH] dma/direct: turn ARCH_ZONE_DMA_BITS into a variable
On Thu, Oct 31, 2019 at 04:28:37PM +0100, Nicolas Saenz Julienne wrote:
> Some architectures, notably ARM, are interested in tweaking this
> depending on their runtime DMA addressing limitations.
>
> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@...e.de>
> ---
>
> Changes since RFC:
> - Rebased to v5.4-rc6, fixed arm64 code.
>
> NOTE: This will only apply to linux-next, where
missing end of the sentence. But only applying to linux-next isn't
going to help anyone..
> diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c
> index 45c00a54909c..f716ea634804 100644
> --- a/arch/arm64/mm/init.c
> +++ b/arch/arm64/mm/init.c
> @@ -20,6 +20,7 @@
> #include <linux/sort.h>
> #include <linux/of.h>
> #include <linux/of_fdt.h>
> +#include <linux/dma-direct.h>
> #include <linux/dma-mapping.h>
> #include <linux/dma-contiguous.h>
> #include <linux/efi.h>
> @@ -41,6 +42,8 @@
> #include <asm/tlb.h>
> #include <asm/alternative.h>
>
> +#define ARM64_ZONE_DMA_BITS 30
> +
> /*
> * We need to be able to catch inadvertent references to memstart_addr
> * that occur (potentially in generic code) before arm64_memblock_init()
> @@ -424,6 +427,8 @@ void __init arm64_memblock_init(void)
> else
> arm64_dma_phys_limit = PHYS_MASK + 1;
>
> + zone_dma_bits = ARM64_ZONE_DMA_BITS;
> +
> reserve_crashkernel();
This actually adds a new limit, as there wasn't one before for arm64.
Powered by blists - more mailing lists