aboutsummaryrefslogtreecommitdiff
path: root/arch/sh
AgeCommit message (Collapse)Author
2009-05-08sh: Kill off unused sh64 debug code.Paul Mundt
None of the print_page() code and associated helpers are presently used by anything in-tree, so just kill it off. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Kill off sh64's hand-rolled syscall tracer.Paul Mundt
This is no longer necessary, as there are now sufficient generic alternatives available. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Kill off the global rtc_lock with extreme prejudice.Paul Mundt
Now that all of the possible users for rtc_lock have gone away, it is no longer necessary to keep this lock definition around. This follows several other architectures that have either recently dropped it or never supported it in the first place. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: mach-sh03: Give the sh03 rtc its own spinlock.Paul Mundt
This converts the sh03 rtc code off of using the global rtc_lock and on to its own spinlock. There are no other possible users of the rtc_lock, so serializing with it is not necessary. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Kill off dead timer sysclass pm hooks.Paul Mundt
With the conversion to generic clockevents these are completely unused, so just kill it off. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Kill off dead handle_timer_tick() code.Paul Mundt
Nothing is using this anymore now that we have fully converted to generic time, so kill it off completely. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Wire up GENERIC_CMOS_UPDATE for the platforms that need it.Paul Mundt
Now that everything has converted over to generic timekeeping, we need an alternate method for keeping the RTC updated for those platforms that are still using the rtc_sh_get/set_time pairs, presently limited to SH-03 and the Dreamcast. This wires up the GENERIC_CMOS_UPDATE hooks for those to maintain the same behaviour. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Rename arch/sh/kernel/time_32.c to arch/sh/kernel/time.c.Paul Mundt
This is now fully generic, and used both by _32 and _64 variants. Rename it accordingly. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Finish the sh64 migration off of ARCH_USES_GETTIMEOFFSET.Paul Mundt
This adds sh_tmu support to the SH-5 subtypes, which subsequently allows us to kill off time_64.c and use the now generic time_32.c. As a bonus, SH-5 now supports highres timers and tickless for the first time. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Move out rtc-sh registration from time_64.c to setup-sh5.cPaul Mundt
Now that the onchip_remap() mess is sorted out, the rtc-sh support code for SH-5 can follow the same approach as the other CPUs. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Enable new TMU driver support for all SH-3 and SH-4 CPUs.Paul Mundt
The TMU block is supported on all SH-3 and SH-4 subtypes, so just select it there, rather than conditionalizing it per subtype. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: TMU platform data for sh7785Magnus Damm
This patch adds TMU platform data for sh7785. Both clockevent and clocksource support is enabled. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: r7785 highlander clock fixesMagnus Damm
Update the r7785 highlander defconfig to fix PCLK value and that mode4 is set high. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: call clock framework init() callback onceMagnus Damm
Make sure that clk->ops->init() only gets called once in the case of CLK_ALWAYS_ENABLED. Without this patch the init() callback may be called multiple times. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: sh7785 early scif fixMagnus Damm
This patch moves the SH4 case of EARLY_SCIF_CONSOLE_PORT so the SH7785 default value gets used. Without this patch the value for SH7785 is set to 0xffe80000. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-07sh: Kill off unused SH-5 irq_describe cruft.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-07sh: Integrate the SH-5 onchip_remap() more coherently.Paul Mundt
Presently this is special-cased for early initialization. While there are situations where these static early initializations are still necessary, with minor changes it is possible to use this for the regular ioremap implementation as well. This allows us to kill off the special-casing for the remap completely and to start tidying up all of the SH-5 special-casing in drivers. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-07sh: sh64 still needs ARCH_USES_GETTIMEOFFSET temporarily.Paul Mundt
sh64 is still using this, so re-enable it temporarily while SH-5 gets converted to use the generic code. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-07sh: Handle shm_align_mask also for HAVE_ARCH_UNMAPPED_AREA_TOPDOWN.Paul Mundt
Presently shm_align_mask is only looked at for the bottom up case, but we still want this for proper colouring constraints in the topdown case. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-07sh: Flag IRQSTACKS as BROKEN for now.Paul Mundt
There still seems to be some stack corruption to sort out here, so flag this as BROKEN until this issue is sorted out. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: Move dummy clockevents broadcast timer to its new home.Paul Mundt
The old arch/sh/kernel/timers/ directly will be going away completely once the rest of the TMU users are migrated, so move the dummy broadcast driver up a level in preparation. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: Kill off the now unused ARCH_USES_GETTIMEOFFSET code.Paul Mundt
Now that the stragglers (MTU2/CMT/etc.) have been rewritten and we are selecting both GENERIC_TIME and GENERIC_CLOCKEVENTS, the get_offset() timer op is completely unused. As a result, we are now able to kill off the ARCH_USES_GETTIMEOFFSET references. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: select both GENERIC_TIME and GENERIC_CLOCKEVENTS.Paul Mundt
Now that the rest of the timers that didn't support clockevents have been rewritten, both of these can be enabled by default. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: Consolidate MTU2/CMT/TMU timer platform data.Paul Mundt
All of the SH timers use a roughly identical structure for platform data, which presently is broken out for each block. Consolidate all of these definitions, as there is no reason for them to be broken out in the first place. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: TMU platform data for sh7722Magnus Damm
This patch adds TMU platform data for sh7722. Only clockevent mode is enabled for now, clocksource requires this patch: "clocksource: setup mult_orig in clocksource_enable()" Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03clocksource: SuperH TMU Timer driverMagnus Damm
This patch adds a TMU driver for the SuperH architecture. The TMU driver is a platform driver with early platform support to allow using a TMU channel as clockevent or clocksource during system bootup or later. Clocksource or clockevent can be selected. Both periodic and oneshot clockevents are supported. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: remove old MTU2 driverMagnus Damm
This patch removes the old MTU2 driver (CONFIG_SH_MTU2/timer-mtu2.c) As replacement, select the sh_cmt driver with CONFIG_SH_TIMER_MTU2 and configure timer channel using platform data. If multiple MTU channels are enabled using platform data, use the earlytimer parameter on the kernel command line to select channel. For instance, use "earlytimer=sh_mtu2.0" to select the first channel. To verify which timer is being used, look at printouts or the timer irq count in /proc/interrupts. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: sh2a MTU2 platform dataMagnus Damm
This patch adds MTU2 platform data for the following cpus: - sh7201 (3/5 channels) - sh7203/sh7263 (2/4 channels) - sh7206 (3/5 channels) - MXG (3/5 channels) Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03clocksource: SuperH MTU2 Timer driverMagnus Damm
This patch adds a MTU2 driver for the SuperH architecture. The MTU2 driver is a platform driver with early platform support to allow using a MTU2 channel as only clockevent during system bootup. Clocksource on sh2a is currently unsupported due to code generation issues with 64-bit math, so at this point only periodic clockevent support is in place. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03time: sh: convert to use arch_getoffset() infrastructurejohn stultz
Convert sh to use GENERIC_TIME via the arch_getoffset() infrastructure. Signed-off-by: John Stultz <johnstul@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: remove obsolete hw_interrupt_typeThomas Gleixner
Impact: cleanup Convert the last remaining users to struct irq_chip and remove the define. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03sh: remove obsolete no_irq_typeThomas Gleixner
Impact: cleanup convert the last remaining users to no_irq_chip Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-03Merge branch 'timers/clocksource' of ↵Paul Mundt
git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip
2009-04-30sh: remove old CMT driverMagnus Damm
This patch removes the old CMT driver (CONFIG_SH_CMT/timer-cmt.c) As replacement, select the sh_cmt driver with CONFIG_SH_TIMER_CMT and configure timer channel using platform data. If multiple CMT channels are enabled using platform data, use the earlytimer parameter on the kernel command line to select channel. For instance, use "earlytimer=sh_cmt.0" to select the first channel. To verify which timer is being used, look at printouts or the timer irq count in /proc/interrupts. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-30sh: sh2/sh2a 16-bit CMT platform dataMagnus Damm
This patch adds 16-bit cmt platform data for the following cpus: - sh7619 (2 channels) - sh7203/sh7263 (2 channels) - sh7206 (2 channels) Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-30sh: pass through ioremap() for non-mmu processors.Magnus Damm
All 32-bit SuperH processors currently go through __ioremap_mode() and check for IO_TRAPPED and directly mapped segments. With this patch we simplify the MMU less case with a pass through version of __ioremap_mode() which just returns the physical address. The effects of this is change are: - fix non-MMU ioremap() of high address hardware blocks (sh7203 CMT) - make sure IO_TRAPPED is not selected Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-28sh: register the rtc-generic platform device properly.Paul Mundt
The device registration was accidentally omitted, add it back in. Do some basic device probing as well, so this doesn't show up for platforms that tie in to the RTC interface properly. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-28sh: setup timers in late_time_init()Magnus Damm
This patch moves the SuperH timer setup code from time_init() to late_time_init(). Good things about this change: - interrupts: they are enabled at late_time_init() - mm: regular kmalloc() can be used at late_time_init() Together with moving to late_time_init() this patch changes the sh_cmt driver to always allocate with kmalloc(). This simplifies the code a bit and also fixes section mismatches. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-27sh: Use __INIT macro instead of .text.init.Tim Abbott
The sh architecture has some code in the .text.init section, but it does not reference that section in its linker scripts. This change moves this code from the .text.init section to the .init.text section, which is presumably where it belongs. Signed-off-by: Tim Abbott <tabbott@mit.edu> Acked-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-27sh: mach-r2d: add physmap-flash support for R2D+ boards.Jean-Christophe PLAGNIOL-VILLARD
The RTS7751R2D_1 boards only support 1MB of socket-mounted MBM29F040 flash, which we just leave alone as it's not terribly interesting. This adds support for the s29gl256p on the r2d+ boards that makes a bit more sense to expose to the user. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-27sh: rtc-generic support.Paul Mundt
This adds rtc-generic support for SUPERH32. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-27sh: Fix up unsigned syscall_nr in SH-5 pt_regs.Paul Mundt
syscall_nr is presently defined as unsigned in the SH-5 pt_regs, while the syscall restarting code wants it to be signed. Fix this up, and bring it in line with the other SH parts. Reported-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-27sh: select GENERIC_TIME for new CMT driver.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-27sh: update defconfigs for PCI changes.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-27Merge branches 'sh/stable-updates' and 'sh/pci-rework'Paul Mundt
2009-04-27sh: sh7785lcr: fix defconfig for 29-bit modeYoshihiro Shimoda
Fix the problem that cannot work 29-bit mode when use sh7785lcr_defconfig. Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-26sh: convert to use __HEAD and HEAD_TEXT macros.Tim Abbott
This has the consequence of changing the section name use for head code from ".text.head" to ".head.text". Since this commit changes all users in the architecture, this change should be harmless. Signed-off-by: Tim Abbott <tabbott@mit.edu> Cc: Paul Mundt <lethal@linux-sh.org> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-24sh: pci: Fix up the build for CONFIG_PCI=n.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-22Merge branch 'master' of ↵Paul Mundt
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
2009-04-21clocksource: pass clocksource to read() callbackMagnus Damm
Pass clocksource pointer to the read() callback for clocksources. This allows us to share the callback between multiple instances. [hugh@veritas.com: fix powerpc build of clocksource pass clocksource mods] [akpm@linux-foundation.org: cleanup] Signed-off-by: Magnus Damm <damm@igel.co.jp> Acked-by: John Stultz <johnstul@us.ibm.com> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>