summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandre Belloni <alexandre.belloni@bootlin.com>2018-07-25 10:45:39 -0400
committerAlexandre Belloni <alexandre.belloni@bootlin.com>2018-07-26 09:08:39 -0400
commitec623ff014c4e9c52d8ebf068d9801f5f9ab7348 (patch)
treee909d1c527dee459c04338330236e82a230ff5b9
parent1f28231c66b5381c07b4ff0ca919387d060d6f1b (diff)
rtc: sh: remove dead code
Since commit 80d4bb515b78 ("RTC: Cleanup rtc_class_ops->irq_set_state") and commit 696160fec162 ("RTC: Cleanup rtc_class_ops->irq_set_freq()"), sh_rtc_irq_set_state and sh_rtc_irq_set_freq are never called. Remove them along with task handling. Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
-rw-r--r--drivers/rtc/rtc-sh.c89
1 files changed, 1 insertions, 88 deletions
diff --git a/drivers/rtc/rtc-sh.c b/drivers/rtc/rtc-sh.c
index 4f98543d1ea5..abbce362f4df 100644
--- a/drivers/rtc/rtc-sh.c
+++ b/drivers/rtc/rtc-sh.c
@@ -143,7 +143,6 @@ static int __sh_rtc_alarm(struct sh_rtc *rtc)
143static int __sh_rtc_periodic(struct sh_rtc *rtc) 143static int __sh_rtc_periodic(struct sh_rtc *rtc)
144{ 144{
145 struct rtc_device *rtc_dev = rtc->rtc_dev; 145 struct rtc_device *rtc_dev = rtc->rtc_dev;
146 struct rtc_task *irq_task;
147 unsigned int tmp, pending; 146 unsigned int tmp, pending;
148 147
149 tmp = readb(rtc->regbase + RCR2); 148 tmp = readb(rtc->regbase + RCR2);
@@ -160,14 +159,7 @@ static int __sh_rtc_periodic(struct sh_rtc *rtc)
160 else { 159 else {
161 if (rtc->periodic_freq & PF_HP) 160 if (rtc->periodic_freq & PF_HP)
162 rtc->periodic_freq |= PF_COUNT; 161 rtc->periodic_freq |= PF_COUNT;
163 if (rtc->periodic_freq & PF_KOU) { 162 rtc_update_irq(rtc->rtc_dev, 1, RTC_PF | RTC_IRQF);
164 spin_lock(&rtc_dev->irq_task_lock);
165 irq_task = rtc_dev->irq_task;
166 if (irq_task)
167 irq_task->func(irq_task->private_data);
168 spin_unlock(&rtc_dev->irq_task_lock);
169 } else
170 rtc_update_irq(rtc->rtc_dev, 1, RTC_PF | RTC_IRQF);
171 } 163 }
172 164
173 return pending; 165 return pending;
@@ -223,81 +215,6 @@ static irqreturn_t sh_rtc_shared(int irq, void *dev_id)
223 return IRQ_RETVAL(ret); 215 return IRQ_RETVAL(ret);
224} 216}
225 217
226static int sh_rtc_irq_set_state(struct device *dev, int enable)
227{
228 struct sh_rtc *rtc = dev_get_drvdata(dev);
229 unsigned int tmp;
230
231 spin_lock_irq(&rtc->lock);
232
233 tmp = readb(rtc->regbase + RCR2);
234
235 if (enable) {
236 rtc->periodic_freq |= PF_KOU;
237 tmp &= ~RCR2_PEF; /* Clear PES bit */
238 tmp |= (rtc->periodic_freq & ~PF_HP); /* Set PES2-0 */
239 } else {
240 rtc->periodic_freq &= ~PF_KOU;
241 tmp &= ~(RCR2_PESMASK | RCR2_PEF);
242 }
243
244 writeb(tmp, rtc->regbase + RCR2);
245
246 spin_unlock_irq(&rtc->lock);
247
248 return 0;
249}
250
251static int sh_rtc_irq_set_freq(struct device *dev, int freq)
252{
253 struct sh_rtc *rtc = dev_get_drvdata(dev);
254 int tmp, ret = 0;
255
256 spin_lock_irq(&rtc->lock);
257 tmp = rtc->periodic_freq & PF_MASK;
258
259 switch (freq) {
260 case 0:
261 rtc->periodic_freq = 0x00;
262 break;
263 case 1:
264 rtc->periodic_freq = 0x60;
265 break;
266 case 2:
267 rtc->periodic_freq = 0x50;
268 break;
269 case 4:
270 rtc->periodic_freq = 0x40;
271 break;
272 case 8:
273 rtc->periodic_freq = 0x30 | PF_HP;
274 break;
275 case 16:
276 rtc->periodic_freq = 0x30;
277 break;
278 case 32:
279 rtc->periodic_freq = 0x20 | PF_HP;
280 break;
281 case 64:
282 rtc->periodic_freq = 0x20;
283 break;
284 case 128:
285 rtc->periodic_freq = 0x10 | PF_HP;
286 break;
287 case 256:
288 rtc->periodic_freq = 0x10;
289 break;
290 default:
291 ret = -ENOTSUPP;
292 }
293
294 if (ret == 0)
295 rtc->periodic_freq |= tmp;
296
297 spin_unlock_irq(&rtc->lock);
298 return ret;
299}
300
301static inline void sh_rtc_setaie(struct device *dev, unsigned int enable) 218static inline void sh_rtc_setaie(struct device *dev, unsigned int enable)
302{ 219{
303 struct sh_rtc *rtc = dev_get_drvdata(dev); 220 struct sh_rtc *rtc = dev_get_drvdata(dev);
@@ -674,8 +591,6 @@ static int __init sh_rtc_probe(struct platform_device *pdev)
674 platform_set_drvdata(pdev, rtc); 591 platform_set_drvdata(pdev, rtc);
675 592
676 /* everything disabled by default */ 593 /* everything disabled by default */
677 sh_rtc_irq_set_freq(&pdev->dev, 0);
678 sh_rtc_irq_set_state(&pdev->dev, 0);
679 sh_rtc_setaie(&pdev->dev, 0); 594 sh_rtc_setaie(&pdev->dev, 0);
680 sh_rtc_setcie(&pdev->dev, 0); 595 sh_rtc_setcie(&pdev->dev, 0);
681 596
@@ -707,8 +622,6 @@ static int __exit sh_rtc_remove(struct platform_device *pdev)
707{ 622{
708 struct sh_rtc *rtc = platform_get_drvdata(pdev); 623 struct sh_rtc *rtc = platform_get_drvdata(pdev);
709 624
710 sh_rtc_irq_set_state(&pdev->dev, 0);
711
712 sh_rtc_setaie(&pdev->dev, 0); 625 sh_rtc_setaie(&pdev->dev, 0);
713 sh_rtc_setcie(&pdev->dev, 0); 626 sh_rtc_setcie(&pdev->dev, 0);
714 627