armmmu.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*
  2. armmmu.c - Memory Management Unit emulation.
  3. ARMulator extensions for the ARM7100 family.
  4. Copyright (C) 1999 Ben Williamson
  5. This program is free software; you can redistribute it and/or modify
  6. it under the terms of the GNU General Public License as published by
  7. the Free Software Foundation; either version 2 of the License, or
  8. (at your option) any later version.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. GNU General Public License for more details.
  13. You should have received a copy of the GNU General Public License
  14. along with this program; if not, write to the Free Software
  15. Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  16. */
  17. #pragma once
  18. // Register numbers in the MMU
  19. enum
  20. {
  21. MMU_ID = 0,
  22. MMU_CONTROL = 1,
  23. MMU_TRANSLATION_TABLE_BASE = 2,
  24. MMU_DOMAIN_ACCESS_CONTROL = 3,
  25. MMU_FAULT_STATUS = 5,
  26. MMU_FAULT_ADDRESS = 6,
  27. MMU_CACHE_OPS = 7,
  28. MMU_TLB_OPS = 8,
  29. MMU_CACHE_LOCKDOWN = 9,
  30. MMU_TLB_LOCKDOWN = 10,
  31. MMU_PID = 13,
  32. // MMU_V4
  33. MMU_V4_CACHE_OPS = 7,
  34. MMU_V4_TLB_OPS = 8,
  35. // MMU_V3
  36. MMU_V3_FLUSH_TLB = 5,
  37. MMU_V3_FLUSH_TLB_ENTRY = 6,
  38. MMU_V3_FLUSH_CACHE = 7,
  39. // MMU Intel SA-1100
  40. MMU_SA_RB_OPS = 9,
  41. MMU_SA_DEBUG = 14,
  42. MMU_SA_CP15_R15 = 15,
  43. // Intel xscale CP15
  44. XSCALE_CP15_CACHE_TYPE = 0,
  45. XSCALE_CP15_AUX_CONTROL = 1,
  46. XSCALE_CP15_COPRO_ACCESS = 15,
  47. };