linux/drivers/rtc
Anatolij Gustschin 3f5ec5e06d drivers/rtc/rtc-ds1307.c: fix BUG shown with lock debugging enabled
Add struct bin_attribute initialization to fix the following bug:

rtc-ds1307 3-0068: rtc core: registered ds1307 as rtc0
BUG: key cfb14fcc not in .data!
------------[ cut here ]------------
WARNING: at kernel/lockdep.c:2986 sysfs_add_file_mode+0x84/0xdc()
Modules linked in:
[<c0018d94>] (unwind_backtrace+0x0/0xf8) from [<c0031f7c>] (warn_slowpath_common+0x4c/0x64)
[<c0031f7c>] (warn_slowpath_common+0x4c/0x64) from [<c0031fb0>] (warn_slowpath_null+0x1c/0x24)
[<c0031fb0>] (warn_slowpath_null+0x1c/0x24) from [<c012f7ac>] (sysfs_add_file_mode+0x84/0xdc)
[<c012f7ac>] (sysfs_add_file_mode+0x84/0xdc) from [<c04b11e4>] (ds1307_probe+0x5e4/0x6ac)
[<c04b11e4>] (ds1307_probe+0x5e4/0x6ac) from [<c036e600>] (i2c_device_probe+0xdc/0x108)
[<c036e600>] (i2c_device_probe+0xdc/0x108) from [<c02cdf84>] (driver_probe_device+0x90/0x210)
[<c02cdf84>] (driver_probe_device+0x90/0x210) from [<c02ce198>] (__driver_attach+0x94/0x98)
[<c02ce198>] (__driver_attach+0x94/0x98) from [<c02cc824>] (bus_for_each_dev+0x50/0x7c)
[<c02cc824>] (bus_for_each_dev+0x50/0x7c) from [<c02cd780>] (bus_add_driver+0x184/0x244)
[<c02cd780>] (bus_add_driver+0x184/0x244) from [<c02ce43c>] (driver_register+0x78/0x12c)
[<c02ce43c>] (driver_register+0x78/0x12c) from [<c03701ac>] (i2c_register_driver+0x2c/0xb4)
[<c03701ac>] (i2c_register_driver+0x2c/0xb4) from [<c0008798>] (do_one_initcall+0x34/0x178)
[<c0008798>] (do_one_initcall+0x34/0x178) from [<c0691860>] (kernel_init+0xdc/0x194)
[<c0691860>] (kernel_init+0xdc/0x194) from [<c0013cf0>] (kernel_thread_exit+0x0/0x8)

Since commit 6992f53349 ("sysfs: Use one lockdep class per sysfs
attribute") this initialization is required.

Reported-by: Stefano Babic <sbabic@denx.de>
Tested-by: Stefano Babic <sbabic@denx.de>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-04-25 21:26:34 -07:00
..
Kconfig ARM: driver specific updates 2012-03-27 16:41:24 -07:00
Makefile rtc: driver for DA9052/53 PMIC v1 2012-03-23 16:58:40 -07:00
class.c Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2011-12-05 16:53:43 -08:00
hctosys.c rtc/hctosys: only claim the RTC provided the system time if it did 2010-03-12 15:52:28 -08:00
interface.c rtc: Provide flag for rtc devices that don't support UIE 2012-03-15 18:23:10 -07:00
rtc-88pm860x.c Merge branch 'akpm' (Andrew's patch-bomb) 2012-04-05 15:30:34 -07:00
rtc-ab3100.c drivers/rtc/rtc-ab3100.c: add missing platform_set_drvdata() in ab3100_rtc_probe() 2010-09-22 17:22:39 -07:00
rtc-ab8500.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 2012-01-13 20:43:32 -08:00
rtc-at32ap700x.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
rtc-at91rm9200.c ARM: at91: make rm9200 rtc drivers soc independent 2011-11-28 22:50:39 +08:00
rtc-at91sam9.c ARM: device tree work 2012-03-27 16:47:35 -07:00
rtc-au1xxx.c rtc: t reaches -1, tested 0 2009-02-11 14:25:36 -08:00
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 drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-coh901331.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-core.h
rtc-da9052.c rtc: driver for DA9052/53 PMIC v1 2012-03-23 16:58:40 -07:00
rtc-davinci.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-dev.c rtc: Fix ioctl error path return 2011-06-01 19:29:39 -07:00
rtc-dm355evm.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1216.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
rtc-ds1286.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1302.c sh: mach-snapgear: Kill off machtype, consolidate board def. 2010-10-29 19:06:53 +09:00
rtc-ds1305.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-ds1307.c drivers/rtc/rtc-ds1307.c: fix BUG shown with lock debugging enabled 2012-04-25 21:26:34 -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 rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ds1742.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08: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 rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ep93xx.c rtc: ep93xx: Fix 'rtc' may be used uninitialized warning 2011-08-10 15:54:24 -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 parisc: rtc: Rename rtc-parisc to rtc-generic 2009-04-02 01:05:31 +00:00
rtc-imxdi.c drivers/rtc/rtc-imxdi.c needs linux/sched.h 2011-09-14 18:09:37 -07:00
rtc-isl1208.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07: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: make jz4740_rtc_driver static 2012-01-10 16:30:53 -08:00
rtc-lib.c rtc: Initialized rtc_time->tm_isdst 2011-08-26 17:26:35 -07:00
rtc-lpc32xx.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-ls1x.c MIPS: add RTC support for loongson1B 2012-03-23 16:58:39 -07:00
rtc-m41t80.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-m41t93.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -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-max8925.c drivers/rtc/rtc-max8925.c: fix alarm->enabled mistake in max8925_rtc_read_alarm/max8925_rtc_set_alarm 2012-03-23 16:58:39 -07:00
rtc-max8998.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-mc13xxx.c drivers/rtc/rtc-mc13xxx.c: make mc13xxx_rtc_idtable static 2012-01-10 16:30:53 -08:00
rtc-mpc5121.c Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-03-29 14:16:48 -07:00
rtc-mrst.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-msm6242.c rtc: msm6242: Initialize drvdata before registering device 2011-05-06 18:02:03 -07:00
rtc-mv.c ARM: More device tree support updates 2012-03-28 12:34:33 -07:00
rtc-mxc.c drivers/rtc/rtc-mxc.c: make alarm work 2012-01-10 16:30:52 -08: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: pcap: Initialize drvdata before registering device 2011-05-06 18:02:04 -07:00
rtc-pcf2123.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-pcf8563.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07: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 drivers/rtc/rtc-pl031.c: enable clock on all ST variants 2012-04-12 13:12:12 -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: Include information about UIE and PIE in RTC driver proc. 2011-03-09 11:25:04 -08:00
rtc-ps3.c powerpc/ps3: Add rtc-ps3 2009-04-02 01:05:32 +00:00
rtc-puv3.c rtc-puv3: solve section mismatch in rtc-puv3.c 2012-01-10 10:29:42 +08:00
rtc-pxa.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-r9701.c drivers/rtc/rtc-r9701.c: reset registers if invalid values are detected 2012-04-12 13:12:12 -07:00
rtc-rp5c01.c rtc: rp5c01: Initialize drvdata before registering device 2011-05-06 18:02:05 -07:00
rtc-rs5c313.c rtc: rtc-rs5c313: ctrl_in/outX to __raw_read/writeX conversion. 2010-10-27 15:30:32 +09:00
rtc-rs5c348.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-rs5c372.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07: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: add placeholder for driver private data 2012-04-12 13:12:12 -07:00
rtc-s35390a.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07: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-spear.c rtc/rtc-spear: call platform_set_drvdata() before registering rtc device 2012-03-23 16:58:39 -07:00
rtc-starfire.c rtc: rtc-starfire fixes 2008-11-21 01:24:38 -08:00
rtc-stk17ta8.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-stmp3xxx.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-sun4v.c
rtc-sysfs.c rtc/hctosys: only claim the RTC provided the system time if it did 2010-03-12 15:52:28 -08:00
rtc-tegra.c drivers/rtc/rtc-tegra.c: properly initialize spinlock 2011-07-25 20:57:17 -07:00
rtc-test.c RTC: Fix the cross interrupt issue on rtc-test. 2011-03-09 11:25:07 -08:00
rtc-tile.c tile: add an RTC driver for the Tilera hypervisor 2011-05-17 14:44:36 -04:00
rtc-twl.c drivers/rtc/rtc-twl.c: use static register while reading time 2012-04-12 13:12:12 -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: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-wm831x.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-wm8350.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-x1205.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00