summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* sh: Add support for SH7201 CPU subtype.Peter Griffin2008-12-2210-8/+455
| | | | | | | This patch adds support for the SH-2A FPU based SH7201 processor subtype. Signed-off-by: Peter Griffin <pgriffin@mpc-data.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Switch HD64461 from hw_interrupt_type to irq_chipMatt Fleming2008-12-221-90/+25
| | | | | | | | | | | | | | Use struct irq_chip for the interrupt handler for the HD64461. Also convert some in{b,w} and out{b,w} calls to the equivalent __raw_* calls. Include <linux/io.h> and not <asm/io.h> to stop checkpatch.pl complaining. This change should now allow machines with HD64461 to define GENERIC_HARDIRQS_NO__DO_IRQ. Acked-by: Kristoffer Ericson <Kristoffer.Ericson@gmail.com> Signed-off-by: Matt Fleming <mjf@gentoo.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: pci-sh7780: fix pci memory address maskYoshihiro Shimoda2008-12-221-7/+5
| | | | | | | | Fix the problem that cannot work a PCI device when system memory size is 256Mbyte in 29bit address mode. Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Provide a dyn_arch_ftrace struct definition.Paul Mundt2008-12-221-2/+7
| | | | | | Needed for dynamic ftrace API changes. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Split out the idle loop for reuse between _32/_64 variants.Paul Mundt2008-12-225-123/+83
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Consolidate cpu_relax()/cpu_sleep() definitions across _32/_64.Paul Mundt2008-12-223-5/+3
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: do not latency trace idle.Paul Mundt2008-12-221-0/+4
| | | | | | | | | | | | | Description snipped from Steven Rostedt's PPC patch: When idle is called, interrupts are blocked, but the idle function will still wake up on an interrupt. The problem is that the interrupt disabled latency tracer will take this call to idle as a latency. This patch disables the latency tracing when going into idle. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Tidy up backtrace formatting with kallsyms disabled.Paul Mundt2008-12-222-6/+3
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add a simple code dumper for SUPERH32 show_regs().Paul Mundt2008-12-224-3/+579
| | | | | | | | | | This implements a simple show_code() that is in turn plugged in to show_regs() to provide minimal code dumping at the end of the trace. Built on top of a simple instruction disassembler derived from the binutils opcode table. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add a few more branch types to the branch emulator.Paul Mundt2008-12-221-6/+11
| | | | | | | This plugs in some extra encodings for matching more bsr/bsrf/jsr branches. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Re-add support for best fit ISA tuning if none is available.Paul Mundt2008-12-221-5/+20
| | | | | | | | | | | This was removed in the libgcc integration, but there are still some compilers that need this. We also relax the rules on the ISA tuning in the cases where there are no matches for the CPU tuning and adopt the -any default, which matches the intent of the isa-y target list. This compensates for mismatches where binutils supports a wide array of targets whilst the compiler is much more restricted. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: More movmem alias symbol exports for older compilers.Paul Mundt2008-12-221-0/+3
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Provide optimized unaligned loads on SH-4A.Paul Mundt2008-12-222-1/+264
| | | | | | | | | | This adds support for unaligned loads on SH-4A, using the SH-4A's neutered movua.l instruction. As movua.l is r0-inspired, stores are still handled through the packed struct. Based on asm-generic/unaligned.h by Harvey Harrison. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: P4 ioremap pass-throughMagnus Damm2008-12-224-12/+17
| | | | | | | | | | | | | | | | | | | | This patch adds a pass-through case when ioremapping P4 addresses. Addresses passed to ioremap() should be physical addresses, so the best option is usually to convert the virtual address to a physical address before calling ioremap. This will give you a virtual address in P2 which matches the physical address and this works well for most internal hardware blocks on the SuperH architecture. However, some hardware blocks must be accessed through P4. Converting the P4 address to a physical and then back to a P2 does not work. One example of this is the sh7722 TMU block, it must be accessed through P4. Without this patch P4 addresses will be mapped using PTEs which requires the page allocator to be up and running. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add SH-4A optimized fastpath mutex implementation.Michael Trimarchi2008-12-222-1/+111
| | | | | | | Add fast mutex path implementation for the SH4A architecture Signed-off-by: Michael Trimarchi <trimarchimichael@yahoo.it> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh7760fb: Add support SH7720/SH7721 of RenesasNobuhiro Iwamatsu2008-12-221-11/+13
| | | | | | | | SH7720 and 7721 has IP of Frame Buffer same as SH7760. This driver can support these. Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh7760fb: Fix color pallette settingNobuhiro Iwamatsu2008-12-221-67/+19
| | | | | | | | The setting of the color palette was wrong, fixed it. And removed fb_setcmap, and added fb_setcolreg function. Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: add SH DMAC burst mode constantSteve Glendinning2008-12-221-0/+1
| | | | | | | | The SH7709 datasheet defines bit 5 as set for burst mode, clear for cycle-steal mode. Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: fix DMAOR register access on SH7709Steve Glendinning2008-12-221-1/+2
| | | | | | | | | | sh7709 hardware manual says DMAOR is 16 bits long on this platform. Tested and working with a modified smsc911x ethernet driver (sh-dma support patch for this driver is coming soon). Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add platform-specific constants for SH7709Steve Glendinning2008-12-222-0/+32
| | | | | | | | I'm using these constants in support of an in-house development board, and thought they may be useful to other users of SH7709. Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Provide optimized non-atomic bitops for SH-2A.Paul Mundt2008-12-222-0/+145
| | | | | | This ties in the new SH-2A 32-bit non-atomic bitops. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add -m4al tuning for SH4AL-DSP.Paul Mundt2008-12-221-0/+1
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Add exports for __udivsi3/__sdivsi3 and the _i4 versions.Paul Mundt2008-12-223-0/+12
| | | | | | Needed by older compilers. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Convert to generic bitops for IRQ-toggling implementation.Paul Mundt2008-12-224-95/+7
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Specify sane default image targets for the SH-2 platforms.Paul Mundt2008-12-221-0/+3
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Migrate necessary libgcc bits in to arch/sh/lib for SUPERH32.Paul Mundt2008-12-2215-50/+1984
| | | | | | | | This moves in the necessary libgcc bits for SUPERH32 and drops the libgcc linking for the regular targets. This in turn allows us to rip out quite a few hacks both in sh_ksyms_32 and arch/sh/Makefile. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: __udivdi3 -> do_div() in softfloat lib.Paul Mundt2008-12-221-32/+41
| | | | | | | Inhibit the generation of __udivdi3 for the softfloat lib, use do_div() outright. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Fix clock framework compiler warnings.Paul Mundt2008-12-221-1/+1
| | | | | | | | | | CC arch/sh/kernel/cpu/clock.o arch/sh/kernel/cpu/clock.c: In function 'clk_disable': arch/sh/kernel/cpu/clock.c:156: warning: 'return' with a value, in function returning void Introduced by ("sh: enable and disable clocks recursively"). Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* usb: Fix up sh_mobile usbf clock framework warnings.Paul Mundt2008-12-222-3/+2
| | | | | | | | | | | | | drivers/usb/gadget/m66592-udc.c: In function 'm66592_probe': drivers/usb/gadget/m66592-udc.c:1672: warning: label 'clean_up2' defined but not used drivers/usb/host/r8a66597-hcd.c: In function 'r8a66597_probe': drivers/usb/host/r8a66597-hcd.c:2401: warning: label 'clean_up2' defined but not used Added by commit 985fc7c81c7852f2e104c71cbe913ace683c9e6a ("sh: sh_mobile usbf clock framework support"). Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* serial: sh-sci: Codestyle cleanup patch.Michael Trimarchi2008-12-221-56/+74
| | | | | | | Trivial coding style cleanups. Signed-off-by: Michael Trimarchi <trimarchimichael@yahoo.it> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* media: sh_mobile_ceu_camera: Add HAVE_CLK dependency.Paul Mundt2008-12-221-1/+1
| | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: dynamic ftrace support.Matt Fleming2008-12-228-44/+240
| | | | | | | First cut at dynamic ftrace support. Signed-off-by: Matt Fleming <mjf@gentoo.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: remove old sh_mobile mstpc clocksMagnus Damm2008-12-225-93/+19
| | | | | | | Remove the old sh_mobile mstpcr clocks. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile lcdc clock framework supportMagnus Damm2008-12-223-15/+33
| | | | | | | | Add clock framework support to the lcdc driver and adjust the board specific code accordingly. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile usb clock framework supportMagnus Damm2008-12-224-5/+40
| | | | | | | | Add clock framework support to the usb/r8a66597 driver and adjust the cpu specific code accordingly. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile usbf clock framework supportMagnus Damm2008-12-223-31/+33
| | | | | | | | Add clock framework support to the usbf/m66592 driver and adjust the cpu specific code accordingly. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile ceu clock framework supportMagnus Damm2008-12-223-3/+21
| | | | | | | | Add clock framework support to the sh_mobile ceu and adjust the board specific code accordingly. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile keysc clock framework supportMagnus Damm2008-12-223-8/+25
| | | | | | | | Add clock framework support to the sh_mobile keysc driver and adjust the board specific code accordingly. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile i2c clock framework supportMagnus Damm2008-12-225-42/+41
| | | | | | | | Add clock framework support to the sh_mobile i2c driver and adjust the processor specific code accordingly. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile mstpcr clocks for sh7366Magnus Damm2008-12-221-0/+40
| | | | | | | | Add sh7366 mstpcr bits and information about their parent clocks. The datasheet is pretty clear about the clocks on this device. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile mstpcr clocks for sh7343Magnus Damm2008-12-221-0/+24
| | | | | | | Add sh7343 mstpcr bits and information about their parent clocks. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile mstpcr clocks for sh7723Magnus Damm2008-12-221-0/+50
| | | | | | | | Add sh7723 mstpcr bits and information about their parent clocks. The datasheet is pretty clear about the clocks on this device. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile mstpcr clocks for sh7722Magnus Damm2008-12-221-0/+25
| | | | | | | Add sh7722 mstpcr bits and information about their parent clocks. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: new sh_mobile mstpcr clocks base codeMagnus Damm2008-12-221-4/+41
| | | | | | | Add base code to handle new mstpcr clocks. Make sure clock rates propagate. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: use arch_flags for sh_mobile mstpcr clock bitsMagnus Damm2008-12-221-42/+30
| | | | | | | Use arch_flags to keep track of register and flag number. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: sh_mobile clock divider index fixMagnus Damm2008-12-221-10/+10
| | | | | | | Use divider index value instead of divider value. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: enable and disable clocks recursivelyMagnus Damm2008-12-221-0/+10
| | | | | | | Recurse and make sure parent clocks get enabled/disabled. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Move arch_get_unmapped_area() in to arch/sh/mm/mmap.c.Paul Mundt2008-12-223-92/+96
| | | | | | | Now that arch/sh/mm/mmap.c exists, move arch_get_unmapped_area() there. Follows the ARM change. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* Null pointer deref with hrtimer_try_to_cancel()Thomas Gleixner2008-12-201-0/+6
| | | | | | | | | | | | | | | | | | | | | Impact: Prevent kernel crash with posix timer clockid CLOCK_MONOTONIC_RAW commit 2d42244ae71d6c7b0884b5664cf2eda30fb2ae68 (clocksource: introduce CLOCK_MONOTONIC_RAW) introduced a new clockid, which is only available to read out the raw not NTP adjusted system time. The above commit did not prevent that a posix timer can be created with that clockid. The timer_create() syscall succeeds and initializes the timer to a non existing hrtimer base. When the timer is deleted either by timer_delete() or by the exit() cleanup the kernel crashes. Prevent the creation of timers for CLOCK_MONOTONIC_RAW by setting the posix clock function to no_timer_create which returns an error code. Reported-and-tested-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'for-linus' of ↵Linus Torvalds2008-12-204-8/+13
|\ | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs: fs/9p: change simple_strtol to simple_strtoul 9p: convert d_iname references to d_name.name 9p: Remove potentially bad parameter from function entry debug print.
OpenPOWER on IntegriCloud