diff options
author | Paul Mundt <lethal@linux-sh.org> | 2007-07-25 11:18:00 +0900 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2007-07-26 15:37:40 +0900 |
commit | e257ad062a3ceaf36b0e883d0ef00b185daf500e (patch) | |
tree | bc31371ccb8f387556cb62175d7d1c3069f1e00c | |
parent | 0fbde9509d7b2f71b9326f9c5807a0b4193c7c76 (diff) | |
download | op-kernel-dev-e257ad062a3ceaf36b0e883d0ef00b185daf500e.zip op-kernel-dev-e257ad062a3ceaf36b0e883d0ef00b185daf500e.tar.gz |
sh: Kill off virt_to_bus()/bus_to_virt().
Wire up ARCH_NO_VIRT_TO_BUS, and kill off the remaining users. The
dma-mapping code really wanted virt_to_phys()/phys_to_virt() anyways,
there are no inherently special bus addresses.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r-- | arch/sh/Kconfig | 3 | ||||
-rw-r--r-- | include/asm-sh/dma-mapping.h | 8 | ||||
-rw-r--r-- | include/asm-sh/floppy.h | 4 | ||||
-rw-r--r-- | include/asm-sh/io.h | 4 |
4 files changed, 9 insertions, 10 deletions
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 0a631d0..ec2beab 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig @@ -90,6 +90,9 @@ config ARCH_HAS_ILOG2_U64 bool default n +config ARCH_NO_VIRT_TO_BUS + def_bool y + source "init/Kconfig" menu "System type" diff --git a/include/asm-sh/dma-mapping.h b/include/asm-sh/dma-mapping.h index d3bc781..6f492ac 100644 --- a/include/asm-sh/dma-mapping.h +++ b/include/asm-sh/dma-mapping.h @@ -69,11 +69,11 @@ static inline dma_addr_t dma_map_single(struct device *dev, { #if defined(CONFIG_PCI) && !defined(CONFIG_SH_PCIDMA_NONCOHERENT) if (dev->bus == &pci_bus_type) - return virt_to_bus(ptr); + return virt_to_phys(ptr); #endif dma_cache_sync(dev, ptr, size, dir); - return virt_to_bus(ptr); + return virt_to_phys(ptr); } #define dma_unmap_single(dev, addr, size, dir) do { } while (0) @@ -116,7 +116,7 @@ static inline void dma_sync_single(struct device *dev, dma_addr_t dma_handle, if (dev->bus == &pci_bus_type) return; #endif - dma_cache_sync(dev, bus_to_virt(dma_handle), size, dir); + dma_cache_sync(dev, phys_to_virt(dma_handle), size, dir); } static inline void dma_sync_single_range(struct device *dev, @@ -128,7 +128,7 @@ static inline void dma_sync_single_range(struct device *dev, if (dev->bus == &pci_bus_type) return; #endif - dma_cache_sync(dev, bus_to_virt(dma_handle) + offset, size, dir); + dma_cache_sync(dev, phys_to_virt(dma_handle) + offset, size, dir); } static inline void dma_sync_sg(struct device *dev, struct scatterlist *sg, diff --git a/include/asm-sh/floppy.h b/include/asm-sh/floppy.h index dc1ad46..3b59b3a 100644 --- a/include/asm-sh/floppy.h +++ b/include/asm-sh/floppy.h @@ -181,7 +181,7 @@ static void _fd_chose_dma_mode(char *addr, unsigned long size) { if(can_use_virtual_dma == 2) { if((unsigned int) addr >= (unsigned int) high_memory || - virt_to_bus(addr) >= 0x10000000) + virt_to_phys(addr) >= 0x10000000) use_virtual_dma = 1; else use_virtual_dma = 0; @@ -219,7 +219,7 @@ static int hard_dma_setup(char *addr, unsigned long size, int mode, int io) doing_pdma = 0; clear_dma_ff(FLOPPY_DMA); set_dma_mode(FLOPPY_DMA,mode); - set_dma_addr(FLOPPY_DMA,virt_to_bus(addr)); + set_dma_addr(FLOPPY_DMA,virt_to_phys(addr)); set_dma_count(FLOPPY_DMA,size); enable_dma(FLOPPY_DMA); return 0; diff --git a/include/asm-sh/io.h b/include/asm-sh/io.h index aa80930..e6a1877 100644 --- a/include/asm-sh/io.h +++ b/include/asm-sh/io.h @@ -241,10 +241,6 @@ static inline void *phys_to_virt(unsigned long address) #define virt_to_phys(address) ((unsigned long)(address)) #endif -#define virt_to_bus virt_to_phys -#define bus_to_virt phys_to_virt -#define page_to_bus page_to_phys - /* * readX/writeX() are used to access memory mapped devices. On some * architectures the memory mapped IO stuff needs to be accessed |