Commit Graph

106993 Commits

Author SHA1 Message Date
Magnus Damm 8b1285f1c1 sh: Add SuperH Mobile LCDC platform data for Migo-R
Add WVGA and QVGA LCD panel support to Migo-R.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-07-28 18:48:06 +09:00
Paul Mundt 761656e6be sh: Move asid_cache() out of ifdef to fix SH-3/4 nommu build.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-07-28 18:39:25 +09:00
Yoshinori Sato 2b4b2bb421 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>
2008-07-28 18:36:13 +09:00
Paul Mundt 44f9598952 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>
2008-07-28 18:34:45 +09:00
Yoshihiro Shimoda 82cb1f6fb3 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>
2008-07-28 18:16:41 +09:00
Tetsuya Mukawa d3aa43a9db 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>
2008-07-28 18:10:37 +09:00
Stuart MENEFY 0b1689cfbb 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 c3ff8ec31c
which was for the i386.

Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-07-28 18:10:37 +09:00
Magnus Damm d7f1a9adc0 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>
2008-07-28 18:10:37 +09:00
Magnus Damm 8fa509ab91 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>
2008-07-28 18:10:37 +09:00
Magnus Damm 6c7d826cf6 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>
2008-07-28 18:10:37 +09:00
Magnus Damm 9ca6ecac50 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>
2008-07-28 18:10:37 +09:00
Magnus Damm de9254263b 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>
2008-07-28 18:10:36 +09:00
Magnus Damm 152fe36ebe 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>
2008-07-28 18:10:36 +09:00
Magnus Damm 1312994c80 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>
2008-07-28 18:10:36 +09:00
Magnus Damm aea167cbb5 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>
2008-07-28 18:10:36 +09:00
Magnus Damm 3fec18bd60 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>
2008-07-28 18:10:36 +09:00
Magnus Damm 5c8f9d94fe 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>
2008-07-28 18:10:35 +09:00
Adrian Bunk c46acb8e20 fix sh ptep_get_and_clear breakage
Commit 1ea0704e0d
(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>
2008-07-28 18:10:35 +09:00
Yoshihiro Shimoda cbe9da029d 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>
2008-07-28 18:10:35 +09:00
Magnus Damm 1eca5c9272 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>
2008-07-28 18:10:35 +09:00
Magnus Damm 714750dd5c 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>
2008-07-28 18:10:34 +09:00
Magnus Damm 6874548c69 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>
2008-07-28 18:10:34 +09:00
Magnus Damm a55f6d2567 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>
2008-07-28 18:10:34 +09:00
Magnus Damm c901c96cc2 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>
2008-07-28 18:10:34 +09:00
Yoshinori Sato 6e80f5e8c4 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>
2008-07-28 18:10:34 +09:00