Linux 2.6.31.6
[linux/fpc-iii.git] / arch / arm / mach-davinci / include / mach / memory.h
blobc712c7cdf38f60af046ca3920d5fd32e351fd095
1 /*
2 * DaVinci memory space definitions
4 * Author: Kevin Hilman, MontaVista Software, Inc. <source@mvista.com>
6 * 2007 (c) MontaVista Software, Inc. This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
11 #ifndef __ASM_ARCH_MEMORY_H
12 #define __ASM_ARCH_MEMORY_H
14 /**************************************************************************
15 * Included Files
16 **************************************************************************/
17 #include <asm/page.h>
18 #include <asm/sizes.h>
20 /**************************************************************************
21 * Definitions
22 **************************************************************************/
23 #define DAVINCI_DDR_BASE 0x80000000
25 #define PHYS_OFFSET DAVINCI_DDR_BASE
28 * Increase size of DMA-consistent memory region
30 #define CONSISTENT_DMA_SIZE (14<<20)
32 #ifndef __ASSEMBLY__
34 * Restrict DMA-able region to workaround silicon bug. The bug
35 * restricts buffers available for DMA to video hardware to be
36 * below 128M
38 static inline void
39 __arch_adjust_zones(int node, unsigned long *size, unsigned long *holes)
41 unsigned int sz = (128<<20) >> PAGE_SHIFT;
43 if (node != 0)
44 sz = 0;
46 size[1] = size[0] - sz;
47 size[0] = sz;
50 #define arch_adjust_zones(node, zone_size, holes) \
51 if ((meminfo.bank[0].size >> 20) > 128) __arch_adjust_zones(node, zone_size, holes)
53 #define ISA_DMA_THRESHOLD (PHYS_OFFSET + (128<<20) - 1)
54 #define MAX_DMA_ADDRESS (PAGE_OFFSET + (128<<20))
56 #endif
58 #endif /* __ASM_ARCH_MEMORY_H */