mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-19 02:04:19 +08:00
1dbd30e989
This changes the TCM handling so that a fixed area is reserved at 0xfffe0000-0xfffeffff for TCM. This areas is used by XScale but XScale does not have TCM so the mechanisms are mutually exclusive. This change is needed to make TCM detection more dynamic while still being able to compile code into it, and is a must for the unified ARM goals: the current TCM allocation at different places in memory for each machine would be a nightmare if you want to compile a single image for more than one machine with TCM so it has to be nailed down in one place. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
43 lines
1.1 KiB
C
43 lines
1.1 KiB
C
/*
|
|
*
|
|
* arch/arm/mach-u300/include/mach/memory.h
|
|
*
|
|
*
|
|
* Copyright (C) 2007-2009 ST-Ericsson AB
|
|
* License terms: GNU General Public License (GPL) version 2
|
|
* Memory virtual/physical mapping constants.
|
|
* Author: Linus Walleij <linus.walleij@stericsson.com>
|
|
* Author: Jonas Aaberg <jonas.aberg@stericsson.com>
|
|
*/
|
|
|
|
#ifndef __MACH_MEMORY_H
|
|
#define __MACH_MEMORY_H
|
|
|
|
#ifdef CONFIG_MACH_U300_DUAL_RAM
|
|
|
|
#define PHYS_OFFSET UL(0x48000000)
|
|
#define BOOT_PARAMS_OFFSET (PHYS_OFFSET + 0x100)
|
|
|
|
#else
|
|
|
|
#ifdef CONFIG_MACH_U300_2MB_ALIGNMENT_FIX
|
|
#define PHYS_OFFSET (0x28000000 + \
|
|
(CONFIG_MACH_U300_ACCESS_MEM_SIZE - \
|
|
(CONFIG_MACH_U300_ACCESS_MEM_SIZE & 1))*1024*1024)
|
|
#else
|
|
#define PHYS_OFFSET (0x28000000 + \
|
|
(CONFIG_MACH_U300_ACCESS_MEM_SIZE + \
|
|
(CONFIG_MACH_U300_ACCESS_MEM_SIZE & 1))*1024*1024)
|
|
#endif
|
|
#define BOOT_PARAMS_OFFSET (0x28000000 + \
|
|
(CONFIG_MACH_U300_ACCESS_MEM_SIZE + \
|
|
(CONFIG_MACH_U300_ACCESS_MEM_SIZE & 1))*1024*1024 + 0x100)
|
|
#endif
|
|
|
|
/*
|
|
* We enable a real big DMA buffer if need be.
|
|
*/
|
|
#define CONSISTENT_DMA_SIZE SZ_4M
|
|
|
|
#endif
|