Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 77812
b: refs/heads/master
c: a23ba43
h: refs/heads/master
v: v3
  • Loading branch information
Paul Mundt committed Jan 28, 2008
1 parent 273e3f2 commit bab264d
Show file tree
Hide file tree
Showing 31 changed files with 151 additions and 191 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 4b27c47cf8eddb4153a026e89c7b092598c98b12
refs/heads/master: a23ba43573a24c351640bc19c06c701798fe6e25
2 changes: 1 addition & 1 deletion trunk/arch/sh/boards/cayman/led.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* arch/sh64/mach-cayman/led.c
* arch/sh/boards/cayman/led.c
*
* Copyright (C) 2002 Stuart Menefy <stuart.menefy@st.com>
*
Expand Down
10 changes: 5 additions & 5 deletions trunk/arch/sh/boot/compressed/Makefile_64
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
#
# linux/arch/sh64/boot/compressed/Makefile
# arch/sh/boot/compressed/Makefile_64
#
# This file is subject to the terms and conditions of the GNU General Public
# License. See the file "COPYING" in the main directory of this archive
# for more details.
# create a compressed vmlinux image from the original vmlinux
#
# Copyright (C) 2002 Stuart Menefy
# Copyright (C) 2004 Paul Mundt
#
# create a compressed vmlinux image from the original vmlinux
# This file is subject to the terms and conditions of the GNU General Public
# License. See the file "COPYING" in the main directory of this archive
# for more details.
#

targets := vmlinux vmlinux.bin vmlinux.bin.gz \
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh/boot/compressed/misc_64.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* arch/sh64/boot/compressed/misc.c
* arch/sh/boot/compressed/misc_64.c
*
* This is a collection of several routines from gzip-1.0.3
* adapted for Linux.
Expand Down
10 changes: 5 additions & 5 deletions trunk/arch/sh/kernel/cpu/irq/intc-sh5.c
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
* arch/sh/kernel/cpu/irq/intc-sh5.c
*
* arch/sh64/kernel/irq_intc.c
* Interrupt Controller support for SH5 INTC.
*
* Copyright (C) 2000, 2001 Paolo Alberelli
* Copyright (C) 2003 Paul Mundt
*
* Interrupt Controller support for SH5 INTC.
* Per-interrupt selective. IRLM=0 (Fixed priority) is not
* supported being useless without a cascaded interrupt
* controller.
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/init.h>
#include <linux/interrupt.h>
Expand Down
13 changes: 6 additions & 7 deletions trunk/arch/sh/kernel/cpu/sh5/entry.S
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/kernel/entry.S
* arch/sh/kernel/cpu/sh5/entry.S
*
* Copyright (C) 2000, 2001 Paolo Alberelli
* Copyright (C) 2004, 2005 Paul Mundt
* Copyright (C) 2003, 2004 Richard Curnow
* Copyright (C) 2004 - 2007 Paul Mundt
* Copyright (C) 2003, 2004 Richard Curnow
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/errno.h>
#include <linux/sys.h>
Expand Down
10 changes: 4 additions & 6 deletions trunk/arch/sh/kernel/cpu/sh5/fpu.c
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/kernel/fpu.c
* arch/sh/kernel/cpu/sh5/fpu.c
*
* Copyright (C) 2001 Manuela Cirronis, Paolo Alberelli
* Copyright (C) 2002 STMicroelectronics Limited
Expand All @@ -12,8 +8,10 @@
* Started from SH4 version:
* Copyright (C) 1999, 2000 Kaz Kojima & Niibe Yutaka
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/

#include <linux/sched.h>
#include <linux/signal.h>
#include <asm/processor.h>
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh/kernel/cpu/sh5/switchto.S
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* arch/sh64/kernel/switchto.S
* arch/sh/kernel/cpu/sh5/switchto.S
*
* sh64 context switch
*
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh/kernel/cpu/sh5/unwind.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* arch/sh64/kernel/unwind.c
* arch/sh/kernel/cpu/sh5/unwind.c
*
* Copyright (C) 2004 Paul Mundt
* Copyright (C) 2004 Richard Curnow
Expand Down
19 changes: 4 additions & 15 deletions trunk/arch/sh/kernel/head_64.S
Original file line number Diff line number Diff line change
@@ -1,23 +1,12 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/kernel/head.S
* arch/sh/kernel/head_64.S
*
* Copyright (C) 2000, 2001 Paolo Alberelli
* Copyright (C) 2003, 2004 Paul Mundt
*
*
* benedict.gaster@superh.com: 2nd May 2002
* Moved definition of empty_zero_page to its own section allowing
* it to be placed at an absolute address known at load time.
*
* lethal@linux-sh.org: 9th May 2003
* Kill off GLOBAL_NAME() usage.
*
* lethal@linux-sh.org: 8th May 2004
* Add early SCIF console DTLB mapping.
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <asm/page.h>
#include <asm/cache.h>
Expand Down
29 changes: 16 additions & 13 deletions trunk/arch/sh/kernel/process_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -421,19 +421,22 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags)
*/
void exit_thread(void)
{
/* See arch/sparc/kernel/process.c for the precedent for doing this -- RPC.
The SH-5 FPU save/restore approach relies on last_task_used_math
pointing to a live task_struct. When another task tries to use the
FPU for the 1st time, the FPUDIS trap handling (see
arch/sh64/kernel/fpu.c) will save the existing FPU state to the
FP regs field within last_task_used_math before re-loading the new
task's FPU state (or initialising it if the FPU has been used
before). So if last_task_used_math is stale, and its page has already been
re-allocated for another use, the consequences are rather grim. Unless we
null it here, there is no other path through which it would get safely
nulled. */

/*
* See arch/sparc/kernel/process.c for the precedent for doing
* this -- RPC.
*
* The SH-5 FPU save/restore approach relies on
* last_task_used_math pointing to a live task_struct. When
* another task tries to use the FPU for the 1st time, the FPUDIS
* trap handling (see arch/sh/kernel/cpu/sh5/fpu.c) will save the
* existing FPU state to the FP regs field within
* last_task_used_math before re-loading the new task's FPU state
* (or initialising it if the FPU has been used before). So if
* last_task_used_math is stale, and its page has already been
* re-allocated for another use, the consequences are rather
* grim. Unless we null it here, there is no other path through
* which it would get safely nulled.
*/
#ifdef CONFIG_SH_FPU
if (last_task_used_math == current) {
last_task_used_math = NULL;
Expand Down
9 changes: 4 additions & 5 deletions trunk/arch/sh/kernel/sh_ksyms_64.c
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/kernel/sh_ksyms.c
* arch/sh/kernel/sh_ksyms_64.c
*
* Copyright (C) 2000, 2001 Paolo Alberelli
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/rwsem.h>
#include <linux/module.h>
Expand Down
11 changes: 4 additions & 7 deletions trunk/arch/sh/kernel/signal_64.c
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/kernel/signal.c
* arch/sh/kernel/signal_64.c
*
* Copyright (C) 2000, 2001 Paolo Alberelli
* Copyright (C) 2003 Paul Mundt
* Copyright (C) 2004 Richard Curnow
*
* Started from sh version.
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/rwsem.h>
#include <linux/sched.h>
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh/kernel/syscalls_64.S
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* arch/sh64/kernel/syscalls.S
* arch/sh/kernel/syscalls_64.S
*
* Copyright (C) 2000, 2001 Paolo Alberelli
* Copyright (C) 2004 - 2007 Paul Mundt
Expand Down
10 changes: 5 additions & 5 deletions trunk/arch/sh/kernel/time_64.c
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/kernel/time.c
* arch/sh/kernel/time_64.c
*
* Copyright (C) 2000, 2001 Paolo Alberelli
* Copyright (C) 2003 - 2007 Paul Mundt
Expand All @@ -13,6 +9,10 @@
* Copyright (C) 1999 Tetsuya Okada & Niibe Yutaka
* Some code taken from i386 version.
* Copyright (C) 1991, 1992, 1995 Linus Torvalds
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/errno.h>
#include <linux/rwsem.h>
Expand Down
14 changes: 4 additions & 10 deletions trunk/arch/sh/kernel/traps_64.c
Original file line number Diff line number Diff line change
@@ -1,19 +1,13 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/kernel/traps.c
* arch/sh/kernel/traps_64.c
*
* Copyright (C) 2000, 2001 Paolo Alberelli
* Copyright (C) 2003, 2004 Paul Mundt
* Copyright (C) 2003, 2004 Richard Curnow
*
*/

/*
* 'Traps.c' handles hardware traps and faults after we have saved some
* state in 'entry.S'.
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/sched.h>
#include <linux/kernel.h>
Expand Down
5 changes: 1 addition & 4 deletions trunk/arch/sh/lib64/c-checksum.c
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
/*
* arch/sh64/lib/c-checksum.c
* arch/sh/lib64/c-checksum.c
*
* This file contains network checksum routines that are better done
* in an architecture-specific manner due to speed..
*/

#undef DEBUG

#include <linux/string.h>
#include <linux/errno.h>
#include <linux/kernel.h>
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh/lib64/dbg.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
--
-- Identity : Linux50 Debug Funcions
--
-- File : arch/sh64/lib/dbg.C
-- File : arch/sh/lib64/dbg.c
--
-- Copyright 2000, 2001 STMicroelectronics Limited.
-- Copyright 2004 Richard Curnow (evt_debug etc)
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/sh/lib64/udelay.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* arch/sh64/lib/udelay.c
* arch/sh/lib64/udelay.c
*
* Delay routines, using a pre-computed "loops_per_jiffy" value.
*
Expand Down
15 changes: 6 additions & 9 deletions trunk/arch/sh/mm/cache-sh5.c
Original file line number Diff line number Diff line change
@@ -1,18 +1,15 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/mm/cache.c
* arch/sh/mm/cache-sh5.c
*
* Original version Copyright (C) 2000, 2001 Paolo Alberelli
* Second version Copyright (C) benedict.gaster@superh.com 2002
* Third version Copyright Richard.Curnow@superh.com 2003
* Hacks to third version Copyright (C) 2003 Paul Mundt
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/

/****************************************************************************/

#include <linux/init.h>
#include <linux/mman.h>
#include <linux/mm.h>
Expand Down Expand Up @@ -146,7 +143,7 @@ int __init sh64_cache_init(void)
/* The following group of functions deal with mapping and unmapping a temporary
page into the DTLB slot that have been set aside for our exclusive use. */
/* In order to accomplish this, we use the generic interface for adding and
removing a wired slot entry as defined in arch/sh64/mm/tlb.c */
removing a wired slot entry as defined in arch/sh/mm/tlb-sh5.c */
/****************************************************************************/

static unsigned long slot_own_flags;
Expand Down
28 changes: 15 additions & 13 deletions trunk/arch/sh/mm/extable_64.c
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
/*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
* arch/sh64/mm/extable.c
* arch/sh/mm/extable_64.c
*
* Copyright (C) 2003 Richard Curnow
* Copyright (C) 2003, 2004 Paul Mundt
*
* Cloned from the 2.5 SH version..
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*/
#include <linux/rwsem.h>
#include <linux/module.h>
Expand All @@ -21,13 +21,16 @@ static const struct exception_table_entry __copy_user_fixup_ex = {
.fixup = (unsigned long)&__copy_user_fixup,
};

/* Some functions that may trap due to a bad user-mode address have too many loads
and stores in them to make it at all practical to label each one and put them all in
the main exception table.
In particular, the fast memcpy routine is like this. It's fix-up is just to fall back
to a slow byte-at-a-time copy, which is handled the conventional way. So it's functionally
OK to just handle any trap occurring in the fast memcpy with that fixup. */
/*
* Some functions that may trap due to a bad user-mode address have too
* many loads and stores in them to make it at all practical to label
* each one and put them all in the main exception table.
*
* In particular, the fast memcpy routine is like this. It's fix-up is
* just to fall back to a slow byte-at-a-time copy, which is handled the
* conventional way. So it's functionally OK to just handle any trap
* occurring in the fast memcpy with that fixup.
*/
static const struct exception_table_entry *check_exception_ranges(unsigned long addr)
{
if ((addr >= (unsigned long)&copy_user_memcpy) &&
Expand Down Expand Up @@ -77,4 +80,3 @@ int fixup_exception(struct pt_regs *regs)

return 0;
}

Loading

0 comments on commit bab264d

Please sign in to comment.