xref: /openbmc/linux/arch/m68k/sun3x/config.c (revision cdd38c5f1ce4398ec58fec95904b75824daab7b5)
1*b2441318SGreg Kroah-Hartman // SPDX-License-Identifier: GPL-2.0
21da177e4SLinus Torvalds /*
31da177e4SLinus Torvalds  * Setup kernel for a Sun3x machine
41da177e4SLinus Torvalds  *
51da177e4SLinus Torvalds  * (C) 1999 Thomas Bogendoerfer (tsbogend@alpha.franken.de)
61da177e4SLinus Torvalds  *
71da177e4SLinus Torvalds  * based on code from Oliver Jowett <oliver@jowett.manawatu.gen.nz>
81da177e4SLinus Torvalds  */
91da177e4SLinus Torvalds 
101da177e4SLinus Torvalds #include <linux/types.h>
111da177e4SLinus Torvalds #include <linux/mm.h>
12813dcf7aSAlexey Dobriyan #include <linux/seq_file.h>
131da177e4SLinus Torvalds #include <linux/console.h>
141da177e4SLinus Torvalds #include <linux/init.h>
151da177e4SLinus Torvalds 
161da177e4SLinus Torvalds #include <asm/machdep.h>
171da177e4SLinus Torvalds #include <asm/irq.h>
181da177e4SLinus Torvalds #include <asm/sun3xprom.h>
191da177e4SLinus Torvalds #include <asm/sun3ints.h>
201da177e4SLinus Torvalds #include <asm/setup.h>
211da177e4SLinus Torvalds #include <asm/oplib.h>
221da177e4SLinus Torvalds 
231da177e4SLinus Torvalds #include "time.h"
241da177e4SLinus Torvalds 
251da177e4SLinus Torvalds volatile char *clock_va;
261da177e4SLinus Torvalds 
271da177e4SLinus Torvalds extern void sun3_get_model(char *model);
281da177e4SLinus Torvalds 
sun3_leds(unsigned int i)291da177e4SLinus Torvalds void sun3_leds(unsigned int i)
301da177e4SLinus Torvalds {
311da177e4SLinus Torvalds 
321da177e4SLinus Torvalds }
331da177e4SLinus Torvalds 
sun3x_get_hardware_list(struct seq_file * m)34813dcf7aSAlexey Dobriyan static void sun3x_get_hardware_list(struct seq_file *m)
351da177e4SLinus Torvalds {
36813dcf7aSAlexey Dobriyan 	seq_printf(m, "PROM Revision:\t%s\n", romvec->pv_monid);
371da177e4SLinus Torvalds }
381da177e4SLinus Torvalds 
391da177e4SLinus Torvalds /*
401da177e4SLinus Torvalds  *  Setup the sun3x configuration info
411da177e4SLinus Torvalds  */
config_sun3x(void)421da177e4SLinus Torvalds void __init config_sun3x(void)
431da177e4SLinus Torvalds {
441da177e4SLinus Torvalds 
451da177e4SLinus Torvalds 	sun3x_prom_init();
461da177e4SLinus Torvalds 
471da177e4SLinus Torvalds 	mach_sched_init      = sun3x_sched_init;
481da177e4SLinus Torvalds 	mach_init_IRQ        = sun3_init_IRQ;
491da177e4SLinus Torvalds 
501da177e4SLinus Torvalds 	mach_reset           = sun3x_reboot;
511da177e4SLinus Torvalds 
521da177e4SLinus Torvalds 	mach_hwclk           = sun3x_hwclk;
531da177e4SLinus Torvalds 	mach_get_model       = sun3_get_model;
541da177e4SLinus Torvalds 	mach_get_hardware_list = sun3x_get_hardware_list;
551da177e4SLinus Torvalds 
561da177e4SLinus Torvalds 	sun3_intreg = (unsigned char *)SUN3X_INTREG;
571da177e4SLinus Torvalds 
581da177e4SLinus Torvalds 	/* only the serial console is known to work anyway... */
591da177e4SLinus Torvalds #if 0
601da177e4SLinus Torvalds 	switch (*(unsigned char *)SUN3X_EEPROM_CONS) {
611da177e4SLinus Torvalds 	case 0x10:
621da177e4SLinus Torvalds 		serial_console = 1;
631da177e4SLinus Torvalds 		conswitchp = NULL;
641da177e4SLinus Torvalds 		break;
651da177e4SLinus Torvalds 	case 0x11:
661da177e4SLinus Torvalds 		serial_console = 2;
671da177e4SLinus Torvalds 		conswitchp = NULL;
681da177e4SLinus Torvalds 		break;
691da177e4SLinus Torvalds 	default:
701da177e4SLinus Torvalds 		serial_console = 0;
711da177e4SLinus Torvalds 		break;
721da177e4SLinus Torvalds 	}
731da177e4SLinus Torvalds #endif
741da177e4SLinus Torvalds 
751da177e4SLinus Torvalds }
761da177e4SLinus Torvalds 
77