diff options
author | Jayachandran C. <jchandra@FreeBSD.org> | 2010-07-29 20:02:56 +0000 |
---|---|---|
committer | Jayachandran C. <jchandra@FreeBSD.org> | 2010-07-29 20:02:56 +0000 |
commit | fbbf115e35891ac40d26c3851583a86f4fe45f08 (patch) | |
tree | 404b0dc2b2b8aa0ab8adefcaec40bf1b5083ab05 /sys/mips/include/vmparam.h | |
parent | a9ec9e9b03bf6cb0dccfaaedf01d7f38d3fcf1f7 (diff) | |
download | src-fbbf115e35891ac40d26c3851583a86f4fe45f08.tar.gz src-fbbf115e35891ac40d26c3851583a86f4fe45f08.zip |
Prepare for 3 level page tables for MIPS.
- Move page table second level shift and mask to param.h
- rename SEGOFSET to SEGMASK
- fix values for 64 bit maximum kernel and user addresses.
Notes
Notes:
svn path=/head/; revision=210627
Diffstat (limited to 'sys/mips/include/vmparam.h')
-rw-r--r-- | sys/mips/include/vmparam.h | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/sys/mips/include/vmparam.h b/sys/mips/include/vmparam.h index 385d30928274..8928aef2ec30 100644 --- a/sys/mips/include/vmparam.h +++ b/sys/mips/include/vmparam.h @@ -51,12 +51,6 @@ * is the top (end) of the user stack. */ #define USRTEXT (1*PAGE_SIZE) -/* - * USRSTACK needs to start a little below 0x8000000 because the R8000 - * and some QED CPUs perform some virtual address checks before the - * offset is calculated. - */ -#define USRSTACK 0x7ffff000 /* Start of user stack */ /* * Virtual memory related constants, all in bytes @@ -103,20 +97,23 @@ #define VM_MAX_MMAP_ADDR VM_MAXUSER_ADDRESS #if defined(__mips_n64) -#define VM_MAXUSER_ADDRESS (VM_MINUSER_ADDRESS + (NPDEPG * NPTEPG * PAGE_SIZE)) +#define VM_MAXUSER_ADDRESS (VM_MINUSER_ADDRESS + (NPDEPG * NBSEG)) #define VM_MIN_KERNEL_ADDRESS ((vm_offset_t)0xc000000000000000) -#define VM_MAX_KERNEL_ADDRESS (VM_MIN_KERNEL_ADDRESS + (NPDEPG * NPTEPG * PAGE_SIZE)) +#define VM_MAX_KERNEL_ADDRESS (VM_MIN_KERNEL_ADDRESS + (NPDEPG * NBSEG)) #else #define VM_MAXUSER_ADDRESS ((vm_offset_t)0x80000000) #define VM_MIN_KERNEL_ADDRESS ((vm_offset_t)0xC0000000) #define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)0xFFFFC000) #endif -#if 0 -#define KERNBASE (VM_MIN_KERNEL_ADDRESS) -#else -#define KERNBASE ((vm_offset_t)(intptr_t)(int32_t)0x80000000) -#endif +#define KERNBASE ((vm_offset_t)(intptr_t)(int32_t)0x80000000) +/* + * USRSTACK needs to start a little below 0x8000000 because the R8000 + * and some QED CPUs perform some virtual address checks before the + * offset is calculated. + */ +#define USRSTACK (VM_MAXUSER_ADDRESS - PAGE_SIZE) + /* * Only one memory domain. */ @@ -205,8 +202,4 @@ */ #define VM_NFREEORDER 9 -#define SEGSHIFT 22 /* LOG2(NBSEG) */ -#define NBSEG (1 << SEGSHIFT) /* bytes/segment */ -#define SEGOFSET (NBSEG-1) /* byte offset into segment */ - #endif /* !_MACHINE_VMPARAM_H_ */ |