Commit Graph

107322 Commits

Author SHA1 Message Date
Yoshinori Sato cce2d453e4 SH2(A) cache update
Includes:
- SH2 (7619) Writeback support.
- SH2A cache handling fix.

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 16:33:47 +09:00
Paul Mundt 1af446edfe nommu: Provide vmalloc_exec().
Now that SH has switched to vmalloc_exec() for PAGE_KERNEL_EXEC usage,
it's apparent that nommu has no vmalloc_exec() definition of its own.
Stub in the one from mm/vmalloc.c.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 16:01:47 +09:00
Takashi Yoshii d8eb2fab18 add addrespace definition for sh2a.
Newfile: arch/sh/include/cpu-sh2a/cpu/addrspace.h

This file seems had be removed to use fallback (cpu-common/cpu/addrspace.h),
but, I'd like to add sh2a specific file here, because
1. the values defined there are not suitable for sh2a.
2. I don't think there is "common" definition for these values.

Values are chosen by consideration of followings...
 P1 is 0. perhaps no question.
 P2 is from hardware manual, which says no-cache area starts at 20000000.
 It means that P? space size=20000000.
 P3 is P2+size since asm/ptrace.h uses P3 as a end of P2.
 P4 is P3+size since asm/fixup.h uses P4 as a end of P3.

Signed-off-by: Takashi YOSHII <yoshii.takashi@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 14:39:19 +09:00
Paul Mundt 42ced5561a sh: Kill off ARCH_SUPPORTS_AOUT and remnants of a.out support.
SH never really supported a.out, so this was all just copied over blindly
from x86 way back when. As we don't reference linux/a.out.h anywhere in
the tree, these can now safely be killed off.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 14:18:53 +09:00
Paul Mundt 5093c9a4e4 sh: define GENERIC_HARDIRQS_NO__DO_IRQ.
We haven't called in to __do_IRQ() in a long time, so it seems like a
reasonable time to switch this on by default.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 14:17:13 +09:00
Paul Mundt bdcab87b1c sh: define GENERIC_LOCKBREAK.
Needed for fixing up the __raw_spin_is_contended() reference which
results in a build error.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 14:09:15 +09:00
Paul Mundt c3b4adfa65 sh: Save NUMA node data in vmcore for crash dumps.
Presently the NUMA node data isn't saved on kexec. This implements a
simple arch_crash_save_vmcoreinfo() for saving off the relevant data.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 13:42:49 +09:00
Paul Mundt 4b59c97325 sh: module_alloc() should be using vmalloc_exec().
SH-X2 extended mode TLB allows for toggling of the exec bit, so make
sure we are using the right protection bits for module space there
also.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 13:34:29 +09:00
Paul Mundt 3108cf0612 sh: Fix up __bug_table handling in module loader.
We should be calling in to the lib/bug.c module helpers, fix that up.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 13:32:04 +09:00
Paul Mundt b5ed042249 sh: Add documentation and integrate into docbook build.
This adds some preliminary docbook bits for SH, tying in to the few
interfaces that are exposed and that have adequate kerneldoc comments.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 12:53:55 +09:00
Paul Mundt 6a9545bd95 sh: Fix up broken kerneldoc comments.
These were completely unparseable, so fix them up.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 12:51:06 +09:00
Paul Mundt 617870632d maple: Kill useless private_data pointer.
We can simply wrap in to the dev_set/get_drvdata(), there's no reason
to track an extra level of private data on top of the struct device.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 10:58:24 +09:00
Paul Mundt 63870295de maple: Clean up maple_driver_register/unregister routines.
These were completely inconsistent. Clean these up to take a maple_driver
pointer directly for consistency.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 10:39:46 +09:00
Adrian McMenamin 459021fe36 input: Clean up maple keyboard driver
Have a single probe function instead of a probe and a connect function.
Also tidy a comment.

Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 10:09:03 +09:00
Adrian McMenamin 86d9d32c7b maple: allow removal and reinsertion of keyboard driver module
Allow the removal (and subsequent reinsertion) of the maple_keyb (maple
keyboard) driver by adding a working removal function.

Also tidy long lines.

Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk>
Cc: Dmitry Torokhov <dtor@mail.ru>
Cc: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 09:55:56 +09:00
Paul Mundt c07abb6dbe sh: /proc/asids depends on MMU.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-04 08:11:03 +09:00
Huang Weiyi c48e64ae57 arch/sh/boards/mach-se/7343/irq.c: removed duplicated #include
Removed duplicated include <linux/irq.h> in
arch/sh/boards/mach-se/7343/irq.c.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-03 23:29:24 +09:00
Huang Weiyi 8edd744202 arch/sh/boards/board-ap325rxa.c: removed duplicated #include
Removed duplicated include <linux/delay.h> in
arch/sh/boards/board-ap325rxa.c.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-03 23:29:18 +09:00
Adrian Bunk 596400f0f3 sh/boards/Makefile typo fix
The following build error was caused by an obvious typo:

<--  snip  -->

...
  LD      arch/sh/mm/built-in.o
make[2]: *** No rule to make target `arch/sh/boards/board-shmin..o', needed by `arch/sh/boards/built-in.o'.  Stop.

<--  snip  -->

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-03 09:31:07 +09:00
Adrian Bunk 49de935c10 sh: fix LIBGCC
Commit f15cbe6f1a
(sh: migrate to arch/sh/include/) moved KBUILD_CFLAGS
(which is used by LIBGCC) below LIBGCC, causing build
errors like the following:

<--  snip  -->

...
  LD      .tmp_vmlinux1
arch/sh/kernel/built-in.o: In function `module_clk_recalc':
clock-sh4.c:(.text+0x80f0): undefined reference to `__udivsi3_i4i'
...
make[1]: *** [.tmp_vmlinux1] Error 1

<--  snip  -->

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-02 07:23:31 +09:00
Paul Mundt 4385e12b29 sh: Revert the location change of auto-generated asm/machtypes.h
This ended up causing build breakage on O= builds, as reported by Adrian:

<--  snip  -->

...
  CC      init/main.o
In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/irq.h:4,
                 from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/irq.h:23,
                 from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/hardirq.h:5,
                 from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/hardirq.h:7,
                 from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/asm-generic/local.h:5,
                 from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/local.h:4,
                 from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/module.h:19,
                 from /home/bunk/linux/kernel-2.6/git/linux-2.6/init/main.c:13:
/home/bunk/linux/kernel-2.6/git/linux-2.6/arch/sh/include/asm/machvec.h:15:27:
error: asm/machtypes.h: No such file or directory
make[2]: *** [init/main.o] Error 1

<--  snip  -->

So we simply move machtypes.h back to its original place. asm-offsets.h is
still generated there regardless, until such a time that we find a better place
to stash auto-generated files.

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-02 07:14:09 +09:00
Paul Mundt 26a8ef5326 net: stnic: Fix up fallout from SH header migration.
asm/se.h moved to mach-se/mach/se.h, update the path. We could use
mach/se.h here also, but it's preferable to be explicit when there's
only a single supported mach-type.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-02 04:39:33 +09:00
Paul Mundt 9e5e21170e sh: Fix up the audit arch endian specification.
Presently this was always being set to AUDIT_ARCH_SH, which assumes
big endian. Fix this up so that the architecture actually reflects
what we're running on.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-02 04:39:33 +09:00
Paul Mundt ab99c733ae sh: Make syscall tracer use tracehook notifiers, add TIF_NOTIFY_RESUME.
This follows the changes in commits:

7d6d637dac
4f72c4279e

on powerpc. Adding in TIF_NOTIFY_RESUME, and cleaning up the syscall
tracing to be more generic. This is an incremental step to turning
on tracehook, as well as unifying more of the ptrace and signal code
across the 32/64 split.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-02 04:39:33 +09:00
Paul Mundt c459dbf294 sh: ptrace single stepping cleanups.
This converts the single stepping done by sh/sh64 ptrace implementations
to use the generic user_enable/disable_single_step(), and subsequently
rips out a lot of ptrace request cases that are now handled generically.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-08-02 04:39:33 +09:00