home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / asm-sparc / vaddrs.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  2.3 KB  |  71 lines

  1. /* $Id: vaddrs.h,v 1.27 2001/07/04 00:18:18 davem 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@samba.org)
  13.  */
  14.  
  15. #define SRMMU_MAXMEM        0x0c000000
  16.  
  17. #define SRMMU_NOCACHE_VADDR    (KERNBASE + SRMMU_MAXMEM)
  18.                 /* = 0x0fc000000 */
  19. /* XXX Empiricals - this needs to go away - KMW */
  20. #define SRMMU_MIN_NOCACHE_PAGES (550)
  21. #define SRMMU_MAX_NOCACHE_PAGES    (1280)
  22.  
  23. /* The following constant is used in mm/srmmu.c::srmmu_nocache_calcsize()
  24.  * to determine the amount of memory that will be reserved as nocache:
  25.  *
  26.  * 256 pages will be taken as nocache per each
  27.  * SRMMU_NOCACHE_ALCRATIO MB of system memory.
  28.  *
  29.  * limits enforced:    nocache minimum = 256 pages
  30.  *            nocache maximum = 1280 pages
  31.  */
  32. #define SRMMU_NOCACHE_ALCRATIO    64    /* 256 pages per 64MB of system RAM */
  33.  
  34. #define SUN4M_IOBASE_VADDR    0xfd000000 /* Base for mapping pages */
  35. #define IOBASE_VADDR        0xfe000000
  36. #define IOBASE_END        0xfe600000
  37.  
  38. #define VMALLOC_START        0xfe600000
  39.  
  40. /* XXX Alter this when I get around to fixing sun4c - Anton */
  41. #define VMALLOC_END        0xffc00000
  42.  
  43. /*
  44.  * On the sun4/4c we need a place
  45.  * to reliably map locked down kernel data.  This includes the
  46.  * task_struct and kernel stack pages of each process plus the
  47.  * scsi buffers during dvma IO transfers, also the floppy buffers
  48.  * during pseudo dma which runs with traps off (no faults allowed).
  49.  * Some quick calculations yield:
  50.  *       NR_TASKS <512> * (3 * PAGE_SIZE) == 0x600000
  51.  * Subtract this from 0xc00000 and you get 0x927C0 of vm left
  52.  * over to map SCSI dvma + floppy pseudo-dma buffers.  So be
  53.  * careful if you change NR_TASKS or else there won't be enough
  54.  * room for it all.
  55.  */
  56. #define SUN4C_LOCK_VADDR    0xff000000
  57. #define SUN4C_LOCK_END        0xffc00000
  58.  
  59. #define KADB_DEBUGGER_BEGVM    0xffc00000 /* Where kern debugger is in virt-mem */
  60. #define KADB_DEBUGGER_ENDVM    0xffd00000
  61. #define DEBUG_FIRSTVADDR    KADB_DEBUGGER_BEGVM
  62. #define DEBUG_LASTVADDR        KADB_DEBUGGER_ENDVM
  63.  
  64. #define LINUX_OPPROM_BEGVM    0xffd00000
  65. #define LINUX_OPPROM_ENDVM    0xfff00000
  66.  
  67. #define DVMA_VADDR        0xfff00000 /* Base area of the DVMA on suns */
  68. #define DVMA_END        0xfffc0000
  69.  
  70. #endif /* !(_SPARC_VADDRS_H) */
  71.