aboutsummaryrefslogtreecommitdiff
path: root/sys/powerpc/include/sr.h
diff options
context:
space:
mode:
authorPeter Grehan <grehan@FreeBSD.org>2004-02-11 07:27:34 +0000
committerPeter Grehan <grehan@FreeBSD.org>2004-02-11 07:27:34 +0000
commit7c2779715ca7661187d824ecd0a4f79104510b9e (patch)
treee4823e473382c2aa93ccc87ad7c5a76631560c39 /sys/powerpc/include/sr.h
parentd1850887de953034f32fa9ef19b658d5cb4d27f5 (diff)
downloadsrc-7c2779715ca7661187d824ecd0a4f79104510b9e.tar.gz
src-7c2779715ca7661187d824ecd0a4f79104510b9e.zip
Cleaned up param.h:
- culled long-dead #define's - segment register defs moved to sr.h - NPMAPS moved to pmap.h - KERNBASE moved to vmparam.h - removed include of <machine/cpu.h> and fixed src files that relied on this. Modifying segment register code no longer causes gcc rebuilds :-)
Notes
Notes: svn path=/head/; revision=125687
Diffstat (limited to 'sys/powerpc/include/sr.h')
-rw-r--r--sys/powerpc/include/sr.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/powerpc/include/sr.h b/sys/powerpc/include/sr.h
index 449096453b57..e4a29ece7fed 100644
--- a/sys/powerpc/include/sr.h
+++ b/sys/powerpc/include/sr.h
@@ -41,4 +41,14 @@
#define SR_N 0x10000000 /* No-execute protection */
#define SR_VSID_MASK 0x00ffffff /* Virtual Segment ID mask */
+/* Kernel segment register usage */
+#define USER_SR 13
+#define KERNEL_SR 14
+#define KERNEL_VSIDBITS 0xfffff
+#define KERNEL_SEGMENT (0xfffff0 + KERNEL_SR)
+#define EMPTY_SEGMENT 0xfffff0
+#define USER_ADDR ((void *)(USER_SR << ADDR_SR_SHFT))
+#define SEGMENT_LENGTH 0x10000000
+#define SEGMENT_MASK 0xf0000000
+
#endif /* !_MACHINE_SR_H_ */