1*1dbae815STony Lindgren /* 2*1dbae815STony Lindgren * linux/arch/arm/mach-omap2/io.c 3*1dbae815STony Lindgren * 4*1dbae815STony Lindgren * OMAP2 I/O mapping code 5*1dbae815STony Lindgren * 6*1dbae815STony Lindgren * Copyright (C) 2005 Nokia Corporation 7*1dbae815STony Lindgren * Author: Juha Yrj�l� <juha.yrjola@nokia.com> 8*1dbae815STony Lindgren * 9*1dbae815STony Lindgren * This program is free software; you can redistribute it and/or modify 10*1dbae815STony Lindgren * it under the terms of the GNU General Public License version 2 as 11*1dbae815STony Lindgren * published by the Free Software Foundation. 12*1dbae815STony Lindgren */ 13*1dbae815STony Lindgren 14*1dbae815STony Lindgren #include <linux/config.h> 15*1dbae815STony Lindgren #include <linux/module.h> 16*1dbae815STony Lindgren #include <linux/kernel.h> 17*1dbae815STony Lindgren #include <linux/init.h> 18*1dbae815STony Lindgren 19*1dbae815STony Lindgren #include <asm/mach/map.h> 20*1dbae815STony Lindgren #include <asm/io.h> 21*1dbae815STony Lindgren #include <asm/arch/mux.h> 22*1dbae815STony Lindgren 23*1dbae815STony Lindgren extern void omap_sram_init(void); 24*1dbae815STony Lindgren extern int omap2_clk_init(void); 25*1dbae815STony Lindgren extern void omap2_check_revision(void); 26*1dbae815STony Lindgren 27*1dbae815STony Lindgren /* 28*1dbae815STony Lindgren * The machine specific code may provide the extra mapping besides the 29*1dbae815STony Lindgren * default mapping provided here. 30*1dbae815STony Lindgren */ 31*1dbae815STony Lindgren static struct map_desc omap2_io_desc[] __initdata = { 32*1dbae815STony Lindgren { 33*1dbae815STony Lindgren .virtual = L3_24XX_VIRT, 34*1dbae815STony Lindgren .pfn = __phys_to_pfn(L3_24XX_PHYS), 35*1dbae815STony Lindgren .length = L3_24XX_SIZE, 36*1dbae815STony Lindgren .type = MT_DEVICE 37*1dbae815STony Lindgren }, 38*1dbae815STony Lindgren { 39*1dbae815STony Lindgren .virtual = L4_24XX_VIRT, 40*1dbae815STony Lindgren .pfn = __phys_to_pfn(L4_24XX_PHYS), 41*1dbae815STony Lindgren .length = L4_24XX_SIZE, 42*1dbae815STony Lindgren .type = MT_DEVICE 43*1dbae815STony Lindgren } 44*1dbae815STony Lindgren }; 45*1dbae815STony Lindgren 46*1dbae815STony Lindgren void __init omap_map_common_io(void) 47*1dbae815STony Lindgren { 48*1dbae815STony Lindgren iotable_init(omap2_io_desc, ARRAY_SIZE(omap2_io_desc)); 49*1dbae815STony Lindgren omap2_check_revision(); 50*1dbae815STony Lindgren omap_sram_init(); 51*1dbae815STony Lindgren omap2_mux_init(); 52*1dbae815STony Lindgren omap2_clk_init(); 53*1dbae815STony Lindgren } 54