2 * Setup kernel for a Sun3x machine
4 * (C) 1999 Thomas Bogendoerfer (tsbogend@alpha.franken.de)
6 * based on code from Oliver Jowett <oliver@jowett.manawatu.gen.nz>
9 #include <linux/types.h>
11 #include <linux/console.h>
12 #include <linux/init.h>
14 #include <asm/system.h>
15 #include <asm/machdep.h>
17 #include <asm/sun3xprom.h>
18 #include <asm/sun3ints.h>
19 #include <asm/setup.h>
20 #include <asm/oplib.h>
24 volatile char *clock_va
;
25 extern volatile unsigned char *sun3_intreg
;
27 extern void sun3_get_model(char *model
);
29 void sun3_leds(unsigned int i
)
34 static int sun3x_get_hardware_list(char *buffer
)
39 len
+= sprintf(buffer
+ len
, "PROM Revision:\t%s\n",
47 * Setup the sun3x configuration info
49 void __init
config_sun3x(void)
54 mach_max_dma_address
= 0xffffffff; /* we can DMA anywhere, whee */
56 mach_sched_init
= sun3x_sched_init
;
57 mach_init_IRQ
= sun3_init_IRQ
;
59 mach_gettimeoffset
= sun3x_gettimeoffset
;
60 mach_reset
= sun3x_reboot
;
62 mach_hwclk
= sun3x_hwclk
;
63 mach_get_model
= sun3_get_model
;
64 mach_get_hardware_list
= sun3x_get_hardware_list
;
66 sun3_intreg
= (unsigned char *)SUN3X_INTREG
;
68 /* only the serial console is known to work anyway... */
70 switch (*(unsigned char *)SUN3X_EEPROM_CONS
) {
81 conswitchp
= &dummy_con
;