linux/drivers/rtc
Kim, Milo 1430e17844 drivers/rtc/rtc-tps65910.c: fix invalid pointer access on _remove()
The tps65910_rtc data is registered as the platform driver data in
_probe(= ).  Therefore the tps65910_rtc should be used on unregistering
the rtc device.  And device pointer should be retrieved from the
platform_device structure.

This patch fixes the below oops:

 Unable to handle kernel NULL pointer dereference at virtual address 00000008
 Modules linked in: rtc_tps65910(-)
 CPU: 0    Not tainted  (3.7.0-rc7-next-20121128-g6b1f974-dirty #7)
 PC is at tps65910_rtc_alarm_irq_enable+0x20/0x2c [rtc_tps65910]
     (tps65910_rtc_alarm_irq_enable+0x20/0x2c [rtc_tps65910])
     (tps65910_rtc_remove+0x18/0x28 [rtc_tps65910])
     (platform_drv_remove+0x18/0x1c)
     (__device_release_driver+0x70/0xcc)
     (driver_detach+0xb4/0xb8)
     (bus_remove_driver+0x7c/0xc0)
     (sys_delete_module+0x148/0x21c)

Signed-off-by: Milo(Woogyom) Kim <milo.kim@ti.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-11-30 08:51:18 -08:00
..
class.c rtc_sysfs_show_hctosys(): display 0 if resume failed 2012-10-06 03:05:04 +09:00
hctosys.c rtc_sysfs_show_hctosys(): display 0 if resume failed 2012-10-06 03:05:04 +09:00
interface.c RTC: Avoid races between RTC alarm wakeup and suspend. 2012-08-08 20:49:16 +02:00
Kconfig rtc: kconfig: fix RTC_INTF defaults connected to RTC_CLASS 2012-10-11 08:50:16 +09:00
Makefile rtc: rc5t583: add ricoh rc5t583 RTC driver 2012-10-06 03:05:03 +09:00
rtc-88pm80x.c rtc/rtc-88pm80x: remove unneed devm_kfree 2012-07-31 18:42:50 -07:00
rtc-88pm860x.c mfd: 88pm860x: Device tree support 2012-10-02 11:43:13 +02:00
rtc-ab3100.c
rtc-ab8500.c drivers/rtc/rtc-ab8500.c: Revoke Device Tree enablement 2012-09-20 12:32:34 +02:00
rtc-at32ap700x.c
rtc-at91rm9200.c ARM: at91: fix new build errors 2012-07-04 13:56:48 +02:00
rtc-at91sam9.c drivers/rtc/rtc-at91sam9.c: use module_platform_driver() macro 2012-10-06 03:05:02 +09:00
rtc-au1xxx.c
rtc-bfin.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-bq32k.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-bq4802.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-cmos.c RTC: Avoid races between RTC alarm wakeup and suspend. 2012-08-08 20:49:16 +02:00
rtc-coh901331.c drivers/rtc/rtc-coh901331.c: use clk_prepare_enable() and clk_disable_unprepare() 2012-10-06 03:05:04 +09:00
rtc-core.h
rtc-da9052.c rtc/rtc-da9052: remove unneed devm_kfree call 2012-07-30 17:25:18 -07:00
rtc-davinci.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-dev.c
rtc-dm355evm.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1216.c
rtc-ds1286.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1302.c
rtc-ds1305.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-ds1307.c rtc: ds1307: add trickle charger support 2012-05-29 16:22:33 -07:00
rtc-ds1374.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ds1390.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-ds1511.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-ds1553.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-ds1672.c drivers/rtc/rtc-ds1672.c: convert struct i2c_msg initialization to C99 format 2012-10-06 03:05:05 +09:00
rtc-ds1742.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds2404.c rtc: add Dallas DS2404 driver 2012-10-06 03:05:01 +09:00
rtc-ds3232.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ds3234.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-efi.c drivers/rtc/rtc-efi.c: fix section mismatch warning 2012-04-12 13:12:12 -07:00
rtc-em3027.c drivers/rtc/rtc-em3027.c: convert struct i2c_msg initialization to C99 format 2012-10-06 03:05:07 +09:00
rtc-ep93xx.c drivers/rtc/rtc-ep93xx.c: convert to use module_platform_driver() 2012-05-29 16:22:33 -07:00
rtc-fm3130.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-generic.c
rtc-imxdi.c drivers/rtc/rtc-imxdi.c: add missing spin lock initialization 2012-10-25 14:37:53 -07:00
rtc-isl1208.c drivers/rtc/rtc-isl1208.c: convert struct i2c_msg initialization to C99 format 2012-10-06 03:05:06 +09:00
rtc-isl12022.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-jz4740.c drivers/rtc/rtc-jz4740.c: fix IRQ error check 2012-10-06 03:05:03 +09:00
rtc-lib.c rtc: Initialized rtc_time->tm_isdst 2011-08-26 17:26:35 -07:00
rtc-lpc32xx.c drivers/rtc/rtc-lpc32xx.c: add device tree support 2012-05-29 16:22:34 -07:00
rtc-ls1x.c MIPS: add RTC support for loongson1B 2012-03-23 16:58:39 -07:00
rtc-m41t80.c drivers/rtc/rtc-m41t80.c: remove disabled alarm functionality 2012-10-06 03:05:07 +09:00
rtc-m41t93.c drivers/rtc/rtc-m41t93.c: don't let get_time() reset M41T93_FLAG_OF 2012-05-29 16:22:33 -07:00
rtc-m41t94.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-m48t35.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-m48t59.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-m48t86.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-max6900.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-max6902.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-max8907.c rtc: add MAX8907 RTC driver 2012-10-06 03:05:02 +09:00
rtc-max8925.c mfd: Transfer rtc max8925 irq from MFD defined resources 2012-07-09 00:16:10 +02:00
rtc-max8998.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-mc13xxx.c rtc/mc13xxx: add support for the rtc in the mc34708 pmic 2012-07-30 17:25:18 -07:00
rtc-mpc5121.c rtc: Fix possible null pointer dereference in rtc-mpc5121.c 2012-04-26 11:17:01 +02:00
rtc-mrst.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-msm6242.c
rtc-mv.c ARM: Kirkwood: Replace mrvl with marvell 2012-07-25 17:06:23 +02:00
rtc-mxc.c rtc: rtc-mxc: convert to module_platform_driver 2012-10-06 03:05:04 +09:00
rtc-nuc900.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-omap.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-pcap.c
rtc-pcf2123.c drivers/rtc/rtc-pcf2123.c: initialize dynamic sysfs attributes 2012-08-21 16:45:03 -07:00
rtc-pcf8563.c drivers/rtc/rtc-pcf8563.c: convert struct i2c_msg initialization to C99 format 2012-10-06 03:05:06 +09:00
rtc-pcf8583.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-pcf50633.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-pl030.c Merge branch 'amba' of git://git.linaro.org/people/rmk/linux-arm 2012-03-23 17:36:29 -07:00
rtc-pl031.c rtc: pl031: fix up IRQ flags 2012-07-30 17:25:18 -07:00
rtc-pm8xxx.c drivers/rtc/rtc-pm8xxx.c: make pm8xxx_rtc_pm_ops static 2012-03-23 16:58:39 -07:00
rtc-proc.c rtc-proc: permit the /proc/driver/rtc device to use other devices 2012-10-06 03:05:01 +09:00
rtc-ps3.c
rtc-puv3.c rtc-puv3: solve section mismatch in rtc-puv3.c 2012-01-10 10:29:42 +08:00
rtc-pxa.c RTC: add DT bindings to pxa-rtc 2012-08-16 16:13:07 +08:00
rtc-r9701.c drivers/rtc/rtc-r9701.c: check that r9701_set_datetime() succeeded 2012-07-30 17:25:18 -07:00
rtc-rc5t583.c rtc: rc5t583: add ricoh rc5t583 RTC driver 2012-10-06 03:05:03 +09:00
rtc-rp5c01.c
rtc-rs5c313.c
rtc-rs5c348.c drivers/rtc/rtc-rs5c348.c: fix hour decoding in 12-hour mode 2012-08-21 16:45:03 -07:00
rtc-rs5c372.c drivers/rtc/rtc-rs5c372.c: convert struct i2c_msg initialization to C99 format 2012-10-06 03:05:06 +09:00
rtc-rv3029c2.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-rx8025.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-rx8581.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-s3c.c drivers/rtc/rtc-s3c.c: fix return value in s3c_rtc_probe() 2012-10-06 03:05:04 +09:00
rtc-s35390a.c drivers/rtc/rtc-s35390a.c: add wakealarm support for rtc-s35390A rtc chip 2012-10-06 03:05:08 +09:00
rtc-sa1100.c ARM: cleanups of io includes 2012-03-29 18:02:10 -07:00
rtc-sh.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-snvs.c rtc: snvs: add Freescale rtc-snvs driver 2012-10-06 03:05:01 +09:00
rtc-spear.c drivers/rtc/rtc-spear.c: fix several error checks 2012-10-06 03:05:03 +09:00
rtc-starfire.c
rtc-stk17ta8.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-stmp3xxx.c rtc: stmp3xxx: Add simple binding for the stmp3xxx-rtc 2012-07-03 13:22:36 +08:00
rtc-sun4v.c
rtc-sysfs.c rtc_sysfs_show_hctosys(): display 0 if resume failed 2012-10-06 03:05:04 +09:00
rtc-tegra.c drivers/rtc/rtc-tegra.c: clean up probe/remove routines 2012-05-29 16:22:34 -07:00
rtc-test.c
rtc-tile.c
rtc-tps65910.c drivers/rtc/rtc-tps65910.c: fix invalid pointer access on _remove() 2012-11-30 08:51:18 -08:00
rtc-twl.c drivers/rtc/rtc-twl.c: ensure all interrupts are disabled during probe 2012-09-17 15:00:38 -07:00
rtc-tx4939.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-v3020.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-vr41xx.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-vt8500.c rtc: vt8500: Add devicetree support for vt8500-rtc 2012-09-21 19:23:55 +12:00
rtc-wm831x.c rtc: wm831x: Feed the write counter into device_add_randomness() 2012-07-19 10:38:31 -04:00
rtc-wm8350.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-x1205.c drivers/rtc/rtc-x1205.c: convert struct i2c_msg initialization to C99 format 2012-10-06 03:05:05 +09:00