mem_map.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. /*
  2. * File: include/asm-blackfin/mach-bf538/mem_map.h
  3. * Based on:
  4. * Author:
  5. *
  6. * Created:
  7. * Description:
  8. *
  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_538_H_
  31. #define _MEM_MAP_538_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. #define BOOT_ROM_LENGTH 0x400
  46. /* Level 1 Memory */
  47. #ifdef CONFIG_BFIN_ICACHE
  48. #define BFIN_ICACHESIZE (16*1024)
  49. #else
  50. #define BFIN_ICACHESIZE (0*1024)
  51. #endif
  52. /* Memory Map for ADSP-BF538/9 processors */
  53. #define L1_CODE_START 0xFFA00000
  54. #define L1_DATA_A_START 0xFF800000
  55. #define L1_DATA_B_START 0xFF900000
  56. #ifdef CONFIG_BFIN_ICACHE
  57. #define L1_CODE_LENGTH (0x14000 - 0x4000)
  58. #else
  59. #define L1_CODE_LENGTH 0x14000
  60. #endif
  61. #ifdef CONFIG_BFIN_DCACHE
  62. #ifdef CONFIG_BFIN_DCACHE_BANKA
  63. #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
  64. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  65. #define L1_DATA_B_LENGTH 0x8000
  66. #define BFIN_DCACHESIZE (16*1024)
  67. #define BFIN_DSUPBANKS 1
  68. #else
  69. #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
  70. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  71. #define L1_DATA_B_LENGTH (0x8000 - 0x4000)
  72. #define BFIN_DCACHESIZE (32*1024)
  73. #define BFIN_DSUPBANKS 2
  74. #endif
  75. #else
  76. #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
  77. #define L1_DATA_A_LENGTH 0x8000
  78. #define L1_DATA_B_LENGTH 0x8000
  79. #define BFIN_DCACHESIZE (0*1024)
  80. #define BFIN_DSUPBANKS 0
  81. #endif /*CONFIG_BFIN_DCACHE*/
  82. /* Level 2 Memory - none */
  83. #define L2_START 0
  84. #define L2_LENGTH 0
  85. /* Scratch Pad Memory */
  86. #define L1_SCRATCH_START 0xFFB00000
  87. #define L1_SCRATCH_LENGTH 0x1000
  88. #define GET_PDA_SAFE(preg) \
  89. preg.l = _cpu_pda; \
  90. preg.h = _cpu_pda;
  91. #define GET_PDA(preg, dreg) GET_PDA_SAFE(preg)
  92. #endif /* _MEM_MAP_538_H_ */