aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68knommu
diff options
context:
space:
mode:
Diffstat (limited to 'arch/m68knommu')
-rw-r--r--arch/m68knommu/kernel/setup.c65
1 files changed, 14 insertions, 51 deletions
diff --git a/arch/m68knommu/kernel/setup.c b/arch/m68knommu/kernel/setup.c
index 8133b1047353..80f4e9d74ac1 100644
--- a/arch/m68knommu/kernel/setup.c
+++ b/arch/m68knommu/kernel/setup.c
@@ -1,8 +1,8 @@
1/* 1/*
2 * linux/arch/m68knommu/kernel/setup.c 2 * linux/arch/m68knommu/kernel/setup.c
3 * 3 *
4 * Copyright (C) 1999-2004 Greg Ungerer (gerg@snapgear.com) 4 * Copyright (C) 1999-2007 Greg Ungerer (gerg@snapgear.com)
5 * Copyright (C) 1998,1999 D. Jeff Dionne <jeff@lineo.ca> 5 * Copyright (C) 1998,1999 D. Jeff Dionne <jeff@uClinux.org>
6 * Copyleft ()) 2000 James D. Schettine {james@telos-systems.com} 6 * Copyleft ()) 2000 James D. Schettine {james@telos-systems.com}
7 * Copyright (C) 1998 Kenneth Albanowski <kjahds@kjahds.com> 7 * Copyright (C) 1998 Kenneth Albanowski <kjahds@kjahds.com>
8 * Copyright (C) 1995 Hamish Macdonald 8 * Copyright (C) 1995 Hamish Macdonald
@@ -20,17 +20,13 @@
20#include <linux/sched.h> 20#include <linux/sched.h>
21#include <linux/delay.h> 21#include <linux/delay.h>
22#include <linux/interrupt.h> 22#include <linux/interrupt.h>
23#include <linux/fs.h>
24#include <linux/fb.h> 23#include <linux/fb.h>
25#include <linux/module.h> 24#include <linux/module.h>
26#include <linux/console.h> 25#include <linux/console.h>
27#include <linux/genhd.h>
28#include <linux/errno.h> 26#include <linux/errno.h>
29#include <linux/string.h> 27#include <linux/string.h>
30#include <linux/major.h>
31#include <linux/bootmem.h> 28#include <linux/bootmem.h>
32#include <linux/seq_file.h> 29#include <linux/seq_file.h>
33#include <linux/root_dev.h>
34#include <linux/init.h> 30#include <linux/init.h>
35 31
36#include <asm/setup.h> 32#include <asm/setup.h>
@@ -46,34 +42,19 @@ EXPORT_SYMBOL(memory_end);
46 42
47char __initdata command_line[COMMAND_LINE_SIZE]; 43char __initdata command_line[COMMAND_LINE_SIZE];
48 44
49/* setup some dummy routines */ 45void (*mach_trap_init)(void);
50static void dummy_waitbut(void)
51{
52}
53 46
54void (*mach_sched_init) (irq_handler_t handler);
55void (*mach_tick)( void );
56/* machine dependent keyboard functions */
57int (*mach_keyb_init) (void);
58int (*mach_kbdrate) (struct kbd_repeat *);
59void (*mach_kbd_leds) (unsigned int);
60/* machine dependent irq functions */
61void (*mach_init_IRQ) (void);
62irq_handler_t mach_default_handler;
63int (*mach_get_irq_list) (struct seq_file *, void *);
64void (*mach_process_int) (int irq, struct pt_regs *fp);
65void (*mach_trap_init) (void);
66/* machine dependent timer functions */ 47/* machine dependent timer functions */
67unsigned long (*mach_gettimeoffset) (void); 48void (*mach_sched_init)(irq_handler_t handler);
68void (*mach_gettod) (int*, int*, int*, int*, int*, int*); 49void (*mach_tick)(void);
69int (*mach_hwclk) (int, struct rtc_time*); 50void (*mach_gettod)(int*, int*, int*, int*, int*, int*);
70int (*mach_set_clock_mmss) (unsigned long); 51int (*mach_set_clock_mmss)(unsigned long);
71void (*mach_mksound)( unsigned int count, unsigned int ticks ); 52unsigned long (*mach_gettimeoffset)(void);
72void (*mach_reset)( void ); 53
73void (*waitbut)(void) = dummy_waitbut; 54/* machine dependent reboot functions */
74void (*mach_debug_init)(void); 55void (*mach_reset)(void);
75void (*mach_halt)( void ); 56void (*mach_halt)(void);
76void (*mach_power_off)( void ); 57void (*mach_power_off)(void);
77 58
78 59
79#ifdef CONFIG_M68000 60#ifdef CONFIG_M68000
@@ -134,13 +115,6 @@ void (*mach_power_off)( void );
134 #define CPU "UNKNOWN" 115 #define CPU "UNKNOWN"
135#endif 116#endif
136 117
137/* (es) */
138/* note: why is this defined here? the must be a better place to put this */
139#if defined( CONFIG_TELOS) || defined( CONFIG_UCDIMM ) || defined( CONFIG_UCSIMM ) || defined(CONFIG_DRAGEN2) || (defined( CONFIG_PILOT ) && defined( CONFIG_M68328 ))
140#define CAT_ROMARRAY
141#endif
142/* (/es) */
143
144extern int _stext, _etext, _sdata, _edata, _sbss, _ebss, _end; 118extern int _stext, _etext, _sdata, _edata, _sbss, _ebss, _end;
145extern int _ramstart, _ramend; 119extern int _ramstart, _ramend;
146 120
@@ -148,15 +122,8 @@ void setup_arch(char **cmdline_p)
148{ 122{
149 int bootmap_size; 123 int bootmap_size;
150 124
151#if defined(CAT_ROMARRAY) && defined(DEBUG)
152 extern int __data_rom_start;
153 extern int __data_start;
154 int *romarray = (int *)((int) &__data_rom_start +
155 (int)&_edata - (int)&__data_start);
156#endif
157
158 memory_start = PAGE_ALIGN(_ramstart); 125 memory_start = PAGE_ALIGN(_ramstart);
159 memory_end = _ramend; /* by now the stack is part of the init task */ 126 memory_end = _ramend;
160 127
161 init_mm.start_code = (unsigned long) &_stext; 128 init_mm.start_code = (unsigned long) &_stext;
162 init_mm.end_code = (unsigned long) &_etext; 129 init_mm.end_code = (unsigned long) &_etext;
@@ -220,11 +187,7 @@ void setup_arch(char **cmdline_p)
220 (int) &_sbss, (int) &_ebss); 187 (int) &_sbss, (int) &_ebss);
221 printk(KERN_DEBUG "KERNEL -> ROMFS=0x%06x-0x%06x MEM=0x%06x-0x%06x " 188 printk(KERN_DEBUG "KERNEL -> ROMFS=0x%06x-0x%06x MEM=0x%06x-0x%06x "
222 "STACK=0x%06x-0x%06x\n", 189 "STACK=0x%06x-0x%06x\n",
223#ifdef CAT_ROMARRAY
224 (int) romarray, ((int) romarray) + romarray[2],
225#else
226 (int) &_ebss, (int) memory_start, 190 (int) &_ebss, (int) memory_start,
227#endif
228 (int) memory_start, (int) memory_end, 191 (int) memory_start, (int) memory_end,
229 (int) memory_end, (int) _ramend); 192 (int) memory_end, (int) _ramend);
230#endif 193#endif