mmu.h
上传用户:wealth48
上传日期:2022-06-24
资源大小:1701k
文件大小:2k
源码类别:

uCOS

开发平台:

C/C++

  1. /***************************************************************************
  2. Copyright (c) 2004-2007 threewater@up-tech.com, All rights reserved.
  3. by threewter 2004.4.26
  4. ***************************************************************************/
  5. /***************************************************************************
  6.     #说明: 
  7. ----------------------------------  Bug  --------------------------------------
  8. ----------------------------------  TODO list  --------------------------------------
  9. ----------------------------------修正--------------------------------------
  10. 2004-5-17 创建
  11. ***************************************************************************/
  12. #ifndef __MMU_H__
  13. #define  __MMU_H__
  14. #define DESC_SEC (0x2|(1<<4))
  15. #define CB (3<<2)  //cache_on, write_back
  16. #define CNB (2<<2)  //cache_on, write_through 
  17. #define NCB             (1<<2)  //cache_off,WR_BUF on
  18. #define NCNB (0<<2)  //cache_off,WR_BUF off
  19. #define AP_RW (3<<10) //supervisor=RW, user=RW
  20. #define AP_RO (2<<10) //supervisor=RW, user=RO
  21. #define DOMAIN_FAULT (0x0)
  22. #define DOMAIN_CHK (0x1) 
  23. #define DOMAIN_NOTCHK (0x3) 
  24. #define DOMAIN0 (0x0<<5)
  25. #define DOMAIN1 (0x1<<5)
  26. #define DOMAIN0_ATTR (DOMAIN_CHK<<0) 
  27. #define DOMAIN1_ATTR (DOMAIN_FAULT<<2) 
  28. #define RW_CB (AP_RW|DOMAIN0|CB|DESC_SEC)
  29. #define RW_CNB (AP_RW|DOMAIN0|CNB|DESC_SEC)
  30. #define RW_NCNB (AP_RW|DOMAIN0|NCNB|DESC_SEC)
  31. #define RW_FAULT (AP_RW|DOMAIN1|NCNB|DESC_SEC)
  32. #include "asm-mmu.h"
  33. int MMU_Init(void);
  34. void MMU_SetMTT(int vaddrStart,int vaddrEnd,int paddrStart,int attr);
  35. //int virt2phys(int vaddr);
  36. //void remap_pages(U32 vaddr, U32 phyaddr, U32 size, U32 flags);
  37. #endif //#ifndef __MMU_H__