]> err.no Git - linux-2.6/log
linux-2.6
15 years agosh: Workaround for __put_user_asm() bug with gcc 4.x on big-endian.
Yoshinori Sato [Mon, 28 Jul 2008 09:36:13 +0000 (18:36 +0900)]
sh: Workaround for __put_user_asm() bug with gcc 4.x on big-endian.

I think this problem is GCC(4.1.2) bug.
Syscall "getdents" returned "dirent->d_off" is always 0.
I think other EB enviroment have same problem.

Problem code
0c03c954 <filldir>:
 :
 c03c97a:       58 f7           mov.l   @(28,r15),r8 !-> offset (high)
 c03c97c:       59 f8           mov.l   @(32,r15),r9 !-> offset (low)
 c03c97e:       53 f9           mov.l   @(36,r15),r3
 c03c980:       54 fa           mov.l   @(40,r15),r4
 :
 c03c9a0:       21 82           mov.l   r8,@r1 !offset(high) -> dirent->d_off

It's workaround patch.

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Wire up new syscalls.
Paul Mundt [Mon, 28 Jul 2008 09:34:45 +0000 (18:34 +0900)]
sh: Wire up new syscalls.

This wires up the signalfd4, eventfd2, epoll_create1, dup3, pipe2, and
inotify_init1 syscalls.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: fix uImage Entry Point
Yoshihiro Shimoda [Wed, 23 Jul 2008 07:49:06 +0000 (16:49 +0900)]
sh: fix uImage Entry Point

fix the problem that cannot boot using uImage when PAGE_SIZE is
8kbyte or 64kbyte.

Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh_keysc: remove request_mem_region() and release_mem_region()
Tetsuya Mukawa [Fri, 18 Jul 2008 22:46:53 +0000 (07:46 +0900)]
sh_keysc: remove request_mem_region() and release_mem_region()

Remove request_mem_region() and release_mem_region() from sh_keysc driver.
Those functions can find resource conflict, but it is already checked in
platform_device_add().

Signed-off-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Don't miss pending signals returning to user mode after signal processing
Stuart MENEFY [Thu, 17 Jul 2008 12:08:40 +0000 (13:08 +0100)]
sh: Don't miss pending signals returning to user mode after signal processing

Without this patch, signals sent during architecture specific signal
handling (typically as a result of the user's stack being inaccessible)
are ignored.

This is the SH version of commit c3ff8ec31c1249d268cd11390649768a12bec1b9
which was for the i386.

Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Use clk_always_enable() on sh7366
Magnus Damm [Thu, 17 Jul 2008 10:20:11 +0000 (19:20 +0900)]
sh: Use clk_always_enable() on sh7366

Use clk_always_enable() in the sh7366 processor code.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Use clk_always_enable() on sh7343 / SE77343
Magnus Damm [Thu, 17 Jul 2008 10:18:24 +0000 (19:18 +0900)]
sh: Use clk_always_enable() on sh7343 / SE77343

Use clk_always_enable() on the sh7343 processor and in the board code
for Solution Engine 7343. Remove duplicate MSTPCR register definitions.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Use clk_always_enable() on sh7722 / Migo-R / SE7722
Magnus Damm [Thu, 17 Jul 2008 10:16:11 +0000 (19:16 +0900)]
sh: Use clk_always_enable() on sh7722 / Migo-R / SE7722

Use clk_always_enable() on the sh7722 processor and in the board code
for Migo-R and Solution Engine 7722. Remove duplicate MSTPCR register
definitions.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Use clk_always_enable() on sh7723 / ap325rxa
Magnus Damm [Thu, 17 Jul 2008 10:13:34 +0000 (19:13 +0900)]
sh: Use clk_always_enable() on sh7723 / ap325rxa

Use clk_always_enable() on the sh7723 processor and in the ap325rxa
board code. Remove duplicate MSTPCR register definitions.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Introduce clk_always_enable() function
Magnus Damm [Thu, 17 Jul 2008 10:09:51 +0000 (19:09 +0900)]
sh: Introduce clk_always_enable() function

Add SuperH specific funcion clk_always_enable(), useful to enable MSTPCR
bits in processor or board specific code.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Show all clocks and their state in /proc/clocks
Magnus Damm [Thu, 17 Jul 2008 10:05:54 +0000 (19:05 +0900)]
sh: Show all clocks and their state in /proc/clocks

Show all clocks in /proc/clocks, and also show if they are enabled or
disabled. This is useful to show MSTPCR bits on SuperH Mobile processors.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Merge sh7343 and sh7722 clock code
Magnus Damm [Thu, 17 Jul 2008 10:02:23 +0000 (19:02 +0900)]
sh: Merge sh7343 and sh7722 clock code

This code makes sh7343 share the sh7722 clock code. Instead of just using
the good and very old sh7343 clock implmentation, switch to the new MSTPCR
enabled clock code. SIU clocks are disabled on sh7343 for now.

With this change all SuperH Mobile devices now use the same clock code.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Add SuperH Mobile MSTPCR bits to clock framework
Magnus Damm [Thu, 17 Jul 2008 09:56:15 +0000 (18:56 +0900)]
sh: Add SuperH Mobile MSTPCR bits to clock framework

Handle module stop clock bits in MSTPCRn through the clock framework.
The clocks are named after the bits in the data sheet. The association
between bit number and hardware block is processor specific.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Use arch_flags to simplify sh7722 siu clock code
Magnus Damm [Thu, 17 Jul 2008 09:52:19 +0000 (18:52 +0900)]
sh: Use arch_flags to simplify sh7722 siu clock code

Make use of arch_flags to simplify the SIU clock code.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Add arch_flags to struct clk
Magnus Damm [Thu, 17 Jul 2008 09:48:57 +0000 (18:48 +0900)]
sh: Add arch_flags to struct clk

Add arch_flags to struct clk so we can keep per-clock private data
somewhere and share code between multiple clocks.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agofix sh ptep_get_and_clear breakage
Adrian Bunk [Wed, 16 Jul 2008 16:45:40 +0000 (19:45 +0300)]
fix sh ptep_get_and_clear breakage

Commit 1ea0704e0da65b2b46f9142ff1391163aac24060
(mm: add a ptep_modify_prot transaction abstraction)
triggered on sh build errors like the following:

<--  snip  -->

...
  CC      arch/sh/mm/pg-sh4.o
cc1: warnings being treated as errors
include2/asm/pgtable.h:139: error: 'ptep_get_and_clear' declared inline after being called
include2/asm/pgtable.h:139: error: previous declaration of 'ptep_get_and_clear' was here
make[2]: *** [arch/sh/mm/pg-sh4.o] Error 1

<--  snip  -->

Since there's no good reason for marking these global functions as
"inline" this patch therefore removes the inline's.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Renesas R0P7785LC0011RL board support
Yoshihiro Shimoda [Wed, 16 Jul 2008 11:21:09 +0000 (20:21 +0900)]
sh: Renesas R0P7785LC0011RL board support

This adds initial support for the Renesas R0P7785LC0011RL board.
This patch supports 29bit address mode only.

Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Add memory chunks to SH-Mobile UIO devices
Magnus Damm [Wed, 16 Jul 2008 10:02:54 +0000 (19:02 +0900)]
sh: Add memory chunks to SH-Mobile UIO devices

This patch adds physically contiguous memory chunks to the UIO devices.
The same strategy can be used in the future for the CEU as well.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Export sh7366 VPU, VEU(1), VEU(2) using uio_pdrv_genirq
Magnus Damm [Tue, 15 Jul 2008 12:55:03 +0000 (21:55 +0900)]
sh: Export sh7366 VPU, VEU(1), VEU(2) using uio_pdrv_genirq

This patch exports the VPU, VEU(1) and VEU(2) blocks of the sh7366
to user space using the uio_pdrv_genirq platform driver.

While at it, fix up the VEU(2) interrupt vector.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Export sh7723 VPU, VEU2H0, VEU2H1 using uio_pdrv_genirq
Magnus Damm [Tue, 15 Jul 2008 12:53:33 +0000 (21:53 +0900)]
sh: Export sh7723 VPU, VEU2H0, VEU2H1 using uio_pdrv_genirq

This patch exports the VPU, VEU2H0 and VEU2H1 blocks of the sh7723
to user space using the uio_pdrv_genirq platform driver.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Export sh7722 VPU and VEU using uio_pdrv_genirq
Magnus Damm [Tue, 15 Jul 2008 12:52:19 +0000 (21:52 +0900)]
sh: Export sh7722 VPU and VEU using uio_pdrv_genirq

This patch exports the VPU and VEU blocks of the sh7722 to user space
using the uio_pdrv_genirq platform driver.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Export sh7343 VPU and VEU using uio_pdrv_genirq
Magnus Damm [Tue, 15 Jul 2008 12:51:39 +0000 (21:51 +0900)]
sh: Export sh7343 VPU and VEU using uio_pdrv_genirq

This patch exports the VPU and VEU blocks of the sh7343 to user space
using the uio_pdrv_genirq platform driver.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh2(A) exception handler update
Yoshinori Sato [Wed, 9 Jul 2008 16:20:03 +0000 (01:20 +0900)]
sh2(A) exception handler update

This patch is

By sh2
- Remove duplicate code
- Reduce stack usage
- Cleanup and little optimize

By sh2a
- Add missing handler(256 to 511)
- Use sh2a instructions handler

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: update Solution Engine 7343
Yoshihiro Shimoda [Mon, 7 Jul 2008 12:11:54 +0000 (21:11 +0900)]
sh: update Solution Engine 7343

updated the following codes for Solution Endine 7343:
 - fix compile error in arch/sh/boards/se/7343/irq.c
 - add nor flash physmaps
 - update defconfig

Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: update sh7343 code
Yoshihiro Shimoda [Mon, 7 Jul 2008 12:11:51 +0000 (21:11 +0900)]
sh: update sh7343 code

updated the following codes for SH7343:
 - add register_intc_controller()
 - add EARLY_SCIF_CONSOLE_PORT
 - add define of CPG register

Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: fix pg-sh4.c build breakage in linux-next
Magnus Damm [Sat, 5 Jul 2008 03:33:30 +0000 (12:33 +0900)]
sh: fix pg-sh4.c build breakage in linux-next

Remove inline from ptep_get_and_clean() to match with header file prototype.
Makes linux-next build.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: enable I2C on the ap325rxa board
Magnus Damm [Sat, 5 Jul 2008 03:32:44 +0000 (12:32 +0900)]
sh: enable I2C on the ap325rxa board

This patch enables I2C on the sh7723-based ap325rxa board.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: add SuperH Mobile I2C platform data to sh7366
Magnus Damm [Sat, 5 Jul 2008 03:32:23 +0000 (12:32 +0900)]
sh: add SuperH Mobile I2C platform data to sh7366

This patch adds platform data for the single I2C channel on sh7366.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: add SuperH Mobile I2C platform data to sh7723
Magnus Damm [Sat, 5 Jul 2008 03:32:06 +0000 (12:32 +0900)]
sh: add SuperH Mobile I2C platform data to sh7723

This patch adds platform data for the single I2C channel on sh7723.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: add SuperH Mobile I2C platform data to sh7343
Magnus Damm [Sat, 5 Jul 2008 03:31:46 +0000 (12:31 +0900)]
sh: add SuperH Mobile I2C platform data to sh7343

This patch adds platform data for two I2C channels to the sh7343.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: add interrupt ack code to sh4a
Yoshihiro Shimoda [Fri, 4 Jul 2008 03:37:12 +0000 (12:37 +0900)]
sh: add interrupt ack code to sh4a

This patch is based on interrupt acknowledge code for external
interrupt sources on sh3 processors and adds on sh4a processors.

Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Fix up link error on SH-2 zImage with older binutils.
Yoshinori Sato [Fri, 4 Jul 2008 03:54:51 +0000 (12:54 +0900)]
sh: Fix up link error on SH-2 zImage with older binutils.

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Conditionally re-enable IRQs in fault path.
Stuart Menefy [Wed, 2 Jul 2008 08:51:23 +0000 (17:51 +0900)]
sh: Conditionally re-enable IRQs in fault path.

The current kernel behaviour is to reenable interrupts unconditionally
when taking a page fault. This patch changes this to only enable them
if interrupts were previously enabled.

It also fixes a problem seen with this fix in place: the kernel previously
flushed the vsyscall page when handling a signal, which is not only
unncessary, but caused a possible sleep with interrupts disabled.

Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Record the major cut revision for probed SH-4A parts.
Paul Mundt [Wed, 2 Jul 2008 08:46:40 +0000 (17:46 +0900)]
sh: Record the major cut revision for probed SH-4A parts.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Optimized flush_icache_range() implementation.
Chris Smith [Wed, 2 Jul 2008 06:17:11 +0000 (15:17 +0900)]
sh: Optimized flush_icache_range() implementation.

Add implementation of flush_icache_range() suitable for signal handler
and kprobes. Remove flush_cache_sigtramp() and change signal.c to use
flush_icache_range().

Signed-off-by: Chris Smith <chris.smith@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Stub in silicon cut in CPU info.
Stuart Menefy [Wed, 2 Jul 2008 06:15:09 +0000 (15:15 +0900)]
sh: Stub in silicon cut in CPU info.

Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Tidy up the SH-3 exception vector table.
Paul Mundt [Wed, 2 Jul 2008 04:58:38 +0000 (13:58 +0900)]
sh: Tidy up the SH-3 exception vector table.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agoSH7619 add ethernet controler support
Yoshinori Sato [Wed, 2 Jul 2008 02:20:24 +0000 (22:20 -0400)]
SH7619 add ethernet controler support

- Add EtherC + PHY resource define.

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Remove sh_pcic_io_xxx function from Solution Engine IO code
Nobuhiro Iwamatsu [Tue, 24 Jun 2008 04:00:52 +0000 (13:00 +0900)]
sh: Remove sh_pcic_io_xxx function from Solution Engine IO code

sh_pcic_io_xxx function are very old.
In linux-2.4, mrshpc_ss socket driver used this function.
But there is not this driver to the present kernel.
I deleted these cords and checked operation.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Fix Kconfig of AP-325RXA
Nobuhiro Iwamatsu [Thu, 19 Jun 2008 10:27:55 +0000 (19:27 +0900)]
sh: Fix Kconfig of AP-325RXA

The CPU of AP-325RXA is SH7723, but a CPU becomes selectable.
This patch fixes this problem.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Clean up code of Solution Engine 770x
Nobuhiro Iwamatsu [Wed, 18 Jun 2008 09:32:03 +0000 (18:32 +0900)]
sh: Clean up code of Solution Engine 770x

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Update Solution Enginge 7712 defconfig
Nobuhiro Iwamatsu [Wed, 18 Jun 2008 09:31:46 +0000 (18:31 +0900)]
sh: Update Solution Enginge 7712 defconfig

Enable SH-Ether support and NFS userland support.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Solution Enginge 7710/7712 SH-Ether support
Nobuhiro Iwamatsu [Wed, 18 Jun 2008 09:29:06 +0000 (18:29 +0900)]
sh: Solution Enginge 7710/7712 SH-Ether support

Add support SH-Ether for Hitachi Solution Engine.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh/kernel/ cleanups
Adrian Bunk [Wed, 18 Jun 2008 00:36:50 +0000 (03:36 +0300)]
sh/kernel/ cleanups

This patch contains the following cleanups:
- make the following needlessly global code static:
  - cf-enabler.c: cf_init()
  - cpu/clock.c: __clk_enable()
  - cpu/clock.c: __clk_disable()
  - process_32.c: default_idle()
  - time_32.c: struct clocksource_sh
  - timers/timer-tmu.c: struct tmu_timer_ops
- remove the following unused functions (no CONFIG_BLK_DEV_FD on sh):
  - process_{32,64}.c: disable_hlt()
  - process_{32,64}.c: enable_hlt()

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: make pcibios_max_latency static
Adrian Bunk [Tue, 17 Jun 2008 22:33:40 +0000 (01:33 +0300)]
sh: make pcibios_max_latency static

This patch makes the needlessly global pcibios_max_latency static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: make EARLY_PCI_OP's static
Adrian Bunk [Tue, 17 Jun 2008 22:31:03 +0000 (01:31 +0300)]
sh: make EARLY_PCI_OP's static

This patch makes the needlessly global EARLY_PCI_OP's static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh/boards/dreamcast/rtc.c: make 2 functions static
Adrian Bunk [Tue, 17 Jun 2008 22:30:57 +0000 (01:30 +0300)]
sh/boards/dreamcast/rtc.c: make 2 functions static

This patch makes the needlessly global aica_rtc_{get,set}timeofday()
static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agomaple: tidy maple_driver code by removing redundant connect/disconnect
Adrian McMenamin [Sun, 15 Jun 2008 19:48:09 +0000 (20:48 +0100)]
maple: tidy maple_driver code by removing redundant connect/disconnect

The connect and disconnect functions are unnecessary - everything they do can be
accomplished in the initial probe - so remove them.

Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Renesas Solutions SH7763RDP board support
Nobuhiro Iwamatsu [Fri, 6 Jun 2008 08:04:56 +0000 (17:04 +0900)]
sh: Renesas Solutions SH7763RDP board support

This patch adds basic support for the SH7763RDP board.
This supports a basic stuff provided in SH7763, like SCIF,
NOR Flash and USB host.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Add SCIF2 support for SH7763.
Nobuhiro Iwamatsu [Fri, 6 Jun 2008 08:04:08 +0000 (17:04 +0900)]
sh: Add SCIF2 support for SH7763.

SH7763 has 3 SCIF device. Current code supports SCIF0 and 1.
SCIF0 and 1 are same register constitution, but only SCIF2 is different.
I added support of SCIF2.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Add support Renesas Solutions AP-325RXA board
Yusuke Goda [Fri, 6 Jun 2008 08:03:23 +0000 (17:03 +0900)]
sh: Add support Renesas Solutions AP-325RXA board

This board is SH7723 base board.

This has SCIF, LCDC, USB Host controler, NOR/NAND Flash, Sound,
Ether and other.

This patch supports SCIF, NOR Flash.

Signed-off-by: Yusuke Goda <goda.yusuke@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Initial consolidation of the _32/_64 uaccess split.
Paul Mundt [Tue, 3 Jun 2008 11:05:39 +0000 (20:05 +0900)]
sh: Initial consolidation of the _32/_64 uaccess split.

This consolidates everything but the bare assembly routines, which we
will sync up in a follow-up patch.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Consolidate addr/access_ok across mmu/nommu on 32bit.
Paul Mundt [Tue, 3 Jun 2008 10:38:22 +0000 (19:38 +0900)]
sh: Consolidate addr/access_ok across mmu/nommu on 32bit.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Use the common segment definitions for the _64 uaccess routines.
Paul Mundt [Tue, 3 Jun 2008 10:37:35 +0000 (19:37 +0900)]
sh: Use the common segment definitions for the _64 uaccess routines.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Add support for 16kB PAGE_SIZE.
Paul Mundt [Tue, 3 Jun 2008 09:54:02 +0000 (18:54 +0900)]
sh: Add support for 16kB PAGE_SIZE.

16kB is a useful size on nommu, while 64kB still tends to be too big to
be useful. Newer MMUs are likely to support this as well, so plug it
in in anticipation of those, too.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Support variable page sizes on nommu.
Paul Mundt [Tue, 3 Jun 2008 09:52:11 +0000 (18:52 +0900)]
sh: Support variable page sizes on nommu.

PAGE_SIZE doesn't need to be fixed at 4096 on nommu, so stub in a !MMU
case for the various PAGE_SIZE Kconfig options.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Consolidate segment modifiers across mmu/nommu systems.
Paul Mundt [Tue, 3 Jun 2008 09:48:54 +0000 (18:48 +0900)]
sh: Consolidate segment modifiers across mmu/nommu systems.

This moves get_fs/set_fs() and friends in to asm/segment.h. The
mm_segment_t definition is likewise consolidated from the _32/_64 split.

This is prepatory groundwork for using the generic address space limit
and verification routines across mmu/nommu configs.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: RSK+ 7203 board support.
Paul Mundt [Mon, 19 May 2008 07:47:56 +0000 (16:47 +0900)]
sh: RSK+ 7203 board support.

This adds initial support for the RTE RSK+ SH7203 board.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Make dump_task dependent on ELF core.
Paul Mundt [Mon, 19 May 2008 05:00:44 +0000 (14:00 +0900)]
sh: Make dump_task dependent on ELF core.

Currently this is only linked in for CONFIG_BINFMT_ELF, make it dependent
on CONFIG_ELF_CORE, so it's both selectable there and also linked in for
CONFIG_BINFMT_ELF_FDPIC.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: Initial ELF FDPIC support.
Paul Mundt [Mon, 19 May 2008 04:40:12 +0000 (13:40 +0900)]
sh: Initial ELF FDPIC support.

This adds initial support for ELF FDPIC on MMU-less SH, as per version
0.2 of the ABI definition at:

http://www.codesourcery.com/public/docs/sh-fdpic/sh-fdpic-abi.txt

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agobinfmt_elf_fdpic: Magical stack pointer index, for NEW_AUX_ENT compat.
Paul Mundt [Mon, 19 May 2008 04:34:45 +0000 (13:34 +0900)]
binfmt_elf_fdpic: Magical stack pointer index, for NEW_AUX_ENT compat.

While implementing binfmt_elf_fdpic on SH it quickly became apparent
that SH was the first platform to support both binfmt_elf_fdpic and
binfmt_elf, as well as the only of the FDPIC platforms to make use of the
auxvt.

Currently binfmt_elf_fdpic uses a special version of NEW_AUX_ENT() where
the first argument is the entry displacement after csp has been adjusted,
being reset after each adjustment. As we have no ability to sort this out
through the platform's ARCH_DLINFO, this index needs to be managed
entirely in create_elf_fdpic_tables(). Presently none of the platforms
that set their own auxvt entries are able to do so through their
respective ARCH_DLINFOs when using binfmt_elf_fdpic.

In addition to this, binfmt_elf_fdpic has been looking at
DLINFO_ARCH_ITEMS for the number of architecture-specific entries in the
auxvt. This is legacy cruft, and is not defined by any platforms in-tree,
even those that make heavy use of the auxvt. AT_VECTOR_SIZE_ARCH is
always available, and contains the number that is of interest here, so we
switch to using that unconditionally as well.

As this has direct bearing on how much stack is used, platforms that have
configurable (or dynamically adjustable) NEW_AUX_ENT calls need to either
make AT_VECTOR_SIZE_ARCH more fine-grained, or leave it as a worst-case
and live with some lost stack space if those entries aren't pushed (some
platforms may also need to purposely sacrifice some space here for
alignment considerations, as noted in the code -- although not an issue
for any FDPIC-capable platform today).

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Acked-by: David Howells <dhowells@redhat.com>
15 years agomove arch/sh/lib/io.o to obj-y
Adrian Bunk [Tue, 17 Jun 2008 22:30:53 +0000 (01:30 +0300)]
move arch/sh/lib/io.o to obj-y

EXPORT_SYMBOL's in lib-y considered harmful:

<--  snip  -->

...
  MODPOST 1837 modules
ERROR: "__raw_readsl" [drivers/ssb/ssb.ko] undefined!
ERROR: "__raw_writesl" [drivers/ssb/ssb.ko] undefined!
ERROR: "__raw_writesl" [drivers/net/smc91x.ko] undefined!
ERROR: "__raw_readsl" [drivers/net/smc91x.ko] undefined!
ERROR: "__raw_writesl" [drivers/net/3c59x.ko] undefined!
ERROR: "__raw_readsl" [drivers/net/3c59x.ko] undefined!
...
make[2]: *** [__modpost] 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>
15 years agosh dreamcast: export board_pci_channels
Adrian Bunk [Tue, 17 Jun 2008 22:30:40 +0000 (01:30 +0300)]
sh dreamcast: export board_pci_channels

This patch fixes the following build error:

<--  snip  -->

...
  MODPOST 1837 modules
ERROR: "board_pci_channels" [drivers/pcmcia/yenta_socket.ko] undefined!
...
make[2]: *** [__modpost] Error 1

<--  snip  -->

I freely admit that it's a pathological configuration, but as long as
it is allowed it should build.

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: export get_cpu_subtype
Adrian Bunk [Tue, 17 Jun 2008 22:30:24 +0000 (01:30 +0300)]
sh: export get_cpu_subtype

This patch fixes the following build error:

<--  snip  -->

...
  MODPOST 1837 modules
ERROR: "get_cpu_subtype" [arch/sh/oprofile/oprofile.ko] undefined!
...
make[2]: *** [__modpost] 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>
15 years agosh: Prevent leaking of CONFIG_SUPERH32 to userspace in asm/unistd.h.
Khem Raj [Thu, 3 Jul 2008 10:02:41 +0000 (19:02 +0900)]
sh: Prevent leaking of CONFIG_SUPERH32 to userspace in asm/unistd.h.

CONFIG_SUPERH32 is currently trickling into userspace unistd.h. Attached
patch uses __SH5__ define in userspace.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agosh: fix seq_file memory leak
Li Zefan [Tue, 24 Jun 2008 05:30:23 +0000 (13:30 +0800)]
sh: fix seq_file memory leak

When using single_open(), single_release() should be used instead
of seq_release(), otherwise there is a memory leak.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
15 years agopowerpc: Disable 64K hugetlb support when doing 64K SPU mappings
Benjamin Herrenschmidt [Mon, 28 Jul 2008 06:13:18 +0000 (16:13 +1000)]
powerpc: Disable 64K hugetlb support when doing 64K SPU mappings

The 64K SPU local store mapping feature is incompatible with the
64K huge pages support due to the inability of some parts of
the memory management to differenciate between them while they
use a different page table format.

For now, disable 64K huge pages when CONFIG_SPU_FS_64K_LS,
in the long run, this can be fixed by making this feature use
the hugetlb page table format.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc/powermac: Fixup default serial port device for pmac_zilog
Benjamin Herrenschmidt [Mon, 28 Jul 2008 03:49:15 +0000 (13:49 +1000)]
powerpc/powermac: Fixup default serial port device for pmac_zilog

This removes the non-working code in legacy_serial that tried to handle
the powermac SCC ports, and instead add a (now working) function to the
powermac platform code to find the default serial console if any.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc/powermac: Use sane default baudrate for SCC debugging
Benjamin Herrenschmidt [Mon, 28 Jul 2008 02:06:19 +0000 (12:06 +1000)]
powerpc/powermac: Use sane default baudrate for SCC debugging

When using the "sccdbg" option to route early kernel messages and
xmon to the SCC serial port on PowerMacs, when this wasn't the
configured output port of Open Firmware, we initialize the baudrate
to 57600bps. This isn't a very good default on some powermacs where
both the FW and pmac_zilog will default to 38400. This fixes it to
use the same logic as pmac_zilog to pick a default speed.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc/mm: Implement _PAGE_SPECIAL & pte_special() for 64-bit
Nick Piggin [Mon, 28 Jul 2008 03:28:03 +0000 (20:28 -0700)]
powerpc/mm: Implement _PAGE_SPECIAL & pte_special() for 64-bit

Implement _PAGE_SPECIAL and pte_special() for 64-bit powerpc. This bit will
be used by the fast get_user_pages() to differenciate PTEs that correspond
to a valid struct page from special mappings that don't such as IO mappings
obtained via io_remap_pfn_ranges().

Signed-off-by: Nick Piggin <npiggin@suse.de>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Hugh Dickins <hugh@veritas.com>
Cc: "Paul E. McKenney" <paulmck@us.ibm.com>
Reviewed-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Show processor cache information in sysfs
Nathan Lynch [Sun, 27 Jul 2008 05:24:55 +0000 (15:24 +1000)]
powerpc: Show processor cache information in sysfs

Collect cache information from the OF device tree and display it in
the cpu hierarchy in sysfs.  This is intended to be compatible at the
userspace level with x86's implementation[1], hence some of the funny
attribute names.  The arrangement of cache info is not immediately
intuitive, but (again) it's for compatibility's sake.

The cache attributes exposed are:

type (Data, Instruction, or Unified)
level (1, 2, 3...)
size
coherency_line_size
number_of_sets
ways_of_associativity

All of these can be derived on platforms that follow the OF PowerPC
Processor binding.  The code "publishes" only those attributes for
which it is able to determine values; attributes for values which
cannot be determined are not created at all.

[1] arch/x86/kernel/cpu/intel_cacheinfo.c

BenH: Turned some printk's into pr_debug, added better NULL checking
in a couple of places.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Make core id information available to userspace
Nathan Lynch [Sun, 27 Jul 2008 05:24:54 +0000 (15:24 +1000)]
powerpc: Make core id information available to userspace

Existing Open Firmware practice is to report each processor core as a
separate node in the device tree.  Report the value of the "reg" OF
property corresponding to a logical CPU's device node as the core_id
attribute in /sys/devices/system/cpu/cpu*/topology/core_id.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Make core sibling information available to userspace
Nathan Lynch [Sun, 27 Jul 2008 05:24:53 +0000 (15:24 +1000)]
powerpc: Make core sibling information available to userspace

Implement the notion of "core siblings" for powerpc.  This makes
/sys/devices/system/cpu/cpu*/topology/core_siblings present sensible
values, indicating online CPUs which share an L2 cache.

BenH: Made cpu_to_l2cache() use of_find_node_by_phandle() instead
of IBM-specific open coded search

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc/vio: More fallout from dma_mapping_error API change
Stephen Rothwell [Sun, 27 Jul 2008 16:22:14 +0000 (02:22 +1000)]
powerpc/vio: More fallout from dma_mapping_error API change

arch/powerpc/kernel/vio.c:533: error: too few arguments to function 'dma_mapping_error'

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agoibmveth: Fix multiple errors with dma_mapping_error conversion
Stephen Rothwell [Sun, 27 Jul 2008 16:14:24 +0000 (02:14 +1000)]
ibmveth: Fix multiple errors with dma_mapping_error conversion

The addition of an argument to dma_mapping_error() in commit
8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06 "dma-mapping: add the device
argument to dma_mapping_error()" left a bit of fallout:

drivers/net/ibmveth.c:263: error: too few arguments to function 'dma_mapping_error'
drivers/net/ibmveth.c:264: error: expected ')' before 'goto'
drivers/net/ibmveth.c:284: error: expected expression before '}' token
drivers/net/ibmveth.c:297: error: too few arguments to function 'dma_mapping_error'
drivers/net/ibmveth.c:298: error: expected ')' before 'dma_unmap_single'
drivers/net/ibmveth.c:306: error: expected expression before '}' token
drivers/net/ibmveth.c:491: error: too few arguments to function 'dma_mapping_error'
drivers/net/ibmveth.c:927: error: too few arguments to function 'dma_mapping_error'
drivers/net/ibmveth.c:927: error: expected ')' before '{' token
drivers/net/ibmveth.c:974: error: expected expression before '}' token
drivers/net/ibmveth.c:914: error: label 'out' used but not defined m

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc/pseries: Fix CMO sysdev attribute API change fallout
Stephen Rothwell [Sun, 27 Jul 2008 14:51:02 +0000 (00:51 +1000)]
powerpc/pseries: Fix CMO sysdev attribute API change fallout

Noticed due to these wanings:

arch/powerpc/platforms/pseries/cmm.c:298: warning: initialization from incompatible pointer type
arch/powerpc/platforms/pseries/cmm.c:299: warning: initialization from incompatible pointer type
arch/powerpc/platforms/pseries/cmm.c:320: warning: initialization from incompatible pointer type
arch/powerpc/platforms/pseries/cmm.c:320: warning: initialization from incompatible pointer type

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Enable tracehook for the architecture
Roland McGrath [Sun, 27 Jul 2008 06:53:20 +0000 (16:53 +1000)]
powerpc: Enable tracehook for the architecture

The powerpc arch code has all the prerequisites, so set HAVE_ARCH_TRACEHOOK.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Add TIF_NOTIFY_RESUME support for tracehook
Roland McGrath [Sun, 27 Jul 2008 06:52:52 +0000 (16:52 +1000)]
powerpc: Add TIF_NOTIFY_RESUME support for tracehook

This adds TIF_NOTIFY_RESUME support for powerpc.  When set,
we call tracehook_notify_resume() on the way to user mode.
This overloads do_signal() to do the work, but changes its
arguments to it has the TIF_* bits handy in a register and
drops the useless first argument that was always zero.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Add asm/syscall.h with the tracehook entry points
Roland McGrath [Sun, 27 Jul 2008 06:51:35 +0000 (16:51 +1000)]
powerpc: Add asm/syscall.h with the tracehook entry points

Add asm/syscall.h for powerpc with all the required entry points.
This will allow arch-independent tracing code for system calls.

BenH: Fixed up use of regs->trap to properly mask low bit

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Make syscall tracing use tracehook.h helpers
Roland McGrath [Sun, 27 Jul 2008 06:51:03 +0000 (16:51 +1000)]
powerpc: Make syscall tracing use tracehook.h helpers

This changes powerpc syscall tracing to use the new tracehook.h entry
points.  There is no change, only cleanup.

In addition, the assembly changes allow do_syscall_trace_enter() to
abort the syscall without losing the information about the original
r0 value.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Call tracehook_signal_handler() when setting up signal frames
Roland McGrath [Sun, 27 Jul 2008 06:49:50 +0000 (16:49 +1000)]
powerpc: Call tracehook_signal_handler() when setting up signal frames

This makes the powerpc signal handling code call tracehook_signal_handler()
after a handler is set up.  This means that using PTRACE_SINGLESTEP to
enter a signal handler will report to ptrace on the first instruction of
the handler, instead of the second.  This is consistent with what x86 and
other machines do, and what users and debuggers want.

BenH: Fixed up the test for the trap value.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Update cpu_sibling_maps dynamically
Nathan Lynch [Sun, 27 Jul 2008 05:24:52 +0000 (15:24 +1000)]
powerpc: Update cpu_sibling_maps dynamically

Rather doing one initialization pass over all the per-cpu
cpu_sibling_maps at boot, update the maps at cpu online/offline time.

This is a behavior change -- the thread_siblings attribute now
reflects only online siblings, whereas it would display offline
siblings before.  The new behavior matches that of x86, and is
arguably more useful.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: register_cpu_online should be __cpuinit
Nathan Lynch [Sun, 27 Jul 2008 05:24:51 +0000 (15:24 +1000)]
powerpc: register_cpu_online should be __cpuinit

It is called only in cpu online paths.

(caught by CONFIG_DEBUG_SECTION_MISMATCH=y)

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: kill useless SMT code in prom_hold_cpus
Nathan Lynch [Sun, 27 Jul 2008 05:24:50 +0000 (15:24 +1000)]
powerpc: kill useless SMT code in prom_hold_cpus

This piece of code is broken for >2 threads, and possibly in some
other subtle ways (such as comparing a value obtained from an
"ibm,ppc-interrupt-server#s" property to a value obtained from a
"reg" property) and doesn't seem to have any useful purpose in the
first place other than a dubious warning in case NR_CPUS is too
small, which probably isn't the right place to do so.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Fix 8xx build failure
Kumar Gala [Sat, 26 Jul 2008 17:57:30 +0000 (03:57 +1000)]
powerpc: Fix 8xx build failure

The 'powerpc ioremap_prot' broke 8xx builds:

include2/asm/pgtable-ppc32.h:555: error: '_PAGE_WRITETHRU' undeclared (first use in this function)
include2/asm/pgtable-ppc32.h:555: error: (Each undeclared identifier is reported only once
include2/asm/pgtable-ppc32.h:555: error: for each function it appears in.)

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Fix vio build warnings
Nathan Lynch [Fri, 25 Jul 2008 23:06:17 +0000 (09:06 +1000)]
powerpc: Fix vio build warnings

arch/powerpc/kernel/vio.c:1034: warning: function declaration isnâ\80\99t a prototype
arch/powerpc/kernel/vio.c:1035: warning: function declaration isnâ\80\99t a prototype

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc/booke: Clean up the hardware watchpoint support
Kumar Gala [Fri, 25 Jul 2008 19:27:33 +0000 (05:27 +1000)]
powerpc/booke: Clean up the hardware watchpoint support

* CONFIG_BOOKE is selected by CONFIG_44x so we dont need both
* Fixed a few comments
* Go back to only using DBCR0_IDM to determine if we are using
  debug resources.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agopowerpc: Removed duplicated include in stacktrace.c
Huang Weiyi [Wed, 23 Jul 2008 14:44:51 +0000 (00:44 +1000)]
powerpc: Removed duplicated include in stacktrace.c

Removed duplicated include file <linux/module.h> in
arch/powerpc/kernel/stacktrace.c.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agoMerge commit 'gcl/gcl-next'
Benjamin Herrenschmidt [Mon, 28 Jul 2008 06:30:40 +0000 (16:30 +1000)]
Merge commit 'gcl/gcl-next'

15 years agostop_machine: fix up ftrace.c
Rusty Russell [Mon, 28 Jul 2008 17:16:31 +0000 (12:16 -0500)]
stop_machine: fix up ftrace.c

Simple conversion.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Abhishek Sagar <sagar.abhishek@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Steven Rostedt <rostedt@goodmis.org>
15 years agostop_machine: Wean existing callers off stop_machine_run()
Rusty Russell [Mon, 28 Jul 2008 17:16:30 +0000 (12:16 -0500)]
stop_machine: Wean existing callers off stop_machine_run()

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
15 years agostop_machine(): stop_machine_run() changed to use cpu mask
Rusty Russell [Mon, 28 Jul 2008 17:16:30 +0000 (12:16 -0500)]
stop_machine(): stop_machine_run() changed to use cpu mask

Instead of a "cpu" arg with magic values NR_CPUS (any cpu) and ~0 (all
cpus), pass a cpumask_t.  Allow NULL for the common case (where we
don't care which CPU the function is run on): temporary cpumask_t's
are usually considered bad for stack space.

This deprecates stop_machine_run, to be removed soon when all the
callers are dead.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
15 years agoHotplug CPU: don't check cpu_online after take_cpu_down
Rusty Russell [Mon, 28 Jul 2008 17:16:29 +0000 (12:16 -0500)]
Hotplug CPU: don't check cpu_online after take_cpu_down

Akinobu points out that if take_cpu_down() succeeds, the cpu must be offline.
Remove the cpu_online() check, and put a BUG_ON().

Quoting Akinobu Mita:
   Actually the cpu_online() check was necessary before appling this
   stop_machine: simplify patch.

   With old __stop_machine_run(), __stop_machine_run() could succeed
   (return !IS_ERR(p) value) even if take_cpu_down() returned non-zero value.
   The return value of take_cpu_down() was obtained through kthread_stop()..

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: "Akinobu Mita" <akinobu.mita@gmail.com>
15 years agoSimplify stop_machine
Rusty Russell [Mon, 28 Jul 2008 17:16:28 +0000 (12:16 -0500)]
Simplify stop_machine

stop_machine creates a kthread which creates kernel threads.  We can
create those threads directly and simplify things a little.  Some care
must be taken with CPU hotunplug, which has special needs, but that code
seems more robust than it was in the past.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
15 years agostop_machine: add ALL_CPUS option
Jason Baron [Thu, 28 Feb 2008 16:33:03 +0000 (11:33 -0500)]
stop_machine: add ALL_CPUS option

-allow stop_mahcine_run() to call a function on all cpus. Calling
 stop_machine_run() with a 'ALL_CPUS' invokes this new behavior.
 stop_machine_run() proceeds as normal until the calling cpu has
 invoked 'fn'. Then, we tell all the other cpus to call 'fn'.

Signed-off-by: Jason Baron <jbaron@redhat.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
CC: Adrian Bunk <bunk@stusta.de>
CC: Andi Kleen <andi@firstfloor.org>
CC: Alexey Dobriyan <adobriyan@gmail.com>
CC: Christoph Hellwig <hch@infradead.org>
CC: mingo@elte.hu
CC: akpm@osdl.org
15 years agomodule: fix build warning with !CONFIG_KALLSYMS
WANG Cong [Thu, 24 Jul 2008 14:41:48 +0000 (15:41 +0100)]
module: fix build warning with !CONFIG_KALLSYMS

This patch fixed the warning:

  CC      kernel/module.o
  /home/wangcong/Projects/linux-2.6/kernel/module.c:332: warning:
‘lookup_symbol’ defined but not used

Signed-off-by: WANG Cong <wangcong@zeuux.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
15 years agoMerge ../linux-2.6
Mauro Carvalho Chehab [Mon, 28 Jul 2008 01:23:18 +0000 (22:23 -0300)]
Merge ../linux-2.6

15 years agosparc: Set CONFIG_HAVE_ARCH_TRACEHOOK
David S. Miller [Sun, 27 Jul 2008 10:53:32 +0000 (03:53 -0700)]
sparc: Set CONFIG_HAVE_ARCH_TRACEHOOK

Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agosparc: Add task_pt_regs().
David S. Miller [Sun, 27 Jul 2008 10:43:51 +0000 (03:43 -0700)]
sparc: Add task_pt_regs().

Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agosparc: Add call to tracehook_signal_handler().
David S. Miller [Sun, 27 Jul 2008 10:40:53 +0000 (03:40 -0700)]
sparc: Add call to tracehook_signal_handler().

Signed-off-by: David S. Miller <davem@davemloft.net>