memory.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  *  linux/include/asm-arm/arch-rpc/memory.h
  3.  *
  4.  *  Copyright (C) 1996,1997,1998 Russell King.
  5.  *
  6.  * This program is free software; you can redistribute it and/or modify
  7.  * it under the terms of the GNU General Public License version 2 as
  8.  * published by the Free Software Foundation.
  9.  *
  10.  *  Changelog:
  11.  *   20-Oct-1996 RMK Created
  12.  *   31-Dec-1997 RMK Fixed definitions to reduce warnings
  13.  *   11-Jan-1998 RMK Uninlined to reduce hits on cache
  14.  *   08-Feb-1998 RMK Added __virt_to_bus and __bus_to_virt
  15.  *   21-Mar-1999 RMK Renamed to memory.h
  16.  *  RMK Added TASK_SIZE and PAGE_OFFSET
  17.  */
  18. #ifndef __ASM_ARCH_MMU_H
  19. #define __ASM_ARCH_MMU_H
  20. /*
  21.  * Task size: 3GB
  22.  */
  23. #define TASK_SIZE (0xc0000000UL)
  24. #define TASK_SIZE_26 (0x04000000UL)
  25. /*
  26.  * This decides where the kernel will search for a free chunk of vm
  27.  * space during mmap's.
  28.  */
  29. #define TASK_UNMAPPED_BASE (TASK_SIZE / 3)
  30. /*
  31.  * Page offset: 3GB
  32.  */
  33. #define PAGE_OFFSET (0xc0000000UL)
  34. #define PHYS_OFFSET (0x10000000UL)
  35. #define __virt_to_phys__is_a_macro
  36. #define __virt_to_phys(vpage) ((vpage) - PAGE_OFFSET + PHYS_OFFSET)
  37. #define __phys_to_virt__is_a_macro
  38. #define __phys_to_virt(ppage) ((ppage) + PAGE_OFFSET - PHYS_OFFSET)
  39. /*
  40.  * These are exactly the same on the RiscPC as the
  41.  * physical memory view.
  42.  */
  43. #define __virt_to_bus__is_a_macro
  44. #define __virt_to_bus(x) __virt_to_phys(x)
  45. #define __bus_to_virt__is_a_macro
  46. #define __bus_to_virt(x) __phys_to_virt(x)
  47. #define PHYS_TO_NID(addr) (0)
  48. #endif