ARM: dma-mapping: convert ARCH_HAS_DMA_SET_COHERENT_MASK to kconfig symbol
The only users of ARCH_HAS_DMA_SET_COHERENT_MASK are 2 ARM platforms:
ixp4xx and pxa cm_x2xx. We've been getting lucky that the define is
implicitly included before dma-mapping.h, but the removal of io.h broke
things (c334bc1 ARM: make mach/io.h include optional). Since memory.h
is the correct place, but no longer exists, convert the define to a
kconfig entry.
Reported-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Imre Kaloz <kaloz@openwrt.org>
Cc: Krzysztof Halasa <khc@pm.waw.pl>
Cc: Eric Miao <eric.y.miao@gmail.com>
Acked-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Cc: Vinod Koul <vinod.koul@intel.com>
Cc: Dan Williams <dan.j.williams@intel.com>
	
	
This commit is contained in:
		
					parent
					
						
							
								a2a47ca366
							
						
					
				
			
			
				commit
				
					
						58af4a244f
					
				
			
		
					 5 changed files with 6 additions and 7 deletions
				
			
		|  | @ -180,6 +180,9 @@ config ZONE_DMA | ||||||
| config NEED_DMA_MAP_STATE | config NEED_DMA_MAP_STATE | ||||||
|        def_bool y |        def_bool y | ||||||
| 
 | 
 | ||||||
|  | config ARCH_HAS_DMA_SET_COHERENT_MASK | ||||||
|  | 	bool | ||||||
|  | 
 | ||||||
| config GENERIC_ISA_DMA | config GENERIC_ISA_DMA | ||||||
| 	bool | 	bool | ||||||
| 
 | 
 | ||||||
|  | @ -547,6 +550,7 @@ config ARCH_IXP2000 | ||||||
| config ARCH_IXP4XX | config ARCH_IXP4XX | ||||||
| 	bool "IXP4xx-based" | 	bool "IXP4xx-based" | ||||||
| 	depends on MMU | 	depends on MMU | ||||||
|  | 	select ARCH_HAS_DMA_SET_COHERENT_MASK | ||||||
| 	select CLKSRC_MMIO | 	select CLKSRC_MMIO | ||||||
| 	select CPU_XSCALE | 	select CPU_XSCALE | ||||||
| 	select GENERIC_GPIO | 	select GENERIC_GPIO | ||||||
|  |  | ||||||
|  | @ -23,8 +23,6 @@ | ||||||
| #define PCIBIOS_MAX_MEM		0x4BFFFFFF | #define PCIBIOS_MAX_MEM		0x4BFFFFFF | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #define ARCH_HAS_DMA_SET_COHERENT_MASK |  | ||||||
| 
 |  | ||||||
| /* Register locations and bits */ | /* Register locations and bits */ | ||||||
| #include "ixp4xx-regs.h" | #include "ixp4xx-regs.h" | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -108,6 +108,7 @@ config CSB726_CSB701 | ||||||
| 
 | 
 | ||||||
| config MACH_ARMCORE | config MACH_ARMCORE | ||||||
| 	bool "CompuLab CM-X255/CM-X270 modules" | 	bool "CompuLab CM-X255/CM-X270 modules" | ||||||
|  | 	select ARCH_HAS_DMA_SET_COHERENT_MASK if PCI | ||||||
| 	select PXA27x | 	select PXA27x | ||||||
| 	select IWMMXT | 	select IWMMXT | ||||||
| 	select PXA25x | 	select PXA25x | ||||||
|  |  | ||||||
|  | @ -337,8 +337,4 @@ extern unsigned int get_memclk_frequency_10khz(void); | ||||||
| extern unsigned long get_clock_tick_rate(void); | extern unsigned long get_clock_tick_rate(void); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #if defined(CONFIG_MACH_ARMCORE) && defined(CONFIG_PCI) |  | ||||||
| #define ARCH_HAS_DMA_SET_COHERENT_MASK |  | ||||||
| #endif |  | ||||||
| 
 |  | ||||||
| #endif  /* _ASM_ARCH_HARDWARE_H */ | #endif  /* _ASM_ARCH_HARDWARE_H */ | ||||||
|  |  | ||||||
|  | @ -77,7 +77,7 @@ static inline u64 dma_get_mask(struct device *dev) | ||||||
| 	return DMA_BIT_MASK(32); | 	return DMA_BIT_MASK(32); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #ifdef ARCH_HAS_DMA_SET_COHERENT_MASK | #ifdef CONFIG_ARCH_HAS_DMA_SET_COHERENT_MASK | ||||||
| int dma_set_coherent_mask(struct device *dev, u64 mask); | int dma_set_coherent_mask(struct device *dev, u64 mask); | ||||||
| #else | #else | ||||||
| static inline int dma_set_coherent_mask(struct device *dev, u64 mask) | static inline int dma_set_coherent_mask(struct device *dev, u64 mask) | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Rob Herring
				Rob Herring