From: Christoph Hellwig <hch@lst.de>
To: iommu@lists.linux-foundation.org
Cc: Konrad Rzeszutek Wilk <konrad@darnok.org>,
linux-alpha@vger.kernel.org, linux-snps-arc@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-c6x-dev@linux-c6x.org, linux-cris-kernel@axis.com,
linux-hexagon@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-m68k@lists.linux-m68k.org, linux-metag@vger.kernel.org,
Michal Simek <monstr@monstr.eu>,
linux-mips@linux-mips.org, linux-parisc@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, patches@groups.riscv.org,
linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
sparclinux@vger.kernel.org, Guan Xuetao <gxt@mprc.pku.edu.cn>,
x86@kernel.org, linux-arch@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: [PATCH 23/34] dma-mapping: provide a generic asm/dma-mapping.h
Date: Fri, 12 Jan 2018 09:42:21 +0100 [thread overview]
Message-ID: <20180112084232.2857-24-hch@lst.de> (raw)
In-Reply-To: <20180112084232.2857-1-hch@lst.de>
For architectures that just use the generic dma_noop_ops we can provide
a generic version of dma-mapping.h.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
MAINTAINERS | 1 +
arch/m32r/include/asm/Kbuild | 1 +
arch/m32r/include/asm/dma-mapping.h | 17 -----------------
arch/riscv/include/asm/Kbuild | 1 +
arch/riscv/include/asm/dma-mapping.h | 30 ------------------------------
arch/s390/include/asm/Kbuild | 1 +
arch/s390/include/asm/dma-mapping.h | 17 -----------------
include/asm-generic/dma-mapping.h | 10 ++++++++++
8 files changed, 14 insertions(+), 64 deletions(-)
delete mode 100644 arch/m32r/include/asm/dma-mapping.h
delete mode 100644 arch/riscv/include/asm/dma-mapping.h
delete mode 100644 arch/s390/include/asm/dma-mapping.h
create mode 100644 include/asm-generic/dma-mapping.h
diff --git a/MAINTAINERS b/MAINTAINERS
index d2cfdcce1db5..234e642e7149 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4338,6 +4338,7 @@ F: lib/dma-noop.c
F: lib/dma-virt.c
F: drivers/base/dma-mapping.c
F: drivers/base/dma-coherent.c
+F: include/asm-generic/dma-mapping.h
F: include/linux/dma-direct.h
F: include/linux/dma-mapping.h
diff --git a/arch/m32r/include/asm/Kbuild b/arch/m32r/include/asm/Kbuild
index 7e11b125c35e..ca83fda8177b 100644
--- a/arch/m32r/include/asm/Kbuild
+++ b/arch/m32r/include/asm/Kbuild
@@ -1,5 +1,6 @@
generic-y += clkdev.h
generic-y += current.h
+generic-y += dma-mapping.h
generic-y += exec.h
generic-y += extable.h
generic-y += irq_work.h
diff --git a/arch/m32r/include/asm/dma-mapping.h b/arch/m32r/include/asm/dma-mapping.h
deleted file mode 100644
index 8967fb659691..000000000000
--- a/arch/m32r/include/asm/dma-mapping.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-#ifndef _ASM_M32R_DMA_MAPPING_H
-#define _ASM_M32R_DMA_MAPPING_H
-
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/mm.h>
-#include <linux/scatterlist.h>
-#include <linux/dma-debug.h>
-#include <linux/io.h>
-
-static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus)
-{
- return &dma_noop_ops;
-}
-
-#endif /* _ASM_M32R_DMA_MAPPING_H */
diff --git a/arch/riscv/include/asm/Kbuild b/arch/riscv/include/asm/Kbuild
index 970460a0b492..197460ccbf21 100644
--- a/arch/riscv/include/asm/Kbuild
+++ b/arch/riscv/include/asm/Kbuild
@@ -7,6 +7,7 @@ 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 += errno.h
generic-y += exec.h
diff --git a/arch/riscv/include/asm/dma-mapping.h b/arch/riscv/include/asm/dma-mapping.h
deleted file mode 100644
index 73849e2cc761..000000000000
--- a/arch/riscv/include/asm/dma-mapping.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (C) 2003-2004 Hewlett-Packard Co
- * David Mosberger-Tang <davidm@hpl.hp.com>
- * Copyright (C) 2012 ARM Ltd.
- * Copyright (C) 2016 SiFive, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#ifndef __ASM_RISCV_DMA_MAPPING_H
-#define __ASM_RISCV_DMA_MAPPING_H
-
-/* Use ops->dma_mapping_error (if it exists) or assume success */
-// #undef DMA_ERROR_CODE
-
-static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus)
-{
- return &dma_noop_ops;
-}
-
-#endif /* __ASM_RISCV_DMA_MAPPING_H */
diff --git a/arch/s390/include/asm/Kbuild b/arch/s390/include/asm/Kbuild
index 048450869328..dade72be127b 100644
--- a/arch/s390/include/asm/Kbuild
+++ b/arch/s390/include/asm/Kbuild
@@ -4,6 +4,7 @@ generic-y += cacheflush.h
generic-y += clkdev.h
generic-y += device.h
generic-y += dma-contiguous.h
+generic-y += dma-mapping.h
generic-y += div64.h
generic-y += emergency-restart.h
generic-y += export.h
diff --git a/arch/s390/include/asm/dma-mapping.h b/arch/s390/include/asm/dma-mapping.h
deleted file mode 100644
index bdc2455483f6..000000000000
--- a/arch/s390/include/asm/dma-mapping.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-#ifndef _ASM_S390_DMA_MAPPING_H
-#define _ASM_S390_DMA_MAPPING_H
-
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/mm.h>
-#include <linux/scatterlist.h>
-#include <linux/dma-debug.h>
-#include <linux/io.h>
-
-static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus)
-{
- return &dma_noop_ops;
-}
-
-#endif /* _ASM_S390_DMA_MAPPING_H */
diff --git a/include/asm-generic/dma-mapping.h b/include/asm-generic/dma-mapping.h
new file mode 100644
index 000000000000..164031531d85
--- /dev/null
+++ b/include/asm-generic/dma-mapping.h
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _ASM_GENERIC_DMA_MAPPING_H
+#define _ASM_GENERIC_DMA_MAPPING_H
+
+static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus)
+{
+ return &dma_noop_ops;
+}
+
+#endif /* _ASM_GENERIC_DMA_MAPPING_H */
--
2.14.2
next prev parent reply other threads:[~2018-01-12 8:44 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-12 8:41 consolidate direct dma mapping V4 Christoph Hellwig
2018-01-12 8:41 ` [PATCH 01/34] alpha: mark jensen as broken Christoph Hellwig
2018-01-12 8:42 ` [PATCH 02/34] hexagon: remove unused flush_write_buffers definition Christoph Hellwig
2018-01-12 8:42 ` [PATCH 03/34] m32r: " Christoph Hellwig
2018-01-12 8:42 ` [PATCH 04/34] powerpc: " Christoph Hellwig
2018-01-12 8:42 ` [PATCH 05/34] arc: remove CONFIG_ARC_PLAT_NEEDS_PHYS_TO_DMA Christoph Hellwig
2018-01-12 8:42 ` [PATCH 06/34] m32r: remove the unused dma_capable helper Christoph Hellwig
2018-01-12 8:42 ` [PATCH 07/34] riscv: " Christoph Hellwig
2018-01-12 8:42 ` [PATCH 08/34] s390: " Christoph Hellwig
2018-01-12 8:42 ` [PATCH 09/34] dma-mapping: take dma_pfn_offset into account in dma_max_pfn Christoph Hellwig
2018-01-12 8:42 ` [PATCH 10/34] arm64: don't override dma_max_pfn Christoph Hellwig
2018-01-12 8:42 ` [PATCH 11/34] mips: fix an off-by-one in dma_capable Christoph Hellwig
2018-01-12 8:42 ` [PATCH 12/34] dma-mapping: move swiotlb arch helpers to a new header Christoph Hellwig
2018-01-12 8:42 ` [PATCH 13/34] dma-mapping: move dma_mark_clean to dma-direct.h Christoph Hellwig
2018-01-12 8:42 ` [PATCH 14/34] hexagon: use the generic dma_capable helper Christoph Hellwig
2018-01-12 8:42 ` [PATCH 15/34] powerpc: rename dma_direct_ to dma_nommu_ Christoph Hellwig
2018-01-12 8:42 ` [PATCH 16/34] microblaze: rename dma_direct to dma_nommu Christoph Hellwig
2018-01-12 8:42 ` [PATCH 17/34] microblaze: remove dma_nommu_dma_supported Christoph Hellwig
2018-01-12 8:42 ` [PATCH 18/34] microblaze: remove the dead !NOT_COHERENT_CACHE dma code Christoph Hellwig
2018-01-12 8:42 ` [PATCH 19/34] s390: move s390_pci_dma_ops to asm/pci_dma.h Christoph Hellwig
2018-01-12 8:42 ` [PATCH 20/34] dma-mapping: warn when there is no coherent_dma_mask Christoph Hellwig
2018-01-12 8:42 ` [PATCH 21/34] dma-mapping: clear harmful GFP_* flags in common code Christoph Hellwig
2018-01-12 8:42 ` [PATCH 22/34] dma-mapping: add an arch_dma_supported hook Christoph Hellwig
2018-02-02 17:47 ` Randy Dunlap
2018-01-12 8:42 ` Christoph Hellwig [this message]
2018-01-12 8:42 ` [PATCH 24/34] dma-direct: rename dma_noop to dma_direct Christoph Hellwig
2018-01-12 8:42 ` [PATCH 25/34] dma-direct: use phys_to_dma Christoph Hellwig
2018-01-12 8:42 ` [PATCH 26/34] dma-direct: add dma address sanity checks Christoph Hellwig
2018-01-12 8:42 ` [PATCH 27/34] dma-direct: add support for CMA allocation Christoph Hellwig
2018-01-12 8:42 ` [PATCH 28/34] dma-direct: use node local allocations for coherent memory Christoph Hellwig
2018-01-12 8:42 ` [PATCH 29/34] dma-direct: add support for allocation from ZONE_DMA and ZONE_DMA32 Christoph Hellwig
2018-01-12 8:42 ` [PATCH 30/34] dma-direct: retry allocations using GFP_DMA for small masks Christoph Hellwig
2018-01-12 8:42 ` [PATCH 31/34] dma-direct: make dma_direct_{alloc, free} available to other implementations Christoph Hellwig
2018-01-12 8:42 ` [PATCH 32/34] dma-direct: reject too small dma masks Christoph Hellwig
2018-01-12 8:42 ` [PATCH 33/34] cris: use dma-direct Christoph Hellwig
2018-01-12 8:42 ` [PATCH 34/34] h8300: " Christoph Hellwig
2018-01-16 7:52 ` consolidate direct dma mapping V4 Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180112084232.2857-24-hch@lst.de \
--to=hch@lst.de \
--cc=gxt@mprc.pku.edu.cn \
--cc=iommu@lists.linux-foundation.org \
--cc=konrad@darnok.org \
--cc=linux-alpha@vger.kernel.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-c6x-dev@linux-c6x.org \
--cc=linux-cris-kernel@axis.com \
--cc=linux-hexagon@vger.kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@lists.linux-m68k.org \
--cc=linux-metag@vger.kernel.org \
--cc=linux-mips@linux-mips.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linux-snps-arc@lists.infradead.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=monstr@monstr.eu \
--cc=patches@groups.riscv.org \
--cc=sparclinux@vger.kernel.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).