Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

+9 -10
+3
arch/sh/Kconfig
··· 90 90 bool 91 91 default n 92 92 93 + config ARCH_NO_VIRT_TO_BUS 94 + def_bool y 95 + 93 96 source "init/Kconfig" 94 97 95 98 menu "System type"
+4 -4
include/asm-sh/dma-mapping.h
··· 69 69 { 70 70 #if defined(CONFIG_PCI) && !defined(CONFIG_SH_PCIDMA_NONCOHERENT) 71 71 if (dev->bus == &pci_bus_type) 72 - return virt_to_bus(ptr); 72 + return virt_to_phys(ptr); 73 73 #endif 74 74 dma_cache_sync(dev, ptr, size, dir); 75 75 76 - return virt_to_bus(ptr); 76 + return virt_to_phys(ptr); 77 77 } 78 78 79 79 #define dma_unmap_single(dev, addr, size, dir) do { } while (0) ··· 116 116 if (dev->bus == &pci_bus_type) 117 117 return; 118 118 #endif 119 - dma_cache_sync(dev, bus_to_virt(dma_handle), size, dir); 119 + dma_cache_sync(dev, phys_to_virt(dma_handle), size, dir); 120 120 } 121 121 122 122 static inline void dma_sync_single_range(struct device *dev, ··· 128 128 if (dev->bus == &pci_bus_type) 129 129 return; 130 130 #endif 131 - dma_cache_sync(dev, bus_to_virt(dma_handle) + offset, size, dir); 131 + dma_cache_sync(dev, phys_to_virt(dma_handle) + offset, size, dir); 132 132 } 133 133 134 134 static inline void dma_sync_sg(struct device *dev, struct scatterlist *sg,
+2 -2
include/asm-sh/floppy.h
··· 181 181 { 182 182 if(can_use_virtual_dma == 2) { 183 183 if((unsigned int) addr >= (unsigned int) high_memory || 184 - virt_to_bus(addr) >= 0x10000000) 184 + virt_to_phys(addr) >= 0x10000000) 185 185 use_virtual_dma = 1; 186 186 else 187 187 use_virtual_dma = 0; ··· 219 219 doing_pdma = 0; 220 220 clear_dma_ff(FLOPPY_DMA); 221 221 set_dma_mode(FLOPPY_DMA,mode); 222 - set_dma_addr(FLOPPY_DMA,virt_to_bus(addr)); 222 + set_dma_addr(FLOPPY_DMA,virt_to_phys(addr)); 223 223 set_dma_count(FLOPPY_DMA,size); 224 224 enable_dma(FLOPPY_DMA); 225 225 return 0;
-4
include/asm-sh/io.h
··· 241 241 #define virt_to_phys(address) ((unsigned long)(address)) 242 242 #endif 243 243 244 - #define virt_to_bus virt_to_phys 245 - #define bus_to_virt phys_to_virt 246 - #define page_to_bus page_to_phys 247 - 248 244 /* 249 245 * readX/writeX() are used to access memory mapped devices. On some 250 246 * architectures the memory mapped IO stuff needs to be accessed