xref: /optee_os/core/drivers/rtc/rtc.c (revision f3f9432f8fd584d6427c575d49810be584f8433c)
1*f3f9432fSClément Léger // SPDX-License-Identifier: BSD-2-Clause
2*f3f9432fSClément Léger /*
3*f3f9432fSClément Léger  * Copyright 2022 Microchip
4*f3f9432fSClément Léger  */
5*f3f9432fSClément Léger 
6*f3f9432fSClément Léger #include <assert.h>
7*f3f9432fSClément Léger #include <drivers/rtc.h>
8*f3f9432fSClément Léger #include <tee_api_types.h>
9*f3f9432fSClément Léger 
10*f3f9432fSClément Léger struct rtc *rtc_device;
11*f3f9432fSClément Léger 
12*f3f9432fSClément Léger void rtc_register(struct rtc *rtc)
13*f3f9432fSClément Léger {
14*f3f9432fSClément Léger 	/* One RTC is supported only */
15*f3f9432fSClément Léger 	assert(!rtc_device);
16*f3f9432fSClément Léger 
17*f3f9432fSClément Léger 	/* RTC should *at least* allow to get the time */
18*f3f9432fSClément Léger 	assert(rtc && rtc->ops && rtc->ops->get_time);
19*f3f9432fSClément Léger 
20*f3f9432fSClément Léger 	rtc_device = rtc;
21*f3f9432fSClément Léger }
22