summaryrefslogtreecommitdiffstats
path: root/arch/sh/include
Commit message (Collapse)AuthorAgeFilesLines
* mm: Remove duplicate definitions in MIPS and SHBenjamin Herrenschmidt2009-07-271-8/+0
| | | | | | | | Those definitions are already provided by asm-generic Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()Benjamin Herrenschmidt2009-07-272-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Upcoming paches to support the new 64-bit "BookE" powerpc architecture will need to have the virtual address corresponding to PTE page when freeing it, due to the way the HW table walker works. Basically, the TLB can be loaded with "large" pages that cover the whole virtual space (well, sort-of, half of it actually) represented by a PTE page, and which contain an "indirect" bit indicating that this TLB entry RPN points to an array of PTEs from which the TLB can then create direct entries. Thus, in order to invalidate those when PTE pages are deleted, we need the virtual address to pass to tlbilx or tlbivax instructions. The old trick of sticking it somewhere in the PTE page struct page sucks too much, the address is almost readily available in all call sites and almost everybody implemets these as macros, so we may as well add the argument everywhere. I added it to the pmd and pud variants for consistency. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: David Howells <dhowells@redhat.com> [MN10300 & FRV] Acked-by: Nick Piggin <npiggin@suse.de> Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> [s390] Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* sched: INIT_PREEMPT_COUNTPeter Zijlstra2009-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | Pull the initial preempt_count value into a single definition site. Maintainers for: alpha, ia64 and m68k, please have a look, your arch code is funny. The header magic is a bit odd, but similar to the KERNEL_DS one, CPP waits with expanding these macros until the INIT_THREAD_INFO macro itself is expanded, which is in arch/*/kernel/init_task.c where we've already included sched.h so we're good. Cc: tony.luck@intel.com Cc: rth@twiddle.net Cc: geert@linux-m68k.org Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Acked-by: Matt Mackall <mpm@selenic.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* sh: define PERF_COUNTER_INDEX_OFFSET.Paul Mundt2009-07-031-0/+2
| | | | | | Fixes up recent build breakage. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Fix compiler error and include the definition of IS_ERR_VALUEMatt Fleming2009-07-021-0/+1
| | | | | | | | | | | | | | | | When arch/sh/include/asm/syscall_32.h is included from a file that doesn't also include linux/err.h the following error is produced, In file included from /home/matt/src/kernels/sh-2.6/arch/sh/include/asm/syscall.h:5, from kernel/trace/trace_syscalls.c:3: /home/matt/src/kernels/sh-2.6/arch/sh/include/asm/syscall_32.h: In function 'syscall_get_error': /home/matt/src/kernels/sh-2.6/arch/sh/include/asm/syscall_32.h:28: error: implicit declaration of function 'IS_ERR_VALUE' make[2]: *** [kernel/trace/trace_syscalls.o] Error 1 make[1]: *** [kernel/trace] Error 2 make: *** [kernel] Error 2 Signed-off-by: Matt Fleming <matt@console-pimps.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: ms7724se: Add sh_eth supportKuninori Morimoto2009-06-261-0/+5
| | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: make set_perf_counter_pending() static inline.Paul Mundt2009-06-241-1/+1
| | | | | | | Fixes up a recently introduced build error. Reported-by: Kyle McMartin <kyle@mcmartin.ca> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Fix up more dma-mapping fallout.Paul Mundt2009-06-231-6/+6
| | | | | | | | | | | commit dbe6f1869188b6e04e38aa861dd198befb08bcd7 ("dma-mapping: mark dma_sync_single and dma_sync_sg as deprecated" conveniently broke every single SH build. In the future it would be great if people could at least bother figuring out how to use grep. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* sh: Provide cpu_idle_wait() to fix up cpuidle/SMP build.Paul Mundt2009-06-231-0/+1
| | | | | | | Crib the x86 cpu_idle_wait() implementation and shove it in with the idle code, subsequently enabling ARCH_HAS_CPU_IDLE_WAIT. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6Linus Torvalds2009-06-1836-1129/+98
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (56 commits) sh: Fix declaration of __kernel_sigreturn and __kernel_rt_sigreturn sh: Enable soc-camera in ap325rxa/migor/se7724 defconfigs. sh: remove stray markers. sh: defconfig updates. sh: pci: Initial PCI-Express support for SH7786 Urquell board. sh: Generic HAVE_PERF_COUNTER support. SH: convert migor to soc-camera as platform-device SH: convert ap325rxa to soc-camera as platform-device soc-camera: unify i2c camera device platform data sh: add platform data for r8a66597-hcd in setup-sh7723 sh: add platform data for r8a66597-hcd in setup-sh7366 sh: x3proto: add platform data for r8a66597-hcd sh: highlander: add platform data for r8a66597-hcd sh: sh7785lcr: add platform data for r8a66597-hcd sh: turn off irqs when disabling CMT/TMU timers sh: use kzalloc() for cpg clocks sh: unbreak WARN_ON() sh: Use generic atomic64_t implementation. sh: Revised clock function in highlander sh: Update r7780mp defconfig ...
| *-----. Merge branches 'sh/pci-express-integration', 'sh/rsk-updates', ↵Paul Mundt2009-06-173-21/+12
| |\ \ \ \ | | | | | | | | | | | | | | | | | | 'sh/platform-updates' and 'sh/perf_counter'
| | | | | * sh: Generic HAVE_PERF_COUNTER support.Paul Mundt2009-06-171-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This enables support for the generic software-based perf counters. Hardware counter support could be added in the future, but the lack of a performance counter IRQ makes this rather dubious. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| | | | | * sh: Use generic atomic64_t implementation.Paul Mundt2009-06-171-0/+2
| | | | |/ | | | |/| | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | sh: Add support mtd mapping for highlanderNobuhiro Iwamatsu2009-06-161-0/+3
| |/ / / | | | | | | | | | | | | | | | | Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Make the atomic functions safe for irqsoff tracingMatt Fleming2009-06-151-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The irqsoff tracer uses the atomic_* functions internally, but the implementations of those functions in arch/sh/include/asm/atomic-irq.h disable irqs to achieve atomicity. A continuous loop ensues where we disable interrupts, trace the interrupt disabling, call atomic_* functions, disable interrupts, trace the interrupt disabling, etc.. The simplest solution to all this is to just convert uses of local_irq_save()/local_irq_restore() the raw_* equivalents because the raw_* equivalents don't call trace_hardirqs_on()/trace_hardirqs_off(). Signed-off-by: Matt Fleming <matt@console-pimps.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert sh64 to use the generic checksum code.Paul Mundt2009-06-152-79/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This plugs in GENERIC_CSUM support on sh64, and kills off all of the old references. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Derive COMMAND_LINE_SIZE from asm-generic/setup.h.Paul Mundt2009-06-141-1/+1
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Switch to asm-generic versions for identical headers.Paul Mundt2009-06-146-146/+6
| | | | | | | | | | | | | | | | | | | | | | | | This switches over mman/param/parport/serial/socket/ucontext.h. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/signal.h.Paul Mundt2009-06-141-146/+1
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/types.h.Paul Mundt2009-06-141-15/+1
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/scatterlist.h.Paul Mundt2009-06-141-22/+2
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/unaligned.h.Paul Mundt2009-06-141-13/+1
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/module.h.Paul Mundt2009-06-141-11/+1
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Conver to asm-generic/mmu_context.h.Paul Mundt2009-06-141-9/+9
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Tidy up duplication in irq/swab/timex.h.Paul Mundt2009-06-143-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The asm-generic versions have some helper definitions that we can use instead, drop our definitions and use those instead. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert ipc/shm bits to their asm-generic versions.Paul Mundt2009-06-144-127/+4
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/termbits.h and termios.h.Paul Mundt2009-06-142-288/+2
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/posix_types.h.Paul Mundt2009-06-142-214/+32
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/dma.h.Paul Mundt2009-06-141-9/+1
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Convert to asm-generic/current.h.Paul Mundt2009-06-141-20/+1
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | Merge branch 'master' of ↵Paul Mundt2009-06-145-4/+5
| |\ \ \ | | |/ / | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
| * | | cpumask: use mm_cpumask() wrapper: shRusty Russell2009-06-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes code futureproof against the impending change to mm->cpu_vm_mask. It's also a chance to use the new cpumask_ ops which take a pointer (the older ones are deprecated, but there's no hurry for arch code). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | cpumask: arch_send_call_function_ipi_mask: shRusty Russell2009-06-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're weaning the core code off handing cpumask's around on-stack. This introduces arch_send_call_function_ipi_mask(), and by defining it, the old arch_send_call_function_ipi is defined by the core code. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | cpumask: remove the now-obsoleted pcibus_to_cpumask(): shRusty Russell2009-06-141-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | cpumask_of_pcibus() is the new version. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Wire up sys_perf_counter_open.Paul Mundt2009-06-122-2/+4
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | | | Delete pcibios_select_rootMatthew Wilcox2009-06-171-13/+0
| |_|/ |/| | | | | | | | | | | | | | | | | | | | This function was only used by pci_claim_resource(), and the last commit deleted that use. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | kmap_types: make most arches use generic header fileRandy Dunlap2009-06-161-21/+3
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert most arches to use asm-generic/kmap_types.h. Move the KM_FENCE_ macro additions into asm-generic/kmap_types.h, controlled by __WITH_KM_FENCE from each arch's kmap_types.h file. Would be nice to be able to add custom KM_types per arch, but I don't yet see a nice, clean way to do that. Built on x86_64, i386, mips, sparc, alpha(tonyb), powerpc(tonyb), and 68k(tonyb). Note: avr32 should be able to remove KM_PTE2 (since it's not used) and then just use the generic kmap_types.h file. Get avr32 maintainer approval. Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: <linux-arch@vger.kernel.org> Acked-by: Mike Frysinger <vapier@gentoo.org> Cc: Richard Henderson <rth@twiddle.net> Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Cc: Bryan Wu <cooloney@kernel.org> Cc: Mikael Starvik <starvik@axis.com> Cc: Hirokazu Takata <takata@linux-m32r.org> Cc: "Luck Tony" <tony.luck@intel.com> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: David Howells <dhowells@redhat.com> Cc: Kyle McMartin <kyle@mcmartin.ca> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Paul Mundt <lethal@linux-sh.org> Cc: "David S. Miller" <davem@davemloft.net> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | asm-generic: merge branch 'master' of torvalds/linux-2.6Arnd Bergmann2009-06-1238-362/+796
|\ \ | |/ | | | | | | | | | | Fixes a merge conflict against the x86 tree caused by a fix to atomic.h which I renamed to atomic_long.h. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| * sh: Wire up sys_rt_tgsigqueueinfo.Paul Mundt2009-06-112-2/+4
| | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * sh: Fix sh4a llsc-based cmpxchg()Aoi Shinkai2009-06-114-4/+31
| | | | | | | | | | | | | | | | | | | | This fixes up a typo in the ll/sc based cmpxchg code which apparently wasn't getting a lot of testing due to the swapped old/new pair. With that fixed up, the ll/sc code also starts using it and provides its own atomic_add_unless(). Signed-off-by: Aoi Shinkai <shinkoi2005@gmail.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * sh: add enable()/disable()/set_rate() to div6 codeMagnus Damm2009-06-111-0/+4
| | | | | | | | | | | | | | | | | | | | This patch updates the div6 clock helper code to add support for enable(), disable() and set_rate() callbacks. Needed by the camera clock enabling board code on Migo-R. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * sh: sh7722 mode pin definitionsMagnus Damm2009-06-111-0/+14
| | | | | | | | | | | | | | | | This patch adds sh7722 mode pin and pin function controller comments. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * sh: sh7724 mode pin commentsMagnus Damm2009-06-111-0/+14
| | | | | | | | | | | | | | | | This patch adds comments for the sh7724 mode pins and pin function controller. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * sh: sh7723 mode pin V2Magnus Damm2009-06-111-0/+14
| | | | | | | | | | | | | | | | This patch is sh7723 mode pin V2. Mode pins and pin function controller comments are added. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * sh: rework mode pin codeMagnus Damm2009-06-112-19/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch reworks the mode pin code to keep the pin definitions in one place. The mode pins values are now the value of the bit instead of bit number. With this patch in place the sh7785 header file contains mode pin comments. The sh7785 clock code and the sh7785lcr board code are updated to reflect the new shared mode pins. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * sh: clock div6 helper codeMagnus Damm2009-06-111-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | This patch adds div6 clock helper code. The div6 clocks are simply 6-bit divide-by-n modules where n is 1 to 64. Needed for vclk on sh7722, sh7723, sh7343 and sh7366. sh7724 needs this even more for vclk, fclka, fclkb, irdaclk and spuclk. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * Merge branch 'master' of ↵Paul Mundt2009-06-111-1/+0
| |\ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
| * | sh: 16-bit get_unaligned() sh4a fixMagnus Damm2009-06-041-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the 16-bit case of the sh4a specific unaligned access implementation. Without this patch the 16-bit version of sh4a get_unaligned() results in a 32-bit read which may read more data than intended and/or cross page boundaries. Unbreaks mtd NOR write handling on Migo-R. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh: add RAMCR definition for sh4Kuninori Morimoto2009-06-021-0/+2
| | | | | | | | | | | | | | | Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh: shared div4 clock codeMagnus Damm2009-06-011-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add shared code for 4-bit divisor clocks. Processor specific code can use SH_CLK_DIV4() to initialize div4 clocks, and then use sh_clk_div4_register() for registration. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
OpenPOWER on IntegriCloud