kernel-ark/include/linux
David Brownell 7be2c7c96a [PATCH] RTC framework driver for CMOS RTCs
This is an "RTC framework" driver for the "CMOS" RTCs which are standard on
PCs and some other platforms.  That's MC146818 compatible silicon.
Advantages of this vs.  drivers/char/rtc.c (use one _or_ the other, only
one will be able to claim the RTC irq) include:

 - This leverages both the new RTC framework and the driver model; both
   PNPACPI and platform device modes are supported.  (A separate patch
   creates a platform device on PCs where PNPACPI isn't configured.)

 - It supports common extensions like longer alarms.  (A separate patch
   exports that information from ACPI through platform_data.)

 - Likewise, system wakeup events use "real driver model support", with
   policy control via sysfs "wakeup" attributes and and using normal rtc
   ioctls to manage wakeup.  (Patch in the works.  The ACPI hooks are
   known; /proc/acpi/alarm can vanish.  Making it work with EFI will
   be a minor challenge to someone with e.g. a MiniMac.)

It's not yet been tested on non-x86 systems, without ACPI, or with HPET.
And the RTC framework will surely have teething pains on "mainstream"
PC-based systems (though must embedded Linux systems use it heavily), not
limited to sorting out the "/dev/rtc0" issue (udev easily tweaked).  Also,
the ALSA rtctimer code doesn't use the new RTC API.

Otherwise, this should be a no-known-regressions replacement for the old
drivers/char/rtc.c driver, and should help the non-embedded distros (and
the new timekeeping code) start to switch to the framework.

Note also that any systems using "rtc-m48t86" are candidates to switch over
to this more functional driver; the platform data is different, and the way
bytes are read is different, but otherwise those chips should be compatible.

[akpm@osdl.org: sparc32 fix]
[akpm@osdl.org: sparc64 fix]
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Woody Suwalski <woodys@xandros.com>
Cc: Alessandro Zummo <alessandro.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-11 10:51:32 -08:00
..
amba
byteorder [PATCH] remove include/linux/byteorder/pdp_endian.h 2007-02-11 10:51:24 -08:00
dvb
hdlc
isdn
lockd
mmc mmc: Allow host drivers to specify max block count 2007-02-04 20:54:10 +01:00
mtd
netfilter [NETFILTER]: add IPv6-capable TCPMSS target 2007-02-08 12:39:16 -08:00
netfilter_arp
netfilter_bridge
netfilter_ipv4 [NETFILTER]: ip_tables: remove declaration of non-existant ipt_find_target function 2007-02-08 12:39:22 -08:00
netfilter_ipv6 [NETFILTER]: ip6_tables: remove redundant structure definitions 2007-02-08 12:39:23 -08:00
nfsd [PATCH] knfsd: Fix type mismatch with filldir_t used by nfsd 2007-01-26 13:51:00 -08:00
raid [PATCH] md: avoid possible BUG_ON in md bitmap handling 2007-02-09 09:25:47 -08:00
spi Revert "Driver core: convert SPI code to use struct device" 2007-02-07 21:34:08 -08:00
sunrpc [PATCH] knfsd: fix a race in closing NFSd connections 2007-02-09 09:25:47 -08:00
tc_act
tc_ematch
usb USB serial: add dynamic id support to usb-serial core 2007-02-07 15:44:33 -08:00
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h ACPICA: Remove duplicate table definitions (non-conflicting), cont 2007-02-02 21:14:29 -05:00
adb.h
adfs_fs_i.h
adfs_fs_sb.h
adfs_fs.h
aer.h
affs_hardblocks.h
agp_backend.h
agpgart.h
aio_abi.h
aio.h
amifd.h
amifdreg.h
amigaffs.h
apm_bios.h
apm-emulation.h [APM] Add shared version of APM emulation 2007-02-09 17:08:57 +00:00
arcdevice.h
arcfb.h
ata.h ata: Add defines for the iordy bits 2007-02-09 17:39:39 -05:00
atalk.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_suni.h
atm_tcp.h
atm_zatm.h
atm.h
atmapi.h
atmarp.h [ATM]: atmarp.h needs to always include linux/types.h 2007-02-08 16:01:09 -08:00
atmbr2684.h
atmclip.h
atmdev.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h
audit.h
auto_fs4.h
auto_fs.h
auxvec.h
awe_voice.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
backlight.h
baycom.h
bcd.h
bfs_fs.h
binfmts.h
bio.h
bit_spinlock.h
bitmap.h
bitops.h [PATCH] fix various kernel-doc in header files 2007-01-26 13:51:00 -08:00
bitrev.h
blkdev.h
blkpg.h
blktrace_api.h
blockgroup_lock.h
bootmem.h
bottom_half.h
bpqether.h
buffer_head.h
bug.h
cache.h
calc64.h
capability.h
capi.h
cciss_ioctl.h
cd1400.h
cdev.h [PATCH] cdev.h: forward declarations 2007-01-30 08:26:45 -08:00
cdk.h
cdrom.h
cfag12864b.h [PATCH] drivers: add LCD support 2007-02-11 10:51:24 -08:00
chio.h
circ_buf.h
clk.h
clocksource.h
cm4000_cs.h
cn_proc.h
cobalt-nvram.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_proc.h
coda_psdev.h
coda.h
coff.h
com20020.h
compat_ioctl.h
compat.h
compiler-gcc3.h
compiler-gcc4.h
compiler-gcc.h
compiler-intel.h
compiler.h
completion.h
comstats.h
concap.h
configfs.h
connector.h
console_struct.h [PATCH] vt: refactor console SAK processing 2007-02-11 10:51:24 -08:00
console.h [PATCH] drivers/char/vc_screen.c: proper prototypes 2007-02-11 10:51:27 -08:00
consolemap.h
cpu.h
cpufreq.h
cpumask.h
cpuset.h
cramfs_fs_sb.h
cramfs_fs.h
crash_dump.h
crc16.h
crc32.h
crc32c.h
crc-ccitt.h
crypto.h [CRYPTO] api: Use structs for cipher/compression 2007-02-07 09:21:02 +11:00
cryptohash.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dcache.h
dccp.h
dcookies.h
debug_locks.h
debugfs.h
delay.h
delayacct.h
device-mapper.h
device.h devres: device resource management 2007-02-09 17:39:36 -05:00
devpts_fs.h
dio.h
dirent.h
dlm_device.h
dlm.h
dm9000.h
dm-ioctl.h
dma-mapping.h devres: device resource management 2007-02-09 17:39:36 -05:00
dmaengine.h
dmapool.h devres: device resource management 2007-02-09 17:39:36 -05:00
dmi.h
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1286.h
ds1742rtc.h
ds17287rtc.h
dtlk.h
edd.h
efi.h [PATCH] efi_set_rtc_mmss() is not __init 2007-02-01 16:17:06 -08:00
efs_dir.h
efs_fs_i.h
efs_fs_sb.h
efs_fs.h
efs_vh.h
eisa.h [EISA] EISA registration with !CONFIG_EISA 2007-02-09 16:23:18 +00:00
elevator.h
elf-em.h
elf-fdpic.h
elf.h
elfcore.h
elfnote.h
err.h
errno.h
errqueue.h
etherdevice.h
ethtool.h
eventpoll.h
ext2_fs_sb.h
ext2_fs.h
ext3_fs_i.h
ext3_fs_sb.h
ext3_fs.h
ext3_jbd.h
ext4_fs_extents.h
ext4_fs_i.h
ext4_fs_sb.h
ext4_fs.h
ext4_jbd2.h
fadvise.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd1772.h
fd.h
fddidevice.h
fdreg.h
fib_rules.h
file.h
filter.h
firmware.h
flat.h
font.h
freezer.h
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fs.h [PATCH] remove invalidate_inode_pages() 2007-02-11 10:51:31 -08:00
fsl_devices.h
fsnotify.h
fuse.h
futex.h
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h [PATCH] relax check for AIX in msdos partition table 2007-02-11 10:51:31 -08:00
getcpu.h
gfp.h [PATCH] optional ZONE_DMA: optional ZONE_DMA in the VM 2007-02-11 10:51:18 -08:00
gfs2_ondisk.h
gigaset_dev.h
hardirq.h
harrier_defs.h
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h [PATCH] use __u8 rather than u8 in userspace SIZE defines in hdreg.h 2007-01-30 08:26:45 -08:00
hdsmart.h
hid-debug.h HID: hid debug from hid-debug.h to hid layer 2007-02-05 10:00:38 +01:00
hid.h USB: ps3 controller hid quirk 2007-02-07 15:44:36 -08:00
hiddev.h
highmem.h
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htirq.h
hugetlb.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hysdn_if.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-algo-sgi.h
i2c-dev.h
i2c-id.h [ALSA] ASoC codecs: WM8750 support 2007-02-09 09:00:22 +01:00
i2c-isa.h
i2c-ocores.h
i2c-pnx.h
i2c-pxa.h
i2c.h
i2o-dev.h [PATCH] use __u8/__u32 in userspace ioctl defines for I2O 2007-01-30 08:26:45 -08:00
i2o.h
i8k.h
ibmtr.h
icmp.h
icmpv6.h
ide.h Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6 2007-02-07 19:32:36 -08:00
idr.h
if_addr.h
if_arcnet.h
if_arp.h
if_bonding.h
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h
if_ltalk.h
if_packet.h [PACKET]: Add optional checksum computation for recvmsg 2007-02-08 12:38:46 -08:00
if_plip.h
if_ppp.h
if_pppox.h
if_shaper.h
if_slip.h
if_strip.h
if_tr.h
if_tun.h
if_tunnel.h
if_vlan.h
if_wanpipe_common.h
if_wanpipe.h
if.h
igmp.h
in6.h
in_route.h
in.h
inet_diag.h
inet.h
inetdevice.h
init_task.h
init.h [PATCH] Numerous fixes to kernel-doc info in source files. 2007-02-11 10:51:32 -08:00
initrd.h
inotify.h
input.h
interrupt.h devres: device resource management 2007-02-09 17:39:36 -05:00
io.h git-libata-all: forward declare struct device 2007-02-09 17:39:38 -05:00
ioc3.h
ioc4.h
ioctl32.h
ioctl.h
ioport.h devres: device resource management 2007-02-09 17:39:36 -05:00
ioprio.h
ip6_tunnel.h
ip_mp_alg.h
ip.h
ipc.h
ipmi_msgdefs.h
ipmi_smi.h
ipmi.h
ipsec.h
ipv6_route.h
ipv6.h
ipx.h
irda.h
irq_cpustat.h
irq.h msi: Kill the msi_desc array. 2007-02-07 15:50:08 -08:00
irqflags.h
irqreturn.h
isa.h
isapnp.h
isdn_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ixjuser.h
jbd2.h
jbd.h
jffs2.h
jffs.h
jhash.h
jiffies.h
journal-head.h
joystick.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
Kbuild USB: <linux/usb_ch9.h> becomes <linux/usb/ch9.h> 2007-02-07 15:44:32 -08:00
kd.h
kdev_t.h
kernel_stat.h
kernel.h [PATCH] Common compat_sys_sysinfo 2007-02-11 10:51:32 -08:00
kernelcapi.h
kexec.h
key-ui.h
key.h
keyboard.h
keyctl.h
kfifo.h [PATCH] Numerous fixes to kernel-doc info in source files. 2007-02-11 10:51:32 -08:00
klist.h
kmalloc_sizes.h
kmod.h
kobj_map.h
kobject.h sysfs: Shadow directory support 2007-02-07 10:37:14 -08:00
kprobes.h
kref.h
ks0108.h [PATCH] drivers: add LCD support 2007-02-11 10:51:24 -08:00
kthread.h
ktime.h [PATCH] Numerous fixes to kernel-doc info in source files. 2007-02-11 10:51:32 -08:00
kvm.h
lapb.h
latency.h
lcd.h
leds.h
libata.h libata: kill ATA_ENABLE_PATA 2007-02-09 17:39:40 -05:00
libps2.h
license.h
limits.h
linkage.h
linux_logo.h
list.h [PATCH] Numerous fixes to kernel-doc info in source files. 2007-02-11 10:51:32 -08:00
llc.h
lm_interface.h
lock_dlm_plock.h
lockdep.h [PATCH] lockdep: add graph depth information to /proc/lockdep 2007-02-11 10:51:26 -08:00
log2.h [POWERPC] Add "is_power_of_2" checking to log2.h. 2007-02-07 14:03:19 +11:00
loop.h
lp.h
m41t00.h
m48t86.h
magic.h
major.h
matroxfb.h
mbcache.h
mc6821.h
mc146818rtc.h [PATCH] RTC framework driver for CMOS RTCs 2007-02-11 10:51:32 -08:00
mca-legacy.h
mca.h
memory_hotplug.h
memory.h
mempolicy.h
mempool.h
meye.h
migrate.h
mii.h
minix_fs.h
miscdevice.h
mm_inline.h [PATCH] Use ZVC for inactive and active counts 2007-02-11 10:51:17 -08:00
mm_types.h
mm.h [PATCH] simplify shmem_aops.set_page_dirty() method 2007-02-11 10:51:19 -08:00
mman.h
mmtimer.h
mmzone.h [PATCH] optional ZONE_DMA: optional ZONE_DMA in the VM 2007-02-11 10:51:18 -08:00
mnt_namespace.h
mod_devicetable.h
module.h /sys/modules/*/holders 2007-02-07 10:37:12 -08:00
moduleloader.h
moduleparam.h
mount.h [PATCH] struct vfsmount: keep mnt_count & mnt_expiry_mark away from mnt_flags 2007-02-11 10:51:25 -08:00
mpage.h
mqueue.h
mroute.h
msdos_fs.h
msg.h
msi.h msi: Make MSI useable more architectures 2007-02-07 15:50:08 -08:00
mtio.h
mutex-debug.h
mutex.h [PATCH] fix various kernel-doc in header files 2007-01-26 13:51:00 -08:00
mv643xx.h
n_r3964.h
namei.h
nbd.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_fs.h
ncp_mount.h
ncp_no.h
ncp.h
neighbour.h
net.h [S390]: Add AF_IUCV socket support 2007-02-08 13:51:54 -08:00
netdevice.h [NET]: unregister_netdevice as void 2007-02-08 12:39:06 -08:00
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter.h
netlink.h
netpoll.h
netrom.h
nfs2.h
nfs3.h
nfs4_acl.h
nfs4_mount.h
nfs4.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_fs.h
nfs_idmap.h
nfs_mount.h
nfs_page.h
nfs_xdr.h
nfs.h
nfsacl.h
nfsd_idmap.h
nls.h
nmi.h
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h Revert "[PATCH] namespaces: fix exit race by splitting exit" 2007-01-30 13:35:18 -08:00
nubus.h
numa.h
nvram.h
oom.h
oprofile.h
page-flags.h
pagemap.h [PATCH] mm: remove find_trylock_page 2007-02-09 08:06:14 -08:00
pagevec.h
param.h
parport_pc.h
parport.h
parser.h
pata_platform.h
patchkey.h
pci_hotplug.h
pci_ids.h [PATCH] Char: moxa, devids cleanup 2007-02-11 10:51:30 -08:00
pci_regs.h
pci-acpi.h
pci.h devres: device resource management 2007-02-09 17:39:36 -05:00
pcieport_if.h
percpu_counter.h
percpu.h
personality.h
pfkeyv2.h Merge branch 'HEAD' of master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6 2007-02-08 15:25:18 -08:00
pfn.h
pg.h
phonedev.h
phy.h
pid_namespace.h [PATCH] namespaces: fix task exit disaster 2007-01-30 13:40:36 -08:00
pid.h
pipe_fs_i.h
pkt_cls.h
pkt_sched.h
pktcdvd.h
platform_device.h
plist.h
pm_legacy.h
pm.h
pmu.h
pnp.h [PATCH] PNP: export pnp_bus_type 2007-02-11 10:51:28 -08:00
pnpbios.h
poison.h
poll.h
posix_acl_xattr.h
posix_acl.h
posix_types.h
posix-timers.h
ppdev.h
ppp_channel.h
ppp_defs.h
ppp-comp.h
prctl.h
preempt.h
prefetch.h
prio_tree.h
proc_fs.h
profile.h
ps2esdi.h
ptrace.h
qnx4_fs.h
qnxtypes.h
quota.h
quotaio_v1.h
quotaio_v2.h
quotaops.h
radeonfb.h
radix-tree.h
raid_class.h
ramfs.h
random.h
raw.h
rbtree.h
rcupdate.h
reboot_fixups.h
reboot.h
reciprocal_div.h
reiserfs_acl.h
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_fs.h
reiserfs_xattr.h
relay.h [PATCH] Relay: add CPU hotplug support 2007-02-11 10:51:28 -08:00
resource.h
resume-trace.h
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc-v3020.h
rtc.h
rtmutex.h [PATCH] fix various kernel-doc in header files 2007-01-26 13:51:00 -08:00
rtnetlink.h
rwsem-spinlock.h
rwsem.h
sc26198.h
scatterlist.h
scc.h
sched.h
screen_info.h
sctp.h
scx200_gpio.h
scx200.h
sdla_fr.h
sdla.h
seccomp.h
securebits.h
security.h
selection.h
selinux_netlink.h
selinux.h
sem.h
seq_file.h
seqlock.h
serial167.h
serial_8250.h
serial_core.h
serial_ip3106.h
serial_reg.h
serial.h
serialP.h
serio.h SERIO: add the sysfs driver name to all modules 2007-02-07 10:37:12 -08:00
shm.h
shmem_fs.h
signal.h
skbuff.h
slab_def.h [PATCH] optional ZONE_DMA: optional ZONE_DMA in the VM 2007-02-11 10:51:18 -08:00
slab.h
smb_fs_i.h
smb_fs_sb.h
smb_fs.h
smb_mount.h
smb.h
smbno.h
smp_lock.h
smp.h
snmp.h
socket.h [PATCH] scrub non-__GLIBC__ checks in linux/socket.h and linux/stat.h 2007-02-11 10:51:26 -08:00
sockios.h
som.h
sonet.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types_up.h
spinlock_types.h
spinlock_up.h
spinlock.h
srcu.h
stacktrace.h
stallion.h
start_kernel.h
stat.h [PATCH] scrub non-__GLIBC__ checks in linux/socket.h and linux/stat.h 2007-02-11 10:51:26 -08:00
statfs.h
stddef.h
stop_machine.h
string.h
stringify.h
superhyway.h
suspend.h
swap.h [PATCH] Drop nr_free_pages_pgdat() 2007-02-11 10:51:18 -08:00
swapops.h
synclink.h
sys.h
syscalls.h
sysctl.h [X.25]: Adds /proc/sys/net/x25/x25_forward to control forwarding. 2007-02-08 13:34:36 -08:00
sysdev.h [POWERPC] Introduce _SYSDEV_ATTR 2007-02-07 14:03:19 +11:00
sysfs.h sysfs: Shadow directory support 2007-02-07 10:37:14 -08:00
sysrq.h
sysv_fs.h
task_io_accounting_ops.h
task_io_accounting.h
taskstats_kern.h
taskstats.h
tc.h [TC] MIPS: TURBOchannel update to the driver model 2007-02-09 16:23:15 +00:00
tcp.h [TCP]: Seperate DSACK from SACK fast path 2007-02-08 12:38:49 -08:00
telephony.h
termios.h
textsearch_fsm.h
textsearch.h
tfrc.h
thread_info.h
threads.h
ticable.h
tifm.h tifm_core: add suspend/resume infrastructure for tifm devices 2007-02-04 20:54:10 +01:00
time.h [PATCH] Add const for time{spec,val}_compare arguments 2007-02-11 10:51:31 -08:00
timer.h [PATCH] fix various kernel-doc in header files 2007-01-26 13:51:00 -08:00
times.h
timex.h [PATCH] use cycle_t instead of u64 in struct time_interpolator 2007-02-11 10:51:31 -08:00
tiocl.h
tipc_config.h
tipc.h
topology.h
toshiba.h
transport_class.h
trdevice.h
tsacct_kern.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty.h [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
types.h
uaccess.h
udf_fs_i.h
udf_fs_sb.h
udf_fs.h
udp.h
ufs_fs_i.h
ufs_fs_sb.h
ufs_fs.h [PATCH] ufs: restore back support of openstep 2007-02-09 09:25:46 -08:00
uinput.h
uio.h
ultrasound.h
umem.h
un.h
unistd.h
unwind.h
usb_gadget.h
usb_gadgetfs.h USB: <linux/usb_ch9.h> becomes <linux/usb/ch9.h> 2007-02-07 15:44:32 -08:00
usb_usual.h
usb.h Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6 2007-02-07 19:23:21 -08:00
usbdevice_fs.h
user.h
utime.h
uts.h
utsname.h
vermagic.h
vfs.h
via.h
video_decoder.h
video_encoder.h
video_output.h
videodev2.h
videodev.h
videotext.h
vmalloc.h
vmstat.h [PATCH] count_vm_events-warning-fix 2007-02-11 10:51:25 -08:00
vt_buffer.h
vt_kern.h
vt.h
wait.h
wanrouter.h [NET] net/wanrouter/wanmain.c: cleanups 2007-02-08 12:38:54 -08:00
watchdog.h
wireless.h
workqueue.h
writeback.h
x25.h
xattr.h
xfrm.h [XFRM]: Extension for dynamic update of endpoint address(es) 2007-02-08 13:11:42 -08:00
yam.h
zconf.h
zlib.h
zorro_ids.h
zorro.h
zutil.h