linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] microblaze: Enable CMA
@ 2020-01-17  8:03 Michal Simek
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Michal Simek @ 2020-01-17  8:03 UTC (permalink / raw)
  To: linux-kernel, monstr, michal.simek, git, Christoph Hellwig
  Cc: Paul Burton, Arnd Bergmann, Mike Rapoport, Manjukumar Matha,
	Borislav Petkov, Linus Walleij, linux-mips, Thomas Gleixner,
	Geert Uytterhoeven, Catalin Marinas, linux-riscv, linux-arch,
	linux-s390, Palmer Dabbelt, x86, Guo Ren, Kate Stewart,
	Wesley Terpstra, Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley,
	Andrew Morton, Max Filippov, linux-xtensa, H. Peter Anvin,
	Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Manish Narani, Ingo Molnar, Waiman Long, linux-arm-kernel,
	Albert Ou, Vasily Gorbik, James Hogan, Masahiro Yamada,
	Heiko Carstens, Guo Ren

Hi,

the patchset enable CMA on Microblaze. Based on Christoph request I have
created the first patch which makes dma-continugous.h mandatory for all
archs before Microblaze wiring.

Thanks,
Michal

Changes in v2:
- New patch suggested by Christoph
- Align commit message
- Remove adding dma-contigous.h via Kbuild because it is done by previous
  patch

Michal Simek (2):
  asm-generic: Make dma-contiguous.h a mandatory include/asm header
  microblaze: Wire CMA allocator

 arch/arm64/include/asm/Kbuild         | 1 -
 arch/csky/include/asm/Kbuild          | 1 -
 arch/microblaze/Kconfig               | 1 +
 arch/microblaze/configs/mmu_defconfig | 2 ++
 arch/microblaze/mm/init.c             | 4 ++++
 arch/mips/include/asm/Kbuild          | 1 -
 arch/riscv/include/asm/Kbuild         | 1 -
 arch/s390/include/asm/Kbuild          | 1 -
 arch/x86/include/asm/Kbuild           | 1 -
 arch/xtensa/include/asm/Kbuild        | 1 -
 include/asm-generic/Kbuild            | 1 +
 11 files changed, 8 insertions(+), 7 deletions(-)

-- 
2.25.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-17  8:03 [PATCH v2 0/2] microblaze: Enable CMA Michal Simek
@ 2020-01-17  8:03 ` Michal Simek
  2020-01-17  8:04   ` Christoph Hellwig
                     ` (5 more replies)
  2020-01-17  8:03 ` [PATCH v2 2/2] microblaze: Wire CMA allocator Michal Simek
  2020-02-04 10:30 ` [PATCH v2 0/2] microblaze: Enable CMA Michal Simek
  2 siblings, 6 replies; 12+ messages in thread
From: Michal Simek @ 2020-01-17  8:03 UTC (permalink / raw)
  To: linux-kernel, monstr, michal.simek, git, Christoph Hellwig
  Cc: Christoph Hellwig, Paul Burton, Arnd Bergmann, Borislav Petkov,
	linux-mips, Thomas Gleixner, Catalin Marinas, linux-riscv,
	linux-arch, linux-s390, Palmer Dabbelt, x86, Guo Ren,
	Kate Stewart, Wesley Terpstra, Greg Kroah-Hartman, Ralf Baechle,
	Paul Walmsley, Max Filippov, linux-xtensa, H. Peter Anvin,
	Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, linux-arm-kernel, Albert Ou,
	Vasily Gorbik, James Hogan, Masahiro Yamada, Heiko Carstens

dma-continuguous.h is generic for all architectures except arm32 which has
its own version.

Similar change was done for msi.h by commit a1b39bae16a6
("asm-generic: Make msi.h a mandatory include/asm header")

Suggested-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

Changes in v2:
- New patch suggested by Christoph

 arch/arm64/include/asm/Kbuild  | 1 -
 arch/csky/include/asm/Kbuild   | 1 -
 arch/mips/include/asm/Kbuild   | 1 -
 arch/riscv/include/asm/Kbuild  | 1 -
 arch/s390/include/asm/Kbuild   | 1 -
 arch/x86/include/asm/Kbuild    | 1 -
 arch/xtensa/include/asm/Kbuild | 1 -
 include/asm-generic/Kbuild     | 1 +
 8 files changed, 1 insertion(+), 7 deletions(-)

diff --git a/arch/arm64/include/asm/Kbuild b/arch/arm64/include/asm/Kbuild
index bd23f87d6c55..d3077c991962 100644
--- a/arch/arm64/include/asm/Kbuild
+++ b/arch/arm64/include/asm/Kbuild
@@ -3,7 +3,6 @@ generic-y += bugs.h
 generic-y += delay.h
 generic-y += div64.h
 generic-y += dma.h
-generic-y += dma-contiguous.h
 generic-y += dma-mapping.h
 generic-y += early_ioremap.h
 generic-y += emergency-restart.h
diff --git a/arch/csky/include/asm/Kbuild b/arch/csky/include/asm/Kbuild
index 4d4754e6bf89..bc15a26c782f 100644
--- a/arch/csky/include/asm/Kbuild
+++ b/arch/csky/include/asm/Kbuild
@@ -7,7 +7,6 @@ generic-y += delay.h
 generic-y += device.h
 generic-y += div64.h
 generic-y += dma.h
-generic-y += dma-contiguous.h
 generic-y += dma-mapping.h
 generic-y += emergency-restart.h
 generic-y += exec.h
diff --git a/arch/mips/include/asm/Kbuild b/arch/mips/include/asm/Kbuild
index 61b0fc2026e6..179403ae5837 100644
--- a/arch/mips/include/asm/Kbuild
+++ b/arch/mips/include/asm/Kbuild
@@ -6,7 +6,6 @@ generated-y += syscall_table_64_n64.h
 generated-y += syscall_table_64_o32.h
 generic-y += current.h
 generic-y += device.h
-generic-y += dma-contiguous.h
 generic-y += emergency-restart.h
 generic-y += export.h
 generic-y += irq_work.h
diff --git a/arch/riscv/include/asm/Kbuild b/arch/riscv/include/asm/Kbuild
index 1efaeddf1e4b..ec0ca8c6ab64 100644
--- a/arch/riscv/include/asm/Kbuild
+++ b/arch/riscv/include/asm/Kbuild
@@ -7,7 +7,6 @@ generic-y += div64.h
 generic-y += extable.h
 generic-y += flat.h
 generic-y += dma.h
-generic-y += dma-contiguous.h
 generic-y += dma-mapping.h
 generic-y += emergency-restart.h
 generic-y += exec.h
diff --git a/arch/s390/include/asm/Kbuild b/arch/s390/include/asm/Kbuild
index 2531f673f099..1832ae6442ef 100644
--- a/arch/s390/include/asm/Kbuild
+++ b/arch/s390/include/asm/Kbuild
@@ -7,7 +7,6 @@ generated-y += unistd_nr.h
 generic-y += asm-offsets.h
 generic-y += cacheflush.h
 generic-y += device.h
-generic-y += dma-contiguous.h
 generic-y += dma-mapping.h
 generic-y += div64.h
 generic-y += emergency-restart.h
diff --git a/arch/x86/include/asm/Kbuild b/arch/x86/include/asm/Kbuild
index 8b52bc5ddf69..ea34464d6221 100644
--- a/arch/x86/include/asm/Kbuild
+++ b/arch/x86/include/asm/Kbuild
@@ -7,7 +7,6 @@ generated-y += unistd_32_ia32.h
 generated-y += unistd_64_x32.h
 generated-y += xen-hypercalls.h
 
-generic-y += dma-contiguous.h
 generic-y += early_ioremap.h
 generic-y += export.h
 generic-y += mcs_spinlock.h
diff --git a/arch/xtensa/include/asm/Kbuild b/arch/xtensa/include/asm/Kbuild
index 3acc31e55e02..271917c24b7f 100644
--- a/arch/xtensa/include/asm/Kbuild
+++ b/arch/xtensa/include/asm/Kbuild
@@ -4,7 +4,6 @@ generic-y += bug.h
 generic-y += compat.h
 generic-y += device.h
 generic-y += div64.h
-generic-y += dma-contiguous.h
 generic-y += dma-mapping.h
 generic-y += emergency-restart.h
 generic-y += exec.h
diff --git a/include/asm-generic/Kbuild b/include/asm-generic/Kbuild
index ddfee1bd9dc1..cd17d50697cc 100644
--- a/include/asm-generic/Kbuild
+++ b/include/asm-generic/Kbuild
@@ -4,5 +4,6 @@
 # (This file is not included when SRCARCH=um since UML borrows several
 # asm headers from the host architecutre.)
 
+mandatory-y += dma-contiguous.h
 mandatory-y += msi.h
 mandatory-y += simd.h
-- 
2.25.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v2 2/2] microblaze: Wire CMA allocator
  2020-01-17  8:03 [PATCH v2 0/2] microblaze: Enable CMA Michal Simek
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
@ 2020-01-17  8:03 ` Michal Simek
  2020-01-17  8:05   ` Christoph Hellwig
  2020-02-04 10:30 ` [PATCH v2 0/2] microblaze: Enable CMA Michal Simek
  2 siblings, 1 reply; 12+ messages in thread
From: Michal Simek @ 2020-01-17  8:03 UTC (permalink / raw)
  To: linux-kernel, monstr, michal.simek, git, Christoph Hellwig
  Cc: Manish Narani, Mike Rapoport, Manjukumar Matha, Heiko Carstens,
	Linus Walleij, Guo Ren, Geert Uytterhoeven, Andrew Morton

Based on commit 04e3543e228f ("microblaze: use the generic dma coherent
remap allocator")
CMA can be easily enabled by calling dma_contiguous_reserve() at the end of
mmu_init(). High limit is end of lowmem space which is completely unused at
this point of time.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

Changes in v2:
- Align commit message
- Remove adding dma-contigous.h via Kbuild because it is done by previous
  patch

Christoph: Can you please review this patch?
I have used this cma allocator
https://lwn.net/Articles/485193/
also together with allocating and freeing via debugfs interface.

If there is any other good way how to test cma please let me know.

---
 arch/microblaze/Kconfig               | 1 +
 arch/microblaze/configs/mmu_defconfig | 2 ++
 arch/microblaze/mm/init.c             | 4 ++++
 3 files changed, 7 insertions(+)

diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
index 5f46ebe7bfe3..e6289294e7fc 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -27,6 +27,7 @@ config MICROBLAZE
 	select HAVE_ARCH_HASH
 	select HAVE_ARCH_KGDB
 	select HAVE_DEBUG_KMEMLEAK
+	select HAVE_DMA_CONTIGUOUS
 	select HAVE_DYNAMIC_FTRACE
 	select HAVE_FTRACE_MCOUNT_RECORD
 	select HAVE_FUNCTION_GRAPH_TRACER
diff --git a/arch/microblaze/configs/mmu_defconfig b/arch/microblaze/configs/mmu_defconfig
index dd63766c2d19..9b8a50f30662 100644
--- a/arch/microblaze/configs/mmu_defconfig
+++ b/arch/microblaze/configs/mmu_defconfig
@@ -26,6 +26,7 @@ CONFIG_MODULE_UNLOAD=y
 # CONFIG_BLK_DEV_BSG is not set
 CONFIG_PARTITION_ADVANCED=y
 # CONFIG_EFI_PARTITION is not set
+CONFIG_CMA=y
 CONFIG_NET=y
 CONFIG_PACKET=y
 CONFIG_UNIX=y
@@ -82,6 +83,7 @@ CONFIG_NFS_FS=y
 CONFIG_CIFS=y
 CONFIG_CIFS_STATS2=y
 CONFIG_ENCRYPTED_KEYS=y
+CONFIG_DMA_CMA=y
 CONFIG_DEBUG_INFO=y
 CONFIG_KGDB=y
 CONFIG_KGDB_TESTS=y
diff --git a/arch/microblaze/mm/init.c b/arch/microblaze/mm/init.c
index 050fc621c920..1056f1674065 100644
--- a/arch/microblaze/mm/init.c
+++ b/arch/microblaze/mm/init.c
@@ -7,6 +7,7 @@
  * for more details.
  */
 
+#include <linux/dma-contiguous.h>
 #include <linux/memblock.h>
 #include <linux/init.h>
 #include <linux/kernel.h>
@@ -345,6 +346,9 @@ asmlinkage void __init mmu_init(void)
 	/* This will also cause that unflatten device tree will be allocated
 	 * inside 768MB limit */
 	memblock_set_current_limit(memory_start + lowmem_size - 1);
+
+	/* CMA initialization */
+	dma_contiguous_reserve(memory_start + lowmem_size - 1);
 }
 
 /* This is only called until mem_init is done. */
-- 
2.25.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
@ 2020-01-17  8:04   ` Christoph Hellwig
  2020-01-17  9:43   ` Thomas Gleixner
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Christoph Hellwig @ 2020-01-17  8:04 UTC (permalink / raw)
  To: Michal Simek
  Cc: linux-kernel, monstr, git, Christoph Hellwig, Christoph Hellwig,
	Paul Burton, Arnd Bergmann, Borislav Petkov, linux-mips,
	Thomas Gleixner, Catalin Marinas, linux-riscv, linux-arch,
	linux-s390, Palmer Dabbelt, x86, Guo Ren, Kate Stewart,
	Wesley Terpstra, Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley,
	Max Filippov, linux-xtensa, H. Peter Anvin,
	Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, linux-arm-kernel, Albert Ou,
	Vasily Gorbik, James Hogan, Masahiro Yamada, Heiko Carstens

On Fri, Jan 17, 2020 at 09:03:31AM +0100, Michal Simek wrote:
> dma-continuguous.h is generic for all architectures except arm32 which has
> its own version.
> 
> Similar change was done for msi.h by commit a1b39bae16a6
> ("asm-generic: Make msi.h a mandatory include/asm header")
> 
> Suggested-by: Christoph Hellwig <hch@infradead.org>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>

Looks good,

Reviewed-by: Christoph Hellwig <hch@lst.de>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] microblaze: Wire CMA allocator
  2020-01-17  8:03 ` [PATCH v2 2/2] microblaze: Wire CMA allocator Michal Simek
@ 2020-01-17  8:05   ` Christoph Hellwig
  0 siblings, 0 replies; 12+ messages in thread
From: Christoph Hellwig @ 2020-01-17  8:05 UTC (permalink / raw)
  To: Michal Simek
  Cc: linux-kernel, monstr, git, Christoph Hellwig, Manish Narani,
	Mike Rapoport, Manjukumar Matha, Heiko Carstens, Linus Walleij,
	Guo Ren, Geert Uytterhoeven, Andrew Morton

On Fri, Jan 17, 2020 at 09:03:32AM +0100, Michal Simek wrote:
> Based on commit 04e3543e228f ("microblaze: use the generic dma coherent
> remap allocator")
> CMA can be easily enabled by calling dma_contiguous_reserve() at the end of
> mmu_init(). High limit is end of lowmem space which is completely unused at
> this point of time.
> 
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>

Looks good,

Reviewed-by: Christoph Hellwig <hch@lst.de>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
  2020-01-17  8:04   ` Christoph Hellwig
@ 2020-01-17  9:43   ` Thomas Gleixner
  2020-01-17 10:10   ` Arnd Bergmann
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Thomas Gleixner @ 2020-01-17  9:43 UTC (permalink / raw)
  To: Michal Simek, linux-kernel, monstr, michal.simek, git, Christoph Hellwig
  Cc: Christoph Hellwig, Paul Burton, Arnd Bergmann, Borislav Petkov,
	linux-mips, Catalin Marinas, linux-riscv, linux-arch, linux-s390,
	Palmer Dabbelt, x86, Guo Ren, Kate Stewart, Wesley Terpstra,
	Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley, Max Filippov,
	linux-xtensa, H. Peter Anvin, Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, linux-arm-kernel, Albert Ou,
	Vasily Gorbik, James Hogan, Masahiro Yamada, Heiko Carstens

Michal Simek <michal.simek@xilinx.com> writes:

> dma-continuguous.h is generic for all architectures except arm32 which has
> its own version.
>
> Similar change was done for msi.h by commit a1b39bae16a6
> ("asm-generic: Make msi.h a mandatory include/asm header")
>
> Suggested-by: Christoph Hellwig <hch@infradead.org>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>

Acked-by: Thomas Gleixner <tglx@linutronix.de>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
  2020-01-17  8:04   ` Christoph Hellwig
  2020-01-17  9:43   ` Thomas Gleixner
@ 2020-01-17 10:10   ` Arnd Bergmann
  2020-01-17 11:23   ` Arnd Bergmann
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Arnd Bergmann @ 2020-01-17 10:10 UTC (permalink / raw)
  To: Michal Simek
  Cc: linux-kernel, Michal Simek, git, Christoph Hellwig,
	Christoph Hellwig, Paul Burton, Borislav Petkov,
	open list:BROADCOM NVRAM DRIVER, Thomas Gleixner,
	Catalin Marinas, linux-riscv, linux-arch, linux-s390,
	Palmer Dabbelt, the arch/x86 maintainers, Guo Ren, Kate Stewart,
	Wesley Terpstra, Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley,
	Max Filippov, linux-xtensa, H. Peter Anvin,
	Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, Linux ARM, Albert Ou, Vasily Gorbik,
	James Hogan, Masahiro Yamada, Heiko Carstens

On Fri, Jan 17, 2020 at 9:03 AM Michal Simek <michal.simek@xilinx.com> wrote:
>
> dma-continuguous.h is generic for all architectures except arm32 which has
> its own version.
>
> Similar change was done for msi.h by commit a1b39bae16a6
> ("asm-generic: Make msi.h a mandatory include/asm header")
>
> Suggested-by: Christoph Hellwig <hch@infradead.org>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
> ---
>
> Changes in v2:
> - New patch suggested by Christoph

Acked-by: Arnd Bergmann <arnd@arndb.de>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
                     ` (2 preceding siblings ...)
  2020-01-17 10:10   ` Arnd Bergmann
@ 2020-01-17 11:23   ` Arnd Bergmann
  2020-01-17 20:41   ` Paul Walmsley
  2020-01-21 15:43   ` Masahiro Yamada
  5 siblings, 0 replies; 12+ messages in thread
From: Arnd Bergmann @ 2020-01-17 11:23 UTC (permalink / raw)
  To: Michal Simek
  Cc: linux-kernel, Michal Simek, git, Christoph Hellwig,
	Christoph Hellwig, Paul Burton, Borislav Petkov,
	open list:BROADCOM NVRAM DRIVER, Thomas Gleixner,
	Catalin Marinas, linux-riscv, linux-arch, linux-s390,
	Palmer Dabbelt, the arch/x86 maintainers, Guo Ren, Kate Stewart,
	Wesley Terpstra, Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley,
	Max Filippov, linux-xtensa, H. Peter Anvin,
	Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, Linux ARM, Albert Ou, Vasily Gorbik,
	James Hogan, Masahiro Yamada, Heiko Carstens

On Fri, Jan 17, 2020 at 9:03 AM Michal Simek <michal.simek@xilinx.com> wrote:
>
> dma-continuguous.h is generic for all architectures except arm32 which has
> its own version.
>
> Similar change was done for msi.h by commit a1b39bae16a6
> ("asm-generic: Make msi.h a mandatory include/asm header")
>
> Suggested-by: Christoph Hellwig <hch@infradead.org>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
> ---

Acked-by: Arnd Bergmann <arnd@arndb.de>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
                     ` (3 preceding siblings ...)
  2020-01-17 11:23   ` Arnd Bergmann
@ 2020-01-17 20:41   ` Paul Walmsley
  2020-01-21 15:43   ` Masahiro Yamada
  5 siblings, 0 replies; 12+ messages in thread
From: Paul Walmsley @ 2020-01-17 20:41 UTC (permalink / raw)
  To: Michal Simek
  Cc: linux-kernel, monstr, git, Christoph Hellwig, Christoph Hellwig,
	Paul Burton, Arnd Bergmann, Borislav Petkov, linux-mips,
	Thomas Gleixner, Catalin Marinas, linux-riscv, linux-arch,
	linux-s390, Palmer Dabbelt, x86, Guo Ren, Kate Stewart,
	Wesley Terpstra, Greg Kroah-Hartman, Ralf Baechle, Max Filippov,
	linux-xtensa, H. Peter Anvin, Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, linux-arm-kernel, Albert Ou,
	Vasily Gorbik, James Hogan, Masahiro Yamada, Heiko Carstens

On Fri, 17 Jan 2020, Michal Simek wrote:

> dma-continuguous.h is generic for all architectures except arm32 which has
> its own version.
> 
> Similar change was done for msi.h by commit a1b39bae16a6
> ("asm-generic: Make msi.h a mandatory include/asm header")
> 
> Suggested-by: Christoph Hellwig <hch@infradead.org>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>

Acked-by: Paul Walmsley <paul.walmsley@sifive.com> # for arch/riscv


- Paul

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
                     ` (4 preceding siblings ...)
  2020-01-17 20:41   ` Paul Walmsley
@ 2020-01-21 15:43   ` Masahiro Yamada
  2020-01-22  6:47     ` Michal Simek
  5 siblings, 1 reply; 12+ messages in thread
From: Masahiro Yamada @ 2020-01-21 15:43 UTC (permalink / raw)
  To: Michal Simek
  Cc: Linux Kernel Mailing List, Michal Simek, git, Christoph Hellwig,
	Christoph Hellwig, Paul Burton, Arnd Bergmann, Borislav Petkov,
	linux-mips, Thomas Gleixner, Catalin Marinas,
	open list:SIFIVE DRIVERS, linux-arch, linux-s390, Palmer Dabbelt,
	X86 ML, Guo Ren, Kate Stewart, Wesley Terpstra,
	Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley, Max Filippov,
	linux-xtensa, H. Peter Anvin, Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, linux-arm-kernel, Albert Ou,
	Vasily Gorbik, James Hogan, Heiko Carstens

Hi.

On Fri, Jan 17, 2020 at 5:03 PM Michal Simek <michal.simek@xilinx.com> wrote:
>
> dma-continuguous.h is generic for all architectures except arm32 which has
> its own version.



Currently, <asm/dma-contiguous.h> is present
for only architectures that select HAVE_DMA_CONTIGUOUS.

After this commit, the other architectures will end
up with generating the unused header.

That would not be a big deal, but
it could be mentioned in the commit message?



> Similar change was done for msi.h by commit a1b39bae16a6
> ("asm-generic: Make msi.h a mandatory include/asm header")
>
> Suggested-by: Christoph Hellwig <hch@infradead.org>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
> ---
>
> Changes in v2:
> - New patch suggested by Christoph
>
>  arch/arm64/include/asm/Kbuild  | 1 -
>  arch/csky/include/asm/Kbuild   | 1 -
>  arch/mips/include/asm/Kbuild   | 1 -
>  arch/riscv/include/asm/Kbuild  | 1 -
>  arch/s390/include/asm/Kbuild   | 1 -
>  arch/x86/include/asm/Kbuild    | 1 -
>  arch/xtensa/include/asm/Kbuild | 1 -
>
>  include/asm-generic/Kbuild     | 1 +
>  8 files changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/arch/arm64/include/asm/Kbuild b/arch/arm64/include/asm/Kbuild
> index bd23f87d6c55..d3077c991962 100644
> --- a/arch/arm64/include/asm/Kbuild
> +++ b/arch/arm64/include/asm/Kbuild
> @@ -3,7 +3,6 @@ generic-y += bugs.h
>  generic-y += delay.h
>  generic-y += div64.h
>  generic-y += dma.h
> -generic-y += dma-contiguous.h
>  generic-y += dma-mapping.h
>  generic-y += early_ioremap.h
>  generic-y += emergency-restart.h
> diff --git a/arch/csky/include/asm/Kbuild b/arch/csky/include/asm/Kbuild
> index 4d4754e6bf89..bc15a26c782f 100644
> --- a/arch/csky/include/asm/Kbuild
> +++ b/arch/csky/include/asm/Kbuild
> @@ -7,7 +7,6 @@ generic-y += delay.h
>  generic-y += device.h
>  generic-y += div64.h
>  generic-y += dma.h
> -generic-y += dma-contiguous.h
>  generic-y += dma-mapping.h
>  generic-y += emergency-restart.h
>  generic-y += exec.h
> diff --git a/arch/mips/include/asm/Kbuild b/arch/mips/include/asm/Kbuild
> index 61b0fc2026e6..179403ae5837 100644
> --- a/arch/mips/include/asm/Kbuild
> +++ b/arch/mips/include/asm/Kbuild
> @@ -6,7 +6,6 @@ generated-y += syscall_table_64_n64.h
>  generated-y += syscall_table_64_o32.h
>  generic-y += current.h
>  generic-y += device.h
> -generic-y += dma-contiguous.h
>  generic-y += emergency-restart.h
>  generic-y += export.h
>  generic-y += irq_work.h
> diff --git a/arch/riscv/include/asm/Kbuild b/arch/riscv/include/asm/Kbuild
> index 1efaeddf1e4b..ec0ca8c6ab64 100644
> --- a/arch/riscv/include/asm/Kbuild
> +++ b/arch/riscv/include/asm/Kbuild
> @@ -7,7 +7,6 @@ generic-y += div64.h
>  generic-y += extable.h
>  generic-y += flat.h
>  generic-y += dma.h
> -generic-y += dma-contiguous.h
>  generic-y += dma-mapping.h
>  generic-y += emergency-restart.h
>  generic-y += exec.h
> diff --git a/arch/s390/include/asm/Kbuild b/arch/s390/include/asm/Kbuild
> index 2531f673f099..1832ae6442ef 100644
> --- a/arch/s390/include/asm/Kbuild
> +++ b/arch/s390/include/asm/Kbuild
> @@ -7,7 +7,6 @@ generated-y += unistd_nr.h
>  generic-y += asm-offsets.h
>  generic-y += cacheflush.h
>  generic-y += device.h
> -generic-y += dma-contiguous.h
>  generic-y += dma-mapping.h
>  generic-y += div64.h
>  generic-y += emergency-restart.h
> diff --git a/arch/x86/include/asm/Kbuild b/arch/x86/include/asm/Kbuild
> index 8b52bc5ddf69..ea34464d6221 100644
> --- a/arch/x86/include/asm/Kbuild
> +++ b/arch/x86/include/asm/Kbuild
> @@ -7,7 +7,6 @@ generated-y += unistd_32_ia32.h
>  generated-y += unistd_64_x32.h
>  generated-y += xen-hypercalls.h
>
> -generic-y += dma-contiguous.h
>  generic-y += early_ioremap.h
>  generic-y += export.h
>  generic-y += mcs_spinlock.h
> diff --git a/arch/xtensa/include/asm/Kbuild b/arch/xtensa/include/asm/Kbuild
> index 3acc31e55e02..271917c24b7f 100644
> --- a/arch/xtensa/include/asm/Kbuild
> +++ b/arch/xtensa/include/asm/Kbuild
> @@ -4,7 +4,6 @@ generic-y += bug.h
>  generic-y += compat.h
>  generic-y += device.h
>  generic-y += div64.h
> -generic-y += dma-contiguous.h
>  generic-y += dma-mapping.h
>  generic-y += emergency-restart.h
>  generic-y += exec.h
> diff --git a/include/asm-generic/Kbuild b/include/asm-generic/Kbuild
> index ddfee1bd9dc1..cd17d50697cc 100644
> --- a/include/asm-generic/Kbuild
> +++ b/include/asm-generic/Kbuild
> @@ -4,5 +4,6 @@
>  # (This file is not included when SRCARCH=um since UML borrows several
>  # asm headers from the host architecutre.)
>
> +mandatory-y += dma-contiguous.h
>  mandatory-y += msi.h
>  mandatory-y += simd.h
> --
> 2.25.0
>


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header
  2020-01-21 15:43   ` Masahiro Yamada
@ 2020-01-22  6:47     ` Michal Simek
  0 siblings, 0 replies; 12+ messages in thread
From: Michal Simek @ 2020-01-22  6:47 UTC (permalink / raw)
  To: Masahiro Yamada, Michal Simek
  Cc: Linux Kernel Mailing List, git, Christoph Hellwig,
	Christoph Hellwig, Paul Burton, Arnd Bergmann, Borislav Petkov,
	linux-mips, Thomas Gleixner, Catalin Marinas,
	open list:SIFIVE DRIVERS, linux-arch, linux-s390, Palmer Dabbelt,
	X86 ML, Guo Ren, Kate Stewart, Wesley Terpstra,
	Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley, Max Filippov,
	linux-xtensa, H. Peter Anvin, Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Ingo Molnar, Waiman Long, linux-arm-kernel, Albert Ou,
	Vasily Gorbik, James Hogan, Heiko Carstens


[-- Attachment #1.1: Type: text/plain, Size: 935 bytes --]

On 21. 01. 20 16:43, Masahiro Yamada wrote:
> Hi.
> 
> On Fri, Jan 17, 2020 at 5:03 PM Michal Simek <michal.simek@xilinx.com> wrote:
>>
>> dma-continuguous.h is generic for all architectures except arm32 which has
>> its own version.
> 
> 
> 
> Currently, <asm/dma-contiguous.h> is present
> for only architectures that select HAVE_DMA_CONTIGUOUS.
> 
> After this commit, the other architectures will end
> up with generating the unused header.
> 
> That would not be a big deal, but
> it could be mentioned in the commit message?

I have not a problem with mentioning it but not sure if this was done in
past.

Thanks,
Michal


-- 
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 0/2] microblaze: Enable CMA
  2020-01-17  8:03 [PATCH v2 0/2] microblaze: Enable CMA Michal Simek
  2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
  2020-01-17  8:03 ` [PATCH v2 2/2] microblaze: Wire CMA allocator Michal Simek
@ 2020-02-04 10:30 ` Michal Simek
  2 siblings, 0 replies; 12+ messages in thread
From: Michal Simek @ 2020-02-04 10:30 UTC (permalink / raw)
  To: Michal Simek, linux-kernel, monstr, git, Christoph Hellwig
  Cc: Paul Burton, Arnd Bergmann, Mike Rapoport, Manjukumar Matha,
	Borislav Petkov, Linus Walleij, linux-mips, Thomas Gleixner,
	Geert Uytterhoeven, Catalin Marinas, linux-riscv, linux-arch,
	linux-s390, Palmer Dabbelt, x86, Guo Ren, Kate Stewart,
	Wesley Terpstra, Greg Kroah-Hartman, Ralf Baechle, Paul Walmsley,
	Andrew Morton, Max Filippov, linux-xtensa, H. Peter Anvin,
	Peter Zijlstra (Intel),
	Will Deacon, Christian Borntraeger, Deepa Dinamani, Chris Zankel,
	Manish Narani, Ingo Molnar, Waiman Long, linux-arm-kernel,
	Albert Ou, Vasily Gorbik, James Hogan, Masahiro Yamada,
	Heiko Carstens, Guo Ren


[-- Attachment #1.1: Type: text/plain, Size: 1474 bytes --]

On 17. 01. 20 9:03, Michal Simek wrote:
> Hi,
> 
> the patchset enable CMA on Microblaze. Based on Christoph request I have
> created the first patch which makes dma-continugous.h mandatory for all
> archs before Microblaze wiring.
> 
> Thanks,
> Michal
> 
> Changes in v2:
> - New patch suggested by Christoph
> - Align commit message
> - Remove adding dma-contigous.h via Kbuild because it is done by previous
>   patch
> 
> Michal Simek (2):
>   asm-generic: Make dma-contiguous.h a mandatory include/asm header
>   microblaze: Wire CMA allocator
> 
>  arch/arm64/include/asm/Kbuild         | 1 -
>  arch/csky/include/asm/Kbuild          | 1 -
>  arch/microblaze/Kconfig               | 1 +
>  arch/microblaze/configs/mmu_defconfig | 2 ++
>  arch/microblaze/mm/init.c             | 4 ++++
>  arch/mips/include/asm/Kbuild          | 1 -
>  arch/riscv/include/asm/Kbuild         | 1 -
>  arch/s390/include/asm/Kbuild          | 1 -
>  arch/x86/include/asm/Kbuild           | 1 -
>  arch/xtensa/include/asm/Kbuild        | 1 -
>  include/asm-generic/Kbuild            | 1 +
>  11 files changed, 8 insertions(+), 7 deletions(-)
> 

Applied.

Thanks,
Michal
-- 
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2020-02-04 10:31 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-17  8:03 [PATCH v2 0/2] microblaze: Enable CMA Michal Simek
2020-01-17  8:03 ` [PATCH v2 1/2] asm-generic: Make dma-contiguous.h a mandatory include/asm header Michal Simek
2020-01-17  8:04   ` Christoph Hellwig
2020-01-17  9:43   ` Thomas Gleixner
2020-01-17 10:10   ` Arnd Bergmann
2020-01-17 11:23   ` Arnd Bergmann
2020-01-17 20:41   ` Paul Walmsley
2020-01-21 15:43   ` Masahiro Yamada
2020-01-22  6:47     ` Michal Simek
2020-01-17  8:03 ` [PATCH v2 2/2] microblaze: Wire CMA allocator Michal Simek
2020-01-17  8:05   ` Christoph Hellwig
2020-02-04 10:30 ` [PATCH v2 0/2] microblaze: Enable CMA Michal Simek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).