diff options
-rw-r--r-- | drivers/rtc/rtc-test.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/rtc/rtc-test.c b/drivers/rtc/rtc-test.c index 0c30b04326c5..8469256edc2a 100644 --- a/drivers/rtc/rtc-test.c +++ b/drivers/rtc/rtc-test.c | |||
@@ -95,6 +95,12 @@ static int test_rtc_alarm_irq_enable(struct device *dev, unsigned int enable) | |||
95 | return 0; | 95 | return 0; |
96 | } | 96 | } |
97 | 97 | ||
98 | static const struct rtc_class_ops test_rtc_ops_noalm = { | ||
99 | .read_time = test_rtc_read_time, | ||
100 | .set_mmss64 = test_rtc_set_mmss64, | ||
101 | .alarm_irq_enable = test_rtc_alarm_irq_enable, | ||
102 | }; | ||
103 | |||
98 | static const struct rtc_class_ops test_rtc_ops = { | 104 | static const struct rtc_class_ops test_rtc_ops = { |
99 | .read_time = test_rtc_read_time, | 105 | .read_time = test_rtc_read_time, |
100 | .read_alarm = test_rtc_read_alarm, | 106 | .read_alarm = test_rtc_read_alarm, |
@@ -124,7 +130,13 @@ static int test_probe(struct platform_device *plat_dev) | |||
124 | if (IS_ERR(rtd->rtc)) | 130 | if (IS_ERR(rtd->rtc)) |
125 | return PTR_ERR(rtd->rtc); | 131 | return PTR_ERR(rtd->rtc); |
126 | 132 | ||
127 | rtd->rtc->ops = &test_rtc_ops; | 133 | switch (plat_dev->id) { |
134 | case 0: | ||
135 | rtd->rtc->ops = &test_rtc_ops_noalm; | ||
136 | break; | ||
137 | default: | ||
138 | rtd->rtc->ops = &test_rtc_ops; | ||
139 | } | ||
128 | 140 | ||
129 | timer_setup(&rtd->alarm, test_rtc_alarm_handler, 0); | 141 | timer_setup(&rtd->alarm, test_rtc_alarm_handler, 0); |
130 | rtd->alarm.expires = 0; | 142 | rtd->alarm.expires = 0; |