![David Brownell](/assets/img/avatar_default.png)
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>
41 lines
1.4 KiB
Makefile
41 lines
1.4 KiB
Makefile
#
|
|
# Makefile for RTC class/drivers.
|
|
#
|
|
|
|
ifeq ($(CONFIG_RTC_DEBUG),y)
|
|
EXTRA_CFLAGS += -DDEBUG
|
|
endif
|
|
|
|
obj-$(CONFIG_RTC_LIB) += rtc-lib.o
|
|
obj-$(CONFIG_RTC_HCTOSYS) += hctosys.o
|
|
obj-$(CONFIG_RTC_CLASS) += rtc-core.o
|
|
rtc-core-y := class.o interface.o
|
|
|
|
obj-$(CONFIG_RTC_INTF_SYSFS) += rtc-sysfs.o
|
|
obj-$(CONFIG_RTC_INTF_PROC) += rtc-proc.o
|
|
obj-$(CONFIG_RTC_INTF_DEV) += rtc-dev.o
|
|
|
|
obj-$(CONFIG_RTC_DRV_CMOS) += rtc-cmos.o
|
|
obj-$(CONFIG_RTC_DRV_X1205) += rtc-x1205.o
|
|
obj-$(CONFIG_RTC_DRV_ISL1208) += rtc-isl1208.o
|
|
obj-$(CONFIG_RTC_DRV_TEST) += rtc-test.o
|
|
obj-$(CONFIG_RTC_DRV_DS1307) += rtc-ds1307.o
|
|
obj-$(CONFIG_RTC_DRV_DS1672) += rtc-ds1672.o
|
|
obj-$(CONFIG_RTC_DRV_DS1742) += rtc-ds1742.o
|
|
obj-$(CONFIG_RTC_DRV_OMAP) += rtc-omap.o
|
|
obj-$(CONFIG_RTC_DRV_PCF8563) += rtc-pcf8563.o
|
|
obj-$(CONFIG_RTC_DRV_PCF8583) += rtc-pcf8583.o
|
|
obj-$(CONFIG_RTC_DRV_RS5C372) += rtc-rs5c372.o
|
|
obj-$(CONFIG_RTC_DRV_S3C) += rtc-s3c.o
|
|
obj-$(CONFIG_RTC_DRV_RS5C348) += rtc-rs5c348.o
|
|
obj-$(CONFIG_RTC_DRV_M48T86) += rtc-m48t86.o
|
|
obj-$(CONFIG_RTC_DRV_DS1553) += rtc-ds1553.o
|
|
obj-$(CONFIG_RTC_DRV_EP93XX) += rtc-ep93xx.o
|
|
obj-$(CONFIG_RTC_DRV_SA1100) += rtc-sa1100.o
|
|
obj-$(CONFIG_RTC_DRV_VR41XX) += rtc-vr41xx.o
|
|
obj-$(CONFIG_RTC_DRV_PL031) += rtc-pl031.o
|
|
obj-$(CONFIG_RTC_DRV_MAX6902) += rtc-max6902.o
|
|
obj-$(CONFIG_RTC_DRV_V3020) += rtc-v3020.o
|
|
obj-$(CONFIG_RTC_DRV_AT91RM9200)+= rtc-at91rm9200.o
|
|
obj-$(CONFIG_RTC_DRV_SH) += rtc-sh.o
|