linux/drivers/rtc
Logan Gunthorpe d5ed9177f6 rtc: utilize new cdev_device_add helper function
Mostly straightforward, but we had to remove the rtc_dev_add/del_device
functions as they split up the cdev_add and the device_add.

Doing this also revealed that there was likely another subtle bug:
seeing cdev_add was done after device_register, the cdev probably
was not ready before device_add when the uevent occurs. This would
race with userspace, if it tried to use the device directly after
the uevent. This is fixed just by using the new helper function.

Another weird thing is this driver would, in some error cases, call
cdev_add() without calling cdev_init. This patchset corrects this
by avoiding calling cdev_add if the devt is not set.

Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-03-21 06:44:33 +01:00
..
class.c rtc: utilize new cdev_device_add helper function 2017-03-21 06:44:33 +01:00
hctosys.c
interface.c ktime: Cleanup ktime_set() usage 2016-12-25 17:21:22 +01:00
Kconfig RTC for 4.11 2017-02-27 19:59:21 -08:00
Makefile rtc: add STM32 RTC driver 2017-01-13 01:40:31 +01:00
rtc-88pm80x.c
rtc-88pm860x.c
rtc-ab3100.c
rtc-ab8500.c
rtc-ab-b5ze-s3.c
rtc-abx80x.c
rtc-ac100.c
rtc-armada38x.c rtc: armada38x: Add support for Armada 7K/8K 2017-02-21 23:21:30 +01:00
rtc-as3722.c
rtc-asm9260.c
rtc-at32ap700x.c
rtc-at91rm9200.c
rtc-at91rm9200.h
rtc-at91sam9.c
rtc-au1xxx.c rtc: constify rtc_class_ops structures 2017-01-11 17:23:06 +01:00
rtc-bfin.c rtc: constify rtc_class_ops structures 2017-01-11 17:23:06 +01:00
rtc-bq32k.c rtc: bq32000: add support to enable disable the trickle charge FET bypass 2017-02-01 12:44:23 +01:00
rtc-bq4802.c
rtc-cmos.c RTC for 4.10 2016-12-18 18:18:03 -08:00
rtc-coh901331.c
rtc-core.h rtc: utilize new cdev_device_add helper function 2017-03-21 06:44:33 +01:00
rtc-da9052.c
rtc-da9055.c
rtc-da9063.c
rtc-davinci.c
rtc-dev.c rtc: utilize new cdev_device_add helper function 2017-03-21 06:44:33 +01:00
rtc-digicolor.c
rtc-dm355evm.c rtc: constify rtc_class_ops structures 2017-01-11 17:23:06 +01:00
rtc-ds1216.c
rtc-ds1286.c
rtc-ds1302.c
rtc-ds1305.c
rtc-ds1307.c rtc: ds1307: Add ACPI support 2016-12-19 00:59:07 +01:00
rtc-ds1343.c
rtc-ds1347.c
rtc-ds1374.c
rtc-ds1390.c
rtc-ds1511.c
rtc-ds1553.c
rtc-ds1672.c
rtc-ds1685.c
rtc-ds1742.c
rtc-ds2404.c
rtc-ds3232.c rtc: ds3232: Call device_init_wakeup before device_register 2017-02-24 11:14:53 +01:00
rtc-efi-platform.c
rtc-efi.c
rtc-em3027.c
rtc-ep93xx.c
rtc-fm3130.c
rtc-gemini.c rtc: gemini: Add device tree probing 2017-01-24 18:45:05 +01:00
rtc-generic.c
rtc-hid-sensor-time.c
rtc-hym8563.c
rtc-imxdi.c rtc: constify rtc_class_ops structures 2017-01-11 17:23:06 +01:00
rtc-isl1208.c
rtc-isl12022.c
rtc-jz4740.c rtc: jz4740: make the driver buildable as a module again 2017-01-26 23:03:21 +01:00
rtc-lib.c
rtc-lp8788.c
rtc-lpc24xx.c
rtc-lpc32xx.c
rtc-ls1x.c rtc: constify rtc_class_ops structures 2017-01-11 17:23:06 +01:00
rtc-m41t80.c
rtc-m41t93.c
rtc-m41t94.c
rtc-m48t35.c
rtc-m48t59.c
rtc-m48t86.c rtc: m48t86: remove unused platform_data 2017-02-21 21:23:13 +01:00
rtc-max6900.c
rtc-max6902.c
rtc-max6916.c
rtc-max8907.c
rtc-max8925.c
rtc-max8997.c
rtc-max8998.c
rtc-max77686.c
rtc-mc13xxx.c
rtc-mc146818-lib.c
rtc-mcp795.c rtc: mcp795: add alarm support. 2017-01-11 17:23:04 +01:00
rtc-moxart.c
rtc-mpc5121.c
rtc-mrst.c
rtc-msm6242.c
rtc-mt6397.c
rtc-mv.c
rtc-mxc.c rtc: constify rtc_class_ops structures 2017-01-11 17:23:06 +01:00
rtc-nuc900.c
rtc-omap.c pinctrl: Widen the generic pinconf argument from 16 to 24 bits 2017-01-26 15:22:32 +01:00
rtc-opal.c
rtc-palmas.c
rtc-pcap.c
rtc-pcf2123.c
rtc-pcf2127.c rtc: pcf2127: bulk read only date and time registers. 2017-02-23 18:38:54 +01:00
rtc-pcf8523.c
rtc-pcf8563.c
rtc-pcf8583.c
rtc-pcf50633.c
rtc-pcf85063.c
rtc-pic32.c
rtc-pl030.c
rtc-pl031.c
rtc-pm8xxx.c
rtc-proc.c
rtc-ps3.c
rtc-puv3.c
rtc-pxa.c
rtc-r7301.c rtc: add support for EPSON TOYOCOM RTC-7301SF/DG 2016-12-19 00:59:21 +01:00
rtc-r9701.c
rtc-rc5t583.c
rtc-rk808.c
rtc-rp5c01.c
rtc-rs5c313.c
rtc-rs5c348.c
rtc-rs5c372.c
rtc-rv3029c2.c
rtc-rv8803.c
rtc-rx4581.c
rtc-rx6110.c
rtc-rx8010.c rtc: rx8010: change lock mechanism 2017-01-04 23:39:15 +01:00
rtc-rx8025.c
rtc-rx8581.c
rtc-s3c.c
rtc-s3c.h
rtc-s5m.c
rtc-s35390a.c
rtc-sa1100.c
rtc-sa1100.h
rtc-sh.c rtc: constify rtc_class_ops structures 2017-01-11 17:23:06 +01:00
rtc-sirfsoc.c
rtc-snvs.c rtc: snvs: add a missing write sync 2017-02-01 12:44:24 +01:00
rtc-spear.c
rtc-st-lpc.c
rtc-starfire.c
rtc-stk17ta8.c
rtc-stm32.c rtc: stm32: fix comparison warnings 2017-01-23 00:47:15 +01:00
rtc-stmp3xxx.c
rtc-sun4v.c
rtc-sun6i.c rtc: sun6i: Fix return value check in sun6i_rtc_clk_init() 2017-02-12 00:34:31 +01:00
rtc-sunxi.c
rtc-sysfs.c
rtc-tegra.c rtc: tegra: Implement clock handling 2017-01-23 00:46:55 +01:00
rtc-test.c
rtc-tile.c
rtc-tps6586x.c
rtc-tps65910.c rtc: tps65910: use 'unsigned int' instead of 'unsigned' in arguments 2017-01-10 01:32:51 +01:00
rtc-tps80031.c
rtc-twl.c
rtc-tx4939.c
rtc-v3020.c
rtc-vr41xx.c
rtc-vt8500.c
rtc-wm831x.c
rtc-wm8350.c
rtc-x1205.c
rtc-xgene.c
rtc-zynqmp.c
systohc.c