diff options
Diffstat (limited to 'include/asm-x86')
-rw-r--r-- | include/asm-x86/dma-mapping.h | 3 | ||||
-rw-r--r-- | include/asm-x86/dma-mapping_32.h | 29 | ||||
-rw-r--r-- | include/asm-x86/dma-mapping_64.h | 4 |
3 files changed, 3 insertions, 33 deletions
diff --git a/include/asm-x86/dma-mapping.h b/include/asm-x86/dma-mapping.h index 51a79d71dab..c671a0aea59 100644 --- a/include/asm-x86/dma-mapping.h +++ b/include/asm-x86/dma-mapping.h @@ -62,6 +62,9 @@ void dma_free_coherent(struct device *dev, size_t size, void *vaddr, dma_addr_t dma_handle); +extern int dma_supported(struct device *hwdev, u64 mask); +extern int dma_set_mask(struct device *dev, u64 mask); + #ifdef CONFIG_X86_32 # include "dma-mapping_32.h" #else diff --git a/include/asm-x86/dma-mapping_32.h b/include/asm-x86/dma-mapping_32.h index e60c30a8831..fd7246dddad 100644 --- a/include/asm-x86/dma-mapping_32.h +++ b/include/asm-x86/dma-mapping_32.h @@ -17,35 +17,6 @@ dma_mapping_error(dma_addr_t dma_addr) extern int forbid_dac; static inline int -dma_supported(struct device *dev, u64 mask) -{ - /* - * we fall back to GFP_DMA when the mask isn't all 1s, - * so we can't guarantee allocations that must be - * within a tighter range than GFP_DMA.. - */ - if(mask < 0x00ffffff) - return 0; - - /* Work around chipset bugs */ - if (forbid_dac > 0 && mask > 0xffffffffULL) - return 0; - - return 1; -} - -static inline int -dma_set_mask(struct device *dev, u64 mask) -{ - if(!dev->dma_mask || !dma_supported(dev, mask)) - return -EIO; - - *dev->dma_mask = mask; - - return 0; -} - -static inline int dma_get_cache_alignment(void) { /* no easy way to get cache size on all x86, so return the diff --git a/include/asm-x86/dma-mapping_64.h b/include/asm-x86/dma-mapping_64.h index b1bc6ca7613..9674dac9fa3 100644 --- a/include/asm-x86/dma-mapping_64.h +++ b/include/asm-x86/dma-mapping_64.h @@ -12,8 +12,6 @@ static inline int dma_mapping_error(dma_addr_t dma_addr) return (dma_addr == bad_dma_address); } -extern int dma_supported(struct device *hwdev, u64 mask); - /* same for gart, swiotlb, and nommu */ static inline int dma_get_cache_alignment(void) { @@ -22,8 +20,6 @@ static inline int dma_get_cache_alignment(void) #define dma_is_consistent(d, h) 1 -extern int dma_set_mask(struct device *dev, u64 mask); - extern struct device fallback_dev; extern int panic_on_overflow; |