linux/drivers
Jamie Lenehan 1b73e6ae45 rtc: rtc-sh: alarm support.
This adds alarm support for the RTC_ALM_SET, RTC_ALM_READ,
RTC_WKALM_SET and RTC_WKALM_RD operations to rtc-sh.

The only unusual part is the handling of the alarm interrupt. If you
clear the alarm flag (AF) while the time in the RTC still matches the
time in the alarm registers than AF is immediately re-set, and if the
alarm interrupt (AIE) is still enabled then it re-triggers. I was
originally getting around 20k+ interrupts generated during the second
when the RTC and alarm registers matches.

The solution I've used is to clear AIE when the alarm goes off and
then use the carry interrupt to re-enabled it. The carry interrupt
will check AF and re-enabled AIE if it's clear. If AF is not clear
it'll clear it and then the check will be repeated next carry
interrupt. This a bit in rtc structure that indicates that it's
waiting to have AIE re-enabled so it doesn't turn it on when it
wasn't enabled anyway.

Signed-off-by: Jamie Lenehan <lenehan@twibble.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2006-12-12 08:42:08 +09:00
..
acorn
acpi
amba
ata
atm
base
block
bluetooth
cdrom
char [PATCH] sysctl: remove unused "context" param 2006-12-10 09:55:41 -08:00
clocksource [PATCH] clocksource: small cleanup 2006-12-10 09:57:22 -08:00
connector
cpufreq
crypto [PATCH] geode crypto is PCI device 2006-12-10 09:55:40 -08:00
dio
dma
edac
eisa
fc4
firmware
hid
hwmon
i2c
ide [PATCH] ide-cd: Handle strange interrupt on the Intel ESB2 2006-12-10 09:57:20 -08:00
ieee1394
infiniband
input [PATCH] ucb1400_ts depends SND_AC97_BUS 2006-12-10 09:55:39 -08:00
isdn [PATCH] Don't build some broken ISDN drivers on big endian MIPS 2006-12-10 09:55:42 -08:00
kvm [PATCH] kvm: userspace interface 2006-12-10 09:57:22 -08:00
leds
macintosh
mca
md [CRYPTO] dm-crypt: Select CRYPTO_CBC 2006-12-10 10:18:57 -08:00
media V4L/DVB 4949b: Fix container_of pointer retreival 2006-12-10 14:52:18 -02:00
message
mfd
misc
mmc AT91 MMC update for 2.6.19 2006-12-11 12:43:35 +01:00
mtd
net [PATCH] smc91x: Kill off excessive versatile hooks. 2006-12-11 09:54:50 -05:00
nubus
oprofile
parisc
parport [PATCH] Kconfig refactoring for better menu nesting 2006-12-10 09:55:39 -08:00
pci [PATCH] Kconfig refactoring for better menu nesting 2006-12-10 09:55:39 -08:00
pcmcia
pnp
ps3
rapidio
rtc rtc: rtc-sh: alarm support. 2006-12-12 08:42:08 +09:00
s390
sbus
scsi
serial serial: sh-sci: Shut up various sci_rxd_in() gcc4 warnings. 2006-12-12 08:42:08 +09:00
sh
sn
spi [PATCH] spi: stabilize PIO mode transfers on PXA2xx systems 2006-12-10 09:55:40 -08:00
tc
telephony
usb
video [PATCH] Fbdev driver for IBM GXT4500P videocards 2006-12-10 09:57:20 -08:00
w1
zorro
Kconfig [PATCH] kvm: userspace interface 2006-12-10 09:57:22 -08:00
Makefile [PATCH] kvm: userspace interface 2006-12-10 09:57:22 -08:00