summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* sh: Add SuperH Mobile MSTPCR bits to clock frameworkMagnus Damm2008-07-282-0/+119
| | | | | | | | | 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>
* sh: Use arch_flags to simplify sh7722 siu clock codeMagnus Damm2008-07-281-38/+9
| | | | | | | 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>
* sh: Add arch_flags to struct clkMagnus Damm2008-07-281-0/+1
| | | | | | | | 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>
* fix sh ptep_get_and_clear breakageAdrian Bunk2008-07-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 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>
* sh: Renesas R0P7785LC0011RL board supportYoshihiro Shimoda2008-07-2810-0/+1876
| | | | | | | | 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>
* sh: Add memory chunks to SH-Mobile UIO devicesMagnus Damm2008-07-286-0/+75
| | | | | | | | 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>
* sh: Export sh7366 VPU, VEU(1), VEU(2) using uio_pdrv_genirqMagnus Damm2008-07-281-1/+80
| | | | | | | | | | 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>
* sh: Export sh7723 VPU, VEU2H0, VEU2H1 using uio_pdrv_genirqMagnus Damm2008-07-281-0/+79
| | | | | | | | 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>
* sh: Export sh7722 VPU and VEU using uio_pdrv_genirqMagnus Damm2008-07-281-0/+53
| | | | | | | | 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>
* sh: Export sh7343 VPU and VEU using uio_pdrv_genirqMagnus Damm2008-07-281-0/+53
| | | | | | | | 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>
* sh2(A) exception handler updateYoshinori Sato2008-07-286-90/+385
| | | | | | | | | | | | | | | | 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>
* sh: update Solution Engine 7343Yoshihiro Shimoda2008-07-284-577/+561
| | | | | | | | | | 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>
* sh: update sh7343 codeYoshihiro Shimoda2008-07-283-1/+138
| | | | | | | | | | 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>
* sh: fix pg-sh4.c build breakage in linux-nextMagnus Damm2008-07-281-1/+1
| | | | | | | | 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>
* sh: enable I2C on the ap325rxa boardMagnus Damm2008-07-281-0/+11
| | | | | | | 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>
* sh: add SuperH Mobile I2C platform data to sh7366Magnus Damm2008-07-281-0/+21
| | | | | | | 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>
* sh: add SuperH Mobile I2C platform data to sh7723Magnus Damm2008-07-281-0/+21
| | | | | | | 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>
* sh: add SuperH Mobile I2C platform data to sh7343Magnus Damm2008-07-281-0/+42
| | | | | | | 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>
* sh: add interrupt ack code to sh4aYoshihiro Shimoda2008-07-288-28/+76
| | | | | | | | 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>
* sh: Fix up link error on SH-2 zImage with older binutils.Yoshinori Sato2008-07-284-15/+12
| | | | | Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Conditionally re-enable IRQs in fault path.Stuart Menefy2008-07-282-6/+9
| | | | | | | | | | | | | 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>
* sh: Record the major cut revision for probed SH-4A parts.Paul Mundt2008-07-281-4/+5
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Optimized flush_icache_range() implementation.Chris Smith2008-07-283-40/+38
| | | | | | | | | 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>
* sh: Stub in silicon cut in CPU info.Stuart Menefy2008-07-283-0/+10
| | | | | Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Tidy up the SH-3 exception vector table.Paul Mundt2008-07-281-19/+19
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* SH7619 add ethernet controler supportYoshinori Sato2008-07-281-0/+24
| | | | | | | - Add EtherC + PHY resource define. Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Remove sh_pcic_io_xxx function from Solution Engine IO codeNobuhiro Iwamatsu2008-07-281-45/+14
| | | | | | | | | | 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>
* sh: Fix Kconfig of AP-325RXANobuhiro Iwamatsu2008-07-281-1/+1
| | | | | | | | 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>
* sh: Clean up code of Solution Engine 770xNobuhiro Iwamatsu2008-07-282-3/+3
| | | | | Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Update Solution Enginge 7712 defconfigNobuhiro Iwamatsu2008-07-281-374/+285
| | | | | | | 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>
* sh: Solution Enginge 7710/7712 SH-Ether supportNobuhiro Iwamatsu2008-07-282-0/+64
| | | | | | | 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>
* sh/kernel/ cleanupsAdrian Bunk2008-07-289-42/+6
| | | | | | | | | | | | | | | | | 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>
* sh: make pcibios_max_latency staticAdrian Bunk2008-07-281-1/+1
| | | | | | | 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>
* sh: make EARLY_PCI_OP's staticAdrian Bunk2008-07-281-1/+1
| | | | | | | 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>
* sh/boards/dreamcast/rtc.c: make 2 functions staticAdrian Bunk2008-07-281-2/+2
| | | | | | | | 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>
* maple: tidy maple_driver code by removing redundant connect/disconnectAdrian McMenamin2008-07-281-2/+0
| | | | | | | | 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>
* sh: Renesas Solutions SH7763RDP board supportNobuhiro Iwamatsu2008-07-288-0/+1289
| | | | | | | | | 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>
* sh: Add SCIF2 support for SH7763.Nobuhiro Iwamatsu2008-07-283-14/+51
| | | | | | | | | 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>
* sh: Add support Renesas Solutions AP-325RXA boardYusuke Goda2008-07-286-0/+1065
| | | | | | | | | | | | 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>
* sh: Initial consolidation of the _32/_64 uaccess split.Paul Mundt2008-07-283-416/+270
| | | | | | | 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>
* sh: Consolidate addr/access_ok across mmu/nommu on 32bit.Paul Mundt2008-07-281-36/+3
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Use the common segment definitions for the _64 uaccess routines.Paul Mundt2008-07-281-19/+0
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add support for 16kB PAGE_SIZE.Paul Mundt2008-07-284-1/+13
| | | | | | | | 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>
* sh: Support variable page sizes on nommu.Paul Mundt2008-07-281-3/+3
| | | | | | | 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>
* sh: Consolidate segment modifiers across mmu/nommu systems.Paul Mundt2008-07-285-39/+33
| | | | | | | | | | 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>
* sh: RSK+ 7203 board support.Paul Mundt2008-07-285-0/+133
| | | | | | This adds initial support for the RTE RSK+ SH7203 board. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Make dump_task dependent on ELF core.Paul Mundt2008-07-281-1/+1
| | | | | | | | 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>
* sh: Initial ELF FDPIC support.Paul Mundt2008-07-286-4/+108
| | | | | | | | | 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>
* binfmt_elf_fdpic: Magical stack pointer index, for NEW_AUX_ENT compat.Paul Mundt2008-07-281-20/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* move arch/sh/lib/io.o to obj-yAdrian Bunk2008-07-281-1/+3
| | | | | | | | | | | | | | | | | | | | | | | 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>