Merge git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client
[pandora-kernel.git] / arch / arm / mach-ixp23xx / include / mach / memory.h
1 /*
2  * arch/arm/mach-ixp23xx/include/mach/memory.h
3  *
4  * Copyright (c) 2003-2004 Intel Corp.
5  *
6  * This program is free software; you can redistribute it and/or modify it
7  * under the terms of the GNU General Public License as published by the
8  * Free Software Foundation; either version 2 of the License, or (at your
9  * option) any later version.
10  */
11
12 #ifndef __ASM_ARCH_MEMORY_H
13 #define __ASM_ARCH_MEMORY_H
14
15 #include <mach/hardware.h>
16
17 /*
18  * Physical DRAM offset.
19  */
20 #define PLAT_PHYS_OFFSET                (0x00000000)
21
22 #define IXP23XX_PCI_SDRAM_OFFSET (*((volatile int *)IXP23XX_PCI_SDRAM_BAR) & 0xfffffff0)
23
24 #define __phys_to_bus(x)        ((x) + (IXP23XX_PCI_SDRAM_OFFSET - PHYS_OFFSET))
25 #define __bus_to_phys(x)        ((x) - (IXP23XX_PCI_SDRAM_OFFSET - PHYS_OFFSET))
26
27 #define __virt_to_bus(v)        __phys_to_bus(__virt_to_phys(v))
28 #define __bus_to_virt(b)        __phys_to_virt(__bus_to_phys(b))
29 #define __pfn_to_bus(p)         __phys_to_bus(__pfn_to_phys(p))
30 #define __bus_to_pfn(b)         __phys_to_pfn(__bus_to_phys(b))
31
32 #define arch_is_coherent()      1
33
34 #endif