diff --git a/arch/sh/mm/consistent.c b/arch/sh/mm/consistent.c index ef20bbabefa0..902967e3f841 100644 --- a/arch/sh/mm/consistent.c +++ b/arch/sh/mm/consistent.c @@ -27,8 +27,6 @@ EXPORT_SYMBOL(dma_ops); static int __init dma_init(void) { dma_debug_init(PREALLOC_DMA_DEBUG_ENTRIES); - - no_iommu_init(); return 0; } fs_initcall(dma_init); diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c index c8af6c5fa586..432acd07e76a 100644 --- a/arch/sh/mm/init.c +++ b/arch/sh/mm/init.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include @@ -186,11 +187,21 @@ void __init paging_init(void) set_fixmap_nocache(FIX_UNCACHED, __pa(&__uncached_start)); } +/* + * Early initialization for any I/O MMUs we might have. + */ +static void __init iommu_init(void) +{ + no_iommu_init(); +} + void __init mem_init(void) { int codesize, datasize, initsize; int nid; + iommu_init(); + num_physpages = 0; high_memory = NULL;