Commit 20b27fa3 authored by Paul Mundt's avatar Paul Mundt

sh: Fix up the sh64 zImage build.

Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 7b022d07
...@@ -14,8 +14,7 @@ ...@@ -14,8 +14,7 @@
targets := vmlinux vmlinux.bin vmlinux.bin.gz \ targets := vmlinux vmlinux.bin vmlinux.bin.gz \
head_64.o misc_64.o cache.o piggy.o head_64.o misc_64.o cache.o piggy.o
OBJECTS := $(obj)/vmlinux_64.lds $(obj)/head_64.o $(obj)/misc_64.o \ OBJECTS := $(obj)/head_64.o $(obj)/misc_64.o $(obj)/cache.o
$(obj)/cache.o
# #
# ZIMAGE_OFFSET is the load offset of the compression loader # ZIMAGE_OFFSET is the load offset of the compression loader
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
* Copyright (C) 2002 Stuart Menefy (stuart.menefy@st.com) * Copyright (C) 2002 Stuart Menefy (stuart.menefy@st.com)
*/ */
#include <asm/cache.h> #include <asm/cache.h>
#include <asm/tlb.h>
#include <cpu/mmu_context.h> #include <cpu/mmu_context.h>
#include <cpu/registers.h> #include <cpu/registers.h>
...@@ -33,11 +34,7 @@ ...@@ -33,11 +34,7 @@
#define ICCR0_INIT_VAL ICCR0_ON | ICCR0_ICI /* ICE + ICI */ #define ICCR0_INIT_VAL ICCR0_ON | ICCR0_ICI /* ICE + ICI */
#define ICCR1_INIT_VAL ICCR1_NOLOCK /* No locking */ #define ICCR1_INIT_VAL ICCR1_NOLOCK /* No locking */
#if 1
#define OCCR0_INIT_VAL OCCR0_ON | OCCR0_OCI | OCCR0_WB /* OCE + OCI + WB */ #define OCCR0_INIT_VAL OCCR0_ON | OCCR0_OCI | OCCR0_WB /* OCE + OCI + WB */
#else
#define OCCR0_INIT_VAL OCCR0_OFF
#endif
#define OCCR1_INIT_VAL OCCR1_NOLOCK /* No locking */ #define OCCR1_INIT_VAL OCCR1_NOLOCK /* No locking */
.text .text
......
/*
* ld script to make compressed SuperH/shmedia Linux kernel+decompression
* bootstrap
* Modified by Stuart Menefy from arch/sh/vmlinux.lds.S written by Niibe Yutaka
*/
#ifdef CONFIG_LITTLE_ENDIAN
/* OUTPUT_FORMAT("elf32-sh64l-linux", "elf32-sh64l-linux", "elf32-sh64l-linux") */
#define NOP 0x6ff0fff0
#else
/* OUTPUT_FORMAT("elf32-sh64", "elf32-sh64", "elf32-sh64") */
#define NOP 0xf0fff06f
#endif
OUTPUT_FORMAT("elf32-sh64-linux")
OUTPUT_ARCH(sh)
ENTRY(_start)
#define ALIGNED_GAP(section, align) (((ADDR(section)+SIZEOF(section)+(align)-1) & ~((align)-1))-ADDR(section))
#define FOLLOWING(section, align) AT (LOADADDR(section) + ALIGNED_GAP(section,align))
SECTIONS
{
_text = .; /* Text and read-only data */
.text : {
*(.text)
*(.text64)
*(.text..SHmedia32)
*(.fixup)
*(.gnu.warning)
} = NOP
. = ALIGN(4);
.rodata : { *(.rodata) }
/* There is no 'real' reason for eight byte alignment, four would work
* as well, but gdb downloads much (*4) faster with this.
*/
. = ALIGN(8);
.image : { *(.image) }
. = ALIGN(4);
_etext = .; /* End of text section */
.data : /* Data */
FOLLOWING(.image, 4)
{
_data = .;
*(.data)
}
_data_image = LOADADDR(.data);/* Address of data section in ROM */
_edata = .; /* End of data section */
.stack : { stack = .; _stack = .; }
. = ALIGN(4);
__bss_start = .; /* BSS */
.bss : {
*(.bss)
}
. = ALIGN(4);
_end = . ;
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment