#include <linux/clk.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/rtc.h>
#define RTC_SET_TM_WR …
#define RTC_SET_TM_RD …
#define RTC_CALIB_WR …
#define RTC_CALIB_RD …
#define RTC_CUR_TM …
#define RTC_CUR_TICK …
#define RTC_ALRM …
#define RTC_INT_STS …
#define RTC_INT_MASK …
#define RTC_INT_EN …
#define RTC_INT_DIS …
#define RTC_CTRL …
#define RTC_FR_EN …
#define RTC_FR_DATSHIFT …
#define RTC_TICK_MASK …
#define RTC_INT_SEC …
#define RTC_INT_ALRM …
#define RTC_OSC_EN …
#define RTC_BATT_EN …
#define RTC_CALIB_DEF …
#define RTC_CALIB_MASK …
#define RTC_ALRM_MASK …
#define RTC_MSEC …
#define RTC_FR_MASK …
#define RTC_FR_MAX_TICKS …
#define RTC_PPB …
#define RTC_MIN_OFFSET …
#define RTC_MAX_OFFSET …
struct xlnx_rtc_dev { … };
static int xlnx_rtc_set_time(struct device *dev, struct rtc_time *tm)
{ … }
static int xlnx_rtc_read_time(struct device *dev, struct rtc_time *tm)
{ … }
static int xlnx_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
{ … }
static int xlnx_rtc_alarm_irq_enable(struct device *dev, u32 enabled)
{ … }
static int xlnx_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm)
{ … }
static void xlnx_init_rtc(struct xlnx_rtc_dev *xrtcdev)
{ … }
static int xlnx_rtc_read_offset(struct device *dev, long *offset)
{ … }
static int xlnx_rtc_set_offset(struct device *dev, long offset)
{ … }
static const struct rtc_class_ops xlnx_rtc_ops = …;
static irqreturn_t xlnx_rtc_interrupt(int irq, void *id)
{ … }
static int xlnx_rtc_probe(struct platform_device *pdev)
{ … }
static void xlnx_rtc_remove(struct platform_device *pdev)
{ … }
static int __maybe_unused xlnx_rtc_suspend(struct device *dev)
{ … }
static int __maybe_unused xlnx_rtc_resume(struct device *dev)
{ … }
static SIMPLE_DEV_PM_OPS(xlnx_rtc_pm_ops, xlnx_rtc_suspend, xlnx_rtc_resume);
static const struct of_device_id xlnx_rtc_of_match[] = …;
MODULE_DEVICE_TABLE(of, xlnx_rtc_of_match);
static struct platform_driver xlnx_rtc_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;