Commit b2fcb677 authored by Christoph Hellwig's avatar Christoph Hellwig

sh: simplify get_arch_dma_ops

Remove the indirection through the dma_ops variable, and just return
nommu_dma_ops directly from get_arch_dma_ops.
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Acked-by: default avatarYoshinori Sato <ysato@users.sourceforge.jp>
parent 4d8bde88
...@@ -2,12 +2,11 @@ ...@@ -2,12 +2,11 @@
#ifndef __ASM_SH_DMA_MAPPING_H #ifndef __ASM_SH_DMA_MAPPING_H
#define __ASM_SH_DMA_MAPPING_H #define __ASM_SH_DMA_MAPPING_H
extern const struct dma_map_ops *dma_ops; extern const struct dma_map_ops nommu_dma_ops;
extern void no_iommu_init(void);
static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus) static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus)
{ {
return dma_ops; return &nommu_dma_ops;
} }
extern void *dma_generic_alloc_coherent(struct device *dev, size_t size, extern void *dma_generic_alloc_coherent(struct device *dev, size_t size,
......
...@@ -79,10 +79,4 @@ const struct dma_map_ops nommu_dma_ops = { ...@@ -79,10 +79,4 @@ const struct dma_map_ops nommu_dma_ops = {
.sync_sg_for_device = nommu_sync_sg_for_device, .sync_sg_for_device = nommu_sync_sg_for_device,
#endif #endif
}; };
EXPORT_SYMBOL(nommu_dma_ops);
void __init no_iommu_init(void)
{
if (dma_ops)
return;
dma_ops = &nommu_dma_ops;
}
...@@ -20,9 +20,6 @@ ...@@ -20,9 +20,6 @@
#include <asm/cacheflush.h> #include <asm/cacheflush.h>
#include <asm/addrspace.h> #include <asm/addrspace.h>
const struct dma_map_ops *dma_ops;
EXPORT_SYMBOL(dma_ops);
void *dma_generic_alloc_coherent(struct device *dev, size_t size, void *dma_generic_alloc_coherent(struct device *dev, size_t size,
dma_addr_t *dma_handle, gfp_t gfp, dma_addr_t *dma_handle, gfp_t gfp,
unsigned long attrs) unsigned long attrs)
......
...@@ -339,22 +339,12 @@ void __init paging_init(void) ...@@ -339,22 +339,12 @@ void __init paging_init(void)
free_area_init_nodes(max_zone_pfns); free_area_init_nodes(max_zone_pfns);
} }
/*
* Early initialization for any I/O MMUs we might have.
*/
static void __init iommu_init(void)
{
no_iommu_init();
}
unsigned int mem_init_done = 0; unsigned int mem_init_done = 0;
void __init mem_init(void) void __init mem_init(void)
{ {
pg_data_t *pgdat; pg_data_t *pgdat;
iommu_init();
high_memory = NULL; high_memory = NULL;
for_each_online_pgdat(pgdat) for_each_online_pgdat(pgdat)
high_memory = max_t(void *, high_memory, high_memory = max_t(void *, high_memory,
......
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