<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/rtc, branch v3.4</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/rtc?h=v3.4</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/rtc?h=v3.4'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-05-18T01:00:51Z</updated>
<entry>
<title>drivers/rtc/rtc-pl031.c: configure correct wday for 2000-01-01</title>
<updated>2012-05-18T01:00:51Z</updated>
<author>
<name>Rajkumar Kasirajan</name>
<email>rajkumar.kasirajan@stericsson.com</email>
</author>
<published>2012-05-18T00:03:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c0a5f4a05af588a0f9951f8d24e2564b09501918'/>
<id>urn:sha1:c0a5f4a05af588a0f9951f8d24e2564b09501918</id>
<content type='text'>
The reset date of the ST Micro version of PL031 is 2000-01-01.  The
correct weekday for 2000-01-01 is saturday, but pl031 is initialized to
sunday.  This may lead to alarm malfunction, so configure the correct
wday if RTC_DR indicates reset.

Signed-off-by: Rajkumar Kasirajan &lt;rajkumar.kasirajan@stericsson.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Cc: Mattias Wallin &lt;mattias.wallin@stericsson.com&gt;
Cc: Alessandro Zummo &lt;a.zummo@towertech.it&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip</title>
<updated>2012-05-04T22:35:09Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2012-05-04T22:35:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f756beba940ca21755396851521463d494893566'/>
<id>urn:sha1:f756beba940ca21755396851521463d494893566</id>
<content type='text'>
Pull timer fix from Thomas Gleixner.

* 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  rtc: Fix possible null pointer dereference in rtc-mpc5121.c
</content>
</entry>
<entry>
<title>rtc: Fix possible null pointer dereference in rtc-mpc5121.c</title>
<updated>2012-04-26T09:17:01Z</updated>
<author>
<name>John Stultz</name>
<email>john.stultz@linaro.org</email>
</author>
<published>2012-04-24T20:43:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e48b5e825f9c471cbcbfd934a4c2df27e9d39635'/>
<id>urn:sha1:e48b5e825f9c471cbcbfd934a4c2df27e9d39635</id>
<content type='text'>
Mark Loard pointed out:
"For example, this beauty from rtc-mpc5121.c in the same update:
   ...
   rtc-&gt;rtc = rtc_device_register("mpc5200-rtc", &amp;op-&gt;dev,
                                   &amp;mpc5200_rtc_ops, THIS_MODULE);
   ...

   rtc-&gt;rtc-&gt;uie_unsupported = 1;    // &lt;&lt;&lt;&lt; Ooops NULL pointer &gt;&gt;&gt;&gt;

   if (IS_ERR(rtc-&gt;rtc)) {           // &lt;&lt;&lt;&lt; this needs to be earlier &gt;&gt;&gt;&gt;
           err = PTR_ERR(rtc-&gt;rtc);
           goto out_free_irq;
   }
   ..."

This patch moves setting the uie_unsupported flag to after we validate
the rtc-&gt;rtc pointer to resolve this.

Reported by: Mark Lord &lt;kernel@teksavvy.com&gt;
Signed-off-by: John Stultz &lt;john.stultz@linaro.org&gt;
Link: http://lkml.kernel.org/r/1335300215-21427-1-git-send-email-john.stultz@linaro.org
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>drivers/rtc/rtc-ds1307.c: fix BUG shown with lock debugging enabled</title>
<updated>2012-04-26T04:26:34Z</updated>
<author>
<name>Anatolij Gustschin</name>
<email>agust@denx.de</email>
</author>
<published>2012-04-25T23:01:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3f5ec5e06d6ca88168277247dbac0ec7b501600f'/>
<id>urn:sha1:3f5ec5e06d6ca88168277247dbac0ec7b501600f</id>
<content type='text'>
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:
[&lt;c0018d94&gt;] (unwind_backtrace+0x0/0xf8) from [&lt;c0031f7c&gt;] (warn_slowpath_common+0x4c/0x64)
[&lt;c0031f7c&gt;] (warn_slowpath_common+0x4c/0x64) from [&lt;c0031fb0&gt;] (warn_slowpath_null+0x1c/0x24)
[&lt;c0031fb0&gt;] (warn_slowpath_null+0x1c/0x24) from [&lt;c012f7ac&gt;] (sysfs_add_file_mode+0x84/0xdc)
[&lt;c012f7ac&gt;] (sysfs_add_file_mode+0x84/0xdc) from [&lt;c04b11e4&gt;] (ds1307_probe+0x5e4/0x6ac)
[&lt;c04b11e4&gt;] (ds1307_probe+0x5e4/0x6ac) from [&lt;c036e600&gt;] (i2c_device_probe+0xdc/0x108)
[&lt;c036e600&gt;] (i2c_device_probe+0xdc/0x108) from [&lt;c02cdf84&gt;] (driver_probe_device+0x90/0x210)
[&lt;c02cdf84&gt;] (driver_probe_device+0x90/0x210) from [&lt;c02ce198&gt;] (__driver_attach+0x94/0x98)
[&lt;c02ce198&gt;] (__driver_attach+0x94/0x98) from [&lt;c02cc824&gt;] (bus_for_each_dev+0x50/0x7c)
[&lt;c02cc824&gt;] (bus_for_each_dev+0x50/0x7c) from [&lt;c02cd780&gt;] (bus_add_driver+0x184/0x244)
[&lt;c02cd780&gt;] (bus_add_driver+0x184/0x244) from [&lt;c02ce43c&gt;] (driver_register+0x78/0x12c)
[&lt;c02ce43c&gt;] (driver_register+0x78/0x12c) from [&lt;c03701ac&gt;] (i2c_register_driver+0x2c/0xb4)
[&lt;c03701ac&gt;] (i2c_register_driver+0x2c/0xb4) from [&lt;c0008798&gt;] (do_one_initcall+0x34/0x178)
[&lt;c0008798&gt;] (do_one_initcall+0x34/0x178) from [&lt;c0691860&gt;] (kernel_init+0xdc/0x194)
[&lt;c0691860&gt;] (kernel_init+0xdc/0x194) from [&lt;c0013cf0&gt;] (kernel_thread_exit+0x0/0x8)

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

Reported-by: Stefano Babic &lt;sbabic@denx.de&gt;
Tested-by: Stefano Babic &lt;sbabic@denx.de&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
Cc: Alessandro Zummo &lt;a.zummo@towertech.it&gt;
Cc: Stefano Babic &lt;sbabic@denx.de&gt;
Cc: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Acked-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>drivers/rtc/rtc-pl031.c: enable clock on all ST variants</title>
<updated>2012-04-12T20:12:12Z</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2012-04-12T19:49:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2f3972168353d355854d6381f1f360ce83b723e5'/>
<id>urn:sha1:2f3972168353d355854d6381f1f360ce83b723e5</id>
<content type='text'>
The ST variants of the PL031 all require bit 26 in the control register
to be set before they work properly.  Discovered this when testing on
the Nomadik board where it would suprisingly just stand still.

Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Cc: Mian Yousaf Kaukab &lt;mian.yousaf.kaukab@stericsson.com&gt;
Cc: Alessandro Rubini &lt;rubini@unipv.it&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>drivers/rtc/rtc-twl.c: use static register while reading time</title>
<updated>2012-04-12T20:12:12Z</updated>
<author>
<name>Konstantin Shlyakhovoy</name>
<email>x0155534@ti.com</email>
</author>
<published>2012-04-12T19:49:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f3ec434c69ac7f447ff6e6389c19727c9f002087'/>
<id>urn:sha1:f3ec434c69ac7f447ff6e6389c19727c9f002087</id>
<content type='text'>
RTC stores time and date in several registers.  Due to the fact that
these registers can't be read instantaneously, there is a chance that
reading from counting registers gives an error of one minute, one hour,
one day, etc.

To address this issue, the RTC has hardware support to copy the RTC
counting registers to static shadowed registers.  The current
implementation does not use this feature, and in a stress test, we can
reproduce this error at a rate of around two times per 300000 readings.

Fix the implementation to ensure that the right snapshot of time is
captured.

Signed-off-by: Konstantin Shlyakhovoy &lt;x0155534@ti.com&gt;
Signed-off-by: Nishanth Menon &lt;nm@ti.com&gt;
Cc: Alessandro Zummo &lt;a.zummo@towertech.it&gt;
Cc: Benoit Cousson &lt;b-cousson@ti.com&gt;
Cc: linux-omap &lt;linux-omap@vger.kernel.org&gt;
Acked-by: Mykola Oleksiienko &lt;x0174904@ti.com&gt;
Acked-by: Oleksandr Dmytryshyn &lt;oleksandr.dmytryshyn@ti.com&gt;
Acked-by: Graeme Gregory &lt;gg@slimlogic.co.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>drivers/rtc/rtc-s3c.c: add placeholder for driver private data</title>
<updated>2012-04-12T20:12:12Z</updated>
<author>
<name>Tushar Behera</name>
<email>tushar.behera@linaro.org</email>
</author>
<published>2012-04-12T19:49:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c3cba9281ba39f3aef377fe52890e2d8f1e6dae3'/>
<id>urn:sha1:c3cba9281ba39f3aef377fe52890e2d8f1e6dae3</id>
<content type='text'>
Driver data field is a pointer, hence assigning that to an integer results
in compilation warnings.

Fixes following compilation warnings:

  drivers/rtc/rtc-s3c.c: In function `s3c_rtc_get_driver_data':
  drivers/rtc/rtc-s3c.c:452:3: warning: return makes integer from pointer without a cast [enabled by default]
  drivers/rtc/rtc-s3c.c: At top level:
  drivers/rtc/rtc-s3c.c:674:3: warning: initialization makes pointer from integer without a cast [enabled by default]
  drivers/rtc/rtc-s3c.c:674:3: warning: (near initialization for `s3c_rtc_dt_match[1].data') [enabled by default]
  drivers/rtc/rtc-s3c.c:677:3: warning: initialization makes pointer from integer without a cast [enabled by default]
  drivers/rtc/rtc-s3c.c:677:3: warning: (near initialization for `s3c_rtc_dt_match[2].data') [enabled by default]
  drivers/rtc/rtc-s3c.c:680:3: warning: initialization makes pointer from integer without a cast [enabled by default]
  drivers/rtc/rtc-s3c.c:680:3: warning: (near initialization for `s3c_rtc_dt_match[3].data') [enabled by default]

Signed-off-by: Tushar Behera &lt;tushar.behera@linaro.org&gt;
Cc: Heiko Stuebner &lt;heiko@sntech.de&gt;
Cc: Alessandro Zummo &lt;a.zummo@towertech.it&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>drivers/rtc/rtc-s3c.c: fix compilation error</title>
<updated>2012-04-12T20:12:12Z</updated>
<author>
<name>Tushar Behera</name>
<email>tushar.behera@linaro.org</email>
</author>
<published>2012-04-12T19:49:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cd1e6f9e53e1a673a489826729709aaffa8ad621'/>
<id>urn:sha1:cd1e6f9e53e1a673a489826729709aaffa8ad621</id>
<content type='text'>
Fix this error:

  drivers/rtc/rtc-s3c.c: At top level:
  drivers/rtc/rtc-s3c.c:671:3: error: request for member `data' in something not a structure or union
  drivers/rtc/rtc-s3c.c:674:3: error: request for member `data' in something not a structure or union
  drivers/rtc/rtc-s3c.c:677:3: error: request for member `data' in something not a structure or union
  drivers/rtc/rtc-s3c.c:680:3: error: request for member `data' in something not a structure or union

Signed-off-by: Tushar Behera &lt;tushar.behera@linaro.org&gt;
Cc: Heiko Stuebner &lt;heiko@sntech.de&gt;
Cc: Alessandro Zummo &lt;a.zummo@towertech.it&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>drivers/rtc/rtc-efi.c: fix section mismatch warning</title>
<updated>2012-04-12T20:12:12Z</updated>
<author>
<name>Jan Beulich</name>
<email>JBeulich@suse.com</email>
</author>
<published>2012-04-12T19:49:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=32050017cf3bf2b983571a90351328b4f66e463d'/>
<id>urn:sha1:32050017cf3bf2b983571a90351328b4f66e463d</id>
<content type='text'>
efi_rtc_init() uses platform_driver_probe(), so there's no need to also
set efi_rtc_driver's probe member (as it won't be used anyway).  This
fixes a modpost section mismatch warning (as efi_rtc_probe() validly is
__init).

Signed-off-by: Jan Beulich &lt;jbeulich@suse.com&gt;
Cc: Matthew Garrett &lt;mjg@redhat.com&gt;
Cc: Alessandro Zummo &lt;a.zummo@towertech.it&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>drivers/rtc/rtc-r9701.c: reset registers if invalid values are detected</title>
<updated>2012-04-12T20:12:12Z</updated>
<author>
<name>Andreas Dumberger</name>
<email>andreas.dumberger@tqs.de</email>
</author>
<published>2012-04-12T19:49:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bb58da08f01ee12561867fcd4385b82679ae7f6c'/>
<id>urn:sha1:bb58da08f01ee12561867fcd4385b82679ae7f6c</id>
<content type='text'>
hwclock refuses to set date/time if RTC registers contain invalid
values.  Check the date/time register values at probe time and
initialize them to make hwclock happy.

Signed-off-by: Andreas Dumberger &lt;andreas.dumberger@tqs.de&gt;
Signed-off-by: Anatolij Gustschin &lt;agust@denx.de&gt;
Cc: Alessandro Zummo &lt;a.zummo@towertech.it&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
