Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v3.9-rc8 89 lines 2.0 kB view raw
1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 1994 - 1999, 2000, 03, 04 Ralf Baechle 7 * Copyright (C) 2000, 2002 Maciej W. Rozycki 8 * Copyright (C) 1990, 1999, 2000 Silicon Graphics, Inc. 9 */ 10#ifndef _ASM_MACH_GENERIC_SPACES_H 11#define _ASM_MACH_GENERIC_SPACES_H 12 13#include <linux/const.h> 14 15/* 16 * This gives the physical RAM offset. 17 */ 18#ifndef PHYS_OFFSET 19#define PHYS_OFFSET _AC(0, UL) 20#endif 21 22#ifdef CONFIG_32BIT 23 24#define CAC_BASE _AC(0x80000000, UL) 25#define IO_BASE _AC(0xa0000000, UL) 26#define UNCAC_BASE _AC(0xa0000000, UL) 27 28#ifndef MAP_BASE 29#define MAP_BASE _AC(0xc0000000, UL) 30#endif 31 32/* 33 * Memory above this physical address will be considered highmem. 34 */ 35#ifndef HIGHMEM_START 36#define HIGHMEM_START _AC(0x20000000, UL) 37#endif 38 39#endif /* CONFIG_32BIT */ 40 41#ifdef CONFIG_64BIT 42 43#ifndef CAC_BASE 44#ifdef CONFIG_DMA_NONCOHERENT 45#define CAC_BASE _AC(0x9800000000000000, UL) 46#else 47#define CAC_BASE _AC(0xa800000000000000, UL) 48#endif 49#endif 50 51#ifndef IO_BASE 52#define IO_BASE _AC(0x9000000000000000, UL) 53#endif 54 55#ifndef UNCAC_BASE 56#define UNCAC_BASE _AC(0x9000000000000000, UL) 57#endif 58 59#ifndef MAP_BASE 60#define MAP_BASE _AC(0xc000000000000000, UL) 61#endif 62 63/* 64 * Memory above this physical address will be considered highmem. 65 * Fixme: 59 bits is a fictive number and makes assumptions about processors 66 * in the distant future. Nobody will care for a few years :-) 67 */ 68#ifndef HIGHMEM_START 69#define HIGHMEM_START (_AC(1, UL) << _AC(59, UL)) 70#endif 71 72#define TO_PHYS(x) ( ((x) & TO_PHYS_MASK)) 73#define TO_CAC(x) (CAC_BASE | ((x) & TO_PHYS_MASK)) 74#define TO_UNCAC(x) (UNCAC_BASE | ((x) & TO_PHYS_MASK)) 75 76#endif /* CONFIG_64BIT */ 77 78/* 79 * This handles the memory map. 80 */ 81#ifndef PAGE_OFFSET 82#define PAGE_OFFSET (CAC_BASE + PHYS_OFFSET) 83#endif 84 85#ifndef FIXADDR_TOP 86#define FIXADDR_TOP ((unsigned long)(long)(int)0xfffe0000) 87#endif 88 89#endif /* __ASM_MACH_GENERIC_SPACES_H */