diff options
author | Robert Morris <[email protected]> | 2019-06-11 09:57:14 -0400 |
---|---|---|
committer | Robert Morris <[email protected]> | 2019-06-11 09:57:14 -0400 |
commit | 5753553213df8f9de851adb68377db43faecb91f (patch) | |
tree | 3b629ff54897fca414146677532cb459a2ed11ba /memlayout.h | |
parent | 91ba81110acd3163f7de3580b677eece0c57f5e7 (diff) | |
download | xv6-labs-5753553213df8f9de851adb68377db43faecb91f.tar.gz xv6-labs-5753553213df8f9de851adb68377db43faecb91f.tar.bz2 xv6-labs-5753553213df8f9de851adb68377db43faecb91f.zip |
separate source into kernel/ user/ mkfs/
Diffstat (limited to 'memlayout.h')
-rw-r--r-- | memlayout.h | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/memlayout.h b/memlayout.h deleted file mode 100644 index 462986c..0000000 --- a/memlayout.h +++ /dev/null @@ -1,50 +0,0 @@ -// Physical memory layout - -// qemu -machine virt is set up like this, -// based on qemu's hw/riscv/virt.c: -// -// 00001000 -- boot ROM, provided by qemu -// 02000000 -- CLINT -// 0C000000 -- PLIC -// 10000000 -- uart0 registers -// 80000000 -- boot ROM jumps here in machine mode -// -kernel loads the kernel here -// 88000000 -- -initrd fs.img ramdisk image. -// unused RAM after 80000000. - -// the kernel uses physical memory thus: -// 80000000 -- entry.S, then kernel text and data -// end -- start of kernel page allocation area -// PHYSTOP -- end RAM used by the kernel - -// qemu puts UART registers here in physical memory. -#define UART0 0x10000000L -#define UART0_IRQ 10 - -// local interrupt controller, which contains the timer. -#define CLINT 0x2000000L -#define CLINT_MTIMECMP(hartid) (CLINT + 0x4000 + 8*(hartid)) -#define CLINT_MTIME (CLINT + 0xBFF8) - -// qemu puts programmable interrupt controller here. -#define PLIC 0x0c000000L -#define PLIC_PRIORITY (PLIC + 0x0) -#define PLIC_PENDING (PLIC + 0x1000) -#define PLIC_MENABLE(hart) (PLIC + 0x2000 + (hart)*0x100) -#define PLIC_SENABLE(hart) (PLIC + 0x2080 + (hart)*0x100) -#define PLIC_MPRIORITY(hart) (PLIC + 0x200000 + (hart)*0x2000) -#define PLIC_SPRIORITY(hart) (PLIC + 0x201000 + (hart)*0x2000) -#define PLIC_MCLAIM(hart) (PLIC + 0x200004 + (hart)*0x2000) -#define PLIC_SCLAIM(hart) (PLIC + 0x201004 + (hart)*0x2000) - -#define RAMDISK 0x88000000L - -// the kernel expects there to be RAM -// for use by the kernel and user pages -// from physical address 0x80000000 to PHYSTOP. -#define KERNBASE 0x80000000L -#define PHYSTOP (KERNBASE + 128*1024*1024) - -// map the trampoline page to the highest address, -// in both user and kernel space. -#define TRAMPOLINE (MAXVA - PGSIZE) |