blackfin architecture
[safe/jmp/linux-2.6] / include / asm-blackfin / mach-bf533 / mem_map.h
1
2 /*
3  * File:         include/asm-blackfin/mach-bf533/mem_map.h
4  * Based on:
5  * Author:
6  *
7  * Created:
8  * Description:
9  *
10  * Rev:
11  *
12  * Modified:
13  *
14  * Bugs:         Enter bugs at http://blackfin.uclinux.org/
15  *
16  * This program is free software; you can redistribute it and/or modify
17  * it under the terms of the GNU General Public License as published by
18  * the Free Software Foundation; either version 2, or (at your option)
19  * any later version.
20  *
21  * This program is distributed in the hope that it will be useful,
22  * but WITHOUT ANY WARRANTY; without even the implied warranty of
23  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24  * GNU General Public License for more details.
25  *
26  * You should have received a copy of the GNU General Public License
27  * along with this program; see the file COPYING.
28  * If not, write to the Free Software Foundation,
29  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
30  */
31
32 #ifndef _MEM_MAP_533_H_
33 #define _MEM_MAP_533_H_
34
35 #define COREMMR_BASE           0xFFE00000        /* Core MMRs */
36 #define SYSMMR_BASE            0xFFC00000        /* System MMRs */
37
38 /* Async Memory Banks */
39 #define ASYNC_BANK3_BASE        0x20300000       /* Async Bank 3 */
40 #define ASYNC_BANK3_SIZE        0x00100000      /* 1M */
41 #define ASYNC_BANK2_BASE        0x20200000       /* Async Bank 2 */
42 #define ASYNC_BANK2_SIZE        0x00100000      /* 1M */
43 #define ASYNC_BANK1_BASE        0x20100000       /* Async Bank 1 */
44 #define ASYNC_BANK1_SIZE        0x00100000      /* 1M */
45 #define ASYNC_BANK0_BASE        0x20000000       /* Async Bank 0 */
46 #define ASYNC_BANK0_SIZE        0x00100000      /* 1M */
47
48 /* Boot ROM Memory */
49
50 #define BOOT_ROM_START          0xEF000000
51
52 /* Level 1 Memory */
53
54 #ifdef CONFIG_BLKFIN_CACHE
55 #define BLKFIN_ICACHESIZE       (16*1024)
56 #else
57 #define BLKFIN_ICACHESIZE       (0*1024)
58 #endif
59
60 /* Memory Map for ADSP-BF533 processors */
61
62 #ifdef CONFIG_BF533
63 #define L1_CODE_START       0xFFA00000
64 #define L1_DATA_A_START     0xFF800000
65 #define L1_DATA_B_START     0xFF900000
66
67 #ifdef CONFIG_BLKFIN_CACHE
68 #define L1_CODE_LENGTH      (0x14000 - 0x4000)
69 #else
70 #define L1_CODE_LENGTH      0x14000
71 #endif
72
73 #ifdef CONFIG_BLKFIN_DCACHE
74
75 #ifdef CONFIG_BLKFIN_DCACHE_BANKA
76 #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
77 #define L1_DATA_A_LENGTH      (0x8000 - 0x4000)
78 #define L1_DATA_B_LENGTH      0x8000
79 #define BLKFIN_DCACHESIZE       (16*1024)
80 #define BLKFIN_DSUPBANKS        1
81 #else
82 #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
83 #define L1_DATA_A_LENGTH      (0x8000 - 0x4000)
84 #define L1_DATA_B_LENGTH      (0x8000 - 0x4000)
85 #define BLKFIN_DCACHESIZE       (32*1024)
86 #define BLKFIN_DSUPBANKS        2
87 #endif
88
89 #else
90 #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
91 #define L1_DATA_A_LENGTH      0x8000
92 #define L1_DATA_B_LENGTH      0x8000
93 #define BLKFIN_DCACHESIZE       (0*1024)
94 #define BLKFIN_DSUPBANKS        0
95 #endif /*CONFIG_BLKFIN_DCACHE*/
96 #endif
97
98 /* Memory Map for ADSP-BF532 processors */
99
100 #ifdef CONFIG_BF532
101 #define L1_CODE_START       0xFFA08000
102 #define L1_DATA_A_START     0xFF804000
103 #define L1_DATA_B_START     0xFF904000
104
105 #ifdef CONFIG_BLKFIN_CACHE
106 #define L1_CODE_LENGTH      (0xC000 - 0x4000)
107 #else
108 #define L1_CODE_LENGTH      0xC000
109 #endif
110
111 #ifdef CONFIG_BLKFIN_DCACHE
112
113 #ifdef CONFIG_BLKFIN_DCACHE_BANKA
114 #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
115 #define L1_DATA_A_LENGTH      (0x4000 - 0x4000)
116 #define L1_DATA_B_LENGTH      0x4000
117 #define BLKFIN_DCACHESIZE       (16*1024)
118 #define BLKFIN_DSUPBANKS        1
119
120 #else
121 #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
122 #define L1_DATA_A_LENGTH      (0x4000 - 0x4000)
123 #define L1_DATA_B_LENGTH      (0x4000 - 0x4000)
124 #define BLKFIN_DCACHESIZE       (32*1024)
125 #define BLKFIN_DSUPBANKS        2
126 #endif
127
128 #else
129 #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
130 #define L1_DATA_A_LENGTH      0x4000
131 #define L1_DATA_B_LENGTH      0x4000
132 #define BLKFIN_DCACHESIZE       (0*1024)
133 #define BLKFIN_DSUPBANKS        0
134 #endif /*CONFIG_BLKFIN_DCACHE*/
135 #endif
136
137 /* Memory Map for ADSP-BF531 processors */
138
139 #ifdef CONFIG_BF531
140 #define L1_CODE_START       0xFFA08000
141 #define L1_DATA_A_START     0xFF804000
142 #define L1_DATA_B_START     0xFF904000
143 #define L1_CODE_LENGTH      0x4000
144 #define L1_DATA_B_LENGTH      0x0000
145
146
147 #ifdef CONFIG_BLKFIN_DCACHE
148 #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB  | PORT_PREF0)
149 #define L1_DATA_A_LENGTH      (0x4000 - 0x4000)
150 #define BLKFIN_DCACHESIZE       (16*1024)
151 #define BLKFIN_DSUPBANKS        1
152 #else
153 #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB  | PORT_PREF0)
154 #define L1_DATA_A_LENGTH      0x4000
155 #define BLKFIN_DCACHESIZE       (0*1024)
156 #define BLKFIN_DSUPBANKS        0
157 #endif
158
159 #endif
160
161 /* Scratch Pad Memory */
162
163 #if defined(CONFIG_BF533) || defined(CONFIG_BF532) || defined(CONFIG_BF531)
164 #define L1_SCRATCH_START        0xFFB00000
165 #define L1_SCRATCH_LENGTH       0x1000
166 #endif
167
168 #endif                          /* _MEM_MAP_533_H_ */