linux/drivers/rtc
Borislav Petkov d5a1c7e3fc rtc-cmos: Add an alarm disable quirk
41c7f74242 ("rtc: Disable the alarm in the hardware (v2)") added the
functionality to disable the RTC wake alarm when shutting down the box.

However, there are at least two b0rked BIOSes we know about:

https://bugzilla.novell.com/show_bug.cgi?id=812592
https://bugzilla.novell.com/show_bug.cgi?id=805740

where, when wakeup alarm is enabled in the BIOS, the machine reboots
automatically right after shutdown, regardless of what wakeup time is
programmed.

Bisecting the issue lead to this patch so disable its functionality with
a DMI quirk only for those boxes.

Cc: Brecht Machiels <brecht@mos6581.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Rabin Vincent <rabin.vincent@stericsson.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
[jstultz: Changed variable name for clarity, added extra dmi entry]
Tested-by: Brecht Machiels <brecht@mos6581.org>
Tested-by: Borislav Petkov <bp@suse.de>
Signed-off-by: John Stultz <john.stultz@linaro.org>
2013-12-23 12:52:20 -08:00
..
class.c drivers/rtc/class: convert from Legacy pm ops to dev_pm_ops 2013-07-03 16:08:00 -07:00
hctosys.c
interface.c rtc: Keep system awake until all expired RTC timers are handled 2013-07-22 09:38:25 -07:00
Kconfig alpha: Reorganize rtc handling 2013-11-16 16:33:16 -08:00
Makefile drivers/rtc/rtc-as3722: add RTC driver 2013-11-13 12:09:31 +09: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: use dev_get_platdata() 2013-11-13 12:09:28 +09:00
rtc-ab3100.c drivers/rtc/rtc-ab3100.c: remove empty function 2013-07-03 16:07:54 -07:00
rtc-ab8500.c drivers/rtc/rtc-ab8500.c: add second resolution to rtc driver 2013-07-03 16:07:59 -07:00
rtc-as3722.c drivers/rtc/rtc-as3722: add RTC driver 2013-11-13 12:09:31 +09:00
rtc-at32ap700x.c rtc: rtc-at32ap700x: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:49 -07:00
rtc-at91rm9200.c ARM: drivers/rtc/rtc-at91rm9200.c: disable interrupts at shutdown 2013-11-21 16:42:27 -08: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: rtc-at91sam9: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:49 -07:00
rtc-au1xxx.c drivers/rtc/rtc-au1xxx.c: remove empty function 2013-07-03 16:07:54 -07:00
rtc-bfin.c rtc: rtc-bfin: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:49 -07:00
rtc-bq32k.c drivers/rtc/rtc-bq32k.c: remove empty function 2013-07-03 16:07:55 -07:00
rtc-bq4802.c drivers/rtc/rtc-bq4802.c: remove empty function 2013-07-03 16:07:54 -07:00
rtc-cmos.c rtc-cmos: Add an alarm disable quirk 2013-12-23 12:52:20 -08:00
rtc-coh901331.c rtc: rtc-coh901331: use platform_{get,set}_drvdata() 2013-07-03 16:07:55 -07:00
rtc-core.h
rtc-da9052.c drivers/rtc: Replace PTR_RET with PTR_ERR_OR_ZERO 2013-07-16 16:06:00 +09:30
rtc-da9055.c drivers/rtc/rtc-da9055.c: use dev_get_platdata() 2013-11-13 12:09:28 +09:00
rtc-davinci.c rtc: rtc-davinci: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:50 -07:00
rtc-dev.c rtc: use dev_warn()/dev_dbg()/pr_err() instead of printk() 2013-02-21 17:22:29 -08:00
rtc-dm355evm.c drivers/rtc/rtc-dm355evm.c: remove empty function 2013-07-03 16:07:53 -07:00
rtc-ds1216.c drivers/rtc/rtc-ds1216.c: use module_platform_driver_probe() 2013-07-03 16:08:00 -07:00
rtc-ds1286.c drivers/rtc/rtc-ds1286.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-ds1302.c drivers/rtc/rtc-ds1302.c: handle write protection 2013-07-03 16:07:59 -07:00
rtc-ds1305.c drivers/rtc/rtc-ds1305.c: use dev_get_platdata() 2013-11-13 12:09:28 +09:00
rtc-ds1307.c drivers/rtc/rtc-ds1307.c: change variable type to bool 2013-11-13 12:09:30 +09:00
rtc-ds1374.c drivers/rtc/rtc-ds1374.c: fix spacing related issues 2013-07-03 16:07:46 -07:00
rtc-ds1390.c drivers/rtc/rtc-ds1390.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-ds1511.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -07:00
rtc-ds1553.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -07:00
rtc-ds1672.c drivers/rtc/rtc-ds1672.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-ds1742.c drivers/rtc/rtc-ds1742.c: report to RTC core if retrieved time is invalid 2013-09-11 15:58:58 -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: use devm_* APIs 2013-04-29 18:28:36 -07:00
rtc-ds3234.c drivers/rtc/rtc-ds3234.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-efi.c drivers/rtc/rtc-efi.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-em3027.c drivers/rtc/rtc-em3027.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-ep93xx.c drivers/rtc/rtc-ep93xx.c: use dev_get_platdata() 2013-11-13 12:09:29 +09:00
rtc-fm3130.c drivers/rtc/rtc-fm3130.c: remove empty function 2013-07-03 16:07:56 -07:00
rtc-generic.c drivers/rtc/rtc-generic.c: remove empty function 2013-07-03 16:07:57 -07:00
rtc-hid-sensor-time.c tree-wide: use reinit_completion instead of INIT_COMPLETION 2013-11-15 09:32:21 +09:00
rtc-imxdi.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -07:00
rtc-isl1208.c drivers/rtc/rtc-isl1208.c: use devm_* APIs 2013-11-13 12:09:27 +09:00
rtc-isl12022.c drivers/rtc: Replace PTR_RET with PTR_ERR_OR_ZERO 2013-07-16 16:06:00 +09:30
rtc-jz4740.c rtc: rtc-jz4740: use devm_*() functions 2013-07-03 16:07:55 -07:00
rtc-lib.c
rtc-lp8788.c drivers/rtc/rtc-lp8788.c: remove empty function 2013-07-03 16:07:53 -07:00
rtc-lpc32xx.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -07:00
rtc-ls1x.c drivers/rtc/rtc-ls1x.c: remove empty function 2013-07-03 16:07:53 -07:00
rtc-m41t80.c drivers/rtc/rtc-m41t80.c: fix spacing related issue 2013-07-03 16:07:47 -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 drivers/rtc: Replace PTR_RET with PTR_ERR_OR_ZERO 2013-07-16 16:06:00 +09:30
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 drivers/rtc/rtc-max6902.c: remove empty function 2013-07-03 16:07:57 -07:00
rtc-max8907.c drivers/rtc/rtc-max8907.c: remove empty function 2013-07-03 16:07:57 -07:00
rtc-max8925.c drivers/rtc/rtc-max8925.c: remove empty function 2013-07-03 16:07:53 -07:00
rtc-max8997.c drivers/rtc/rtc-max8997.c: remove empty function 2013-07-03 16:07:57 -07:00
rtc-max8998.c For the 3.11 merge we only have one new MFD driver for the Kontron PLD. 2013-07-10 11:10:27 -07:00
rtc-max77686.c drivers/rtc/rtc-max77686.c: Fix wrong register 2013-09-11 15:58:56 -07:00
rtc-mc13xxx.c rtc: rtc-mc13xxx: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:51 -07:00
rtc-moxart.c rtc: add MOXA ART RTC driver 2013-09-11 15:58:54 -07:00
rtc-mpc5121.c drivers: clean-up prom.h implicit includes 2013-10-09 20:04:04 -05: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 drivers/rtc/rtc-msm6242.c: remove empty function 2013-07-03 16:07:53 -07:00
rtc-mv.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -07:00
rtc-mxc.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -07:00
rtc-nuc900.c drivers/rtc/rtc-nuc900.c: use NULL instead of 0 2013-09-11 15:58:57 -07:00
rtc-omap.c drivers/rtc/rtc-omap.c: remove redundant of_match_ptr 2013-11-13 12:09:30 +09:00
rtc-palmas.c drivers/rtc/rtc-palmas.c: support for backup battery charging 2013-09-11 15:58:55 -07:00
rtc-pcap.c rtc: rtc-pcap: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:51 -07:00
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: remove empty function 2013-09-11 15:58:53 -07:00
rtc-pcf8523.c drivers/rtc/rtc-pcf8523.c: remove empty function 2013-07-03 16:07:57 -07:00
rtc-pcf8563.c drivers/rtc: Replace PTR_RET with PTR_ERR_OR_ZERO 2013-07-16 16:06:00 +09:30
rtc-pcf8583.c drivers/rtc: Replace PTR_RET with PTR_ERR_OR_ZERO 2013-07-16 16:06:00 +09:30
rtc-pcf50633.c rtc: rtc-pcf50633: use devm_*() functions 2013-04-29 18:28:38 -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 rtc: rtc-pm8xxx: use devm_*() functions 2013-07-03 16:07:55 -07:00
rtc-proc.c procfs: new helper - PDE_DATA(inode) 2013-04-09 14:13:32 -04:00
rtc-ps3.c drivers/rtc/rtc-ps3.c: remove empty function 2013-07-03 16:07:58 -07:00
rtc-puv3.c drivers/rtc/rtc-puv3.c: use dev_dbg() instead of pr_debug() 2013-11-13 12:09:31 +09:00
rtc-pxa.c rtc: rtc-pxa: use devm_*() functions 2013-07-03 16:07:55 -07:00
rtc-r9701.c rtc: rtc-r9701: use spi_set_drvdata() 2013-04-29 18:28:34 -07:00
rtc-rc5t583.c rtc: rtc-rc5t583: use platform_{get,set}_drvdata() 2013-07-03 16:07:55 -07:00
rtc-rp5c01.c rtc: rtc-rp5c01: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:52 -07:00
rtc-rs5c313.c drivers/rtc/rtc-rs5c313.c: remove empty function 2013-07-03 16:07:58 -07: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: add R2221T/L variant to the driver 2013-05-07 18:38:26 -07:00
rtc-rv3029c2.c drivers/rtc/rtc-rv3029c2.c: remove empty function 2013-07-03 16:07:58 -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: use devm_*() functions 2013-07-03 16:07:55 -07:00
rtc-rx8581.c drivers/rtc/rtc-rx8581.c: remove empty function 2013-07-03 16:07:58 -07:00
rtc-s3c.c rtc: rtc-s3c: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:51 -07:00
rtc-s3c.h rtc: s3c: make header file local 2013-04-19 13:51:25 +02:00
rtc-s5m.c rtc: s5m-rtc: add real-time clock driver for s5m8767 2013-11-13 12:09:31 +09:00
rtc-s35390a.c rtc: rtc-s35390a: use devm_*() functions 2013-04-29 18:28:38 -07:00
rtc-sa1100.c rtc: rtc-sa1100: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:51 -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: remove redundant of_match_ptr 2013-11-13 12:09:30 +09:00
rtc-snvs.c drivers/rtc/rtc-snvs.c: remove redundant of_match_ptr 2013-11-13 12:09:30 +09:00
rtc-spear.c rtc: rtc-spear: remove unnecessary platform_set_drvdata() 2013-07-03 16:07:52 -07:00
rtc-starfire.c drivers/rtc/rtc-starfire.c: remove empty function 2013-07-03 16:07:58 -07:00
rtc-stk17ta8.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -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 drivers/rtc/rtc-sun4v.c: remove empty function 2013-07-03 16:07:58 -07:00
rtc-sysfs.c rtc: convert class code to use dev_groups 2013-07-29 13:10:58 -07:00
rtc-tegra.c drivers/rtc: don't check resource with devm_ioremap_resource 2013-05-18 11:57:07 +02:00
rtc-test.c rtc: rtc-test: use devm_rtc_device_register() 2013-04-29 18:28:31 -07:00
rtc-tile.c drivers/rtc/rtc-tile.c: remove empty function 2013-07-03 16:07:53 -07:00
rtc-tps6586x.c drivers/rtc/rtc-tps6586x.c: device wakeup flags correction 2013-06-12 16:29:45 -07:00
rtc-tps65910.c drivers/rtc/rtc-tps65910.c: remove unnecessary include 2013-11-13 12:09:31 +09:00
rtc-tps80031.c drivers/rtc/rtc-tps80031.c: remove empty function 2013-07-03 16:07:58 -07:00
rtc-twl.c drivers/rtc/rtc-twl.c: fix: rtcX/wakealarm attribute isn't created 2013-07-31 14:41:03 -07:00
rtc-tx4939.c rtc: simplify devm_request_mem_region/devm_ioremap 2013-09-11 15:58:59 -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: fix checkpatch warnings 2013-11-13 12:09:28 +09:00
rtc-vt8500.c drivers/rtc/rtc-vt8500.c: remove redundant of_match_ptr 2013-11-13 12:09:30 +09: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: fix checkpatch issues 2013-07-03 16:07:48 -07:00
systohc.c NTP: Add a CONFIG_RTC_SYSTOHC configuration 2013-01-15 18:16:06 -08:00