[PATCH 1/5] dma-mapping: make the get_required_mask method available unconditionally
This save some duplication for ia64, and makes the interface more general. In the long run we want each dma_map_ops instance to fill this out, but this will take a little more prep work. Signed-off-by: Christoph Hellwig Acked-by: Benjamin Herrenschmidt [powerpc bits] --- arch/ia64/include/asm/dma-mapping.h | 2 -- arch/ia64/include/asm/machvec.h | 7 --- arch/ia64/include/asm/machvec_init.h | 1 - arch/ia64/include/asm/machvec_sn2.h | 2 -- arch/ia64/pci/pci.c | 26 -- arch/ia64/sn/pci/pci_dma.c | 4 ++-- drivers/base/platform.c | 13 +++-- drivers/pci/controller/vmd.c | 4 include/linux/dma-mapping.h | 2 -- 9 files changed, 13 insertions(+), 48 deletions(-) diff --git a/arch/ia64/include/asm/dma-mapping.h b/arch/ia64/include/asm/dma-mapping.h index 76e4d6632d68..522745ae67bb 100644 --- a/arch/ia64/include/asm/dma-mapping.h +++ b/arch/ia64/include/asm/dma-mapping.h @@ -10,8 +10,6 @@ #include #include -#define ARCH_HAS_DMA_GET_REQUIRED_MASK - extern const struct dma_map_ops *dma_ops; extern struct ia64_machine_vector ia64_mv; extern void set_iommu_machvec(void); diff --git a/arch/ia64/include/asm/machvec.h b/arch/ia64/include/asm/machvec.h index 267f4f170191..5133739966bc 100644 --- a/arch/ia64/include/asm/machvec.h +++ b/arch/ia64/include/asm/machvec.h @@ -44,7 +44,6 @@ typedef void ia64_mv_kernel_launch_event_t(void); /* DMA-mapping interface: */ typedef void ia64_mv_dma_init (void); -typedef u64 ia64_mv_dma_get_required_mask (struct device *); typedef const struct dma_map_ops *ia64_mv_dma_get_ops(struct device *); /* @@ -127,7 +126,6 @@ extern void machvec_tlb_migrate_finish (struct mm_struct *); # define platform_global_tlb_purgeia64_mv.global_tlb_purge # define platform_tlb_migrate_finish ia64_mv.tlb_migrate_finish # define platform_dma_initia64_mv.dma_init -# define platform_dma_get_required_mask ia64_mv.dma_get_required_mask # define platform_dma_get_ops ia64_mv.dma_get_ops # define platform_irq_to_vector ia64_mv.irq_to_vector # define platform_local_vector_to_irq ia64_mv.local_vector_to_irq @@ -171,7 +169,6 @@ struct ia64_machine_vector { ia64_mv_global_tlb_purge_t *global_tlb_purge; ia64_mv_tlb_migrate_finish_t *tlb_migrate_finish; ia64_mv_dma_init *dma_init; - ia64_mv_dma_get_required_mask *dma_get_required_mask; ia64_mv_dma_get_ops *dma_get_ops; ia64_mv_irq_to_vector *irq_to_vector; ia64_mv_local_vector_to_irq *local_vector_to_irq; @@ -211,7 +208,6 @@ struct ia64_machine_vector { platform_global_tlb_purge, \ platform_tlb_migrate_finish,\ platform_dma_init, \ - platform_dma_get_required_mask, \ platform_dma_get_ops, \ platform_irq_to_vector, \ platform_local_vector_to_irq, \ @@ -286,9 +282,6 @@ extern const struct dma_map_ops *dma_get_ops(struct device *); #ifndef platform_dma_get_ops # define platform_dma_get_ops dma_get_ops #endif -#ifndef platform_dma_get_required_mask -# define platform_dma_get_required_mask ia64_dma_get_required_mask -#endif #ifndef platform_irq_to_vector # define platform_irq_to_vector__ia64_irq_to_vector #endif diff --git a/arch/ia64/include/asm/machvec_init.h b/arch/ia64/include/asm/machvec_init.h index 2b32fd06b7c6..2aafb69a3787 100644 --- a/arch/ia64/include/asm/machvec_init.h +++ b/arch/ia64/include/asm/machvec_init.h @@ -4,7 +4,6 @@ extern ia64_mv_send_ipi_t ia64_send_ipi; extern ia64_mv_global_tlb_purge_t ia64_global_tlb_purge; -extern ia64_mv_dma_get_required_mask ia64_dma_get_required_mask; extern ia64_mv_irq_to_vector __ia64_irq_to_vector; extern ia64_mv_local_vector_to_irq __ia64_local_vector_to_irq; extern ia64_mv_pci_get_legacy_mem_t ia64_pci_get_legacy_mem; diff --git a/arch/ia64/include/asm/machvec_sn2.h b/arch/ia64/include/asm/machvec_sn2.h index ece9fa85be88..b5153d300289 100644 --- a/arch/ia64/include/asm/machvec_sn2.h +++ b/arch/ia64/include/asm/machvec_sn2.h @@ -55,7 +55,6 @@ extern ia64_mv_readb_t __sn_readb_relaxed; extern ia64_mv_readw_t __sn_readw_relaxed; extern ia64_mv_readl_t __sn_readl_relaxed; extern ia64_mv_readq_t __sn_readq_relaxed; -extern ia64_mv_dma_get_required_mask sn_dma_get_required_mask; extern ia64_mv_dma_initsn_dma_init; extern ia64_mv_migrate_t sn_migrate; extern ia64_mv_kernel_launch_event_t sn_kernel_launch_event; @@ -100,7 +99,6 @@ extern ia64_mv_pci_fixup_bus_t sn_pci_fixup_bus; #define platform_pci_get_legacy_memsn_pci_get_legacy_mem #define platform_pci_legacy_read sn_pci_legacy_read #define platform_pci_legacy_write sn_pci_legacy_write -#define platform_dma_get_required_mask sn_dma_get_required_mask #define
Re: [PATCH 1/5] dma-mapping: make the get_required_mask method available unconditionally
On Thu, 2018-09-20 at 20:52 +0200, Christoph Hellwig wrote: > This save some duplication for ia64, and makes the interface more > general. In the long run we want each dma_map_ops instance to fill this > out, but this will take a little more prep work. > > Signed-off-by: Christoph Hellwig (For powerpc) Acked-by: Benjamin Herrenschmidt > --- > arch/ia64/include/asm/dma-mapping.h | 2 -- > arch/ia64/include/asm/machvec.h | 7 --- > arch/ia64/include/asm/machvec_init.h | 1 - > arch/ia64/include/asm/machvec_sn2.h | 2 -- > arch/ia64/pci/pci.c | 26 -- > arch/ia64/sn/pci/pci_dma.c | 4 ++-- > drivers/base/platform.c | 13 +++-- > drivers/pci/controller/vmd.c | 4 > include/linux/dma-mapping.h | 2 -- > 9 files changed, 13 insertions(+), 48 deletions(-) > > diff --git a/arch/ia64/include/asm/dma-mapping.h > b/arch/ia64/include/asm/dma-mapping.h > index 76e4d6632d68..522745ae67bb 100644 > --- a/arch/ia64/include/asm/dma-mapping.h > +++ b/arch/ia64/include/asm/dma-mapping.h > @@ -10,8 +10,6 @@ > #include > #include > > -#define ARCH_HAS_DMA_GET_REQUIRED_MASK > - > extern const struct dma_map_ops *dma_ops; > extern struct ia64_machine_vector ia64_mv; > extern void set_iommu_machvec(void); > diff --git a/arch/ia64/include/asm/machvec.h b/arch/ia64/include/asm/machvec.h > index 267f4f170191..5133739966bc 100644 > --- a/arch/ia64/include/asm/machvec.h > +++ b/arch/ia64/include/asm/machvec.h > @@ -44,7 +44,6 @@ typedef void ia64_mv_kernel_launch_event_t(void); > > /* DMA-mapping interface: */ > typedef void ia64_mv_dma_init (void); > -typedef u64 ia64_mv_dma_get_required_mask (struct device *); > typedef const struct dma_map_ops *ia64_mv_dma_get_ops(struct device *); > > /* > @@ -127,7 +126,6 @@ extern void machvec_tlb_migrate_finish (struct mm_struct > *); > # define platform_global_tlb_purge ia64_mv.global_tlb_purge > # define platform_tlb_migrate_finishia64_mv.tlb_migrate_finish > # define platform_dma_init ia64_mv.dma_init > -# define platform_dma_get_required_mask ia64_mv.dma_get_required_mask > # define platform_dma_get_ops ia64_mv.dma_get_ops > # define platform_irq_to_vector ia64_mv.irq_to_vector > # define platform_local_vector_to_irq ia64_mv.local_vector_to_irq > @@ -171,7 +169,6 @@ struct ia64_machine_vector { > ia64_mv_global_tlb_purge_t *global_tlb_purge; > ia64_mv_tlb_migrate_finish_t *tlb_migrate_finish; > ia64_mv_dma_init *dma_init; > - ia64_mv_dma_get_required_mask *dma_get_required_mask; > ia64_mv_dma_get_ops *dma_get_ops; > ia64_mv_irq_to_vector *irq_to_vector; > ia64_mv_local_vector_to_irq *local_vector_to_irq; > @@ -211,7 +208,6 @@ struct ia64_machine_vector { > platform_global_tlb_purge, \ > platform_tlb_migrate_finish,\ > platform_dma_init, \ > - platform_dma_get_required_mask, \ > platform_dma_get_ops, \ > platform_irq_to_vector, \ > platform_local_vector_to_irq, \ > @@ -286,9 +282,6 @@ extern const struct dma_map_ops *dma_get_ops(struct > device *); > #ifndef platform_dma_get_ops > # define platform_dma_get_opsdma_get_ops > #endif > -#ifndef platform_dma_get_required_mask > -# define platform_dma_get_required_mask ia64_dma_get_required_mask > -#endif > #ifndef platform_irq_to_vector > # define platform_irq_to_vector __ia64_irq_to_vector > #endif > diff --git a/arch/ia64/include/asm/machvec_init.h > b/arch/ia64/include/asm/machvec_init.h > index 2b32fd06b7c6..2aafb69a3787 100644 > --- a/arch/ia64/include/asm/machvec_init.h > +++ b/arch/ia64/include/asm/machvec_init.h > @@ -4,7 +4,6 @@ > > extern ia64_mv_send_ipi_t ia64_send_ipi; > extern ia64_mv_global_tlb_purge_t ia64_global_tlb_purge; > -extern ia64_mv_dma_get_required_mask ia64_dma_get_required_mask; > extern ia64_mv_irq_to_vector __ia64_irq_to_vector; > extern ia64_mv_local_vector_to_irq __ia64_local_vector_to_irq; > extern ia64_mv_pci_get_legacy_mem_t ia64_pci_get_legacy_mem; > diff --git a/arch/ia64/include/asm/machvec_sn2.h > b/arch/ia64/include/asm/machvec_sn2.h > index ece9fa85be88..b5153d300289 100644 > --- a/arch/ia64/include/asm/machvec_sn2.h > +++ b/arch/ia64/include/asm/machvec_sn2.h > @@ -55,7 +55,6 @@ extern ia64_mv_readb_t __sn_readb_relaxed; > extern ia64_mv_readw_t __sn_readw_relaxed; > extern ia64_mv_readl_t __sn_readl_relaxed; > extern ia64_mv_readq_t __sn_readq_relaxed; > -extern ia64_mv_dma_get_required_mask sn_dma_get_required_mask; > extern ia64_mv_dma_init sn_dma_init; > extern ia64_mv_migrate_t sn_migrate; > extern ia64_mv_kernel_launch_event_t sn_kernel_launch_event; > @@ -100,7 +99,6 @@ extern ia64_mv_pci_fixup_bus_t > sn_pci_fixup_bus; > #define
[PATCH 1/5] dma-mapping: make the get_required_mask method available unconditionally
This save some duplication for ia64, and makes the interface more general. In the long run we want each dma_map_ops instance to fill this out, but this will take a little more prep work. Signed-off-by: Christoph Hellwig --- arch/ia64/include/asm/dma-mapping.h | 2 -- arch/ia64/include/asm/machvec.h | 7 --- arch/ia64/include/asm/machvec_init.h | 1 - arch/ia64/include/asm/machvec_sn2.h | 2 -- arch/ia64/pci/pci.c | 26 -- arch/ia64/sn/pci/pci_dma.c | 4 ++-- drivers/base/platform.c | 13 +++-- drivers/pci/controller/vmd.c | 4 include/linux/dma-mapping.h | 2 -- 9 files changed, 13 insertions(+), 48 deletions(-) diff --git a/arch/ia64/include/asm/dma-mapping.h b/arch/ia64/include/asm/dma-mapping.h index 76e4d6632d68..522745ae67bb 100644 --- a/arch/ia64/include/asm/dma-mapping.h +++ b/arch/ia64/include/asm/dma-mapping.h @@ -10,8 +10,6 @@ #include #include -#define ARCH_HAS_DMA_GET_REQUIRED_MASK - extern const struct dma_map_ops *dma_ops; extern struct ia64_machine_vector ia64_mv; extern void set_iommu_machvec(void); diff --git a/arch/ia64/include/asm/machvec.h b/arch/ia64/include/asm/machvec.h index 267f4f170191..5133739966bc 100644 --- a/arch/ia64/include/asm/machvec.h +++ b/arch/ia64/include/asm/machvec.h @@ -44,7 +44,6 @@ typedef void ia64_mv_kernel_launch_event_t(void); /* DMA-mapping interface: */ typedef void ia64_mv_dma_init (void); -typedef u64 ia64_mv_dma_get_required_mask (struct device *); typedef const struct dma_map_ops *ia64_mv_dma_get_ops(struct device *); /* @@ -127,7 +126,6 @@ extern void machvec_tlb_migrate_finish (struct mm_struct *); # define platform_global_tlb_purgeia64_mv.global_tlb_purge # define platform_tlb_migrate_finish ia64_mv.tlb_migrate_finish # define platform_dma_initia64_mv.dma_init -# define platform_dma_get_required_mask ia64_mv.dma_get_required_mask # define platform_dma_get_ops ia64_mv.dma_get_ops # define platform_irq_to_vector ia64_mv.irq_to_vector # define platform_local_vector_to_irq ia64_mv.local_vector_to_irq @@ -171,7 +169,6 @@ struct ia64_machine_vector { ia64_mv_global_tlb_purge_t *global_tlb_purge; ia64_mv_tlb_migrate_finish_t *tlb_migrate_finish; ia64_mv_dma_init *dma_init; - ia64_mv_dma_get_required_mask *dma_get_required_mask; ia64_mv_dma_get_ops *dma_get_ops; ia64_mv_irq_to_vector *irq_to_vector; ia64_mv_local_vector_to_irq *local_vector_to_irq; @@ -211,7 +208,6 @@ struct ia64_machine_vector { platform_global_tlb_purge, \ platform_tlb_migrate_finish,\ platform_dma_init, \ - platform_dma_get_required_mask, \ platform_dma_get_ops, \ platform_irq_to_vector, \ platform_local_vector_to_irq, \ @@ -286,9 +282,6 @@ extern const struct dma_map_ops *dma_get_ops(struct device *); #ifndef platform_dma_get_ops # define platform_dma_get_ops dma_get_ops #endif -#ifndef platform_dma_get_required_mask -# define platform_dma_get_required_mask ia64_dma_get_required_mask -#endif #ifndef platform_irq_to_vector # define platform_irq_to_vector__ia64_irq_to_vector #endif diff --git a/arch/ia64/include/asm/machvec_init.h b/arch/ia64/include/asm/machvec_init.h index 2b32fd06b7c6..2aafb69a3787 100644 --- a/arch/ia64/include/asm/machvec_init.h +++ b/arch/ia64/include/asm/machvec_init.h @@ -4,7 +4,6 @@ extern ia64_mv_send_ipi_t ia64_send_ipi; extern ia64_mv_global_tlb_purge_t ia64_global_tlb_purge; -extern ia64_mv_dma_get_required_mask ia64_dma_get_required_mask; extern ia64_mv_irq_to_vector __ia64_irq_to_vector; extern ia64_mv_local_vector_to_irq __ia64_local_vector_to_irq; extern ia64_mv_pci_get_legacy_mem_t ia64_pci_get_legacy_mem; diff --git a/arch/ia64/include/asm/machvec_sn2.h b/arch/ia64/include/asm/machvec_sn2.h index ece9fa85be88..b5153d300289 100644 --- a/arch/ia64/include/asm/machvec_sn2.h +++ b/arch/ia64/include/asm/machvec_sn2.h @@ -55,7 +55,6 @@ extern ia64_mv_readb_t __sn_readb_relaxed; extern ia64_mv_readw_t __sn_readw_relaxed; extern ia64_mv_readl_t __sn_readl_relaxed; extern ia64_mv_readq_t __sn_readq_relaxed; -extern ia64_mv_dma_get_required_mask sn_dma_get_required_mask; extern ia64_mv_dma_initsn_dma_init; extern ia64_mv_migrate_t sn_migrate; extern ia64_mv_kernel_launch_event_t sn_kernel_launch_event; @@ -100,7 +99,6 @@ extern ia64_mv_pci_fixup_bus_t sn_pci_fixup_bus; #define platform_pci_get_legacy_memsn_pci_get_legacy_mem #define platform_pci_legacy_read sn_pci_legacy_read #define platform_pci_legacy_write sn_pci_legacy_write -#define platform_dma_get_required_mask sn_dma_get_required_mask #define platform_dma_init sn_dma_init #define