#include <linux/clk.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/platform_device.h>
#include <linux/rtc.h>
#include <linux/spinlock.h>
#define RTD_RTCSEC …
#define RTD_RTCMIN …
#define RTD_RTCHR …
#define RTD_RTCDATE1 …
#define RTD_RTCDATE2 …
#define RTD_RTCACR …
#define RTD_RTCEN …
#define RTD_RTCCR …
#define RTD_RTCSEC_RTCSEC_MASK …
#define RTD_RTCMIN_RTCMIN_MASK …
#define RTD_RTCHR_RTCHR_MASK …
#define RTD_RTCDATE1_RTCDATE1_MASK …
#define RTD_RTCDATE2_RTCDATE2_MASK …
#define RTD_RTCACR_RTCPWR …
#define RTD_RTCEN_RTCEN_MASK …
#define RTD_RTCCR_RTCRST …
struct rtd119x_rtc { … };
static inline int rtd119x_rtc_days_in_year(int year)
{ … }
static void rtd119x_rtc_reset(struct device *dev)
{ … }
static void rtd119x_rtc_set_enabled(struct device *dev, bool enable)
{ … }
static int rtd119x_rtc_read_time(struct device *dev, struct rtc_time *tm)
{ … }
static int rtd119x_rtc_set_time(struct device *dev, struct rtc_time *tm)
{ … }
static const struct rtc_class_ops rtd119x_rtc_ops = …;
static const struct of_device_id rtd119x_rtc_dt_ids[] = …;
static int rtd119x_rtc_probe(struct platform_device *pdev)
{ … }
static void rtd119x_rtc_remove(struct platform_device *pdev)
{ … }
static struct platform_driver rtd119x_rtc_driver = …;
builtin_platform_driver(…) …;