Full support for Ginger Console
[linux-ginger.git] / arch / blackfin / mach-bf548 / include / mach / mem_map.h
blobcaac2dfb41eb7c334570d292f6d7bfbd408c9799
1 /*
2 * BF548 memory map
4 * Copyright 2004-2009 Analog Devices Inc.
5 * Licensed under the GPL-2 or later.
6 */
8 #ifndef __BFIN_MACH_MEM_MAP_H__
9 #define __BFIN_MACH_MEM_MAP_H__
11 #ifndef __BFIN_MEM_MAP_H__
12 # error "do not include mach/mem_map.h directly -- use asm/mem_map.h"
13 #endif
15 /* Async Memory Banks */
16 #define ASYNC_BANK3_BASE 0x2C000000 /* Async Bank 3 */
17 #define ASYNC_BANK3_SIZE 0x04000000 /* 64M */
18 #define ASYNC_BANK2_BASE 0x28000000 /* Async Bank 2 */
19 #define ASYNC_BANK2_SIZE 0x04000000 /* 64M */
20 #define ASYNC_BANK1_BASE 0x24000000 /* Async Bank 1 */
21 #define ASYNC_BANK1_SIZE 0x04000000 /* 64M */
22 #define ASYNC_BANK0_BASE 0x20000000 /* Async Bank 0 */
23 #define ASYNC_BANK0_SIZE 0x04000000 /* 64M */
25 /* Boot ROM Memory */
27 #define BOOT_ROM_START 0xEF000000
28 #define BOOT_ROM_LENGTH 0x1000
30 /* L1 Instruction ROM */
32 #define L1_ROM_START 0xFFA14000
33 #define L1_ROM_LENGTH 0x10000
35 /* Level 1 Memory */
37 /* Memory Map for ADSP-BF548 processors */
38 #ifdef CONFIG_BFIN_ICACHE
39 #define BFIN_ICACHESIZE (16*1024)
40 #else
41 #define BFIN_ICACHESIZE (0*1024)
42 #endif
44 #define L1_CODE_START 0xFFA00000
45 #define L1_DATA_A_START 0xFF800000
46 #define L1_DATA_B_START 0xFF900000
48 #define L1_CODE_LENGTH 0xC000
50 #ifdef CONFIG_BFIN_DCACHE
52 #ifdef CONFIG_BFIN_DCACHE_BANKA
53 #define DMEM_CNTR (ACACHE_BSRAM | ENDCPLB | PORT_PREF0)
54 #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
55 #define L1_DATA_B_LENGTH 0x8000
56 #define BFIN_DCACHESIZE (16*1024)
57 #define BFIN_DSUPBANKS 1
58 #else
59 #define DMEM_CNTR (ACACHE_BCACHE | ENDCPLB | PORT_PREF0)
60 #define L1_DATA_A_LENGTH (0x8000 - 0x4000)
61 #define L1_DATA_B_LENGTH (0x8000 - 0x4000)
62 #define BFIN_DCACHESIZE (32*1024)
63 #define BFIN_DSUPBANKS 2
64 #endif
66 #else
67 #define DMEM_CNTR (ASRAM_BSRAM | ENDCPLB | PORT_PREF0)
68 #define L1_DATA_A_LENGTH 0x8000
69 #define L1_DATA_B_LENGTH 0x8000
70 #define BFIN_DCACHESIZE (0*1024)
71 #define BFIN_DSUPBANKS 0
72 #endif /*CONFIG_BFIN_DCACHE*/
74 /* Level 2 Memory */
75 #define L2_START 0xFEB00000
76 #if defined(CONFIG_BF542)
77 # define L2_LENGTH 0
78 #elif defined(CONFIG_BF544)
79 # define L2_LENGTH 0x10000
80 #else
81 # define L2_LENGTH 0x20000
82 #endif
84 #endif