linux/drivers/rtc
Lokesh Vutla 9c28bd07c2 drivers/rtc/rtc-omap.c: unlock and lock rtc registers before and after register writes
RTC module contains a kicker mechanism to prevent any spurious writes from
changing the register values.  This mechanism requires two MMR writes to
the KICK0 and KICK1 registers with exact data values before the kicker
lock mechanism is released.

Currently the driver release the lock in the probe and leaves it enabled
until the rtc driver removal.  This eliminates the idea of preventing
spurious writes when RTC driver is loaded.  So implement rtc lock and
unlock functions before and after register writes.

This is as advised by Paul to implement lock and unlock functions in the
driver and not to unlock and leave it in probe.  The same discussion can
be seen here:
http://www.mail-archive.com/linux-omap%40vger.kernel.org/msg111588.html

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Tero Kristo <t-kristo@ti.com>
Cc: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-04-17 09:04:02 -04:00
..
class.c drivers/rtc/class.c: initialize rtc name early 2015-04-17 09:04:01 -04:00
hctosys.c rtc: hctosys: use function name in the error log 2015-04-17 09:04:01 -04:00
interface.c drivers/rtc/interface.c: __rtc_read_time: reduce log level 2015-04-17 09:04:01 -04:00
Kconfig rtc: driver for Conexant Digicolor CX92755 on-chip RTC 2015-04-17 09:04:01 -04:00
Makefile rtc: driver for Conexant Digicolor CX92755 on-chip RTC 2015-04-17 09:04:01 -04:00
rtc-88pm80x.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-88pm860x.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ab-b5ze-s3.c drivers/rtc/rtc-ab-b5ze-s3.c: constify struct regmap_config 2015-04-17 09:04:00 -04:00
rtc-ab3100.c drivers/rtc/ab3100: Update driver to address y2038/y2106 issues 2015-04-03 08:18:25 +02:00
rtc-ab8500.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
rtc-armada38x.c drivers/rtc/rtc-armada38x: add a new RTC driver for recent mvebu SoCs 2015-02-13 21:21:43 -08:00
rtc-as3722.c drivers/rtc/rtc-as3722.c: use SIMPLE_DEV_PM_OPS macro 2014-04-03 16:21:22 -07:00
rtc-at32ap700x.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-at91rm9200.c rtc: at91rm9200: double locking bug in at91_rtc_interrupt() 2015-03-18 01:58:16 +01:00
rtc-at91rm9200.h Revert "drivers/rtc/rtc-at91rm9200.c: use a variable for storing IMR" 2013-04-05 09:36:53 -07:00
rtc-at91sam9.c rtc: at91sam9: rework wakeup and interrupt handling 2015-03-04 22:10:59 +01:00
rtc-au1xxx.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-bfin.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-bq32k.c drivers/rtc/rtc-bq32k.c: fix register value 2014-10-29 16:33:14 -07:00
rtc-bq4802.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-cmos.c rtc: remove use of seq_printf return value 2015-04-15 16:35:24 -07:00
rtc-coh901331.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-core.h
rtc-da9052.c drivers/rtc/rtc-da9052.c: register ability of alarm to wake device from suspend 2015-04-17 09:04:00 -04:00
rtc-da9055.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-da9063.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-davinci.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-dev.c rtc: Update rtc-dev to use y2038-safe time interfaces 2015-01-23 17:21:56 -08:00
rtc-digicolor.c rtc: driver for Conexant Digicolor CX92755 on-chip RTC 2015-04-17 09:04:01 -04:00
rtc-dm355evm.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds1216.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds1286.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds1302.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds1305.c rtc: remove use of seq_printf return value 2015-04-15 16:35:24 -07:00
rtc-ds1307.c rtc: ds1307: add support for mcp7940x chips 2014-12-10 17:41:15 -08:00
rtc-ds1343.c drivers/rtc/rtc-ds1343.c: add support of nvram for maxim dallas rtc ds1343 2014-08-08 15:57:19 -07:00
rtc-ds1347.c rtc: add support for maxim dallas rtc ds1347 2014-04-03 16:21:23 -07:00
rtc-ds1374.c drivers/rtc/rtc-ds1374.c: add watchdog support 2014-12-10 17:41:15 -08:00
rtc-ds1390.c rtc: rtc-ds1390: remove unnecessary OOM messages 2014-04-03 16:21:17 -07:00
rtc-ds1511.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds1553.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds1672.c rtc: fix potential race condition 2014-04-03 16:21:16 -07:00
rtc-ds1685.c drivers/rtc/rtc-ds1685.c: fix sparse warnings 2015-04-17 09:04:00 -04:00
rtc-ds1742.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds2404.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ds3232.c drivers/rtc/rtc-ds3232.c: enable ds3232 to work as wakeup source 2014-04-03 16:21:22 -07:00
rtc-ds3234.c drivers/rtc/rtc-ds3234.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-efi-platform.c rtc: ia64: allow other architectures to use EFI RTC 2014-08-08 15:57:19 -07:00
rtc-efi.c * Move efivarfs from the misc filesystem section to pseudo filesystem, 2015-01-29 19:16:40 +01:00
rtc-em3027.c drivers/rtc/rtc-em3027.c: add device tree support 2015-04-17 09:03:59 -04:00
rtc-ep93xx.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-fm3130.c drivers/rtc/rtc-fm3130.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-generic.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-hid-sensor-time.c HID: hid-sensor-hub: Extend API for async reads 2015-02-23 15:16:37 +01:00
rtc-hym8563.c drivers/rtc/rtc-hym8563.c: return clock rate even when clock is disabled 2015-04-17 09:04:01 -04:00
rtc-imxdi.c drivers/rtc/rtc-imxdi.c: add more known register bits 2015-02-13 21:21:43 -08:00
rtc-isl1208.c drivers/rtc/rtc-isl1208.c: use devm_* APIs 2013-11-13 12:09:27 +09:00
rtc-isl12022.c rtc: isl12022: deprecate use of isl in compatible string for isil 2015-02-16 17:56:02 -08:00
rtc-isl12057.c rtc: isl12057: deprecate use of isl in compatible string for isil 2015-02-16 17:56:02 -08:00
rtc-jz4740.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-lib.c rtc/lib: Provide y2038 safe rtc_tm_to_time()/rtc_time_to_tm() replacement 2014-11-21 12:00:00 -08:00
rtc-lp8788.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-lpc32xx.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-ls1x.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-m41t80.c drivers/rtc/rtc-m41t80.c: add support for MicroCrystal rv4162 2014-06-06 16:08:07 -07:00
rtc-m41t93.c drivers/rtc/rtc-m41t93.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-m41t94.c drivers/rtc/rtc-m41t94.c: remove empty function 2013-07-03 16:07:57 -07:00
rtc-m48t35.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-m48t59.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-m48t86.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-max6900.c drivers/rtc/rtc-max6900.c: remove redundant checks 2013-11-13 12:09:27 +09:00
rtc-max6902.c drivers/rtc/rtc-max6902.c: remove empty function 2013-07-03 16:07:57 -07:00
rtc-max8907.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-max8925.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-max8997.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-max8998.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-max77686.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-max77802.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-mc13xxx.c drivers/rtc/mc13xxx: Update driver to address y2038/y2106 issues 2015-04-03 08:18:26 +02:00
rtc-mcp795.c drivers/rtc: add support for Microchip MCP795 2014-06-06 16:08:08 -07:00
rtc-moxart.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-mpc5121.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-mrst.c rtc: remove use of seq_printf return value 2015-04-15 16:35:24 -07:00
rtc-msm6242.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-mv.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-mxc.c drivers/rtc/mxc: Update driver to address y2038/y2106 issues 2015-04-03 08:18:29 +02:00
rtc-nuc900.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-omap.c drivers/rtc/rtc-omap.c: unlock and lock rtc registers before and after register writes 2015-04-17 09:04:02 -04:00
rtc-opal.c rtc/tpo: Driver to support rtc and wakeup on PowerNV platform 2014-11-17 18:04:01 +11:00
rtc-palmas.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-pcap.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-pcf2123.c drivers/rtc/rtc-pcf2123.c: add support for devicetree 2015-02-13 21:21:42 -08:00
rtc-pcf2127.c drivers/rtc/rtc-pcf2127.c: replace IS_ERR and PTR_ERR with PTR_ERR_OR_ZERO 2014-01-23 16:37:00 -08:00
rtc-pcf8523.c drivers/rtc/rtc-pcf8523.c: fix month definition 2014-05-06 13:04:58 -07:00
rtc-pcf8563.c drivers/rtc/rtc-pcf8563.c: simplify return from function 2015-04-17 09:03:59 -04:00
rtc-pcf8583.c rtc: use c99 initializers in structures 2014-10-14 02:18:17 +02:00
rtc-pcf50633.c rtc: rtc-pcf50633: use devm_*() functions 2013-04-29 18:28:38 -07:00
rtc-pcf85063.c rtc: add pcf85063 support 2014-08-08 15:57:20 -07:00
rtc-pl030.c drivers/rtc/rtc-pl030.c: use devm_kzalloc() instead of kmalloc() 2013-11-13 12:09:31 +09:00
rtc-pl031.c drivers/rtc/rtc-pl03x.c: remove unnecessary amba_set_drvdata() 2013-11-13 12:09:31 +09:00
rtc-pm8xxx.c Merge branch 'platform/remove_owner' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux into driver-core-next 2014-11-03 19:53:56 -08:00
rtc-proc.c procfs: new helper - PDE_DATA(inode) 2013-04-09 14:13:32 -04:00
rtc-ps3.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-puv3.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-pxa.c drivers/rtc/rtc-pxa.c: make of_device_id array const 2014-06-06 16:08:09 -07:00
rtc-r9701.c rtc: rtc-r9701: use spi_set_drvdata() 2013-04-29 18:28:34 -07:00
rtc-rc5t583.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-rk808.c drivers/rtc/rtc-rk808.c: fix rtc time reading issue 2015-02-13 21:21:43 -08:00
rtc-rp5c01.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-rs5c313.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-rs5c348.c drivers/rtc/rtc-rs5c348.c: use dev_get_platdata() 2013-11-13 12:09:29 +09:00
rtc-rs5c372.c drivers/rtc/rtc-rs5c372.c: use %*ph to dump small buffers 2014-10-14 02:18:19 +02:00
rtc-rv3029c2.c drivers/rtc/rtc-rv3029c2.c: fix potential race condition 2014-04-03 16:21:24 -07:00
rtc-rx4581.c drivers/rtc/rtc-rx4581.c: remove empty function 2013-07-03 16:07:58 -07:00
rtc-rx8025.c rtc: rtc-rx8025: remove unnecessary OOM messages 2014-04-03 16:21:18 -07:00
rtc-rx8581.c drivers/rtc/rtc-rx8581.c: add SMBus-only adapters support 2014-01-23 16:37:00 -08:00
rtc-s3c.c drivers/rtc/rtc-s3c.c: fix failed first read of RTC time 2015-04-17 09:04:02 -04:00
rtc-s3c.h rtc: s3c: make header file local 2013-04-19 13:51:25 +02:00
rtc-s5m.c drivers/rtc/rtc-s5m.c: add support for S2MPS13 RTC 2015-04-17 09:04:01 -04:00
rtc-s35390a.c rtc: rtc-s35390a: use devm_*() functions 2013-04-29 18:28:38 -07:00
rtc-sa1100.c drivers/rtc/rtc-sa1100.c: make of_device_id array const 2014-06-06 16:08:09 -07:00
rtc-sh.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-sirfsoc.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
rtc-snvs.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
rtc-spear.c rtc: rtc-spear: remove unnecessary OOM messages 2014-04-03 16:21:18 -07:00
rtc-starfire.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-stk17ta8.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-stmp3xxx.c rtc: stmp3xxx: use optional crystal in low power states 2015-04-17 09:03:59 -04:00
rtc-sun4v.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-sun6i.c rtc: sun6i: Add sun6i RTC driver 2014-09-19 12:39:19 +02:00
rtc-sunxi.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-sysfs.c rtc: convert class code to use dev_groups 2013-07-29 13:10:58 -07:00
rtc-tegra.c rtc: remove use of seq_printf return value 2015-04-15 16:35:24 -07:00
rtc-test.c drivers/rtc/test: Update driver to address y2038/y2106 issues 2015-04-03 08:18:24 +02:00
rtc-tile.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-tps6586x.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-tps65910.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-tps80031.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-twl.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-tx4939.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-v3020.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-vr41xx.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-vt8500.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
rtc-wm831x.c drivers/rtc/rtc-wm831x.c: remove empty function 2013-07-03 16:07:59 -07:00
rtc-wm8350.c rtc: rtc-wm8350: switch to using SIMPLE_DEV_PM_OPS 2013-04-29 18:28:32 -07:00
rtc-x1205.c drivers/rtc/rtc-x1205.c: use sign_extend32() for sign extension 2015-04-17 09:03:59 -04:00
rtc-xgene.c rtc: drop owner assignment from platform_drivers 2014-10-20 16:21:31 +02:00
systohc.c drivers/rtc: Provide y2038 safe rtc_class_ops.set_mmss() replacement 2015-04-03 08:18:24 +02:00