1 /* 2 * linux/arch/arm/mach-omap2/board-generic.c 3 * 4 * Copyright (C) 2005 Nokia Corporation 5 * Author: Paul Mundt <paul.mundt@nokia.com> 6 * 7 * Modified from mach-omap/omap1/board-generic.c 8 * 9 * Code for generic OMAP2 board. Should work on many OMAP2 systems where 10 * the bootloader passes the board-specific data to the kernel. 11 * Do not put any board specific code to this file; create a new machine 12 * type if you need custom low-level initializations. 13 * 14 * This program is free software; you can redistribute it and/or modify 15 * it under the terms of the GNU General Public License version 2 as 16 * published by the Free Software Foundation. 17 */ 18 19 #include <linux/kernel.h> 20 #include <linux/init.h> 21 #include <linux/device.h> 22 23 #include <mach/hardware.h> 24 #include <asm/mach-types.h> 25 #include <asm/mach/arch.h> 26 #include <asm/mach/map.h> 27 28 #include <mach/gpio.h> 29 #include <plat/usb.h> 30 #include <plat/board.h> 31 #include <plat/common.h> 32 33 static struct omap_board_config_kernel generic_config[] = { 34 }; 35 36 static void __init omap_generic_init_irq(void) 37 { 38 omap_board_config = generic_config; 39 omap_board_config_size = ARRAY_SIZE(generic_config); 40 omap2_init_common_infrastructure(); 41 omap2_init_common_devices(NULL, NULL); 42 omap_init_irq(); 43 } 44 45 static void __init omap_generic_init(void) 46 { 47 omap_serial_init(); 48 } 49 50 static void __init omap_generic_map_io(void) 51 { 52 if (cpu_is_omap242x()) { 53 omap2_set_globals_242x(); 54 omap242x_map_common_io(); 55 } else if (cpu_is_omap243x()) { 56 omap2_set_globals_243x(); 57 omap243x_map_common_io(); 58 } else if (cpu_is_omap34xx()) { 59 omap2_set_globals_3xxx(); 60 omap34xx_map_common_io(); 61 } else if (cpu_is_omap44xx()) { 62 omap2_set_globals_443x(); 63 omap44xx_map_common_io(); 64 } 65 } 66 67 /* XXX This machine entry name should be updated */ 68 MACHINE_START(OMAP_GENERIC, "Generic OMAP24xx") 69 /* Maintainer: Paul Mundt <paul.mundt@nokia.com> */ 70 .boot_params = 0x80000100, 71 .map_io = omap_generic_map_io, 72 .reserve = omap_reserve, 73 .init_irq = omap_generic_init_irq, 74 .init_machine = omap_generic_init, 75 .timer = &omap_timer, 76 MACHINE_END 77