1 /* $Id: vaddrs.h,v 1.26 2000/08/01 04:53:58 anton Exp $ */
2 #ifndef _SPARC_VADDRS_H
3 #define _SPARC_VADDRS_H
4
5 #include <asm/head.h>
6
7 /*
8 * asm-sparc/vaddrs.h: Here we define the virtual addresses at
9 * which important things will be mapped.
10 *
11 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
12 * Copyright (C) 2000 Anton Blanchard (anton@linuxcare.com)
13 */
14
15 #define SRMMU_MAXMEM 0x0c000000
16
17 #define SRMMU_NOCACHE_VADDR 0xfc000000 /* KERNBASE + SRMMU_MAXMEM */
18 /* XXX Make this dynamic based on ram size - Anton */
19 #define SRMMU_NOCACHE_NPAGES 256
20 #define SRMMU_NOCACHE_SIZE (SRMMU_NOCACHE_NPAGES * PAGE_SIZE)
21 #define SRMMU_NOCACHE_END (SRMMU_NOCACHE_VADDR + SRMMU_NOCACHE_SIZE)
22
23 #define FIX_KMAP_BEGIN 0xfc100000
24 #define FIX_KMAP_END (FIX_KMAP_BEGIN + ((KM_TYPE_NR*NR_CPUS)-1)*PAGE_SIZE)
25
26 #define PKMAP_BASE 0xfc140000
27 #define PKMAP_BASE_END (PKMAP_BASE+LAST_PKMAP*PAGE_SIZE)
28
29 #define SUN4M_IOBASE_VADDR 0xfd000000 /* Base for mapping pages */
30 #define IOBASE_VADDR 0xfe000000
31 #define IOBASE_END 0xfe300000
32
33 #define VMALLOC_START 0xfe300000
34 /* XXX Alter this when I get around to fixing sun4c - Anton */
35 #define VMALLOC_END 0xffc00000
36
37 /*
38 * On the sun4/4c we need a place
39 * to reliably map locked down kernel data. This includes the
40 * task_struct and kernel stack pages of each process plus the
41 * scsi buffers during dvma IO transfers, also the floppy buffers
42 * during pseudo dma which runs with traps off (no faults allowed).
43 * Some quick calculations yield:
44 * NR_TASKS <512> * (3 * PAGE_SIZE) == 0x600000
45 * Subtract this from 0xc00000 and you get 0x927C0 of vm left
46 * over to map SCSI dvma + floppy pseudo-dma buffers. So be
47 * careful if you change NR_TASKS or else there won't be enough
48 * room for it all.
49 */
50 #define SUN4C_LOCK_VADDR 0xff000000
51 #define SUN4C_LOCK_END 0xffc00000
52
53 #define KADB_DEBUGGER_BEGVM 0xffc00000 /* Where kern debugger is in virt-mem */
54 #define KADB_DEBUGGER_ENDVM 0xffd00000
55 #define DEBUG_FIRSTVADDR KADB_DEBUGGER_BEGVM
56 #define DEBUG_LASTVADDR KADB_DEBUGGER_ENDVM
57
58 #define LINUX_OPPROM_BEGVM 0xffd00000
59 #define LINUX_OPPROM_ENDVM 0xfff00000
60
61 #define DVMA_VADDR 0xfff00000 /* Base area of the DVMA on suns */
62 #define DVMA_END 0xfffc0000
63
64 #endif /* !(_SPARC_VADDRS_H) */
65
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.