summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorThomas Bogendoerfer <tsbogend@alpha.franken.de>1999-02-25 20:55:07 +0000
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>1999-02-25 20:55:07 +0000
commit4a39bb3720ed828a870000425bf9075c60b543c6 (patch)
tree8a857ab03b2ed8073d714fea80a01c382fcf5760 /include
parent830dac0a3978864b567144db781419d9c450b161 (diff)
added stuff for the different ARC memory types
Diffstat (limited to 'include')
-rw-r--r--include/asm-mips/sgialib.h6
-rw-r--r--include/asm-mips/sgiarcs.h39
2 files changed, 33 insertions, 12 deletions
diff --git a/include/asm-mips/sgialib.h b/include/asm-mips/sgialib.h
index c50abbf94..c383fa6b6 100644
--- a/include/asm-mips/sgialib.h
+++ b/include/asm-mips/sgialib.h
@@ -1,4 +1,4 @@
-/* $Id: sgialib.h,v 1.2 1998/07/10 01:14:55 ralf Exp $
+/* $Id: sgialib.h,v 1.3 1998/10/18 13:53:35 tsbogend Exp $
* sgialib.h: SGI ARCS firmware interface library for the Linux kernel.
*
* Copyright (C) 1996 David S. Miller (dm@engr.sgi.com)
@@ -14,6 +14,9 @@ extern struct linux_romvec *romvec;
extern int prom_argc;
extern char **prom_argv, **prom_envp;
+extern int prom_flags;
+#define PROM_FLAG_ARCS 1
+
/* Init the PROM library and it's internal data structures. Called
* at boot time from head.S before start_kernel is invoked.
*/
@@ -31,6 +34,7 @@ extern void prom_printf(char *fmt, ...);
struct prom_pmemblock {
unsigned long base; /* Within KSEG0. */
unsigned int size; /* In bytes. */
+ unsigned int type; /* free or prom memory */
};
/* Get next memory descriptor after CURR, returns first descriptor
diff --git a/include/asm-mips/sgiarcs.h b/include/asm-mips/sgiarcs.h
index 3dc3b8b9f..e0f735b61 100644
--- a/include/asm-mips/sgiarcs.h
+++ b/include/asm-mips/sgiarcs.h
@@ -1,4 +1,4 @@
-/* $Id: sgiarcs.h,v 1.2 1998/07/08 16:01:57 ralf Exp $
+/* $Id: sgiarcs.h,v 1.2 1998/07/10 01:14:55 ralf Exp $
*
* SGI ARCS firmware interface defines.
*
@@ -88,19 +88,36 @@ struct linux_sysid {
};
/* ARCS prom memory descriptors. */
-enum linux_memtypes {
- eblock, /* exception block */
- rvpage, /* ARCS romvec page */
- fcontig, /* Contiguous and free */
- free, /* Generic free memory */
- bmem, /* Borken memory, don't use */
- prog, /* A loaded program resides here */
- atmp, /* ARCS temporary storage area, wish Sparc OpenBoot told this */
- aperm, /* ARCS permanent storage... */
+enum arcs_memtypes {
+ arcs_eblock, /* exception block */
+ arcs_rvpage, /* ARCS romvec page */
+ arcs_fcontig, /* Contiguous and free */
+ arcs_free, /* Generic free memory */
+ arcs_bmem, /* Borken memory, don't use */
+ arcs_prog, /* A loaded program resides here */
+ arcs_atmp, /* ARCS temporary storage area, wish Sparc OpenBoot told this */
+ arcs_aperm, /* ARCS permanent storage... */
+};
+
+/* ARC has slightly different types than ARCS */
+enum arc_memtypes {
+ arc_eblock, /* exception block */
+ arc_rvpage, /* romvec page */
+ arc_free, /* Generic free memory */
+ arc_bmem, /* Borken memory, don't use */
+ arc_prog, /* A loaded program resides here */
+ arc_atmp, /* temporary storage area */
+ arc_aperm, /* permanent storage */
+ arc_fcontig, /* Contiguous and free */
+};
+
+union linux_memtypes {
+ enum arcs_memtypes arcs;
+ enum arc_memtypes arc;
};
struct linux_mdesc {
- enum linux_memtypes type;
+ union linux_memtypes type;
unsigned long base;
unsigned long pages;
};