mem_map.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. /*
  2. * file: include/asm-blackfin/mach-bf548/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_548_H_
  31. #define _MEM_MAP_548_H_
  32. #define COREMMR_BASE 0xFFE00000 /* Core MMRs */
  33. #define SYSMMR_BASE 0xFFC00000 /* System MMRs */
  34. /* Async Memory Banks */
  35. #define ASYNC_BANK3_BASE 0x2C000000 /* Async Bank 3 */
  36. #define ASYNC_BANK3_SIZE 0x04000000 /* 64M */
  37. #define ASYNC_BANK2_BASE 0x28000000 /* Async Bank 2 */
  38. #define ASYNC_BANK2_SIZE 0x04000000 /* 64M */
  39. #define ASYNC_BANK1_BASE 0x24000000 /* Async Bank 1 */
  40. #define ASYNC_BANK1_SIZE 0x04000000 /* 64M */
  41. #define ASYNC_BANK0_BASE 0x20000000 /* Async Bank 0 */
  42. #define ASYNC_BANK0_SIZE 0x04000000 /* 64M */
  43. /* Boot ROM Memory */
  44. #define BOOT_ROM_START 0xEF000000
  45. #define BOOT_ROM_LENGTH 0x1000
  46. /* L1 Instruction ROM */
  47. #define L1_ROM_START 0xFFA14000
  48. #define L1_ROM_LENGTH 0x10000
  49. /* Level 1 Memory */
  50. /* Memory Map for ADSP-BF548 processors */
  51. #ifdef CONFIG_BFIN_ICACHE
  52. #define BFIN_ICACHESIZE (16*1024)
  53. #else
  54. #define BFIN_ICACHESIZE (0*1024)
  55. #endif
  56. #define L1_CODE_START 0xFFA00000
  57. #define L1_DATA_A_START 0xFF800000
  58. #define L1_DATA_B_START 0xFF900000
  59. #define L1_CODE_LENGTH 0xC000
  60. #ifdef CONFIG_BFIN_DCACHE
  61. #ifdef CONFIG_BFIN_DCACHE_BANKA
  62. #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
  63. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  64. #define L1_DATA_B_LENGTH 0x8000
  65. #define BFIN_DCACHESIZE (16*1024)
  66. #define BFIN_DSUPBANKS 1
  67. #else
  68. #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
  69. #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
  70. #define L1_DATA_B_LENGTH (0x8000 - 0x4000)
  71. #define BFIN_DCACHESIZE (32*1024)
  72. #define BFIN_DSUPBANKS 2
  73. #endif
  74. #else
  75. #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
  76. #define L1_DATA_A_LENGTH 0x8000
  77. #define L1_DATA_B_LENGTH 0x8000
  78. #define BFIN_DCACHESIZE (0*1024)
  79. #define BFIN_DSUPBANKS 0
  80. #endif /*CONFIG_BFIN_DCACHE*/
  81. /* Level 2 Memory */
  82. #if !defined(CONFIG_BF542)
  83. # define L2_START 0xFEB00000
  84. # if defined(CONFIG_BF544)
  85. # define L2_LENGTH 0x10000
  86. # else
  87. # define L2_LENGTH 0x20000
  88. # endif
  89. #endif
  90. /* Scratch Pad Memory */
  91. #define L1_SCRATCH_START 0xFFB00000
  92. #define L1_SCRATCH_LENGTH 0x1000
  93. #endif/* _MEM_MAP_548_H_ */