powerpc/mpic: add global timer support
authorDongsheng.wang@freescale.com <Dongsheng.wang@freescale.com>
Tue, 9 Apr 2013 02:22:30 +0000 (10:22 +0800)
committerScott Wood <scottwood@freescale.com>
Mon, 1 Jul 2013 23:38:41 +0000 (18:38 -0500)
commit36ca09be6ff77a4e5b54b8b68ed7be7aa184250b
tree599bddca2be47f3c115f9afb58bf3b9386a03104
parent5ff04b7287d87c1db74f47360365905ed9a97ff7
powerpc/mpic: add global timer support

The MPIC global timer is a hardware timer inside the Freescale PIC complying
with OpenPIC standard. When the specified interval times out, the hardware
timer generates an interrupt. The driver currently is only tested on fsl chip,
but it can potentially support other global timers complying to OpenPIC
standard.

The two independent groups of global timer on fsl chip, group A and group B,
are identical in their functionality, except that they appear at different
locations within the PIC register map. The hardware timer can be cascaded to
create timers larger than the default 31-bit global timers. Timer cascade
fields allow configuration of up to two 63-bit timers. But These two groups
of timers cannot be cascaded together.

It can be used as a wakeup source for low power modes. It also could be used
as periodical timer for protocols, drivers and etc.

Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
arch/powerpc/include/asm/mpic_timer.h [new file with mode: 0644]
arch/powerpc/platforms/Kconfig
arch/powerpc/sysdev/Makefile
arch/powerpc/sysdev/mpic_timer.c [new file with mode: 0644]