Home | History | Annotate | Line # | Download | only in include
prom.h revision 1.6
      1  1.6   wdk /*	$NetBSD: prom.h,v 1.6 2001/02/06 04:32:29 wdk Exp $	*/
      2  1.1   wdk 
      3  1.1   wdk /*
      4  1.1   wdk  * Copyright (c) 2000 The NetBSD Foundation, Inc.
      5  1.1   wdk  * All rights reserved.
      6  1.1   wdk  *
      7  1.1   wdk  * This code is derived from software contributed to The NetBSD Foundation
      8  1.1   wdk  * by Wayne Knowles
      9  1.1   wdk  *
     10  1.1   wdk  * Redistribution and use in source and binary forms, with or without
     11  1.1   wdk  * modification, are permitted provided that the following conditions
     12  1.1   wdk  * are met:
     13  1.1   wdk  * 1. Redistributions of source code must retain the above copyright
     14  1.1   wdk  *    notice, this list of conditions and the following disclaimer.
     15  1.1   wdk  * 2. Redistributions in binary form must reproduce the above copyright
     16  1.1   wdk  *    notice, this list of conditions and the following disclaimer in the
     17  1.1   wdk  *    documentation and/or other materials provided with the distribution.
     18  1.1   wdk  * 3. All advertising materials mentioning features or use of this software
     19  1.1   wdk  *    must display the following acknowledgement:
     20  1.1   wdk  *        This product includes software developed by the NetBSD
     21  1.1   wdk  *        Foundation, Inc. and its contributors.
     22  1.1   wdk  * 4. Neither the name of The NetBSD Foundation nor the names of its
     23  1.1   wdk  *    contributors may be used to endorse or promote products derived
     24  1.1   wdk  *    from this software without specific prior written permission.
     25  1.1   wdk  *
     26  1.1   wdk  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
     27  1.1   wdk  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
     28  1.1   wdk  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     29  1.1   wdk  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
     30  1.1   wdk  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     31  1.1   wdk  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     32  1.1   wdk  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     33  1.1   wdk  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     34  1.1   wdk  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     35  1.1   wdk  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     36  1.1   wdk  * POSSIBILITY OF SUCH DAMAGE.
     37  1.1   wdk  */
     38  1.1   wdk 
     39  1.1   wdk /*
     40  1.1   wdk  * Entry points into PROM firmware functions for MIPS machines
     41  1.1   wdk  */
     42  1.1   wdk 
     43  1.2   wdk #ifndef _MIPSCO_PROM_H
     44  1.2   wdk #define _MIPSCO_PROM_H
     45  1.2   wdk 
     46  1.2   wdk #ifndef _LOCORE
     47  1.2   wdk #include <sys/types.h>
     48  1.2   wdk #include <sys/cdefs.h>
     49  1.1   wdk 
     50  1.1   wdk struct mips_prom {
     51  1.1   wdk 
     52  1.1   wdk 	/*
     53  1.1   wdk 	 * transferred to on hardware reset, configures MIPS boards,
     54  1.1   wdk 	 * runs diags, check for appropriate auto boot action in
     55  1.1   wdk 	 * "bootmode" environment variable and performs that action.
     56  1.1   wdk 	 */
     57  1.1   wdk 	void	(*prom_reset)	__P((void)) __attribute__((__noreturn__));
     58  1.1   wdk 
     59  1.1   wdk 	/*
     60  1.1   wdk 	 * called to utilize prom to boot new image.  After the booted
     61  1.1   wdk 	 * program returns control can either be returned to the
     62  1.1   wdk 	 * original caller of the exec routine or to the prom monitor.
     63  1.1   wdk 	 * (to return to the original caller, the new program must
     64  1.1   wdk 	 * not destroy any text, data, or stack of the parent.  the
     65  1.1   wdk 	 * new programs stack continues on the parents stack.
     66  1.1   wdk 	 */
     67  1.1   wdk 	int	(*prom_exec)	__P((void));
     68  1.1   wdk 
     69  1.1   wdk 	/* re-enter the prom command parser, do not reset prom state	*/
     70  1.1   wdk 	void	(*prom_restart) __P((void)) __attribute__((__noreturn__));
     71  1.1   wdk 
     72  1.1   wdk 	/* reinitialize prom state and re-enter the prom command parser */
     73  1.1   wdk 	void	(*prom_reinit)	__P((void)) __attribute__((__noreturn__));
     74  1.1   wdk 
     75  1.1   wdk 	/* reboot machine using current bootmode setting.  No diags */
     76  1.1   wdk 	void	(*prom_reboot)	__P((void)) __attribute__((__noreturn__));
     77  1.1   wdk 
     78  1.1   wdk 	/* perform an autoboot sequence, no configuration or diags run */
     79  1.1   wdk 	void	(*prom_autoboot) __P((void)) __attribute__((__noreturn__));
     80  1.1   wdk 
     81  1.1   wdk 	/*
     82  1.1   wdk 	 * these routines access prom "saio" routines, and may be used
     83  1.1   wdk 	 * by standalone programs that would like to use prom io
     84  1.1   wdk 	 */
     85  1.1   wdk 	int	(*prom_open)		__P((char *, int, ...));
     86  1.1   wdk 	int	(*prom_read)		__P((int, void *, int));
     87  1.1   wdk 	int	(*prom_write)		__P((int, void *, int));
     88  1.3   wdk 	int	(*prom_ioctl)		__P((int, long, ...));
     89  1.1   wdk 	int	(*prom_close)		__P((int));
     90  1.1   wdk 	int	(*prom_getchar)		__P((void));
     91  1.1   wdk 	int	(*prom_putchar)		__P((int c));
     92  1.1   wdk 	void	(*prom_showchar)	__P((int c));
     93  1.1   wdk 	char * 	(*prom_gets)		__P((char *s));
     94  1.1   wdk 	void	(*prom_puts)		__P((const char *));
     95  1.1   wdk 	int	(*prom_printf)		__P((const char *, ...));
     96  1.1   wdk 
     97  1.1   wdk 	/* prom protocol entry points */
     98  1.1   wdk 	void	(*prom_initproto)	__P((void)); /* ??? */
     99  1.1   wdk 	void	(*prom_protoenable)	__P((void)); /* ??? */
    100  1.1   wdk 	void	(*prom_protodisable)	__P((void)); /* ??? */
    101  1.1   wdk 	void	(*prom_getpkt)		__P((void)); /* ??? */
    102  1.1   wdk 	void	(*prom_putpkt)		__P((void)); /* ??? */
    103  1.1   wdk 
    104  1.1   wdk 	/*
    105  1.1   wdk 	 * read-modify-write routine use special cpu board circuitry to
    106  1.1   wdk 	 * accomplish vme bus r-m-w cycles.
    107  1.1   wdk 	 */
    108  1.1   wdk 	void	(*prom_orw_rmw)		__P((void));
    109  1.1   wdk 	void	(*prom_orh_rmw)		__P((void));
    110  1.1   wdk 	void	(*prom_orb_rmw)		__P((void));
    111  1.1   wdk 	void	(*prom_andw_rmw)	__P((void));
    112  1.1   wdk 	void	(*prom_andh_rmw)	__P((void));
    113  1.1   wdk 	void	(*prom_andb_rmw)	__P((void));
    114  1.1   wdk 
    115  1.1   wdk 	/*
    116  1.1   wdk 	 * cache control entry points
    117  1.1   wdk 	 * flushcache is called without arguments and invalidates entire
    118  1.1   wdk 	 *      contents of both i and d caches
    119  1.1   wdk 	 * clearcache is called with a base address and length (where
    120  1.1   wdk 	 *      address is either K0, K1, or physical) and clears both
    121  1.1   wdk 	 *      i and d cache for entries that alias to specified address
    122  1.1   wdk 	 *      range.
    123  1.1   wdk 	 */
    124  1.1   wdk 	void	(*prom_flushcache)	__P((void));
    125  1.4   wdk 	void	(*prom_clearcache)	__P((void *, size_t));
    126  1.1   wdk 
    127  1.1   wdk 	/*
    128  1.1   wdk 	 * Libc compatible functions
    129  1.1   wdk 	 */
    130  1.1   wdk 	void	(*prom_setjmp)		__P((void));
    131  1.1   wdk 	void	(*prom_longjmp)		__P((void));
    132  1.1   wdk 	void	(*prom_bevutlb)		__P((void));
    133  1.1   wdk 	char *	(*prom_getenv)		__P((char *name));
    134  1.1   wdk 	int	(*prom_setenv)		__P((char *name, char *val));
    135  1.1   wdk 	int	(*prom_atob)		__P((char *s));
    136  1.1   wdk 	int	(*prom_strcmp)		__P((char *s1, char *s2));
    137  1.1   wdk 	int	(*prom_strlen)		__P((char *s));
    138  1.1   wdk 	char *	(*prom_strcpy)		__P((char *s1, char *s2));
    139  1.1   wdk 	char *	(*prom_strcat)		__P((char *s1, char *s2));
    140  1.1   wdk 
    141  1.1   wdk 	/*
    142  1.1   wdk 	 * command parser entry points
    143  1.1   wdk 	 */
    144  1.1   wdk 	void	(*prom_parser)		__P((void)); /* ??? */
    145  1.1   wdk 	void	(*prom_range)		__P((void)); /* ??? */
    146  1.1   wdk 	void	(*prom_argvize)		__P((void)); /* ??? */
    147  1.1   wdk 	void	(*prom_help)		__P((void));
    148  1.1   wdk 
    149  1.1   wdk 	/*
    150  1.1   wdk 	 * prom commands
    151  1.1   wdk 	 */
    152  1.1   wdk 	void	(*prom_dumpcmd)		__P((void));
    153  1.1   wdk 	void	(*prom_setenvcmd)	__P((void));
    154  1.1   wdk 	void	(*prom_unsetenvcmd)	__P((void));
    155  1.1   wdk 	void	(*prom_bevexcept)	__P((void));
    156  1.1   wdk 	void	(*prom_enablecmd)	__P((void));
    157  1.1   wdk 	void	(*prom_disablecmd)	__P((void));
    158  1.1   wdk 
    159  1.1   wdk 	/*
    160  1.1   wdk 	 * clear existing fault handlers
    161  1.1   wdk 	 * used by clients that link to prom on situations where client has
    162  1.1   wdk 	 * interrupted out of prom code and wish to reenter without being
    163  1.1   wdk 	 * tripped up by any pending prom timers set earlier.
    164  1.1   wdk 	 */
    165  1.1   wdk 	void	(*prom_clearnofault)	__P((void));
    166  1.1   wdk 
    167  1.1   wdk 	void	(*prom_notimpl)		__P((void));
    168  1.1   wdk 
    169  1.1   wdk 	/*
    170  1.1   wdk 	 * PROM_NVGET, PROM_NVSET will get/set information in the NVRAM.
    171  1.1   wdk 	 * Both of these routines take indexes as opposed to addresses
    172  1.1   wdk 	 * to guarantee portability between various platforms
    173  1.1   wdk 	 */
    174  1.2   wdk 	int	(*prom_nvget)		__P((int));
    175  1.2   wdk 	void	(*prom_nvset)		__P((void));
    176  1.1   wdk };
    177  1.1   wdk 
    178  1.1   wdk extern struct mips_prom *callv;
    179  1.1   wdk 
    180  1.2   wdk extern void prom_init __P((void));
    181  1.2   wdk 
    182  1.2   wdk #endif	/* _LOCORE */
    183  1.2   wdk 
    184  1.1   wdk /*
    185  1.1   wdk  * Macro to help call a prom function
    186  1.1   wdk  */
    187  1.1   wdk #define MIPS_PROM(func)		(callv->prom_##func)
    188  1.1   wdk 
    189  1.1   wdk /*
    190  1.2   wdk  * Return the address for a given prom function number
    191  1.2   wdk  */
    192  1.2   wdk #define	MIPS_PROM_ENTRY(x)	(0xbfc00000+((x)*8))
    193  1.2   wdk 
    194  1.2   wdk /*
    195  1.2   wdk  * MIPS PROM firmware functions:
    196  1.2   wdk  *
    197  1.2   wdk  *	MIPS_PROM_RESET		Run diags, check bootmode, reinit.
    198  1.2   wdk  *	MIPS_PROM_EXEC		Load new program image.
    199  1.2   wdk  *	MIPS_PROM_RESTART	Re-enter monitor command loop.
    200  1.2   wdk  *	MIPS_PROM_REINIT	Re-init monitor, then cmd loop.
    201  1.2   wdk  *	MIPS_PROM_REBOOT	Check bootmode, no config.
    202  1.2   wdk  *	MIPS_PROM_AUTOBOOT	Autoboot the system.
    203  1.2   wdk  *
    204  1.2   wdk  * The following routines access PROM saio routines and may be used by
    205  1.2   wdk  * standalone programs that would like to use PROM I/O:
    206  1.2   wdk  *
    207  1.2   wdk  *	MIPS_PROM_OPEN		Open a file.
    208  1.2   wdk  *	MIPS_PROM_READ		Read from a file.
    209  1.2   wdk  *	MIPS_PROM_WRITE		Write to a file.
    210  1.2   wdk  *	MIPS_PROM_IOCTL		Ioctl on a file.
    211  1.2   wdk  *	MIPS_PROM_CLOSE		Close a file.
    212  1.2   wdk  *	MIPS_PROM_GETCHAR	Read character from console.
    213  1.2   wdk  *	MIPS_PROM_PUTCHAR	Put character on console.
    214  1.2   wdk  *	MIPS_PROM_SHOWCHAR	Show a char visibly.
    215  1.2   wdk  *	MIPS_PROM_GETS		gets with editing.
    216  1.2   wdk  *	MIPS_PROM_PUTS		Put string to console.
    217  1.2   wdk  *	MIPS_PROM_PRINTF	Kernel style printf to console.
    218  1.2   wdk  *
    219  1.2   wdk  *  PROM protocol entry points:
    220  1.2   wdk  *
    221  1.2   wdk  *	MIPS_PROM_INITPROTO	Initialize protocol.
    222  1.2   wdk  *	MIPS_PROM_PROTOENABLE	Enable protocol mode.
    223  1.2   wdk  *	MIPS_PROM_PROTODISABLE	Disable protocol mode.
    224  1.2   wdk  *	MIPS_PROM_GETPKT	Get protocol packet.
    225  1.2   wdk  *	MIPS_PROM_PUTPKT	Put protocol packet.
    226  1.2   wdk  *
    227  1.2   wdk  *   Atomic Read-Modify-Write functions
    228  1.2   wdk  *
    229  1.2   wdk  *	MIPS_PROM_RMW_OR32	r-m-w OR word.
    230  1.2   wdk  *	MIPS_PROM_RMW_OR16	r-m-w OR halfword.
    231  1.2   wdk  *	MIPS_PROM_RMW_OR8	r-m-w OR or byte.
    232  1.2   wdk  *	MIPS_PROM_RMW_AND32	r-m-w AND word.
    233  1.2   wdk  *	MIPS_PROM_RMW_AND16	r-m-w AND halfword.
    234  1.2   wdk  *	MIPS_PROM_RMW_AND8	r-m-w AND byte.
    235  1.2   wdk  *
    236  1.2   wdk  *	MIPS_PROM_FLUSHCACHE	Flush entire cache ().
    237  1.2   wdk  *	MIPS_PROM_CLEARCACHE	Clear I & D cache in range (addr, len).
    238  1.2   wdk  *	MIPS_PROM_SETJMP	Save registers in a buffer.
    239  1.2   wdk  *	MIPS_PROM_LONGJMP	Get register back from buffer.
    240  1.2   wdk  *	MIPS_PROM_BEVUTLB	utlbmiss boot exception vector
    241  1.2   wdk  *	MIPS_PROM_GETENV	Gets a string from system environment.
    242  1.2   wdk  *	MIPS_PROM_SETENV	Sets a string in system environment.
    243  1.2   wdk  *	MIPS_PROM_ATOB		Converts ascii string to number.
    244  1.2   wdk  *	MIPS_PROM_STRCMP	Compares strings (strcmp).
    245  1.2   wdk  *	MIPS_PROM_STRLEN	Length of string (strlen).
    246  1.2   wdk  *	MIPS_PROM_STRCPY	Copies string (strcpy).
    247  1.2   wdk  *	MIPS_PROM_STRCAT	Appends string (strcat).
    248  1.2   wdk  *	MIPS_PROM_PARSER	Command parser.
    249  1.2   wdk  *	MIPS_PROM_RANGE		Address range parser
    250  1.2   wdk  *	MIPS_PROM_ARGVIZE	Parses string to argc,argv.
    251  1.2   wdk  *	MIPS_PROM_HELP		Help on prom commands.
    252  1.2   wdk  *	MIPS_PROM_DUMP		Dump memory command.
    253  1.2   wdk  *	MIPS_PROM_SETENVCMD	Setenv command.
    254  1.2   wdk  *	MIPS_PROM_UNSETENVCMD	Unsetenv command.
    255  1.2   wdk  *	MIPS_PROM_PRINTENV	Print environment command.
    256  1.2   wdk  *	MIPS_PROM_BEVEXCEPT	General boot exception vector
    257  1.2   wdk  *	MIPS_PROM_ENABLE	Performs prom enable command.
    258  1.2   wdk  *	MIPS_PROM_DISABLE	Performs prom disable command.
    259  1.2   wdk  *	MIPS_PROM_CLEARNOFAULT	Clear existing fault handlers.
    260  1.2   wdk  *	MIPS_PROM_NOTIMPL	Guaranteed to be not implemented
    261  1.2   wdk  *	MIPS_PROM_NVGET		Read bytes from NVRAM
    262  1.2   wdk  *	MIPS_PROM_NVSET		Write bytes to NVRAM
    263  1.2   wdk  */
    264  1.2   wdk 
    265  1.2   wdk #define	MIPS_PROM_RESET		MIPS_PROM_ENTRY(0)
    266  1.2   wdk #define	MIPS_PROM_EXEC		MIPS_PROM_ENTRY(1)
    267  1.2   wdk #define	MIPS_PROM_RESTART	MIPS_PROM_ENTRY(2)
    268  1.2   wdk #define	MIPS_PROM_REINIT	MIPS_PROM_ENTRY(3)
    269  1.2   wdk #define	MIPS_PROM_REBOOT	MIPS_PROM_ENTRY(4)
    270  1.2   wdk #define	MIPS_PROM_AUTOBOOT	MIPS_PROM_ENTRY(5)
    271  1.2   wdk #define	MIPS_PROM_OPEN		MIPS_PROM_ENTRY(6)
    272  1.2   wdk #define	MIPS_PROM_READ		MIPS_PROM_ENTRY(7)
    273  1.2   wdk #define	MIPS_PROM_WRITE		MIPS_PROM_ENTRY(8)
    274  1.2   wdk #define	MIPS_PROM_IOCTL		MIPS_PROM_ENTRY(9)
    275  1.2   wdk #define	MIPS_PROM_CLOSE		MIPS_PROM_ENTRY(10)
    276  1.2   wdk #define	MIPS_PROM_GETCHAR	MIPS_PROM_ENTRY(11)
    277  1.2   wdk #define	MIPS_PROM_PUTCHAR	MIPS_PROM_ENTRY(12)
    278  1.2   wdk #define	MIPS_PROM_SHOWCHAR	MIPS_PROM_ENTRY(13)
    279  1.2   wdk #define	MIPS_PROM_GETS		MIPS_PROM_ENTRY(14)
    280  1.2   wdk #define	MIPS_PROM_PUTS		MIPS_PROM_ENTRY(15)
    281  1.2   wdk #define	MIPS_PROM_PRINTF	MIPS_PROM_ENTRY(16)
    282  1.2   wdk #define	MIPS_PROM_INITPROTO	MIPS_PROM_ENTRY(17)
    283  1.2   wdk #define	MIPS_PROM_PROTOENABLE	MIPS_PROM_ENTRY(18)
    284  1.2   wdk #define	MIPS_PROM_PROTODISABLE	MIPS_PROM_ENTRY(19)
    285  1.2   wdk #define	MIPS_PROM_GETPKT	MIPS_PROM_ENTRY(20)
    286  1.2   wdk #define	MIPS_PROM_PUTPKT	MIPS_PROM_ENTRY(21)
    287  1.2   wdk #define	MIPS_PROM_ORW_RMW	MIPS_PROM_ENTRY(22)
    288  1.2   wdk #define	MIPS_PROM_ORH_RMW	MIPS_PROM_ENTRY(23)
    289  1.2   wdk #define	MIPS_PROM_ORB_RMW	MIPS_PROM_ENTRY(24)
    290  1.2   wdk #define	MIPS_PROM_ANDW_RMW	MIPS_PROM_ENTRY(25)
    291  1.2   wdk #define	MIPS_PROM_ANDH_RMW	MIPS_PROM_ENTRY(26)
    292  1.2   wdk #define	MIPS_PROM_ANDB_RMW	MIPS_PROM_ENTRY(27)
    293  1.2   wdk #define	MIPS_PROM_FLUSHCACHE	MIPS_PROM_ENTRY(28)
    294  1.2   wdk #define	MIPS_PROM_CLEARCACHE	MIPS_PROM_ENTRY(29)
    295  1.2   wdk #define	MIPS_PROM_SETJMP	MIPS_PROM_ENTRY(30)
    296  1.2   wdk #define	MIPS_PROM_LONGJMP	MIPS_PROM_ENTRY(31)
    297  1.2   wdk #define	MIPS_PROM_BEVUTLB	MIPS_PROM_ENTRY(32)
    298  1.2   wdk #define	MIPS_PROM_GETENV	MIPS_PROM_ENTRY(33)
    299  1.2   wdk #define	MIPS_PROM_SETENV	MIPS_PROM_ENTRY(34)
    300  1.2   wdk #define	MIPS_PROM_ATOB		MIPS_PROM_ENTRY(35)
    301  1.2   wdk #define	MIPS_PROM_STRCMP	MIPS_PROM_ENTRY(36)
    302  1.2   wdk #define	MIPS_PROM_STRLEN	MIPS_PROM_ENTRY(37)
    303  1.2   wdk #define	MIPS_PROM_STRCPY	MIPS_PROM_ENTRY(38)
    304  1.2   wdk #define	MIPS_PROM_STRCAT	MIPS_PROM_ENTRY(39)
    305  1.2   wdk #define	MIPS_PROM_PARSER	MIPS_PROM_ENTRY(40)
    306  1.2   wdk #define	MIPS_PROM_RANGE		MIPS_PROM_ENTRY(41)
    307  1.2   wdk #define	MIPS_PROM_ARGVIZE	MIPS_PROM_ENTRY(42)
    308  1.2   wdk #define	MIPS_PROM_HELP		MIPS_PROM_ENTRY(43)
    309  1.2   wdk #define	MIPS_PROM_DUMP		MIPS_PROM_ENTRY(44)
    310  1.2   wdk #define	MIPS_PROM_SETENVCMD	MIPS_PROM_ENTRY(45)
    311  1.2   wdk #define	MIPS_PROM_UNSETENVCMD	MIPS_PROM_ENTRY(46)
    312  1.2   wdk #define	MIPS_PROM_PRINTENV	MIPS_PROM_ENTRY(47)
    313  1.2   wdk #define	MIPS_PROM_BEVEXCEPT	MIPS_PROM_ENTRY(48)
    314  1.2   wdk #define	MIPS_PROM_ENABLE	MIPS_PROM_ENTRY(49)
    315  1.2   wdk #define	MIPS_PROM_DISABLE	MIPS_PROM_ENTRY(50)
    316  1.2   wdk #define	MIPS_PROM_CLEARNOFAULT	MIPS_PROM_ENTRY(51)
    317  1.2   wdk #define	MIPS_PROM_NOTIMPLEMENT	MIPS_PROM_ENTRY(52)
    318  1.2   wdk #define MIPS_PROM_NVGET		MIPS_PROM_ENTRY(53)
    319  1.2   wdk #define MIPS_PROM_NVSET		MIPS_PROM_ENTRY(54)
    320  1.5  matt 
    321  1.6   wdk #if defined(_KERNEL) && !defined(__ASSEMBLER__)
    322  1.5  matt extern void prom_init (void);
    323  1.5  matt extern int prom_getconsole (void);
    324  1.5  matt #endif
    325  1.1   wdk 
    326  1.2   wdk #endif /* ! _MIPSCO_PROM_H */
    327