mem_map.h 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. /*
  2. * file: include/asm-blackfin/mach-bf537/mem_map.h
  3. * based on:
  4. * author:
  5. *
  6. * created:
  7. * description:
  8. * Memory MAP Common header file for blackfin BF537/6/4 of processors.
  9. * rev:
  10. *
  11. * modified:
  12. *
  13. * bugs: enter bugs at http://blackfin.uclinux.org/
  14. *
  15. * this program is free software; you can redistribute it and/or modify
  16. * it under the terms of the gnu general public license as published by
  17. * the free software foundation; either version 2, or (at your option)
  18. * any later version.
  19. *
  20. * this program is distributed in the hope that it will be useful,
  21. * but without any warranty; without even the implied warranty of
  22. * merchantability or fitness for a particular purpose. see the
  23. * gnu general public license for more details.
  24. *
  25. * you should have received a copy of the gnu general public license
  26. * along with this program; see the file copying.
  27. * if not, write to the free software foundation,
  28. * 59 temple place - suite 330, boston, ma 02111-1307, usa.
  29. */
  30. #ifndef _MEM_MAP_537_H_
  31. #define _MEM_MAP_537_H_
  32. #define COREMMR_BASE 0xFFE00000 /* Core MMRs */
  33. #define SYSMMR_BASE 0xFFC00000 /* System MMRs */
  34. /* Async Memory Banks */
  35. #define ASYNC_BANK3_BASE 0x20300000 /* Async Bank 3 */
  36. #define ASYNC_BANK3_SIZE 0x00100000 /* 1M */
  37. #define ASYNC_BANK2_BASE 0x20200000 /* Async Bank 2 */
  38. #define ASYNC_BANK2_SIZE 0x00100000 /* 1M */
  39. #define ASYNC_BANK1_BASE 0x20100000 /* Async Bank 1 */
  40. #define ASYNC_BANK1_SIZE 0x00100000 /* 1M */
  41. #define ASYNC_BANK0_BASE 0x20000000 /* Async Bank 0 */
  42. #define ASYNC_BANK0_SIZE 0x00100000 /* 1M */
  43. /* Boot ROM Memory */
  44. #define BOOT_ROM_START 0xEF000000
  45. /* Level 1 Memory */
  46. /* Memory Map for ADSP-BF537 processors */
  47. #ifdef CONFIG_BLKFIN_CACHE
  48. #define BLKFIN_ICACHESIZE (16*1024)
  49. #else
  50. #define BLKFIN_ICACHESIZE (0*1024)
  51. #endif
  52. #ifdef CONFIG_BF537
  53. #define L1_CODE_START 0xFFA00000
  54. #define L1_DATA_A_START 0xFF800000
  55. #define L1_DATA_B_START 0xFF900000
  56. #define L1_CODE_LENGTH 0xC000
  57. #ifdef CONFIG_BLKFIN_DCACHE
  58. #ifdef CONFIG_BLKFIN_DCACHE_BANKA
  59. #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
  60. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  61. #define L1_DATA_B_LENGTH 0x8000
  62. #define BLKFIN_DCACHESIZE (16*1024)
  63. #define BLKFIN_DSUPBANKS 1
  64. #else
  65. #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
  66. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  67. #define L1_DATA_B_LENGTH (0x8000 - 0x4000)
  68. #define BLKFIN_DCACHESIZE (32*1024)
  69. #define BLKFIN_DSUPBANKS 2
  70. #endif
  71. #else
  72. #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
  73. #define L1_DATA_A_LENGTH 0x8000
  74. #define L1_DATA_B_LENGTH 0x8000
  75. #define BLKFIN_DCACHESIZE (0*1024)
  76. #define BLKFIN_DSUPBANKS 0
  77. #endif /*CONFIG_BLKFIN_DCACHE*/
  78. #endif /*CONFIG_BF537*/
  79. /* Memory Map for ADSP-BF536 processors */
  80. #ifdef CONFIG_BF536
  81. #define L1_CODE_START 0xFFA00000
  82. #define L1_DATA_A_START 0xFF804000
  83. #define L1_DATA_B_START 0xFF904000
  84. #define L1_CODE_LENGTH 0xC000
  85. #ifdef CONFIG_BLKFIN_DCACHE
  86. #ifdef CONFIG_BLKFIN_DCACHE_BANKA
  87. #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
  88. #define L1_DATA_A_LENGTH (0x4000 - 0x4000)
  89. #define L1_DATA_B_LENGTH 0x4000
  90. #define BLKFIN_DCACHESIZE (16*1024)
  91. #define BLKFIN_DSUPBANKS 1
  92. #else
  93. #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
  94. #define L1_DATA_A_LENGTH (0x4000 - 0x4000)
  95. #define L1_DATA_B_LENGTH (0x4000 - 0x4000)
  96. #define BLKFIN_DCACHESIZE (32*1024)
  97. #define BLKFIN_DSUPBANKS 2
  98. #endif
  99. #else
  100. #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
  101. #define L1_DATA_A_LENGTH 0x4000
  102. #define L1_DATA_B_LENGTH 0x4000
  103. #define BLKFIN_DCACHESIZE (0*1024)
  104. #define BLKFIN_DSUPBANKS 0
  105. #endif /*CONFIG_BLKFIN_DCACHE*/
  106. #endif
  107. /* Memory Map for ADSP-BF534 processors */
  108. #ifdef CONFIG_BF534
  109. #define L1_CODE_START 0xFFA00000
  110. #define L1_DATA_A_START 0xFF800000
  111. #define L1_DATA_B_START 0xFF900000
  112. #define L1_CODE_LENGTH 0xC000
  113. #ifdef CONFIG_BLKFIN_DCACHE
  114. #ifdef CONFIG_BLKFIN_DCACHE_BANKA
  115. #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
  116. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  117. #define L1_DATA_B_LENGTH 0x8000
  118. #define BLKFIN_DCACHESIZE (16*1024)
  119. #define BLKFIN_DSUPBANKS 1
  120. #else
  121. #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
  122. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  123. #define L1_DATA_B_LENGTH (0x8000 - 0x4000)
  124. #define BLKFIN_DCACHESIZE (32*1024)
  125. #define BLKFIN_DSUPBANKS 2
  126. #endif
  127. #else
  128. #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
  129. #define L1_DATA_A_LENGTH 0x8000
  130. #define L1_DATA_B_LENGTH 0x8000
  131. #define BLKFIN_DCACHESIZE (0*1024)
  132. #define BLKFIN_DSUPBANKS 0
  133. #endif /*CONFIG_BLKFIN_DCACHE*/
  134. #endif
  135. /* Scratch Pad Memory */
  136. #if defined(CONFIG_BF537) || defined(CONFIG_BF536) || defined(CONFIG_BF534)
  137. #define L1_SCRATCH_START 0xFFB00000
  138. #define L1_SCRATCH_LENGTH 0x1000
  139. #endif
  140. #endif /* _MEM_MAP_537_H_ */