alistair23-linux/drivers/rtc
Sanchayan Maity 7654e9d4fd drivers/rtc/rtc-snvs: fix suspend/resume
The alarm interrupt handler also reads registers which are part of SNVS
and need clocks enabled.  However, the resume function is called after
IRQ's have been enabled, hence this leads to a abort:

    Unhandled fault: external abort on non-linefetch (0x1008) at 0x908c604c
    Internal error: : 1008 [#1] ARM
    Modules linked in:
    CPU: 0 PID: 421 Comm: sh Not tainted 3.18.0-rc5-00135-g0689c67-dirty #1592
    task: 8e03e800 ti: 8cad8000 task.ti: 8cad8000
    PC is at snvs_rtc_irq_handler+0x14/0x74
    LR is at handle_irq_event_percpu+0x3c/0x144

Fix this by using the .{suspend/resume}_noirq callbacks instead of
.{suspend/resume} .

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Cc: Shawn Guo <shawn.guo@linaro.org>
Cc: Stefan Agner <stefan@agner.ch>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2014-12-10 17:41:16 -08:00
..
class.c rtc: Update suspend/resume timing to use 64bit time 2014-11-21 12:00:00 -08:00
hctosys.c
interface.c drivers/rtc/interface.c: check the validation of rtc_time in __rtc_read_time 2014-12-10 17:41:13 -08:00
Kconfig drivers/rtc/rtc-ds1374.c: add watchdog support 2014-12-10 17:41:15 -08:00
Makefile rtc: add driver for Maxim 77802 PMIC Real-Time-Clock 2014-10-14 02:18:19 +02:00
rtc-88pm80x.c drivers/rtc/rtc-88pm80x.c: use dev_get_platdata() 2013-11-13 12:09:28 +09:00
rtc-88pm860x.c drivers/rtc/rtc-88pm860x.c: add missing of_node_put() 2014-06-06 16:08:07 -07:00
rtc-ab3100.c
rtc-ab8500.c
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: rtc-at32ap700x: remove unnecessary OOM messages 2014-04-03 16:21:17 -07:00
rtc-at91rm9200.c rtc: rtc-at91rm9200: fix infinite wait for ACKUPD irq 2014-06-06 16:08:08 -07:00
rtc-at91rm9200.h
rtc-at91sam9.c rtc: at91sam9: use clk API instead of relying on AT91_SLOW_CLOCK 2014-11-13 16:08:01 +01:00
rtc-au1xxx.c MIPS: Alchemy: introduce helpers to access SYS register block. 2014-07-30 13:53:28 +02:00
rtc-bfin.c drivers/rtc/rtc-bfin.c: do not abort when requesting irq fails 2014-06-06 16:08:08 -07:00
rtc-bq32k.c drivers/rtc/rtc-bq32k.c: fix register value 2014-10-29 16:33:14 -07:00
rtc-bq4802.c
rtc-cmos.c rtc-cmos: fix wakeup from S5 without CONFIG_PM_SLEEP 2014-10-14 02:18:19 +02:00
rtc-coh901331.c rtc: rtc-coh901331: use devm_ioremap_resource() 2014-04-03 16:21:18 -07:00
rtc-core.h
rtc-da9052.c drivers/rtc/rtc-da9052.c: ALARM causes interrupt storm 2014-06-06 16:08:07 -07:00
rtc-da9055.c drivers/rtc/rtc-da9055.c: remove use of regmap_irq_get_virq() 2014-04-03 16:21:24 -07:00
rtc-da9063.c mfd: da9063: Add support for AD silicon variant 2014-07-28 08:09:25 +01:00
rtc-davinci.c rtc: rtc-davinci: use devm_ioremap_resource() 2014-04-03 16:21:18 -07:00
rtc-dev.c
rtc-dm355evm.c
rtc-ds1216.c
rtc-ds1286.c
rtc-ds1302.c
rtc-ds1305.c rtc: fix potential race condition 2014-04-03 16:21:16 -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: treewide: remove excess rtc_device validation 2014-04-03 16:21:24 -07:00
rtc-ds1553.c rtc: treewide: remove excess rtc_device validation 2014-04-03 16:21:24 -07:00
rtc-ds1672.c rtc: fix potential race condition 2014-04-03 16:21:16 -07:00
rtc-ds1742.c drivers/rtc/rtc-ds1742.c: revert "drivers/rtc/rtc-ds1742.c: remove redundant of_match_ptr() helper" 2014-08-08 15:57:19 -07:00
rtc-ds2404.c drivers/rtc/rtc-ds2404.c: use dev_get_platdata() 2013-11-13 12:09:29 +09: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
rtc-efi-platform.c rtc: ia64: allow other architectures to use EFI RTC 2014-08-08 15:57:19 -07:00
rtc-efi.c Merge branch 'next' into efi-next-merge 2014-10-03 22:15:56 +01:00
rtc-em3027.c
rtc-ep93xx.c drivers/rtc/rtc-ep93xx.c: use dev_get_platdata() 2013-11-13 12:09:29 +09:00
rtc-fm3130.c
rtc-generic.c
rtc-hid-sensor-time.c tree-wide: use reinit_completion instead of INIT_COMPLETION 2013-11-15 09:32:21 +09:00
rtc-hym8563.c drivers/rtc/rtc-hym8563.c: add optional clock-output-names property 2014-06-06 16:08:08 -07:00
rtc-imxdi.c drivers/rtc/rtc-imxdi.c: check the return value from clk_prepare_enable() 2014-04-03 16:21:16 -07:00
rtc-isl1208.c drivers/rtc/rtc-isl1208.c: use devm_* APIs 2013-11-13 12:09:27 +09:00
rtc-isl12022.c rtc: make of_device_ids const 2014-10-14 02:18:17 +02:00
rtc-isl12057.c drivers/rtc/rtc-isl12057.c: report error code upon failure in dev_err() calls 2014-12-10 17:41:16 -08:00
rtc-jz4740.c rtc: rtc-jz4740: use devm_ioremap_resource() 2014-04-03 16:21:19 -07: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-lpc32xx.c rtc: rtc-lpc32xx: remove unnecessary OOM messages 2014-04-03 16:21:18 -07:00
rtc-ls1x.c
rtc-m41t80.c drivers/rtc/rtc-m41t80.c: add support for MicroCrystal rv4162 2014-06-06 16:08:07 -07:00
rtc-m41t93.c
rtc-m41t94.c
rtc-m48t35.c
rtc-m48t59.c drivers/rtc/rtc-m48t59.c: use dev_get_platdata() 2013-11-13 12:09:29 +09:00
rtc-m48t86.c drivers/rtc/rtc-m48t86.c: use dev_get_platdata() 2013-11-13 12:09:29 +09:00
rtc-max6900.c drivers/rtc/rtc-max6900.c: remove redundant checks 2013-11-13 12:09:27 +09:00
rtc-max6902.c
rtc-max8907.c rtc: max8907: weekday encoding fixes 2014-01-23 16:37:00 -08:00
rtc-max8925.c
rtc-max8997.c
rtc-max8998.c
rtc-max77686.c rtc: max77686: Use ffs() to calculate tm_wday 2014-10-14 02:18:19 +02:00
rtc-max77802.c rtc: add driver for Maxim 77802 PMIC Real-Time-Clock 2014-10-14 02:18:19 +02:00
rtc-mc13xxx.c drivers/rtc/rtc-mc13xxx.c: fix potential race condition 2014-04-03 16:21:23 -07:00
rtc-mcp795.c drivers/rtc: add support for Microchip MCP795 2014-06-06 16:08:08 -07:00
rtc-moxart.c rtc: rtc-moxart: remove unnecessary OOM messages 2014-04-03 16:21:17 -07:00
rtc-mpc5121.c rtc: make of_device_ids const 2014-10-14 02:18:17 +02:00
rtc-mrst.c drivers/rtc/rtc-mrst.c: remove redundant dev_set_drvdata 2013-11-13 12:09:27 +09:00
rtc-msm6242.c
rtc-mv.c rtc: rtc-mv: make of_device_id array const 2014-06-06 16:08:08 -07:00
rtc-mxc.c drivers/rtc/rtc-mxc.c: check the return value from clk_prepare_enable() 2014-01-23 16:36:59 -08:00
rtc-nuc900.c rtc: rtc-nuc900: remove unnecessary OOM messages 2014-04-03 16:21:17 -07:00
rtc-omap.c rtc: omap: drop vendor-prefix from power-controller dt property 2014-12-10 17:41:16 -08:00
rtc-palmas.c rtc: rtc-palmas: make of_device_id array const 2014-06-06 16:08:08 -07:00
rtc-pcap.c
rtc-pcf2123.c drivers/rtc/rtc-pcf2123.c: use dev_get_platdata() 2013-11-13 12:09:29 +09: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 rtc: pcf8563: clear expired alarm at boot time 2014-12-10 17:41:15 -08:00
rtc-pcf8583.c rtc: use c99 initializers in structures 2014-10-14 02:18:17 +02:00
rtc-pcf50633.c
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 drivers/rtc/rtc-pm8xxx.c: rework to support pm8941 rtc 2014-10-29 16:33:14 -07:00
rtc-proc.c
rtc-ps3.c
rtc-puv3.c drivers/rtc/rtc-puv3.c: remove "&dev->" for typo issue MIME-Version: 1.0 2014-06-20 08:22:39 +08: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-rc5t583.c
rtc-rk808.c RTC: RK808: add RTC driver for RK808 2014-10-14 02:18:18 +02:00
rtc-rp5c01.c
rtc-rs5c313.c
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
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 initialization failure without rtc source clock 2014-10-29 16:33:14 -07:00
rtc-s3c.h
rtc-s5m.c drivers/rtc/rtc-s5m.c: re-add support for devices without irq specified 2014-08-29 16:28:16 -07:00
rtc-s35390a.c
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 drivers/rtc/rtc-sh.c: use dev_get_platdata() 2013-11-13 12:09:30 +09:00
rtc-sirfsoc.c drivers/rtc/rtc-sirfsoc.c: replace local_irq_disable by spin_lock_irq for SMP safety 2014-12-10 17:41:15 -08:00
rtc-snvs.c drivers/rtc/rtc-snvs: fix suspend/resume 2014-12-10 17:41:16 -08:00
rtc-spear.c rtc: rtc-spear: remove unnecessary OOM messages 2014-04-03 16:21:18 -07:00
rtc-starfire.c
rtc-stk17ta8.c rtc: treewide: remove excess rtc_device validation 2014-04-03 16:21:24 -07:00
rtc-stmp3xxx.c drivers/rtc/rtc-stmp3xxx.c: remove redundant of_match_ptr 2013-11-13 12:09:30 +09:00
rtc-sun4v.c
rtc-sun6i.c rtc: sun6i: Add sun6i RTC driver 2014-09-19 12:39:19 +02:00
rtc-sunxi.c rtc: sunxi: change compatibles 2014-04-03 16:21:21 -07:00
rtc-sysfs.c
rtc-tegra.c
rtc-test.c rtc: fix potential race condition 2014-04-03 16:21:16 -07:00
rtc-tile.c
rtc-tps6586x.c
rtc-tps65910.c drivers/rtc/rtc-tps65910.c: fix potential NULL-pointer dereference 2014-08-08 15:57:20 -07:00
rtc-tps80031.c
rtc-twl.c drivers/rtc/rtc-twl.c: use devm_*() functions 2014-01-23 16:36:59 -08:00
rtc-tx4939.c rtc: treewide: remove excess rtc_device validation 2014-04-03 16:21:24 -07:00
rtc-v3020.c drivers/rtc/rtc-v3020.c: use dev_get_platdata() 2013-11-13 12:09:30 +09:00
rtc-vr41xx.c drivers/rtc/rtc-vr41xx.c: use devm_*() functions 2014-01-23 16:36:59 -08:00
rtc-vt8500.c rtc: rtc-vt8500: use devm_ioremap_resource() 2014-04-03 16:21:19 -07:00
rtc-wm831x.c
rtc-wm8350.c
rtc-x1205.c rtc: fix potential race condition 2014-04-03 16:21:16 -07:00
rtc-xgene.c drivers/rtc: add APM X-Gene SoC RTC driver 2014-06-06 16:08:06 -07:00
systohc.c