1 /***************************************************************************/ 2 3 /* 4 * m68328.c - 68328/68EZ328/68VZ328 specific config 5 * 6 * Copyright (C) 1993 Hamish Macdonald 7 * Copyright (C) 1999 D. Jeff Dionne 8 * Copyright (C) 2001 Georges Menie, Ken Desmet 9 * 10 * This file is subject to the terms and conditions of the GNU General Public 11 * License. See the file COPYING in the main directory of this archive 12 * for more details. 13 * 14 * VZ Support/Fixes Evan Stawnyczy <e@lineo.ca> 15 */ 16 17 /***************************************************************************/ 18 19 #include <linux/init.h> 20 #include <linux/types.h> 21 #include <linux/kernel.h> 22 #include <linux/rtc.h> 23 #include <asm/machdep.h> 24 25 #if defined(CONFIG_INIT_LCD) && defined(CONFIG_M68VZ328) 26 #include "bootlogo-vz.h" 27 #elif defined(CONFIG_PILOT) || defined(CONFIG_INIT_LCD) 28 #include "bootlogo.h" 29 #endif 30 31 #include "m68328.h" 32 33 /***************************************************************************/ 34 35 static void m68328_reset(void) 36 { 37 local_irq_disable(); 38 asm volatile ("moveal #0x10c00000, %a0;\n\t" 39 "moveb #0, 0xFFFFF300;\n\t" 40 "moveal 0(%a0), %sp;\n\t" 41 "moveal 4(%a0), %a0;\n\t" 42 "jmp (%a0);"); 43 } 44 45 /***************************************************************************/ 46 47 void __init config_BSP(char *command, int len) 48 { 49 mach_sched_init = hw_timer_init; 50 mach_hwclk = m68328_hwclk; 51 mach_reset = m68328_reset; 52 53 #if defined(CONFIG_PILOT) && defined(CONFIG_M68328) 54 mach_sched_init = NULL; 55 #elif defined(CONFIG_UCSIMM) 56 init_ucsimm(command, len); 57 #elif defined(CONFIG_UCDIMM) 58 init_ucsimm(command, len); 59 #elif defined(CONFIG_DRAGEN2) 60 init_dragen2(command, len); 61 #endif 62 } 63 64 /***************************************************************************/ 65