aboutsummaryrefslogtreecommitdiff
path: root/arch/sh/kernel
AgeCommit message (Collapse)AuthorFilesLines
2007-05-09fix file specification in commentsUwe Kleine-König6-6/+6
Many files include the filename at the beginning, serveral used a wrong one. Signed-off-by: Uwe Kleine-König <[email protected]> Signed-off-by: Adrian Bunk <[email protected]>
2007-05-09sh: Convert to common die chain.Paul Mundt2-18/+4
This went in immediately after SH added the die chain notifiers, so move over to that instead.. Signed-off-by: Paul Mundt <[email protected]>
2007-05-09sh: Wire up utimensat syscall.Paul Mundt1-0/+1
Signed-off-by: Paul Mundt <[email protected]>
2007-05-09sh: Add 32-bit opcode feature CPU flag.Paul Mundt2-1/+2
Add a CPU flag for the CPUs that support 32-bit opcodes, which gets passed down to userspace. Signed-off-by: Paul Mundt <[email protected]>
2007-05-09sh: Fix PC adjustments for varying opcode length.Paul Mundt5-10/+14
There are a few different cases for figuring out how to size the instruction. We read in the instruction located at regs->pc - 4 when rewinding the opcode to figure out if there's a 32-bit opcode before the faulting instruction, with a default of a - 2 adjustment on a mismatch. In practice this works for the cases where pc - 4 is just another 16-bit opcode, or we happen to have a 32-bit and a 16-bit immediately preceeding the pc value. In the cases where we aren't rewinding, this is much less ugly.. We also don't bother fixing up the places where we're explicitly dealing with 16-bit instructions, since this might lead to confusion regarding the encoding size possibilities on other CPU variants. Signed-off-by: Paul Mundt <[email protected]>
2007-05-09sh: Support for SH-2A 32-bit opcodes.Paul Mundt5-10/+65
SH-2A supports both 16 and 32-bit instructions, add a simple helper for figuring out the instruction size in the places where there are hardcoded 16-bit assumptions. Signed-off-by: Paul Mundt <[email protected]>
2007-05-09sh: Kill off redundant __div64_32 symbol export.Paul Mundt1-2/+0
modpost noticed that __div64_32 was being exported twice: WARNING: lib/built-in: '__div64_32' exported twice. Previous export was in arch/sh/kernel/built-in.ko kill off the duplicate. Signed-off-by: Paul Mundt <[email protected]>
2007-05-09sh: Share exception vector table for SH-3/4.Paul Mundt3-70/+11
The only difference between these at the moment are the FPU exceptions, and these are hidden away under CONFIG_SH_FPU (which is only set for the SH-4 case anyways..). This consolidates the two tables, and updates SH-4 to use the updated copy. Signed-off-by: Paul Mundt <[email protected]>
2007-05-09sh: generic quicklist support.Paul Mundt1-0/+2
This moves SH over to the generic quicklists. As per x86_64, we have special mappings for the PGDs, so these go on their own list.. Signed-off-by: Paul Mundt <[email protected]>
2007-05-08Add IRQF_IRQPOLL flag on shBernhard Walle3-3/+3
Add IRQF_IRQPOLL on each timer interrupt on SH2. Signed-off-by: Bernhard Walle <[email protected]> Cc: Paul Mundt <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Alan Cox <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-05-08header cleaning: don't include smp_lock.h when not usedRandy Dunlap4-4/+0
Remove includes of <linux/smp_lock.h> where it is not used/needed. Suggested by Al Viro. Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc, sparc64, and arm (all 59 defconfigs). Signed-off-by: Randy Dunlap <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-05-08Fixes and cleanups for earlyprintk aka boot consoleGerd Hoffmann1-12/+6
The console subsystem already has an idea of a boot console, using the CON_BOOT flag. The implementation has some flaws though. The major problem is that presence of a boot console makes register_console() ignore any other console devices (unless explicitly specified on the kernel command line). This patch fixes the console selection code to *not* consider a boot console a full-featured one, so the first non-boot console registering will become the default console instead. This way the unregister call for the boot console in the register_console() function actually triggers and the handover from the boot console to the real console device works smoothly. Added a printk for the handover, so you know which console device the output goes to when the boot console stops printing messages. The disable_early_printk() call is obsolete with that patch, explicitly disabling the early console isn't needed any more as it works automagically with that patch. I've walked through the tree, dropped all disable_early_printk() instances found below arch/ and tagged the consoles with CON_BOOT if needed. The code is tested on x86, sh (thanks to Paul) and mips (thanks to Ralf). Changes to last version: Rediffed against -rc3, adapted to mips cleanups by Ralf, fixed "udbg-immortal" cmd line arg on powerpc. Signed-off-by: Gerd Hoffmann <[email protected]> Acked-by: Paul Mundt <[email protected]> Acked-by: Ralf Baechle <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Alan Cox <[email protected]> Cc: Richard Henderson <[email protected]> Cc: Ivan Kokshaysky <[email protected]> Cc: Paul Mackerras <[email protected]> Cc: Benjamin Herrenschmidt <[email protected]> Cc: Jeremy Fitzhardinge <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-05-08simplify the stacktrace codeChristoph Hellwig1-8/+1
Simplify the stacktrace code: - remove the unused task argument to save_stack_trace, it's always current - remove the all_contexts flag, it's alwasy 0 Signed-off-by: Christoph Hellwig <[email protected]> Cc: Paul Mundt <[email protected]> Cc: Ralf Baechle <[email protected]> Cc: Martin Schwidefsky <[email protected]> Cc: "David S. Miller" <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Akinobu Mita <[email protected]> Acked-by: Ingo Molnar <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-05-07sh: R7785RP board updates.Ryusuke Sakato1-8/+13
Some fixups for the R7785RP board. Gets iVDR working. Signed-off-by: Ryusuke Sakato <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Add die chain notifiers.Paul Mundt2-5/+29
Add the atomic die chains in, kprobes needs these. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Wire up more IRQs for SH7709.Takashi YOSHII1-10/+19
hp6xx requires some additional IRQs that aren't currently enabled in the SH7709 setup code. Wire them up. Signed-off-by: Takashi YOSHII <[email protected]> Signed-off-by: Kristoffer Ericson <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Solution Engine 7722 board support.Ryusuke Sakato1-9/+19
This adds more full-featured support for the SH7722 Solution Engine. Previously this was using the generic board, and lacked most of the peripheral support. Signed-off-by: Ryusuke Sakato <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: kdump support.Paul Mundt4-4/+78
This adds support for kexec based crash dumps. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Move clock reporting to its own proc entry.Paul Mundt2-32/+46
Previously this was done in cpuinfo, but with the number of clocks growing, it makes more sense to place this in a different proc entry. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Solution Engine SH7705 board and CPU updates.Nobuhiro Iwamatsu3-7/+105
This fixes up SH7705 CPU support and the SE7705 board for some of the recent changes. Signed-off-by: Nobuhiro Iwamatsu <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: SH7722 clock framework support.dmitry pervushin4-6/+627
This adds support for the SH7722 (MobileR) to the clock framework. Signed-off-by: dmitry pervushin <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Kill off udivdi3 div64_32 wrapping.Paul Mundt1-1/+0
Previously we've been handling udivdi3 references and wrapping them in to div64_32() automatically. This doesn't get a lot of use, however, and as akpm noted in the recent thread on l-k: http://lkml.org/lkml/2007/2/27/241 we're better off simply ripping it out and going the do_div() route if there happen to be any places that need it. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: bootmem tidying for discontig/sparsemem preparation.Paul Mundt1-69/+95
This reworks some of the node 0 bootmem initialization in preparation for discontigmem and sparsemem support. ARCH_POPULATES_NODE_MAP is switched to as a result of this. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: MS7712SE01 board support.Nobuhiro Iwamatsu5-1/+67
Support the SH7712 (SH3-DSP) Solution Engine reference board. Signed-off-by: Nobuhiro Iwamatsu <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Add SH7785 Highlander board support (R7785RP).Paul Mundt6-2/+275
This adds preliminary support for the SH7785-based Highlander board. Some of the Highlander support code is reordered so that most of it can be reused directly. This also plugs in missing SH7785 checks in the places that need it, as this is the first board to support the CPU. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: NR_IRQS consolidation.Paul Mundt1-2/+3
Each board sets the total number of IRQs that it's interested in via the machvec. Previously we cared about the off vs on-chip IRQ range, but any code relying on that is long dead. Set NR_IRQS to something sensible given the vector range, and allow boards to cap it if they really care. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: generic BUG() support.Paul Mundt2-71/+30
Wire up GENERIC_BUG for SH. This moves off of the special bug frame and on to the generic struct bug_entry. Roughly the same semantics are retained, and we can kill off some of the verbose BUG() reporting code. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: speculative execution support for SH7780.Paul Mundt1-0/+19
SH7780 has a speculative execution mode where it can speculatively perform an instruction fetch for subroutine returns, this allows it to be enabled. There are some various pitfalls associated with this mode, so it's left as depending on CONFIG_EXPERIMENTAL and not enabled by default. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Rip out broken kgdb thread support.Paul Mundt1-382/+4
The kgdb thread support is woefully out of date (it predates the pidhash), and needs a complete rewrite before it's useful again. Just rip it out entirely. Updating the unified kgdb stub is a more worthwhile endeavour for anyone that happens to be interested in this, at present it's just limping along. Signed-off-by: Paul Mundt <[email protected]>
2007-05-07sh: Bring kgdb back from the dead.Paul Mundt2-145/+55
This code has suffered quite a bit of bitrot, do some basic tidying to get it to a reasonably functional state again. This gets the basic support and the console working again. Signed-off-by: Paul Mundt <[email protected]>
2007-05-02[PATCH] x86: Allow percpu variables to be page-alignedJeremy Fitzhardinge1-1/+1
Let's allow page-alignment in general for per-cpu data (wanted by Xen, and Ingo suggested KVM as well). Because larger alignments can use more room, we increase the max per-cpu memory to 64k rather than 32k: it's getting a little tight. Signed-off-by: Rusty Russell <[email protected]> Signed-off-by: Jeremy Fitzhardinge <[email protected]> Signed-off-by: Andi Kleen <[email protected]> Acked-by: Ingo Molnar <[email protected]> Cc: Andi Kleen <[email protected]> Signed-off-by: Andrew Morton <[email protected]>
2007-03-28sh: Kill bogus GCC4 symbol exports.Paul Mundt1-3/+0
__sdivsi3_i4i, __udiv_qrnnd_16, and __udivsi3_i4i don't exist outside of the ST compiler, so kill them off. This causes compile failures with other GCC4 compilers. Signed-off-by: Paul Mundt <[email protected]>
2007-03-14sh: Fix bogus regs pointer in do_IRQ().Paul Mundt3-14/+7
SH-3 and SH-4 were trampling the register, and SH-2 wasn't even setting it in the first place. This ended up with some rather broken behaviour in the sysrq show_regs(). Signed-off-by: Paul Mundt <[email protected]>
2007-03-12sh: Fix SH-3 cache entry_mask and way_size calculation.Paul Mundt2-16/+17
The code for performing the calculation was only in the SH-4 probe path, move it out to the common path so the other parts get this right too. Signed-off-by: Paul Mundt <[email protected]>
2007-03-05sh: Revert lazy dcache writeback changes.Paul Mundt1-3/+0
These ended up causing too many problems on older parts, revert for now.. Signed-off-by: Paul Mundt <[email protected]>
2007-03-05sh: Use L1_CACHE_BYTES for .data.cacheline_aligned.Paul Mundt1-1/+2
Previously this was using a hardcoded 32, use L1_CACHE_BYTES for cacheline alignment instead. Signed-off-by: Paul Mundt <[email protected]>
2007-03-05sh: Fix kernel thread stack corruption with preempt.Hideo Saito1-3/+2
When I run a preemptive kernel-2.6.20 for SH7780, a created kthread(pdflush) can not exit by do_exit() in kernel_thread_helper. I think that the created kthread should have a room for 'struct pt_regs' space on the stack top, because __switch_to() will refer to the space as follows using 'regs = task_pt_regs(prev)' and next condition may be true. Signed-off-by: Hideo Saito <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-03-05sh: Fix sigmask trampling in signal delivery.Ryusuke Sakato1-1/+3
There was a missing return in do_signal() that caused the saved sigmask to be written back after having successfully delivered the signal. Signed-off-by: Ryusuke Sakato <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-03-05sh: Clear UBC when not in use.Stuart Menefy2-13/+34
This takes care of tearing down the UBC so it's not inadvertently left configured at the next context switch time. Failure to do this results in spurious SIGTRAPs in certain debug sequences. Signed-off-by: Stuart Menefy <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-02-17Storage class should be before const qualifierTobias Klauser2-4/+4
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 <[email protected]> Signed-off-by: Adrian Bunk <[email protected]>
2007-02-15sh: rts7751r2d board updates.Paul Mundt2-5/+9
This tidies up some of the rts7751r2d mess and gets it booting again. Update the defconfig, too. Signed-off-by: Masayuki Hosokawa <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-02-14sh: Revert TLB miss fast-path changes that broke PTEA parts.Paul Mundt1-181/+20
This ended up causing problems for older parts (particularly ones using PTEA). Revert this for now, it can be added back in once it's had some more testing. Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: Fix syscall numbering breakage.Paul Mundt1-4/+4
We accidentally broke the inotify syscalls, fix those up again. Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: Local TLB flushing variants for SMP prep.Paul Mundt1-1/+0
Rename the existing flush routines to local_ variants for use by the IPI-backed global flush routines on SMP. Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: Fixup cpu_data references for the non-boot CPUs.Paul Mundt9-178/+189
There are a lot of bogus cpu_data-> references that only end up working for the boot CPU, convert these to current_cpu_data to fixup SMP. Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: Use a per-cpu ASID cache.Paul Mundt2-40/+37
Previously this was implemented using a global cache, cache this per-CPU instead and bump up the number of context IDs to match NR_CPUS. Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: SH-DMAC compile fixesManuel Lauss1-1/+1
This patch does the following: - remove the make_ipr_irq stuff from dma-sh.c and replace it with a simple channel<->irq mapping table. - add DMTEx_IRQ constants for sh4 cpus - fix sh7751 DMAE irq number The SH7780 uses the same IRQs for DMA as other SH4 types, so I put the constants on top of the dma.h file. Other CPU types need to #define their own DMTEx_IRQ contants in their appropriate header. Signed-off-by: Manuel Lauss <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: add SH7760 IPR IRQ dataManuel Lauss1-15/+51
Add SH7760 IPR IRQ data; makes 2.6.20-rc bootable again. Signed-off-by: Manuel Lauss <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: Fix handle_BUG() compile error.Nobuhiro Iwamatsu1-1/+1
handle_BUG() uses TRAPA_BUG_OPCODE which is only defined for CONFIG_BUG, make sure it's not built when CONFIG_BUG=n. Signed-off-by: Nobuhiro Iwamatsu <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2007-02-13sh: Lazy dcache writeback optimizations.Paul Mundt1-4/+0
This converts the lazy dcache handling to the model described in Documentation/cachetlb.txt and drops the ptep_get_and_clear() hacks used for the aliasing dcaches on SH-4 and SH7705 in 32kB mode. As a bonus, this slightly cuts down on the cache flushing frequency. With that and the PTEA handling out of the way, the update_mmu_cache() implementations can be consolidated, and we no longer have to worry about which configuration the cache is in for the SH7705 case. And finally, explicitly disable the lazy writeback on SMP (SH-4A). Signed-off-by: Paul Mundt <[email protected]>