<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/drivers/rtc/nvmem.c, branch v5.7</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v5.7</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v5.7'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2019-04-04T08:07:08Z</updated>
<entry>
<title>rtc: core: correct trivial checkpatch warnings</title>
<updated>2019-04-04T08:07:08Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2019-03-20T11:59:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=606cc43c720bdef01a22c9d221434c635139d84e'/>
<id>urn:sha1:606cc43c720bdef01a22c9d221434c635139d84e</id>
<content type='text'>
Correct trivial checkpatch warnings, mostly whitespace issues and
unbalanced braces.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: convert core to SPDX identifier</title>
<updated>2019-03-18T02:36:01Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2019-03-13T22:02:48Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=cdf7545aef65c47c17afdd3bed90410b3fd33bfd'/>
<id>urn:sha1:cdf7545aef65c47c17afdd3bed90410b3fd33bfd</id>
<content type='text'>
Use SPDX-License-Identifier instead of a verbose license text. Also fix the
block comment alignment.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: nvmem: fix possible use after free</title>
<updated>2018-12-30T23:49:36Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2018-12-30T23:49:36Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=bba3d2daa8a9bc888902275401f15ef48fcdd378'/>
<id>urn:sha1:bba3d2daa8a9bc888902275401f15ef48fcdd378</id>
<content type='text'>
In cas of probe failure, devres may free the memory allocated for
rtc-&gt;nvram before devm_rtc_release_device() is called. This leads to
rtc_nvram_unregister using it after being freed which may lead to a crash.

This has been shown to happen after commit 461e557b9727 ("rtc: nvmem: use
devm_nvmem_register()")

Reported-by: kernel test robot &lt;lkp@intel.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: nvmem: remove nvmem from struct rtc_device</title>
<updated>2018-11-22T17:10:07Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2018-11-10T20:29:03Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=41c9e132c5cc3e5f28cf44032ff82f7614a42989'/>
<id>urn:sha1:41c9e132c5cc3e5f28cf44032ff82f7614a42989</id>
<content type='text'>
Using devm_nvmem_register allows to avoid tracking the nvmem pointer in the
rtc_device structure.
This ultimately allows to register multiple nvmem devices from an RTC
driver.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: nvmem: use devm_nvmem_register()</title>
<updated>2018-11-22T17:10:04Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2018-11-10T20:29:02Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=461e557b97277b693cd8008c32a9d01c7f8f453b'/>
<id>urn:sha1:461e557b97277b693cd8008c32a9d01c7f8f453b</id>
<content type='text'>
Use the resource managed variant of nvmem_register().

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: nvmem: don't use IS_ERR_OR_NULL</title>
<updated>2018-05-21T20:34:38Z</updated>
<author>
<name>Uwe Kleine-König</name>
<email>u.kleine-koenig@pengutronix.de</email>
</author>
<published>2018-05-20T15:26:40Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=046dbb2420cee74b31fd2ce266d3e2629d8c7b8a'/>
<id>urn:sha1:046dbb2420cee74b31fd2ce266d3e2629d8c7b8a</id>
<content type='text'>
nvmem_register() never returns NULL, so IS_ERR is good enough here.

Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@pengutronix.de&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: export rtc_nvmem_register() to drivers</title>
<updated>2018-03-01T09:49:15Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2018-02-12T22:47:19Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fd5cd21d995e67f87b3eb4adf938be85fe83ef4b'/>
<id>urn:sha1:fd5cd21d995e67f87b3eb4adf938be85fe83ef4b</id>
<content type='text'>
Export rtc_nvmem_register() so it can be called from drivers instead of
only the core.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: nvmem: allow registering the nvmem device before the rtc</title>
<updated>2018-03-01T09:49:14Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2018-02-28T20:58:02Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ac75779b72fd52741d7446ad27cf6d58c006c643'/>
<id>urn:sha1:ac75779b72fd52741d7446ad27cf6d58c006c643</id>
<content type='text'>
Switch the parent of the nvmem device to the parent of the rtc device so it
can be registered before the RTC.

This is a small change in the ABI as the nvmem moves out of the
/sys/class/rtc/rtcX folder to be under the parent device folder (that is
where the previous nvram files where registered).

However, it is still available under its correct location,
/sys/bus/nvmem/devices which is the one that should be used by userspace
applications.

The other benefit is that the nvmem device can stay registered even if the
rtc registration fails. Or it is possible to not register the rtc if the
nvmem registration failed.

Finally, it makes a lot of sense for devices that actually have different
i2c or spi addresses for the RTC and the EEPROM. That is basically how it
would end up when using MFD or even completely separate devices.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: nvmem: disallow registering nvmem more than once</title>
<updated>2018-02-14T19:58:16Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2018-02-12T22:47:18Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ab3ea36eda76069ba52e9b6aef5a9370b0b462bf'/>
<id>urn:sha1:ab3ea36eda76069ba52e9b6aef5a9370b0b462bf</id>
<content type='text'>
Make rtc_nvmem_register return -EBUSY when an nvmem is already registered
for that RTC.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: nvmem: return error values</title>
<updated>2018-02-14T19:58:13Z</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2018-02-12T22:47:17Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=2cc8212198820487ec3fdcc7b98133701fc9dfc3'/>
<id>urn:sha1:2cc8212198820487ec3fdcc7b98133701fc9dfc3</id>
<content type='text'>
In case of error, make rtc_nvmem_register() able to return an error value
to its caller.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
</feed>
