Commit e257ad06 authored by Paul Mundt's avatar Paul Mundt

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: default avatarPaul Mundt <lethal@linux-sh.org>
parent 0fbde950
...@@ -90,6 +90,9 @@ config ARCH_HAS_ILOG2_U64 ...@@ -90,6 +90,9 @@ config ARCH_HAS_ILOG2_U64
bool bool
default n default n
config ARCH_NO_VIRT_TO_BUS
def_bool y
source "init/Kconfig" source "init/Kconfig"
menu "System type" menu "System type"
......
...@@ -69,11 +69,11 @@ static inline dma_addr_t dma_map_single(struct device *dev, ...@@ -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 defined(CONFIG_PCI) && !defined(CONFIG_SH_PCIDMA_NONCOHERENT)
if (dev->bus == &pci_bus_type) if (dev->bus == &pci_bus_type)
return virt_to_bus(ptr); return virt_to_phys(ptr);
#endif #endif
dma_cache_sync(dev, ptr, size, dir); 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) #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, ...@@ -116,7 +116,7 @@ static inline void dma_sync_single(struct device *dev, dma_addr_t dma_handle,
if (dev->bus == &pci_bus_type) if (dev->bus == &pci_bus_type)
return; return;
#endif #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, static inline void dma_sync_single_range(struct device *dev,
...@@ -128,7 +128,7 @@ 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) if (dev->bus == &pci_bus_type)
return; return;
#endif #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, static inline void dma_sync_sg(struct device *dev, struct scatterlist *sg,
......
...@@ -181,7 +181,7 @@ static void _fd_chose_dma_mode(char *addr, unsigned long size) ...@@ -181,7 +181,7 @@ static void _fd_chose_dma_mode(char *addr, unsigned long size)
{ {
if(can_use_virtual_dma == 2) { if(can_use_virtual_dma == 2) {
if((unsigned int) addr >= (unsigned int) high_memory || if((unsigned int) addr >= (unsigned int) high_memory ||
virt_to_bus(addr) >= 0x10000000) virt_to_phys(addr) >= 0x10000000)
use_virtual_dma = 1; use_virtual_dma = 1;
else else
use_virtual_dma = 0; use_virtual_dma = 0;
...@@ -219,7 +219,7 @@ static int hard_dma_setup(char *addr, unsigned long size, int mode, int io) ...@@ -219,7 +219,7 @@ static int hard_dma_setup(char *addr, unsigned long size, int mode, int io)
doing_pdma = 0; doing_pdma = 0;
clear_dma_ff(FLOPPY_DMA); clear_dma_ff(FLOPPY_DMA);
set_dma_mode(FLOPPY_DMA,mode); 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); set_dma_count(FLOPPY_DMA,size);
enable_dma(FLOPPY_DMA); enable_dma(FLOPPY_DMA);
return 0; return 0;
......
...@@ -241,10 +241,6 @@ static inline void *phys_to_virt(unsigned long address) ...@@ -241,10 +241,6 @@ static inline void *phys_to_virt(unsigned long address)
#define virt_to_phys(address) ((unsigned long)(address)) #define virt_to_phys(address) ((unsigned long)(address))
#endif #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 * readX/writeX() are used to access memory mapped devices. On some
* architectures the memory mapped IO stuff needs to be accessed * architectures the memory mapped IO stuff needs to be accessed
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment