diff options
author | Stuart Menefy <stuart.menefy@st.com> | 2007-11-30 03:06:36 -0500 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2008-01-27 23:18:59 -0500 |
commit | cbaa118ecfd99fc5ed7adbd9c34a30e1c05e3c93 (patch) | |
tree | e60db5c0f3573558c97f39cfab78732220a72e6d /arch/sh/kernel/vmlinux_32.lds.S | |
parent | 325df7f20467da07901c4f2b006d3457bba0adec (diff) |
sh: Preparation for uncached jumps through PMB.
Presently most of the 29-bit physical parts do P1/P2 segmentation
with a 1:1 cached/uncached mapping, jumping between the two to
control the caching behaviour. This provides the basic infrastructure
to maintain this behaviour on 32-bit physical parts that don't map
P1/P2 at all, using a shiny new linker section and corresponding
fixmap entry.
Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/kernel/vmlinux_32.lds.S')
-rw-r--r-- | arch/sh/kernel/vmlinux_32.lds.S | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/sh/kernel/vmlinux_32.lds.S b/arch/sh/kernel/vmlinux_32.lds.S index 0956fb3681a3..50c69c18dced 100644 --- a/arch/sh/kernel/vmlinux_32.lds.S +++ b/arch/sh/kernel/vmlinux_32.lds.S | |||
@@ -43,6 +43,15 @@ SECTIONS | |||
43 | NOTES | 43 | NOTES |
44 | RO_DATA(PAGE_SIZE) | 44 | RO_DATA(PAGE_SIZE) |
45 | 45 | ||
46 | /* | ||
47 | * Code which must be executed uncached and the associated data | ||
48 | */ | ||
49 | . = ALIGN(PAGE_SIZE); | ||
50 | __uncached_start = .; | ||
51 | .uncached.text : { *(.uncached.text) } | ||
52 | .uncached.data : { *(.uncached.data) } | ||
53 | __uncached_end = .; | ||
54 | |||
46 | . = ALIGN(THREAD_SIZE); | 55 | . = ALIGN(THREAD_SIZE); |
47 | .data : { /* Data */ | 56 | .data : { /* Data */ |
48 | *(.data.init_task) | 57 | *(.data.init_task) |