summaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel (follow)
Commit message (Collapse)AuthorAgeFilesLines
* sh: export empty_zero_pageAndrew Morton2008-04-152-0/+2
| | | | | | | ERROR: "empty_zero_page" [fs/ext4/ext4dev.ko] undefined! Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: arch/sh/kernel/traps_32.c needs asm/fpu.hAndrew Morton2008-04-151-0/+1
| | | | | | | | arch/sh/kernel/traps_32.c: In function `do_reserved_inst': arch/sh/kernel/traps_32.c:667: error: implicit declaration of function `do_fpu_inst' Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh64: add missing #include <asm/fpu.h>'sAdrian Bunk2008-04-154-0/+4
| | | | | | | | | | This patch fixes some compile errors due to missing save_fpu() prototypes on sh64 caused by commit 9bbafce2eec190ef7e44b0eb1095ba17ce6ad3af (sh: Fix occasional FPU register corruption under preempt). Signed-off-by: Adrian Bunk <adrian.bunk@movial.fi> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Fix occasional FPU register corruption under preempt.Paul Mundt2008-03-266-0/+6
| | | | | | | | | | | Presently with preempt enabled there's the possibility to be preempted after the TIF_USEDFPU test and the register save, leading to bogus state post-__switch_to(). Use an explicit preempt_disable()/enable() pair around unlazy_fpu()/clear_fpu() to avoid this. Follows the x86 change. Reported-by: Takuo Koguchi <takuo.koguchi.sw@hitachi.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* SH: Use newer, non-deprecated __SPIN_LOCK_UNLOCKED macro.Robert P. J. Day2008-03-211-1/+1
| | | | | Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Fix up the address error exception handler for SH-2.Kieran Bingham2008-03-131-1/+0
| | | | | | | | | | Presently the SH-2/SH-2A address error exception dispatch copies off the register state from the stack and skips over the first register, skewing the rest. Fix up the math here so that the proper register state is handed down to the exception handler itself. Signed-off-by: Kieran Bingham <kbingham@mpc-data.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Fix up section mismatches.Paul Mundt2008-03-062-2/+2
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: replace remaining __FUNCTION__ occurrencesHarvey Harrison2008-03-066-7/+7
| | | | | | | | __FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: export copy-page() to modulesAndrew Morton2008-03-062-0/+2
| | | | | | | | | | ERROR: "copy_page" [fs/unionfs/unionfs.ko] undefined! like all the other architectures. Cc: Erez Zadok <ezk@cs.sunysb.edu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh_ksyms_32.c update for gcc 4.3Adrian Bunk2008-03-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the following build error with landisk_defconfig when using gcc 4.3: <-- snip --> ... MODPOST 50 modules ERROR: "__udivsi3_i4i" [net/sunrpc/sunrpc.ko] undefined! ERROR: "__udivsi3_i4i" [net/appletalk/appletalk.ko] undefined! ERROR: "__udivsi3_i4i" [fs/ufs/ufs.ko] undefined! ERROR: "__udivsi3_i4i" [fs/ntfs/ntfs.ko] undefined! ERROR: "__sdivsi3_i4i" [fs/ntfs/ntfs.ko] undefined! ERROR: "__udivsi3_i4i" [fs/nfsd/nfsd.ko] undefined! ERROR: "__sdivsi3_i4i" [fs/nfsd/nfsd.ko] undefined! ERROR: "__udivsi3_i4i" [fs/nfs/nfs.ko] undefined! ERROR: "__udivsi3_i4i" [fs/lockd/lockd.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/usb/storage/usb-storage.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/usb/serial/pl2303.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/usb/serial/pl2303.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/usb/serial/ftdi_sio.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/usb/misc/sisusbvga/sisusbvga.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/usb/misc/sisusbvga/sisusbvga.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/media/video/v4l1-compat.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/media/video/v4l1-compat.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/media/video/usbvideo/vicam.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/media/video/usbvideo/usbvideo.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/media/video/usbvideo/usbvideo.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/media/video/sn9c102/sn9c102.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/media/video/sn9c102/sn9c102.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/media/video/se401.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/media/video/pwc/pwc.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/md/raid0.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/md/md-mod.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/md/md-mod.ko] undefined! ERROR: "__udivsi3_i4i" [drivers/md/linear.ko] undefined! ERROR: "__sdivsi3_i4i" [drivers/hid/usbhid/usbhid.ko] undefined! make[2]: *** [__modpost] Error 1 <-- snip --> Signed-off-by: Adrian Bunk <adrian.bunk@movial.fi> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* serial: Move asm-sh/sci.h to linux/serial_sci.h.Paul Mundt2008-02-2618-18/+18
| | | | | | | | | | | | This header is needed on other architectures as well (namely h8300), which currently fails to build without this in place. Rather than duplicating the port definition completely there, just move this to a common location instead. This should get h8300 working again for 2.6.25, in addition to the changes already pushed by Sato-san in -rc2. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: fix rtc_resources setup for sh770xRafael Ignacio Zurita2008-02-261-3/+3
| | | | | | | | Fix the RTC resources setup for sh770x. Whit these proper start values RTC driver (drivers/rtc/rtc-sh.c) works. Signed-off-by: Rafael Ignacio Zurita <rizurita@yahoo.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Storage class should be before const qualifierTobias Klauser2008-02-261-2/+2
| | | | | | | | | | | The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Rename SH-3 CCR3 reg to avoid synclink_cs clash.Paul Mundt2008-02-251-2/+2
| | | | | | | | | | | | | | drivers/char/pcmcia/synclink_cs.c:284:1: warning: "CCR3" redefined In file included from include/asm/cache.h:13, from include/asm/processor_32.h:15, from include/asm/processor.h:60, from include/linux/prefetch.h:14, from include/linux/list.h:8, from include/linux/module.h:9, from drivers/char/pcmcia/synclink_cs.c:38: include/asm/cpu/cache.h:38:1: warning: this is the location of the previous definition Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Kill off more dead symbols.Paul Mundt2008-02-143-6/+3
| | | | | Reported-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Get SH-5 caches working again post-unification.Paul Mundt2008-02-141-33/+28
| | | | | | | A number of cleanups to get the SH-5 cache management code in line with the rest of the SH backend. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Shut up some trivial build warnings.Paul Mundt2008-02-143-19/+18
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Symbol exports for trapped I/O.Paul Mundt2008-02-141-0/+5
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Use max_t in io_trapped.Paul Mundt2008-02-141-3/+5
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: add support for sh7366 processorMagnus Damm2008-02-145-2/+195
| | | | | | | | This patch adds sh7366 cpu supports. Just the most basic things like interrupt controller, clocks and serial port are included at this point. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: remove maskreg irq codeMagnus Damm2008-02-142-94/+0
| | | | | | | This patch removes the maskreg irq code since it is not in use anymore. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: fix ptrace copy_from/to_user() compilation errorMagnus Damm2008-02-141-2/+2
| | | | | | | This patch makes the 32-bit ptrace code compile again. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: trapped io support V2Magnus Damm2008-02-146-38/+324
| | | | | | | | | | | | | | | | | | | The idea is that we want to get rid of the in/out/readb/writeb callbacks from the machvec and replace that with simple inline read and write operations to memory. Fast and simple for most hardware devices (think pci). Some devices require special treatment though - like 16-bit only CF devices - so we need to have some method to hook in callbacks. This patch makes it possible to add a per-device trap generating filter. This way we can get maximum performance of sane hardware - which doesn't need this filter - and crappy hardware works but gets punished by a performance hit. V2 changes things around a bit and replaces io access callbacks with a simple minimum_bus_width value. In the future we can add stride as well. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: use opcode_t and enable unaligned code for sh2aMagnus Damm2008-02-141-34/+25
| | | | | | | | This patch converts the unaligned access handling code to use opcode_t instead of u16. While at it, enable unaligned access handling for sh2a. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: add byte support to the sign extension codeMagnus Damm2008-02-141-1/+11
| | | | | | | | | This patch adds byte support to the sign extension code. Unaligned access traps should never be generated on 8-bit io operations, but we will use this code for trapped io and we do need byte support there. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: fix xtime_lock deadlocking.Peter Zijlstra2008-02-142-18/+32
| | | | | | | move update_process_times() out from under xtime_lock. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Wire up new timerfd syscalls.Paul Mundt2008-02-142-2/+6
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: break out unaligned sign extension codeMagnus Damm2008-02-141-45/+23
| | | | | | | Break out the sign extension code since it's used in multiple places. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: add probe support for new sh7722 cutMagnus Damm2008-02-141-1/+1
| | | | | | | This patch adds support for sh7722 devices with prr value 0xa1. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* xtime_lock vs update_process_timesPeter Zijlstra2008-02-132-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit d3d74453c34f8fd87674a8cf5b8a327c68f22e99 ("hrtimer: fixup the HRTIMER_CB_IRQSAFE_NO_SOFTIRQ fallback") broke several archs, and since only Russell bothered to merge the fix, and Greg to ACK his arch, I'm sending this for merger. I have confirmation that the Alpha bit results in a booting kernel. That leaves: blackfin, frv, sh and sparc untested. The deadlock in question was found by Russell: IRQ handle -> timer_tick() - xtime seqlock held for write -> update_process_times() -> run_local_timers() -> hrtimer_run_queues() -> hrtimer_get_softirq_time() - tries to get a read lock Now, Thomas assures me the fix is trivial, only do_timer() needs to be done under the xtime_lock, and update_process_times() can savely be removed from under it. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Acked-by: Greg Ungerer <gerg@uclinux.org> CC: Richard Henderson <rth@twiddle.net> CC: Bryan Wu <bryan.wu@analog.com> CC: David Howells <dhowells@redhat.com> CC: Paul Mundt <lethal@linux-sh.org> CC: William Irwin <wli@holomorphy.com> Acked-by: Ingo Molnar <mingo@elte.hu> Acked-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Fix container_of() usageAlexey Dobriyan2008-02-081-1/+1
| | | | | | | | | | Using "attr" twice is not OK, because it effectively prohibits such container_of() on variables not named "attr". Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Acked-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Use BOOTMEM_EXCLUSIVE for kdumpBernhard Walle2008-02-071-11/+18
| | | | | | | | | | | | | | Use the BOOTMEM_EXCLUSIVE, introduced in the previous patch, to avoid conflicts while reserving the memory for the kdump capture kernel (crashkernel=). Signed-off-by: Bernhard Walle <bwalle@suse.de> Cc: <linux-arch@vger.kernel.org> Cc: "Eric W. Biederman" <ebiederm@xmission.com> Cc: Vivek Goyal <vgoyal@in.ibm.com> Acked-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Introduce flags for reserve_bootmem()Bernhard Walle2008-02-071-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | This patchset adds a flags variable to reserve_bootmem() and uses the BOOTMEM_EXCLUSIVE flag in crashkernel reservation code to detect collisions between crashkernel area and already used memory. This patch: Change the reserve_bootmem() function to accept a new flag BOOTMEM_EXCLUSIVE. If that flag is set, the function returns with -EBUSY if the memory already has been reserved in the past. This is to avoid conflicts. Because that code runs before SMP initialisation, there's no race condition inside reserve_bootmem_core(). [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: fix powerpc build] Signed-off-by: Bernhard Walle <bwalle@suse.de> Cc: <linux-arch@vger.kernel.org> Cc: "Eric W. Biederman" <ebiederm@xmission.com> Cc: Vivek Goyal <vgoyal@in.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* timerfd: fix remaining architecturesAndrew Morton2008-02-052-2/+2
| | | | | | | | | | | | Cc: David Howells <dhowells@redhat.com> Cc: Hirokazu Takata <takata@linux-m32r.org> Cc: Paul Mundt <lethal@linux-sh.org> Cc: Kazumoto Kojima <kkojima@rr.iij4u.or.jp> Cc: Richard Curnow <rc@rc0.org.uk> Cc: Davide Libenzi <davidel@xmailserver.org> Cc: Michael Kerrisk <mtk-manpages@gmx.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* all archs: consolidate init and exit sections in vmlinux.lds.hSam Ravnborg2008-01-282-8/+8
| | | | | | | | | | | This patch consolidate all definitions of .init.text, .init.data and .exit.text, .exit.data section definitions in the generic vmlinux.lds.h. This is a preparational patch - alone it does not buy us much good. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
* sh: constify function pointer tablesJan Engelhardt2008-01-281-1/+1
| | | | | Signed-off-by: Jan Engelhardt <jengelh@computergmbh.de> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add OHCI and UDC platform devices for SH7720.Yoshihiro Shimoda2008-01-281-0/+53
| | | | | Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: intc - remove default interrupt priority tablesMagnus Damm2008-01-2814-139/+36
| | | | | | | | | | | | | This patch removes interrupt priority tables from the intc code. Optimal priority assignment varies with embedded application anyway, so keeping the interrupt priority tables together with cpu-specific code doesn't make sense. The function intc_set_priority() should be used instead to set the desired interrupt priority level. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh7712 clock supportAndrew Murray2008-01-282-0/+72
| | | | | | | This patch provides specific clock support for the SH7712. Signed-off-by: Andrew Murray <amurray@mpc-data.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add support for SH7763 CPU subtype.Yoshihiro Shimoda2008-01-285-4/+524
| | | | | Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add support for SH7721 CPU subtype.Yoshihiro Shimoda2008-01-286-10/+26
| | | | | Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Encode L1/L2 cache shape in auxvt.Paul Mundt2008-01-282-1/+31
| | | | | | | | | This adds in the L1I/L1D/L2 cache shape support to their respective entries in the ELF auxvt, based on the Alpha implementation. We use this on the userspace libc side for calculating a tightly packed SHMLBA amongst other things. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Support denormalization on SH-4 FPU.Stuart Menefy2008-01-283-181/+1227
| | | | | Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Clean up places that make 29-bit physical assumptions.Stuart Menefy2008-01-282-2/+7
| | | | | Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Preparation for uncached jumps through PMB.Stuart Menefy2008-01-283-6/+15
| | | | | | | | | | | | Presently most of the 29-bit physical parts do P1/P2 segmentation with a 1:1 cached/uncached mapping, jumping between the two to control the caching behaviour. This provides the basic infrastructure to maintain this behaviour on 32-bit physical parts that don't map P1/P2 at all, using a shiny new linker section and corresponding fixmap entry. Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: GUSA atomic rollback support.Stuart Menefy2008-01-284-57/+23
| | | | | | | | | | This implements kernel-level atomic rollback built on top of gUSA, as an alternative non-IRQ based atomicity method. This is generally a faster method for platforms that are lacking the LL/SC pairs that SH-4A and later use, and is only supportable on legacy cores. Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: comment tidying for sh64->sh migration.Paul Mundt2008-01-2812-76/+55
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: syscall auditing for sh5, too.Paul Mundt2008-01-282-18/+30
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Provide a 29/32-bit physical hint for bootloaders.Stuart Menefy2008-01-281-1/+5
| | | | | | | | | | | | | Shoves a magic word in to the empty_zero_page section for the bootloader to work out whether to start the kernel in 29-bit or 32-bit mode. [ Renesas CPUs already take care of the initial PMB mappings entirely in hardware and decide on 29-bit/32-bit physical depending on which pin powered up the CPU, so this is mostly for ST parts. -- PFM ]. Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add a printk() to warn legacy mem= growers.Stuart Menefy2008-01-281-0/+11
| | | | | | | | mem= can't be used to grow the size of kernel memory, so provide a warning to that effect. Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>