blob: 20f1b4806bfe4f6d4a35fd5e3fee626c53195be8 [file] [log] [blame]
Mikael Starvik51533b62005-07-27 11:44:44 -07001#ifndef _ASM_CRIS_ARCH_PAGE_H
2#define _ASM_CRIS_ARCH_PAGE_H
3
Mikael Starvik51533b62005-07-27 11:44:44 -07004
5#ifdef __KERNEL__
6
7#define PAGE_OFFSET KSEG_C /* kseg_c is mapped to physical ram. */
8
9/*
Jesper Nilssone919a122008-01-28 18:04:46 +010010 * Macros to convert between physical and virtual addresses. By stripping a
Mikael Starvik51533b62005-07-27 11:44:44 -070011 * selected bit it's possible to convert between KSEG_x and 0x40000000 where the
12 * DRAM really resides. DRAM is virtually at 0xc.
13 */
Jesper Nilssone919a122008-01-28 18:04:46 +010014#ifndef CONFIG_ETRAX_VCS_SIM
Mikael Starvik51533b62005-07-27 11:44:44 -070015#define __pa(x) ((unsigned long)(x) & 0x7fffffff)
16#define __va(x) ((void *)((unsigned long)(x) | 0x80000000))
17#else
18#define __pa(x) ((unsigned long)(x) & 0x3fffffff)
19#define __va(x) ((void *)((unsigned long)(x) | 0xc0000000))
20#endif
21
22#define VM_STACK_DEFAULT_FLAGS (VM_READ | VM_WRITE | \
23 VM_MAYREAD | VM_MAYWRITE)
24
25#endif /* __KERNEL__ */
26
27#endif /* _ASM_CRIS_ARCH_PAGE_H */