summaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel
AgeCommit message (Collapse)Author
2009-05-12sh: clkfwk: refactor rate propagation.Paul Mundt
This resyncs the rate propagation strategy with the scheme used by the OMAP clock framework. Child clocks are tracked on a list under each parent and propagation happens there specifically rather than constantly iterating over the global clock list. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-12sh: clkfwk: Add a followparent_recalc() helper.Paul Mundt
This adds a followparent_recalc() helper for clocks that just follow the parent's rate. Switch over the few CPUs that use this scheme for some of their clocks. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-12sh: clkfwk: Make recalc return an unsigned long.Paul Mundt
This is prep work for cleaning up some of the rate propagation bits. Trivial conversion. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-11sh: TMU platform data for sh7780Magnus Damm
This patch adds TMU platform data for sh7780. 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-11sh: multiple vectors per irq - sh7760Magnus Damm
Update intc tables and platform data to use one linux irq per maskable interrupt source instead of keeping the one-to-one mapping between vectors and linux irqs. This fixes potential irq masking issues for sh7760 hardware blocks such as DMAC/TMU2/REF. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-11sh: TMU platform data for sh7760Magnus Damm
This patch adds TMU platform data for sh7760. 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-11sh: TMU platform data for sh775xMagnus Damm
This patch adds TMU platform data for sh775x. 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-11sh: include empty_zero_page in textMagnus Damm
Include empty_zero_page in _text. This fixes a problem introduced by c3e2586b794b12ffcdf69b4e547030b51e18e6d9 which results in broken boot on R2D-Plus. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-11sh: Account for INITIAL_JIFFIES when using jiffies clocksource.Paul Mundt
In the case where we fall back on the generic jiffies clocksource, INITIAL_JIFFIES needs to be accounted for so that printk times aren't completely skewed. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-11sh: Fix up typo in arch/sh/kernel/vmlinux.lds.SPaul Mundt
.init_ramfs ought to be .init.ramfs, fix it up. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-10sh: Tidy up the ldscript output format specifier.Paul Mundt
Tie this in to the Makefile directly, where we already know what we are running on. This tidies up the linker script a bit, and is prep work for unifying the arch/sh/boot/compressed linker scripts. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Move the unified linker script in place, kill off old _64 one.Paul Mundt
Just forcefully rename the _32 variant overtop, and kill off the now unused _64 version. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Integrate sh64 bits in vmlinux_32.lds.S.Paul Mundt
This adds all of the requisite bits from vmlinux_64.lds.S in to the _32 variant, resulting in a unified and generic linker script that can be shared across both. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Fix up SHmedia module ELF relocations.Paul Mundt
This fixes up the LSB setting for SHmedia branching in updated symbols when processing module relocations. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Provide an __sdivsi3_2 export for sh64.Paul Mundt
Newer code paths that are heavier in 64-bit math manage to get this generated by newer compilers, provide a definition and export accordingly. This is trivially wrapped around the existing __sdivsi3 code. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Rename opcode_t to insn_size_t.Paul Mundt
This is now clashing with a driver, so just rename it. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Add UBC trap vector for SH2APeter Griffin
Signed-off-by: Peter Griffin <pgriffin@mpc-data.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Add ptrace support for NOMMU debuggingPeter Griffin
Signed-off-by: Peter Griffin <pgriffin@mpc-data.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-09sh: Fix UBC setup and registers for SH2AKieran Bingham
Signed-off-by: Kieran Bingham <kieranbingham@gmail.com> Signed-off-by: Peter Griffin <pgriffin@mpc-data.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Add clock id to sh-sci platform data on SH-Mobile CPUs.Paul Mundt
This adds the clock specifier to all of the SH-Mobile sh-sci ports. Impacted CPUs are SH7343/SH7366/SH7722/SH7723/SH7724. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Kill off the GENERIC_CALIBRATE_DELAY ifndef.Paul Mundt
Now that everyone is using the clock framework directly and we unconditionally provide our own calibrate_delay() function, having it wrapped in an ifndef is no longer useful. So, kill it off. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: TMU platform data for SH-X3 proto CPU.Paul Mundt
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: TMU platform data for SH7786.Paul Mundt
Wires up all 12 TMU channels, with TMU0 and 1 used as clockevent and clocksource respectively. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Always fixup unaligned userspace accesses on sh64.Paul Mundt
sh64 has traditionally had this configurable via a Kconfig option (CONFIG_SH64_USER_MISALIGNED_FIXUP). In practice it has never really been terribly useful to turn this off, so just get rid of the option entirely. We leave the sysctl around so we don't end up breaking existing root file systems, and to allow folks that really want this off to do so at their own risk. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: Drop dead rules from arch/sh/kernel/Makefile_64.Paul Mundt
Several of these options are specific to the SHcompact ISA and will need to be rewritten for SHmedia if they are to be supported at all. Drop the impossible rules for now. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: TMU platform data for sh7723Magnus Damm
This patch adds TMU platform data for sh7723. Both clockevent and clocksource support is enabled. While at it, adjust the CMT clocksource rating to prioritize the TMU. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: enable TMU clocksource on sh7722Magnus Damm
This patch enables the TMU clocksource on sh7722. To prioritize TMU over CMT we also adjust the CMT clock source rating. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-05-08sh: clock framework update, fix count and kill off krefMagnus Damm
This patch updates the clock framework use count code. With this patch the enable() and disable() callbacks only get called when counting from and to zero. While at it the kref stuff gets replaced with an int. Signed-off-by: Magnus Damm <damm@igel.co.jp> 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: 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: 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: 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-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-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: 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-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-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