Lines Matching refs:nuc900_rtc
47 struct nuc900_rtc { struct
64 struct nuc900_rtc *rtc = _rtc; in nuc900_rtc_interrupt() argument
86 static int *check_rtc_access_enable(struct nuc900_rtc *nuc900_rtc) in check_rtc_access_enable() argument
89 __raw_writel(INIRRESET, nuc900_rtc->rtc_reg + REG_RTC_INIR); in check_rtc_access_enable()
93 __raw_writel(AERPOWERON, nuc900_rtc->rtc_reg + REG_RTC_AER); in check_rtc_access_enable()
95 while (!(__raw_readl(nuc900_rtc->rtc_reg + REG_RTC_AER) & AERRWENB) in check_rtc_access_enable()
139 struct nuc900_rtc *rtc = dev_get_drvdata(dev); in nuc900_alarm_irq_enable()
153 struct nuc900_rtc *rtc = dev_get_drvdata(dev); in nuc900_rtc_read_time()
164 struct nuc900_rtc *rtc = dev_get_drvdata(dev); in nuc900_rtc_set_time()
186 struct nuc900_rtc *rtc = dev_get_drvdata(dev); in nuc900_rtc_read_alarm()
197 struct nuc900_rtc *rtc = dev_get_drvdata(dev); in nuc900_rtc_set_alarm()
228 struct nuc900_rtc *nuc900_rtc; in nuc900_rtc_probe() local
230 nuc900_rtc = devm_kzalloc(&pdev->dev, sizeof(struct nuc900_rtc), in nuc900_rtc_probe()
232 if (!nuc900_rtc) in nuc900_rtc_probe()
236 nuc900_rtc->rtc_reg = devm_ioremap_resource(&pdev->dev, res); in nuc900_rtc_probe()
237 if (IS_ERR(nuc900_rtc->rtc_reg)) in nuc900_rtc_probe()
238 return PTR_ERR(nuc900_rtc->rtc_reg); in nuc900_rtc_probe()
240 platform_set_drvdata(pdev, nuc900_rtc); in nuc900_rtc_probe()
242 nuc900_rtc->rtcdev = devm_rtc_device_register(&pdev->dev, pdev->name, in nuc900_rtc_probe()
244 if (IS_ERR(nuc900_rtc->rtcdev)) { in nuc900_rtc_probe()
246 return PTR_ERR(nuc900_rtc->rtcdev); in nuc900_rtc_probe()
249 __raw_writel(__raw_readl(nuc900_rtc->rtc_reg + REG_RTC_TSSR) | MODE24, in nuc900_rtc_probe()
250 nuc900_rtc->rtc_reg + REG_RTC_TSSR); in nuc900_rtc_probe()
252 nuc900_rtc->irq_num = platform_get_irq(pdev, 0); in nuc900_rtc_probe()
253 if (devm_request_irq(&pdev->dev, nuc900_rtc->irq_num, in nuc900_rtc_probe()
254 nuc900_rtc_interrupt, 0, "nuc900rtc", nuc900_rtc)) { in nuc900_rtc_probe()