patch-2.1.97 linux/include/asm-ppc/processor.h
Next file: linux/include/asm-ppc/prom.h
Previous file: linux/include/asm-ppc/pmu.h
Back to the patch index
Back to the overall index
- Lines: 117
- Date:
Tue Apr 14 17:34:00 1998
- Orig file:
v2.1.96/linux/include/asm-ppc/processor.h
- Orig date:
Fri Jan 16 20:36:39 1998
diff -u --recursive --new-file v2.1.96/linux/include/asm-ppc/processor.h linux/include/asm-ppc/processor.h
@@ -24,7 +24,11 @@
#define MSR_RI (1<<1) /* Recoverable Exception */
#define MSR_LE (1<<0) /* Little-Endian enable */
+#ifdef CONFIG_APUS
+#define MSR_ MSR_ME|MSR_FE0|MSR_FE1|MSR_IP|MSR_RI
+#else
#define MSR_ MSR_ME|MSR_FE0|MSR_FE1|MSR_RI
+#endif
#define MSR_KERNEL MSR_|MSR_IR|MSR_DR
#define MSR_USER MSR_KERNEL|MSR_PR|MSR_EE
@@ -58,6 +62,8 @@
#define _MACH_prep 1
#define _MACH_Pmac 2 /* pmac or pmac clone (non-chrp) */
#define _MACH_chrp 4 /* chrp machine */
+#define _MACH_mbx 8 /* Motorola MBX board */
+#define _MACH_apus 16 /* amiga with phase5 powerup */
/* see residual.h for these */
#define _PREP_Motorola 0x01 /* motorola prep */
@@ -117,6 +123,18 @@
#define IABR 1010 /* Instruction Address Breakpoint */
#define DEC 22 /* Decrementer */
#define EAR 282 /* External Address Register */
+#define L2CR 1017 /* PPC 750 L2 control register */
+
+#define THRM1 1020
+#define THRM2 1021
+#define THRM3 1022
+#define THRM1_TIN 0x1
+#define THRM1_TIV 0x2
+#define THRM1_THRES (0x7f<<2)
+#define THRM1_TID (1<<29)
+#define THRM1_TIE (1<<30)
+#define THRM1_V (1<<31)
+#define THRM3_E (1<<31)
/* Segment Registers */
#define SR0 0
@@ -146,18 +164,36 @@
#ifdef CONFIG_PREP
#define _machine (_MACH_prep)
#define is_prep (1)
+#define is_chrp (0)
+#define have_of (0)
#endif /* CONFIG_PREP */
#ifdef CONFIG_CHRP
#define _machine (_MACH_chrp)
#define is_prep (0)
+#define is_chrp (1)
+#define have_of (1)
#endif /* CONFIG_CHRP */
#ifdef CONFIG_PMAC
#define _machine (_MACH_Pmac)
#define is_prep (0)
+#define is_chrp (0)
+#define have_of (1)
#endif /* CONFIG_PMAC */
+#ifdef CONFIG_MBX
+#define _machine (_MACH_mbx)
+#define is_prep (0)
+#define is_chrp (0)
+#define have_of (0)
+#endif /* CONFIG_MBX */
+
+#ifdef CONFIG_APUS
+#define _machine (_MACH_apus)
+#define is_prep (0)
+#endif /* CONFIG_APUS */
+
#else /* CONFIG_MACH_SPECIFIC */
extern int _machine;
@@ -165,10 +201,13 @@
/* if we're a prep machine */
#define is_prep (_machine == _MACH_prep)
-#endif /* CONFIG_MACH_SPECIFIC */
+/* if we're a chrp machine */
+#define is_chrp (_machine == _MACH_chrp)
/* if we have openfirmware */
extern unsigned long have_of;
+#endif /* CONFIG_MACH_SPECIFIC */
+
/* what kind of prep workstation we are */
extern int _prep_type;
@@ -216,6 +255,7 @@
double fpr[32]; /* Complete floating point set */
unsigned long fpscr_pad; /* fpr ... fpscr must be contiguous */
unsigned long fpscr; /* Floating point status */
+ unsigned long smp_fork_ret;
};
#define INIT_SP (sizeof(init_stack) + (unsigned long) &init_stack)
@@ -227,10 +267,14 @@
(struct pt_regs *)INIT_SP - 1, /* regs */ \
KERNEL_DS, /*fs*/ \
0, /* last_syscall */ \
- {0}, 0, 0 \
+ {0}, 0, 0, 0 \
}
-#define INIT_MMAP { &init_mm, KERNELBASE/*0*/, 0xffffffff/*0x40000000*/, \
+/*
+ * Note: the vm_start and vm_end fields here should *not*
+ * be in kernel space. (Could vm_end == vm_start perhaps?)
+ */
+#define INIT_MMAP { &init_mm, 0, 0x1000, \
PAGE_SHARED, VM_READ | VM_WRITE | VM_EXEC }
/*
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov