diff options
-rw-r--r-- | sys/arch/powerpc/include/autoconf.h | 3 | ||||
-rw-r--r-- | sys/arch/powerpc/include/powerpc.h | 34 |
2 files changed, 33 insertions, 4 deletions
diff --git a/sys/arch/powerpc/include/autoconf.h b/sys/arch/powerpc/include/autoconf.h index 09d5fe6fdf0..652bc8c0d16 100644 --- a/sys/arch/powerpc/include/autoconf.h +++ b/sys/arch/powerpc/include/autoconf.h @@ -1,4 +1,4 @@ -/* $OpenBSD: autoconf.h,v 1.4 1998/08/25 07:42:29 pefo Exp $ */ +/* $OpenBSD: autoconf.h,v 1.5 1999/07/05 21:01:19 rahnds Exp $ */ /* * Copyright (c) 1997 Per Fogelstrom @@ -44,6 +44,7 @@ #define OFWMACH 0 /* Openfirmware drivers */ #define POWER4e 1 /* V.I Power.4e board */ #define PWRSTK 2 /* Motorola Powerstack series */ +#define APPL 3 /* Apple PowerMac machines (OFW?) */ extern int system_type; diff --git a/sys/arch/powerpc/include/powerpc.h b/sys/arch/powerpc/include/powerpc.h index c546a449b91..50006202088 100644 --- a/sys/arch/powerpc/include/powerpc.h +++ b/sys/arch/powerpc/include/powerpc.h @@ -1,4 +1,4 @@ -/* $OpenBSD: powerpc.h,v 1.3 1997/10/13 10:53:48 pefo Exp $ */ +/* $OpenBSD: powerpc.h,v 1.4 1999/07/05 21:01:19 rahnds Exp $ */ /* $NetBSD: powerpc.h,v 1.1 1996/09/30 16:34:30 ws Exp $ */ /* @@ -46,7 +46,35 @@ void mem_regions __P((struct mem_region **, struct mem_region **)); * * Not sure whether boot itself should be implementation dependent instead. XXX */ -void ppc_exit __P((void)) __attribute__((__noreturn__)); -void ppc_boot __P((char *bootspec)) __attribute__((__noreturn__)); +typedef void (exit_f) __P((void)) /*__attribute__((__noreturn__))*/ ; +typedef void (boot_f) __P((char *bootspec)) /* __attribute__((__noreturn__))*/ ; +typedef void (vmon_f) __P((void)); + +/* firmware interface. + * regardless of type of firmware used several items + * are need from firmware to boot up. + * these include: + * memory information + * vmsetup for firmware calls. + * default character print mechanism ??? + * firmware exit (return) + * firmware boot (reset) + * vmon - tell firmware the bsd vm is active. + */ + +typedef void (mem_regions_f)__P((struct mem_region **memp, + struct mem_region **availp)); + +struct firmware { + mem_regions_f *mem_regions; + exit_f *exit; + boot_f *boot; + vmon_f *vmon; + +#ifdef FW_HAS_PUTC + boot_f *putc; +#endif +}; +extern struct firmware *fw; #endif /* _MACHINE_POWERPC_H_ */ |