android_kernel_xiaomi_sm8350/drivers
David Brownell 4d243f92e4 atmel_tc clocksource/clockevent code
Clocksource and clockevent device based on the Atmel TC blocks.

The clockevent device handles both periodic and oneshot modes, so this
enables NO_HZ and high res timers on some platforms that previously
couldn't use those mechanisms.

This works on both AVR32 and AT91 chips, given relevant patches for
tclib support (always) and clockevents (or else this will only look
like a higher precision clocksource).  It's an updated and modularized
version of an AT91-only patch that has circulated for some time now.

Changes relative to the original patch:
  * Update to use new tclib API
  * Replace open-coded do-while loop using goto with a real do-while loop
  * Minor irq handler optimization: Load register base address from
    dev_id instead of a global variable.
  * Aggressively turn off clocks when the clockevent isn't being used
  * Include the clockevent code on AT91RM9200 as well. The rating is
    lower than the System Timer, so the clock will usually stay off.
  * Don't assume that the number of clocks is always equal to the
    number of irqs.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
2008-03-04 13:42:24 +01:00
..
acorn/char Fix default compose table initialization 2008-03-03 14:53:16 -08:00
acpi Merge branches 'release', 'bugzilla-9916', 'bugzilla-9982', 'bugzilla-9989', 'misc', 'suspend', 'thermal', 'thinkpad' and 'tsc' into release 2008-02-21 02:41:58 -05:00
amba
ata [libata] wrap kmap_atomic(KM_IRQ0) with local_irq_save/restore() 2008-02-29 19:10:51 -05:00
atm
auxdisplay
base docbook: fix kernel-api source files 2008-03-03 10:47:14 -08:00
block NBD: make nbd default to deadline I/O scheduler 2008-02-23 17:12:15 -08:00
bluetooth
cdrom
char Fix default compose table initialization 2008-03-03 14:53:16 -08:00
clocksource atmel_tc clocksource/clockevent code 2008-03-04 13:42:24 +01:00
connector CONNECTOR: make cn_already_initialized static 2008-02-26 18:42:44 -08:00
cpufreq cpufreq: fix kobject reference count handling 2008-02-21 15:27:06 -08:00
cpuidle
crypto
dca
dio
dma
edac
eisa
firewire firewire: fix crash in automatic module unloading 2008-03-02 12:35:46 +01:00
firmware dmi: prevent linked list corruption 2008-02-23 17:12:15 -08:00
gpio
hid
hwmon hwmon: normal_i2c arrays should be const 2008-02-18 21:58:15 -05:00
i2c i2c-i801: Add support for the ICH10 2008-02-24 20:03:42 +01:00
ide ide: remove stale comments from ide-dma.c (take 2) 2008-02-26 21:50:36 +01:00
ieee1394 ieee1394: sbp2: fix rescan-scsi-bus 2008-02-19 19:57:24 +01:00
infiniband RDMA/nes: Fix interrupt moderation low threshold 2008-02-26 16:24:29 -08:00
input
isdn
leds
lguest
macintosh PM: Introduce PM_EVENT_HIBERNATE callback state 2008-02-23 10:40:04 -08:00
mca
md dm-raid1.c: fix NULL dereferences 2008-02-19 15:52:27 -08:00
media V4L/DVB (7219): zoran: Fix namespace conflicts with Zoran 'GPIO_MAX' enum 2008-02-18 12:18:28 -03:00
memstick
message docbook: fix fusion source files 2008-03-03 10:47:14 -08:00
mfd
misc atmel_tc clocksource/clockevent code 2008-03-04 13:42:24 +01:00
mmc
mtd
net [BNX2X]: update version, remove CVS strings 2008-02-28 11:58:49 -08:00
nubus
of
oprofile
parisc
parport
pci docbook: fix kernel-api source files 2008-03-03 10:47:14 -08:00
pcmcia PCI: drivers/pcmcia/i82092.c: fix up after pci_bus_region changes 2008-02-21 15:34:35 -08:00
pnp
power
ps3
rapidio docbook: fix rapidio source files 2008-03-03 10:47:13 -08:00
rtc rtc-cmos: display HPET emulation mode 2008-02-23 17:12:14 -08:00
s390 Fix default compose table initialization 2008-03-03 14:53:16 -08:00
sbus
scsi docbook: fix scsi source file 2008-03-03 10:47:13 -08:00
serial Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6 2008-02-29 08:41:13 -08:00
sh maple: fix device detection 2008-02-26 14:12:09 +09:00
sn
spi spi: pxa2xx_spi clock polarity fix 2008-02-23 17:12:14 -08:00
ssb SSB PCI core driver: use new SPROM data structure 2008-02-28 09:29:58 -05:00
tc
telephony
thermal
uio UIO: fix Greg's stupid changes 2008-02-21 15:27:07 -08:00
usb docbook: fix usb source files 2008-03-03 10:47:14 -08:00
video drivers/video/uvesafb.c: fix section mismatch warning in param_set_scroll() 2008-02-23 17:12:15 -08:00
virtio
w1
watchdog [WATCHDOG] HP ProLiant WatchDog driver 2008-02-18 17:06:21 +00:00
xen
zorro
Kconfig
Makefile