ANDROID: rtc: class: support hctosys from modular RTC drivers
In order to support setting the system time from modular RTC drivers via the hctosys mechanism, check at the end of RTC device registration for whether the time should be synced, rather than once at late init. Bug: 144103362 Bug: 143046457 Change-Id: I65d2fd14e075a65f2a23e1268b02c907c5245fb8 Signed-off-by: Steve Muckle <smuckle@google.com>
This commit is contained in:
parent
b50d9aa3f3
commit
0b145f91d8
3 changed files with 10 additions and 3 deletions
|
|
@ -527,6 +527,11 @@ int __rtc_register_device(struct module *owner, struct rtc_device *rtc)
|
|||
dev_info(rtc->dev.parent, "registered as %s\n",
|
||||
dev_name(&rtc->dev));
|
||||
|
||||
#ifdef CONFIG_RTC_HCTOSYS_DEVICE
|
||||
if (!strcmp(dev_name(&rtc->dev), CONFIG_RTC_HCTOSYS_DEVICE))
|
||||
rtc_hctosys();
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(__rtc_register_device);
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
* the best guess is to add 0.5s.
|
||||
*/
|
||||
|
||||
static int __init rtc_hctosys(void)
|
||||
int rtc_hctosys(void)
|
||||
{
|
||||
int err = -ENODEV;
|
||||
struct rtc_time tm;
|
||||
|
|
@ -73,5 +73,3 @@ err_open:
|
|||
|
||||
return err;
|
||||
}
|
||||
|
||||
late_initcall(rtc_hctosys);
|
||||
|
|
|
|||
|
|
@ -60,3 +60,7 @@ int rtc_add_groups(struct rtc_device *rtc, const struct attribute_group **grps)
|
|||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_RTC_HCTOSYS
|
||||
extern int rtc_hctosys(void);
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue