patch-2.4.19 linux-2.4.19/include/asm-mips/bootinfo.h

Next file: linux-2.4.19/include/asm-mips/branch.h
Previous file: linux-2.4.19/include/asm-mips/bitops.h
Back to the patch index
Back to the overall index

diff -urN linux-2.4.18/include/asm-mips/bootinfo.h linux-2.4.19/include/asm-mips/bootinfo.h
@@ -9,40 +9,38 @@
 #ifndef _ASM_BOOTINFO_H
 #define _ASM_BOOTINFO_H
 
+#include <linux/types.h>
+
 /*
  * Values for machgroup
  */
-#define MACH_GROUP_UNKNOWN      0 /* whatever... */
-#define MACH_GROUP_JAZZ     	1 /* Jazz                                     */
-#define MACH_GROUP_DEC          2 /* Digital Equipment                        */
+#define MACH_GROUP_UNKNOWN      0 /* whatever...                            */
+#define MACH_GROUP_JAZZ     	1 /* Jazz                                   */
+#define MACH_GROUP_DEC          2 /* Digital Equipment                      */
 #define MACH_GROUP_ARC		3 /* Wreckstation Tyne, rPC44, possibly other */
-#define MACH_GROUP_SNI_RM	4 /* Siemens Nixdorf RM series                */
+#define MACH_GROUP_SNI_RM	4 /* Siemens Nixdorf RM series              */
 #define MACH_GROUP_ACN		5
-#define MACH_GROUP_SGI          6 /* Silicon Graphics                         */
-#define MACH_GROUP_COBALT       7 /* Cobalt servers		 	      */
-#define MACH_GROUP_NEC_DDB	8 /* NEC DDB                                  */
-#define MACH_GROUP_BAGET	9 /* Baget                                    */
-#define MACH_GROUP_COSINE      10 /* CoSine Orion                             */
-#define MACH_GROUP_GALILEO     11 /* Galileo Eval Boards                      */
-#define MACH_GROUP_MOMENCO     12 /* Momentum Boards                          */
-#define MACH_GROUP_ITE         13 /* ITE Semi Eval Boards                     */
+#define MACH_GROUP_SGI          6 /* Silicon Graphics                       */
+#define MACH_GROUP_COBALT       7 /* Cobalt servers		 	    */
+#define MACH_GROUP_NEC_DDB	8 /* NEC DDB                                */
+#define MACH_GROUP_BAGET	9 /* Baget                                  */
+#define MACH_GROUP_COSINE      10 /* CoSine Orion                           */
+#define MACH_GROUP_GALILEO     11 /* Galileo Eval Boards                    */
+#define MACH_GROUP_MOMENCO     12 /* Momentum Boards                        */
+#define MACH_GROUP_ITE         13 /* ITE Semi Eval Boards                   */
 #define MACH_GROUP_PHILIPS     14
-#define MACH_GROUP_GLOBESPAN   15 /* Globespan PVR Referrence Board           */
-#define MACH_GROUP_SIBYTE      16 /* Sibyte Eval Boards                       */
-#define MACH_GROUP_TOSHIBA     17 /* Toshiba Reference Systems TSBREF         */
-#define MACH_GROUP_ALCHEMY     18 /* Alchemy Semi Eval Boards*/
-
-#define GROUP_NAMES { "unknown", "Jazz", "Digital", "ARC", "SNI", "ACN",      \
-	"SGI", "Cobalt", "NEC DDB", "Baget", "Cosine", "Galileo", "Momentum", \
-	"ITE", "Philips", "Globepspan", "SiByte", "Toshiba", "Alchemy" }
+#define MACH_GROUP_GLOBESPAN   15 /* Globespan PVR Referrence Board         */
+#define MACH_GROUP_SIBYTE      16 /* Sibyte Eval Boards                     */
+#define MACH_GROUP_TOSHIBA     17 /* Toshiba Reference Systems TSBREF       */
+#define MACH_GROUP_ALCHEMY     18 /* Alchemy Semi Eval Boards               */
+#define MACH_GROUP_NEC_VR41XX  19 /* NEC Vr41xx based boards/gadgets        */
+#define MACH_GROUP_HP_LJ       20 /* Hewlett Packard LaserJet               */
 
 /*
  * Valid machtype values for group unknown (low order halfword of mips_machtype)
  */
 #define MACH_UNKNOWN		0	/* whatever...			*/
 
-#define GROUP_UNKNOWN_NAMES { "unknown" }
-
 /*
  * Valid machtype values for group JAZZ
  */
@@ -50,8 +48,6 @@
 #define MACH_MIPS_MAGNUM_4000	1	/* Mips Magnum 4000 "RC4030"	*/
 #define MACH_OLIVETTI_M700      2	/* Olivetti M700-10 (-15 ??)    */
 
-#define GROUP_JAZZ_NAMES { "Acer PICA 61", "Mips Magnum 4000", "Olivetti M700" }
-
 /*
  * Valid machtype for group DEC 
  */
@@ -66,57 +62,44 @@
 #define MACH_DS5500		8	/* DECstation 5500		*/
 #define MACH_DS5800		9	/* DECstation 5800		*/
 
-#define GROUP_DEC_NAMES { "unknown", "DECstation 2100/3100", "DECstation 5100", \
-	"DECstation 5000/200", "DECstation 5000/1xx", "Personal DECstation 5000/xx", \
-	"DECstation 5000/2x0", "DECstation 5400", "DECstation 5500", \
-	"DECstation 5800" }
-
 /*
  * Valid machtype for group ARC
  */
 #define MACH_DESKSTATION_RPC44  0	/* Deskstation rPC44 */
 #define MACH_DESKSTATION_TYNE	1	/* Deskstation Tyne */
 
-#define GROUP_ARC_NAMES { "Deskstation rPC44", "Deskstation Tyne" }
-
 /*
  * Valid machtype for group SNI_RM
  */
 #define MACH_SNI_RM200_PCI	0	/* RM200/RM300/RM400 PCI series */
 
-#define GROUP_SNI_RM_NAMES { "RM200 PCI" }
-
 /*
  * Valid machtype for group ACN
  */
 #define MACH_ACN_MIPS_BOARD	0       /* ACN MIPS single board        */
 
-#define GROUP_ACN_NAMES { "ACN" }
-
 /*
  * Valid machtype for group SGI
  */
 #define MACH_SGI_INDY		0	/* R4?K and R5K Indy workstations */
 #define MACH_SGI_CHALLENGE_S	1	/* The Challenge S server */
 #define MACH_SGI_INDIGO2	2	/* The Indigo2 system */
-
-#define GROUP_SGI_NAMES { "Indy", "Challenge S", "Indigo2" }
+#define MACH_SGI_IP27		3	/* Origin 200, Origin 2000, Onyx 2 */
+#define MACH_SGI_IP28		4	/* Indigo2 Impact */
+#define MACH_SGI_IP32		5	/* O2 */
 
 /*
  * Valid machtype for group COBALT
  */
 #define MACH_COBALT_27 		 0	/* Proto "27" hardware */
 
-#define GROUP_COBALT_NAMES { "Microserver 27" }
-
 /*
  * Valid machtype for group NEC DDB
  */
 #define MACH_NEC_DDB5074	 0	/* NEC DDB Vrc-5074 */
 #define MACH_NEC_DDB5476         1      /* NEC DDB Vrc-5476 */
 #define MACH_NEC_DDB5477         2      /* NEC DDB Vrc-5477 */
-
-#define GROUP_NEC_DDB_NAMES { "Vrc-5074", "Vrc-5476", "Vrc-5477"}
+#define MACH_NEC_ROCKHOPPER      3      /* Rockhopper base board */
 
 /*
  * Valid machtype for group BAGET
@@ -124,171 +107,74 @@
 #define MACH_BAGET201		0	/* BT23-201 */
 #define MACH_BAGET202		1	/* BT23-202 */
 
-#define GROUP_BAGET_NAMES { "BT23-201", "BT23-202" }
-
 /*
  * Cosine boards.
  */
 #define MACH_COSINE_ORION	0
 
-#define GROUP_COSINE_NAMES { "Orion" }
-
 /*
  * Valid machtype for group GALILEO
  */
 #define MACH_EV96100		0	/* EV96100 */
 #define MACH_EV64120A		1	/* EV64120A */
 
-#define GROUP_GALILEO_NAMES { "EV96100" , "EV64120A" }
-
 /*
  * Valid machtype for group MOMENCO
  */
-#define MACH_MOMENCO_OCELOT		0
-
-#define GROUP_MOMENCO_NAMES { "Ocelot" }
-
+#define MACH_MOMENCO_OCELOT	0
  
 /*
  * Valid machtype for group ITE
  */
 #define MACH_QED_4N_S01B	0	/* ITE8172 based eval board */
  
-#define GROUP_ITE_NAMES { "QED-4N-S01B" } /* the actual board name */
-	
 /*
  * Valid machtype for group Globespan
  */
 #define MACH_IVR       0                  /* IVR eval board */
 
-#define GROUP_GLOBESPAN_NAMES { "IVR" }   /* the actual board name */   
-
 /*
  * Valid machtype for group PHILIPS
  */
 #define MACH_PHILIPS_NINO	0	/* Nino */
 #define MACH_PHILIPS_VELO	1	/* Velo */
 
-#define GROUP_PHILIPS_NAMES { "Nino" , "Velo" }
-
 /*
  * Valid machtype for group SIBYTE
  */
 #define MACH_SWARM              0
 
-#define GROUP_SIBYTE_NAMES {"SWARM" }
-
 /*
  * Valid machtypes for group Toshiba
  */
 #define MACH_PALLAS		0
 #define MACH_TOPAS		1
 #define MACH_JMR		2
-
-#define GROUP_TOSHIBA_NAMES { "Pallas", "TopasCE", "JMR" }
+#define MACH_TOSHIBA_JMR3927    3      /* JMR-TX3927 CPU/IO board */
 
 /*
  * Valid machtype for group Alchemy
  */
 #define MACH_PB1000	0	         /* Au1000-based eval board */
+#define MACH_PB1500	1	         /* Au1500-based eval board */
  
-#define GROUP_ALCHEMY_NAMES { "PB1000" } /* the actual board name */
-
 /*
- * Valid cputype values
+ * Valid machtype for group NEC_VR41XX
  */
-#define CPU_UNKNOWN		0
-#define CPU_R2000		1
-#define CPU_R3000		2
-#define CPU_R3000A		3
-#define CPU_R3041		4
-#define CPU_R3051		5
-#define CPU_R3052		6
-#define CPU_R3081		7
-#define CPU_R3081E		8
-#define CPU_R4000PC		9
-#define CPU_R4000SC		10
-#define CPU_R4000MC		11
-#define CPU_R4200		12
-#define CPU_R4400PC		13
-#define CPU_R4400SC		14
-#define CPU_R4400MC		15
-#define CPU_R4600		16
-#define CPU_R6000		17
-#define CPU_R6000A		18
-#define CPU_R8000		19
-#define CPU_R10000		20
-#define CPU_R4300		21
-#define CPU_R4650		22
-#define CPU_R4700		23
-#define CPU_R5000		24
-#define CPU_R5000A		25
-#define CPU_R4640		26
-#define CPU_NEVADA		27	/* RM5230, RM5260 */
-#define CPU_RM7000		28
-#define CPU_R5432		29
-#define CPU_4KC			30
-#define CPU_5KC			31
-#define CPU_R4310		32
-#define CPU_SB1			33
-#define CPU_TX3912		34
-#define CPU_TX3922		35
-#define CPU_TX3927		36
-#define CPU_AU1000		37
-#define CPU_4KEC		38
-#define CPU_4KSC		39
-#define CPU_VR41XX		40
-#define CPU_LAST		40
-
-
-#define CPU_NAMES { "unknown", "R2000", "R3000", "R3000A", "R3041", "R3051", \
-        "R3052", "R3081", "R3081E", "R4000PC", "R4000SC", "R4000MC",         \
-        "R4200", "R4400PC", "R4400SC", "R4400MC", "R4600", "R6000",          \
-        "R6000A", "R8000", "R10000", "R4300", "R4650", "R4700", "R5000",     \
-        "R5000A", "R4640", "Nevada", "RM7000", "R5432", "MIPS 4Kc",          \
-        "MIPS 5Kc", "R4310", "SiByte SB1", "TX3912", "TX3922", "TX3927",     \
-	"Au1000", "MIPS 4KEc", "MIPS 4KSc", "NEC Vr41xx" }
+#define MACH_NEC_OSPREY                0       /* Osprey eval board */
+
+#define CL_SIZE			(256)
 
-#define COMMAND_LINE_SIZE	256
+const char *get_system_type(void);
+
+extern unsigned long mips_machtype;
+extern unsigned long mips_machgroup;
 
 #define BOOT_MEM_MAP_MAX	32
 #define BOOT_MEM_RAM		1
 #define BOOT_MEM_ROM_DATA	2
 #define BOOT_MEM_RESERVED	3
 
-#ifndef __ASSEMBLY__
-
-/*
- * Some machine parameters passed by the bootloaders. 
- */
-
-struct drive_info_struct {
-	char dummy[32];
-};
-
-/* This is the same as in Milo but renamed for the sake of kernel's */
-/* namespace */
-typedef struct mips_arc_DisplayInfo {	/* video adapter information */
-	unsigned short cursor_x;
-	unsigned short cursor_y;
-	unsigned short columns;
-	unsigned short lines;
-} mips_arc_DisplayInfo;
-
-/* default values for drive info */
-#define DEFAULT_DRIVE_INFO { {0,}}
-
-/*
- * These are the kernel variables initialized from
- * the tag. And they have to be initialized to dummy/default
- * values in setup.c (or whereever suitable) so they are in
- * .data section
- */
-extern struct mips_cpu mips_cpu;
-extern unsigned long mips_machtype;
-extern unsigned long mips_machgroup;
-extern unsigned long mips_tlb_entries;
-
 /*
  * A memory map that's built upon what was determined
  * or specified on the command line.
@@ -296,17 +182,14 @@
 struct boot_mem_map {
 	int nr_map;
 	struct {
-		unsigned long addr;	/* start of memory segment */
-		unsigned long size;	/* size of memory segment */
+		phys_t addr;	/* start of memory segment */
+		phys_t size;	/* size of memory segment */
 		long type;		/* type of memory segment */
 	} map[BOOT_MEM_MAP_MAX];
 };
 
 extern struct boot_mem_map boot_mem_map;
 
-extern void add_memory_region(unsigned long start, unsigned long size,
-			      long type);
-
-#endif /* !__ASSEMBLY__ */
+extern void add_memory_region(phys_t start, phys_t size, long type);
 
 #endif /* _ASM_BOOTINFO_H */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)