kernel-ark/arch/sparc/kernel
Tkhai Kirill 62f082830d sparc32: generic clockevent support
The kernel uses l14 timers as clockevents. l10 timer is used
as clocksource if platform master_l10_counter isn't constantly
zero. The clocksource is continuous, so it's possible to use
high resolution timers. l10 timer is also used as clockevent
on UP configurations.

This realization is for sun4m, sun4d, sun4c, microsparc-IIep
and LEON platforms. The appropriate LEON changes was made by
Konrad Eisele.

In case of sun4m's oneshot mode, profile irq is zeroed in
smp4m_percpu_timer_interrupt(). It is maybe
needless (double, triple etc overflow does nothing).

sun4d is able to have oneshot mode too, but I haven't
any way to test it. So code of its percpu timer handler
is made as much equal to the current code as possible.

The patch is tested on sun4m box in SMP mode by me,
and tested by Konrad on leon in up mode (leon smp
is broken atm - due to other reasons).

Signed-off-by: Tkhai Kirill <tkhai@yandex.ru>
Tested-by: Konrad Eisele <konrad@gaisler.com> [leon up]
[sam: revised patch to provide generic support for leon]
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-04-15 10:28:50 -07:00
..
.gitignore
apc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
asm-offsets.c
audit.c
auxio_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
auxio_64.c sparc64: Fix section mis-match errors. 2011-03-30 17:37:56 -07:00
btext.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
central.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
cherrs.S
chmc.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
compat_audit.c
cpu.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
cpumap.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
cpumap.h
devices.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
dma.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
ds.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc 2012-04-13 13:32:07 -07:00
dtlb_miss.S
dtlb_prot.S
ebus.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
entry.h sparc64: Patch sun4v code sequences properly on module load. 2011-11-17 22:44:58 -08:00
entry.S sparc: sun4m SMP: fix wrong shift instruction in IPI handler 2011-07-16 10:45:12 -07:00
etrap_32.S
etrap_64.S
fpu_traps.S
ftrace.c
getsetcc.S
head_32.S sparc32,leon: operate on boot-cpu IRQ controller registers 2011-04-21 16:44:45 -07:00
head_64.S sparc64: Future proof Niagara cpu detection. 2011-09-16 14:21:33 -07:00
helpers.S
hvapi.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
hvcalls.S sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
hvtramp.S
idprom.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
init_task.c Fix common misspellings 2011-03-31 11:26:23 -03:00
iommu_common.h
iommu.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
ioport.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
irq_32.c sparc32: rename sparc_irq_config to sparc_config 2012-04-15 10:28:49 -07:00
irq_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
irq.h sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
itlb_miss.S
ivec.S
jump_label.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kernel.h sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
kgdb_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
kgdb_64.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kprobes.c
kstack.h
ktlb.S sparc: Access kernel TSB using physical addressing when possible. 2011-08-05 00:53:57 -07:00
ldc.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
led.c
leon_kernel.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
leon_pci_grpci2.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
leon_pci.c sparc32,leon: fix leon build 2012-04-04 15:44:39 -07:00
leon_pmc.c SPARC/LEON: power down instruction different of different LEONs 2011-03-16 18:19:04 -07:00
leon_smp.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
Makefile sparc: Allow handling signals when stack is corrupted. 2011-08-20 17:14:54 -07:00
mdesc.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
misctrap.S
module.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
muldiv.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
nmi.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
of_device_32.c sparc32: rename sparc_irq_config to sparc_config 2012-04-15 10:28:49 -07:00
of_device_64.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
of_device_common.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
of_device_common.h
pci_common.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
pci_fire.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_impl.h sparc64: rename virt_irq => irq - II 2011-03-16 18:19:03 -07:00
pci_msi.c sparc: convert old cpumask API into new one 2011-05-16 13:38:07 -07:00
pci_psycho.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sabre.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_schizo.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sun4v_asm.S
pci_sun4v.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
pci_sun4v.h
pci.c sparc/PCI: convert devtree and arch-probed bus addresses to resource 2012-03-20 10:42:01 -07:00
pcic.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
pcr.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
perf_event.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
pmc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
power.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
process_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
process_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
prom_32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
prom_64.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
prom_common.c sparc: Use kmemdup rather than duplicating its implementation 2011-12-04 10:46:56 -08:00
prom_irqtrans.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
prom.h
psycho_common.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
psycho_common.h
ptrace_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
ptrace_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
reboot.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
rtrap_32.S
rtrap_64.S sparc64: Remove trap return code which is now unnecessary. 2012-04-13 13:56:46 -07:00
sbus.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
setup_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
setup_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sigutil_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sigutil_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sigutil.h sparc: Allow handling signals when stack is corrupted. 2011-08-20 17:14:54 -07:00
smp_32.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
smp_64.c treewide: Fix typos in various parts of the kernel, and fix some comments. 2011-12-02 14:57:31 +01:00
sparc_ksyms_32.c
sparc_ksyms_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
spiterrs.S
sstate.c sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
stacktrace.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
starfire.c
sun4c_irq.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
sun4d_irq.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
sun4d_smp.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
sun4m_irq.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
sun4m_smp.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
sun4v_ivec.S
sun4v_tlb_miss.S
sys32.S All Arch: remove linkage for sys_nfsservctl system call 2011-08-26 15:09:58 -07:00
sys_sparc32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
sys_sparc_32.c
sys_sparc_64.c powerpc+sparc64/mm: Remove hack in mmap randomize layout 2011-11-28 11:42:09 +11:00
syscalls.S
sysfs.c cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem 2011-12-21 14:29:42 -08:00
systbls_32.S sparc: Hook up process_vm_{readv,writev} syscalls. 2011-11-01 00:51:30 -07:00
systbls_64.S sparc: Hook up process_vm_{readv,writev} syscalls. 2011-11-01 00:51:30 -07:00
systbls.h
tadpole.c
time_32.c sparc32: generic clockevent support 2012-04-15 10:28:50 -07:00
time_64.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
trampoline_32.S
trampoline_64.S
traps_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
traps_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
tsb.S
ttable.S
una_asm_32.S
una_asm_64.S sparc: Fix .size directive for do_int_load 2011-03-16 18:19:15 -07:00
unaligned_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
unaligned_64.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc 2012-04-13 13:32:07 -07:00
us2e_cpufreq.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
us3_cpufreq.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
utrap.S
vio.c powerpc+sparc/vio: Modernize driver registration 2012-03-28 11:33:24 +11:00
viohs.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
visemul.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
vmlinux.lds.S sparc: Access kernel TSB using physical addressing when possible. 2011-08-05 00:53:57 -07:00
windows.c
winfixup.S
wof.S
wuf.S