2 * Common Blackfin memory map
4 * Copyright 2004-2009 Analog Devices Inc.
5 * Licensed under the GPL-2 or later.
8 #ifndef __BFIN_MEM_MAP_H__
9 #define __BFIN_MEM_MAP_H__
11 #include <mach/mem_map.h>
13 /* Every Blackfin so far has MMRs like this */
15 # define COREMMR_BASE 0xFFE00000
18 # define SYSMMR_BASE 0xFFC00000
21 /* Every Blackfin so far has on-chip Scratch Pad SRAM like this */
22 #ifndef L1_SCRATCH_START
23 # define L1_SCRATCH_START 0xFFB00000
24 # define L1_SCRATCH_LENGTH 0x1000
27 /* Most parts lack on-chip L2 SRAM */
33 /* Most parts lack on-chip L1 ROM */
35 # define L1_ROM_START 0
36 # define L1_ROM_LENGTH 0
39 /* Allow wonky SMP ports to override this */
41 # define GET_PDA_SAFE(preg) \
44 # define GET_PDA(preg, dreg) GET_PDA_SAFE(preg)
48 static inline unsigned long get_l1_scratch_start_cpu(int cpu
)
50 return L1_SCRATCH_START
;
52 static inline unsigned long get_l1_code_start_cpu(int cpu
)
56 static inline unsigned long get_l1_data_a_start_cpu(int cpu
)
58 return L1_DATA_A_START
;
60 static inline unsigned long get_l1_data_b_start_cpu(int cpu
)
62 return L1_DATA_B_START
;
64 static inline unsigned long get_l1_scratch_start(void)
66 return get_l1_scratch_start_cpu(0);
68 static inline unsigned long get_l1_code_start(void)
70 return get_l1_code_start_cpu(0);
72 static inline unsigned long get_l1_data_a_start(void)
74 return get_l1_data_a_start_cpu(0);
76 static inline unsigned long get_l1_data_b_start(void)
78 return get_l1_data_b_start_cpu(0);
81 # endif /* __ASSEMBLY__ */
82 #endif /* !GET_PDA_SAFE */