<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/rtc/rtc-ep93xx.c, branch linux-7.1.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.1.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.1.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2025-03-05T22:08:00+00:00</updated>
<entry>
<title>rtc: ep93xx: drop needless struct ep93xx_rtc::rtc member</title>
<updated>2025-03-05T22:08:00+00:00</updated>
<author>
<name>André Draszik</name>
<email>andre.draszik@linaro.org</email>
</author>
<published>2025-03-04T17:05:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5d0ad519f503b8432ebc396dfe87e6190dbdcbb1'/>
<id>urn:sha1:5d0ad519f503b8432ebc396dfe87e6190dbdcbb1</id>
<content type='text'>
The memory pointed to by the ::rtc member is managed via devres, and
no code in this driver uses it past _probe().

We can drop it from the structure and just use a local temporary
variable, reducing runtime memory consumption by a few bytes.

Signed-off-by: André Draszik &lt;andre.draszik@linaro.org&gt;
Link: https://lore.kernel.org/r/20250304-rtc-cleanups-v2-5-d4689a71668c@linaro.org
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: ep93xx: add DT support for Cirrus EP93xx</title>
<updated>2023-10-15T21:17:05+00:00</updated>
<author>
<name>Nikita Shubin</name>
<email>nikita.shubin@maquefel.me</email>
</author>
<published>2023-09-15T08:10:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1d70f9fe5f1c8fbd5d838223b8aec27c69a7e609'/>
<id>urn:sha1:1d70f9fe5f1c8fbd5d838223b8aec27c69a7e609</id>
<content type='text'>
Add OF ID match table.

Reviewed-by: Andy Shevchenko &lt;andy.shevchenko@gmail.com&gt;
Signed-off-by: Nikita Shubin &lt;nikita.shubin@maquefel.me&gt;
Link: https://lore.kernel.org/r/20230915-ep93xx-v4-14-a1d779dcec10@maquefel.me
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time</title>
<updated>2020-12-03T22:49:31+00:00</updated>
<author>
<name>Nikita Shubin</name>
<email>nikita.shubin@maquefel.me</email>
</author>
<published>2020-12-01T09:55:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=00c33482bb6110bce8110daa351f9b3baf4df7dc'/>
<id>urn:sha1:00c33482bb6110bce8110daa351f9b3baf4df7dc</id>
<content type='text'>
Mismatch in probe platform_set_drvdata set's and method's that call
dev_get_platdata will result in "Unable to handle kernel NULL pointer
dereference", let's use according method for getting driver data after
platform_set_drvdata.

8&lt;--- cut here ---
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = (ptrval)
[00000000] *pgd=00000000
Internal error: Oops: 5 [#1] ARM
Modules linked in:
CPU: 0 PID: 1 Comm: swapper Not tainted 5.9.10-00003-g723e101e0037-dirty #4
Hardware name: Technologic Systems TS-72xx SBC
PC is at ep93xx_rtc_read_time+0xc/0x2c
LR is at __rtc_read_time+0x4c/0x8c
[...]
[&lt;c02b01c8&gt;] (ep93xx_rtc_read_time) from [&lt;c02ac38c&gt;] (__rtc_read_time+0x4c/0x8c)
[&lt;c02ac38c&gt;] (__rtc_read_time) from [&lt;c02ac3f8&gt;] (rtc_read_time+0x2c/0x4c)
[&lt;c02ac3f8&gt;] (rtc_read_time) from [&lt;c02acc54&gt;] (__rtc_read_alarm+0x28/0x358)
[&lt;c02acc54&gt;] (__rtc_read_alarm) from [&lt;c02abd80&gt;] (__rtc_register_device+0x124/0x2ec)
[&lt;c02abd80&gt;] (__rtc_register_device) from [&lt;c02b028c&gt;] (ep93xx_rtc_probe+0xa4/0xac)
[&lt;c02b028c&gt;] (ep93xx_rtc_probe) from [&lt;c026424c&gt;] (platform_drv_probe+0x24/0x5c)
[&lt;c026424c&gt;] (platform_drv_probe) from [&lt;c0262918&gt;] (really_probe+0x218/0x374)
[&lt;c0262918&gt;] (really_probe) from [&lt;c0262da0&gt;] (device_driver_attach+0x44/0x60)
[&lt;c0262da0&gt;] (device_driver_attach) from [&lt;c0262e70&gt;] (__driver_attach+0xb4/0xc0)
[&lt;c0262e70&gt;] (__driver_attach) from [&lt;c0260d44&gt;] (bus_for_each_dev+0x68/0xac)
[&lt;c0260d44&gt;] (bus_for_each_dev) from [&lt;c026223c&gt;] (driver_attach+0x18/0x24)
[&lt;c026223c&gt;] (driver_attach) from [&lt;c0261dd8&gt;] (bus_add_driver+0x150/0x1b4)
[&lt;c0261dd8&gt;] (bus_add_driver) from [&lt;c026342c&gt;] (driver_register+0xb0/0xf4)
[&lt;c026342c&gt;] (driver_register) from [&lt;c0264210&gt;] (__platform_driver_register+0x30/0x48)
[&lt;c0264210&gt;] (__platform_driver_register) from [&lt;c04cb9ac&gt;] (ep93xx_rtc_driver_init+0x10/0x1c)
[&lt;c04cb9ac&gt;] (ep93xx_rtc_driver_init) from [&lt;c000973c&gt;] (do_one_initcall+0x7c/0x1c0)
[&lt;c000973c&gt;] (do_one_initcall) from [&lt;c04b9ecc&gt;] (kernel_init_freeable+0x168/0x1ac)
[&lt;c04b9ecc&gt;] (kernel_init_freeable) from [&lt;c03b2228&gt;] (kernel_init+0x8/0xf4)
[&lt;c03b2228&gt;] (kernel_init) from [&lt;c00082c0&gt;] (ret_from_fork+0x14/0x34)
Exception stack(0xc441dfb0 to 0xc441dff8)
dfa0:                                     00000000 00000000 00000000 00000000
dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
dfe0: 00000000 00000000 00000000 00000000 00000013 00000000
Code: e12fff1e e92d4010 e590303c e1a02001 (e5933000)
---[ end trace c914d6030eaa95c8 ]---

Fixes: b809d192eb98 ("rtc: ep93xx: stop setting platform_data")
Signed-off-by: Nikita Shubin &lt;nikita.shubin@maquefel.me&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20201201095507.10317-1-nikita.shubin@maquefel.me
</content>
</entry>
<entry>
<title>rtc: rework rtc_register_device() resource management</title>
<updated>2020-11-19T11:50:12+00:00</updated>
<author>
<name>Bartosz Golaszewski</name>
<email>bgolaszewski@baylibre.com</email>
</author>
<published>2020-11-09T16:34:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=fdcfd854333be5b30377dc5daa9cd0fa1643a979'/>
<id>urn:sha1:fdcfd854333be5b30377dc5daa9cd0fa1643a979</id>
<content type='text'>
rtc_register_device() is a managed interface but it doesn't use devres
by itself - instead it marks an rtc_device as "registered" and the devres
callback for devm_rtc_allocate_device() takes care of resource release.

This doesn't correspond with the design behind devres where managed
structures should not be aware of being managed. The correct solution
here is to register a separate devres callback for unregistering the
device.

While at it: rename rtc_register_device() to devm_rtc_register_device()
and add it to the list of managed interfaces in devres.rst. This way we
can avoid any potential confusion of driver developers who may expect
there to exist a corresponding unregister function.

Signed-off-by: Bartosz Golaszewski &lt;bgolaszewski@baylibre.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Link: https://lore.kernel.org/r/20201109163409.24301-8-brgl@bgdev.pl
</content>
</entry>
<entry>
<title>rtc: use devm_platform_ioremap_resource() to simplify code</title>
<updated>2019-10-06T23:07:35+00:00</updated>
<author>
<name>YueHaibing</name>
<email>yuehaibing@huawei.com</email>
</author>
<published>2019-10-06T10:29:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=09ef18bcd5ac6c2213cedd20f4f8cad08bbe3d74'/>
<id>urn:sha1:09ef18bcd5ac6c2213cedd20f4f8cad08bbe3d74</id>
<content type='text'>
Use devm_platform_ioremap_resource() to simplify the code a bit.
This is detected by coccinelle.

Signed-off-by: YueHaibing &lt;yuehaibing@huawei.com&gt;
Link: https://lore.kernel.org/r/20191006102953.57536-2-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-3-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-4-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-5-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-6-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-7-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-8-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-9-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-10-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-11-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-12-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-13-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-14-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-15-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-16-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-17-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-18-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-19-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-20-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-21-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-22-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-23-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-24-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-25-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-26-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-27-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-28-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-29-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-30-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-31-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-32-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-33-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-34-yuehaibing@huawei.com
Link: https://lore.kernel.org/r/20191006102953.57536-35-yuehaibing@huawei.com
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: ep93xx: fix checkpatch issues</title>
<updated>2019-04-19T20:37:16+00:00</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2019-04-19T08:00:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=d71c7715326b561e5b11768e8146f46287d1edd8'/>
<id>urn:sha1:d71c7715326b561e5b11768e8146f46287d1edd8</id>
<content type='text'>
Fix sysfs attribute declaration as suggested by checkpatch.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: ep93xx: convert to SPDX identifier</title>
<updated>2019-04-19T20:37:16+00:00</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2019-04-19T08:00:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4fdf4d237fab355f7cc904c6cb1cf0d99b769eff'/>
<id>urn:sha1:4fdf4d237fab355f7cc904c6cb1cf0d99b769eff</id>
<content type='text'>
Use SPDX-License-Identifier instead of a verbose license text.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: ep93xx: use .set_time</title>
<updated>2019-04-19T20:37:16+00:00</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2019-04-19T08:00:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ef9440a2e363f3ba4de079c5727e34db005aecc4'/>
<id>urn:sha1:ef9440a2e363f3ba4de079c5727e34db005aecc4</id>
<content type='text'>
Use .set_time instead of the deprecated .set_mmss.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: ep93xx: switch to rtc_time64_to_tm</title>
<updated>2019-04-19T20:37:16+00:00</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2019-04-19T08:00:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=886a77e73e521a75b7bb5cef63f8c2349edfd8e5'/>
<id>urn:sha1:886a77e73e521a75b7bb5cef63f8c2349edfd8e5</id>
<content type='text'>
Call the 64bit version of rtc_time_to_tm now that the range is enforced by
the core.

Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>rtc: ep93xx: set range</title>
<updated>2019-04-19T20:37:16+00:00</updated>
<author>
<name>Alexandre Belloni</name>
<email>alexandre.belloni@bootlin.com</email>
</author>
<published>2019-04-19T08:00:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2d4fc6df77d8effe07a66ec24c093b8c9f0fb998'/>
<id>urn:sha1:2d4fc6df77d8effe07a66ec24c093b8c9f0fb998</id>
<content type='text'>
The ep93xx RTC is a 32-bit seconds counter.

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