ARM: 5580/2: ARM TCM (Tightly-Coupled Memory) support v3
[linux-2.6/btrfs-unstable.git] / arch / arm / mach-u300 / include / mach / memory.h
blobab000df7fc0337c7f75ef31deb9bef182ac172f0
1 /*
3 * arch/arm/mach-u300/include/mach/memory.h
6 * Copyright (C) 2007-2009 ST-Ericsson AB
7 * License terms: GNU General Public License (GPL) version 2
8 * Memory virtual/physical mapping constants.
9 * Author: Linus Walleij <linus.walleij@stericsson.com>
10 * Author: Jonas Aaberg <jonas.aberg@stericsson.com>
13 #ifndef __MACH_MEMORY_H
14 #define __MACH_MEMORY_H
16 #ifdef CONFIG_MACH_U300_DUAL_RAM
18 #define PHYS_OFFSET UL(0x48000000)
19 #define BOOT_PARAMS_OFFSET (PHYS_OFFSET + 0x100)
21 #else
23 #ifdef CONFIG_MACH_U300_2MB_ALIGNMENT_FIX
24 #define PHYS_OFFSET (0x28000000 + \
25 (CONFIG_MACH_U300_ACCESS_MEM_SIZE - \
26 (CONFIG_MACH_U300_ACCESS_MEM_SIZE & 1))*1024*1024)
27 #else
28 #define PHYS_OFFSET (0x28000000 + \
29 (CONFIG_MACH_U300_ACCESS_MEM_SIZE + \
30 (CONFIG_MACH_U300_ACCESS_MEM_SIZE & 1))*1024*1024)
31 #endif
32 #define BOOT_PARAMS_OFFSET (0x28000000 + \
33 (CONFIG_MACH_U300_ACCESS_MEM_SIZE + \
34 (CONFIG_MACH_U300_ACCESS_MEM_SIZE & 1))*1024*1024 + 0x100)
35 #endif
38 * TCM memory whereabouts
40 #define ITCM_OFFSET 0xffff2000
41 #define ITCM_END 0xffff3fff
42 #define DTCM_OFFSET 0xffff4000
43 #define DTCM_END 0xffff5fff
46 * We enable a real big DMA buffer if need be.
48 #define CONSISTENT_DMA_SIZE SZ_4M
50 #endif