On Wednesday 27 April 2016 09:47:56 Geert Uytterhoeven wrote:
--- a/arch/m68k/kernel/time.c
+++ b/arch/m68k/kernel/time.c
@@ -86,7 +86,24 @@ void read_persistent_clock(struct timespec *ts)
}
}
-#ifdef CONFIG_ARCH_USES_GETTIMEOFFSET
+#if defined(CONFIG_ARCH_USES_GETTIMEOFFSET) && defined(CONFIG_RTC_DRV_GENERIC)
s/defined/IS_ENABLED/ for the modular case.
Thanks, fixed in all three architectures/
@@ -95,7 +112,10 @@ static int __init rtc_init(void)
if (!mach_hwclk)
return -ENODEV;
- pdev = platform_device_register_simple("rtc-generic", -1, NULL, 0);
+ /* or just call devm_rtc_device_register instead? */
I guess this comment is a bogus leftover? There's no "dev" parameter to
pass to devm_rtc_device_register() here.
Sort of. When I wrote it, I thought that a NULL argument would work,
and I later found out myself that it doesn't.
I'll drop the comment there, but there are still a few ways we (probably
not me, but whoever is interested) could take this further:
- register both the device and the driver here, and call
devm_rtc_device_register from the probe function so we can move away
from drivers/rtc/rtc-generic.c
- do this separately for mac, mvme147, mvme16x, sun3, q40 and sun3x
- move the six implementations into drivers/rtc as standalone drivers.
One (AFAIK) unsolved problem here is the question of how to handle
read_boot_clock/read_persistent_clock/update_persistent_clock in this
case. This is a really odd API that is implemented in various ways
on a few major architectures, and not at all on others, so it's all
highly inconsistent.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html