11 #include <linux/module.h>
13 #include <linux/rtc.h>
18 static int test_rtc_read_alarm(
struct device *
dev,
24 static int test_rtc_set_alarm(
struct device *
dev,
30 static int test_rtc_read_time(
struct device *
dev,
37 static int test_rtc_set_mmss(
struct device *dev,
unsigned long secs)
39 dev_info(dev,
"%s, secs = %lu\n", __func__, secs);
53 static int test_rtc_alarm_irq_enable(
struct device *dev,
unsigned int enable)
59 .proc = test_rtc_proc,
60 .read_time = test_rtc_read_time,
61 .read_alarm = test_rtc_read_alarm,
62 .set_alarm = test_rtc_set_alarm,
63 .set_mmss = test_rtc_set_mmss,
64 .alarm_irq_enable = test_rtc_alarm_irq_enable,
70 return sprintf(buf,
"%d\n", 42);
83 else if (
strncmp(buf,
"alarm", 5) == 0) {
87 if (!err && alrm.enabled)
113 platform_set_drvdata(plat_dev, rtc);
124 struct rtc_device *rtc = platform_get_drvdata(plat_dev);
141 static int __init test_init(
void)
150 goto exit_driver_unregister;
155 goto exit_free_test0;
159 goto exit_free_test1;
162 goto exit_device_unregister;
166 exit_device_unregister:
175 exit_driver_unregister:
180 static void __exit test_exit(
void)