Lines Matching defs:rx8010

53 	{ "rx8010", 0 },
59 { .compatible = "epson,rx8010" },
73 struct rx8010_data *rx8010 = i2c_get_clientdata(client);
76 rtc_lock(rx8010->rtc);
78 err = regmap_read(rx8010->regs, RX8010_FLAG, &flagreg);
80 rtc_unlock(rx8010->rtc);
89 rtc_update_irq(rx8010->rtc, 1, RTC_PF | RTC_IRQF);
94 rtc_update_irq(rx8010->rtc, 1, RTC_AF | RTC_IRQF);
99 rtc_update_irq(rx8010->rtc, 1, RTC_UF | RTC_IRQF);
102 err = regmap_write(rx8010->regs, RX8010_FLAG, flagreg);
103 rtc_unlock(rx8010->rtc);
109 struct rx8010_data *rx8010 = dev_get_drvdata(dev);
113 err = regmap_read(rx8010->regs, RX8010_FLAG, &flagreg);
122 err = regmap_bulk_read(rx8010->regs, RX8010_SEC, date, sizeof(date));
139 struct rx8010_data *rx8010 = dev_get_drvdata(dev);
144 err = regmap_set_bits(rx8010->regs, RX8010_CTRL, RX8010_CTRL_STOP);
156 err = regmap_bulk_write(rx8010->regs, RX8010_SEC, date, sizeof(date));
161 err = regmap_clear_bits(rx8010->regs, RX8010_CTRL, RX8010_CTRL_STOP);
165 err = regmap_clear_bits(rx8010->regs, RX8010_FLAG, RX8010_FLAG_VLF);
174 struct rx8010_data *rx8010 = dev_get_drvdata(dev);
179 err = regmap_write(rx8010->regs, RX8010_RESV17, 0xD8);
183 err = regmap_write(rx8010->regs, RX8010_RESV30, 0x00);
187 err = regmap_write(rx8010->regs, RX8010_RESV31, 0x08);
191 err = regmap_write(rx8010->regs, RX8010_IRQ, 0x00);
195 err = regmap_bulk_read(rx8010->regs, RX8010_FLAG, ctrl, 2);
215 err = regmap_write(rx8010->regs, RX8010_FLAG, ctrl[0]);
220 rx8010->ctrlreg = (ctrl[1] & ~RX8010_CTRL_TEST);
227 struct rx8010_data *rx8010 = dev_get_drvdata(dev);
231 err = regmap_bulk_read(rx8010->regs, RX8010_ALMIN, alarmvals, 3);
235 err = regmap_read(rx8010->regs, RX8010_FLAG, &flagreg);
246 t->enabled = !!(rx8010->ctrlreg & RX8010_CTRL_AIE);
254 struct rx8010_data *rx8010 = dev_get_drvdata(dev);
258 if (rx8010->ctrlreg & (RX8010_CTRL_AIE | RX8010_CTRL_UIE)) {
259 rx8010->ctrlreg &= ~(RX8010_CTRL_AIE | RX8010_CTRL_UIE);
260 err = regmap_write(rx8010->regs, RX8010_CTRL, rx8010->ctrlreg);
265 err = regmap_clear_bits(rx8010->regs, RX8010_FLAG, RX8010_FLAG_AF);
273 err = regmap_bulk_write(rx8010->regs, RX8010_ALMIN, alarmvals, 2);
277 err = regmap_clear_bits(rx8010->regs, RX8010_EXT, RX8010_EXT_WADA);
284 err = regmap_write(rx8010->regs, RX8010_ALWDAY, alarmvals[2]);
289 if (rx8010->rtc->uie_rtctimer.enabled)
290 rx8010->ctrlreg |= RX8010_CTRL_UIE;
291 if (rx8010->rtc->aie_timer.enabled)
292 rx8010->ctrlreg |=
295 err = regmap_write(rx8010->regs, RX8010_CTRL, rx8010->ctrlreg);
306 struct rx8010_data *rx8010 = dev_get_drvdata(dev);
310 ctrl = rx8010->ctrlreg;
313 if (rx8010->rtc->uie_rtctimer.enabled)
315 if (rx8010->rtc->aie_timer.enabled)
318 if (!rx8010->rtc->uie_rtctimer.enabled)
320 if (!rx8010->rtc->aie_timer.enabled)
324 err = regmap_clear_bits(rx8010->regs, RX8010_FLAG, RX8010_FLAG_AF);
328 if (ctrl != rx8010->ctrlreg) {
329 rx8010->ctrlreg = ctrl;
330 err = regmap_write(rx8010->regs, RX8010_CTRL, rx8010->ctrlreg);
340 struct rx8010_data *rx8010 = dev_get_drvdata(dev);
345 err = regmap_read(rx8010->regs, RX8010_FLAG, &flagreg);
367 .name = "rx8010-rtc",
375 struct rx8010_data *rx8010;
378 rx8010 = devm_kzalloc(dev, sizeof(*rx8010), GFP_KERNEL);
379 if (!rx8010)
382 i2c_set_clientdata(client, rx8010);
384 rx8010->regs = devm_regmap_init_i2c(client, &rx8010_regmap_config);
385 if (IS_ERR(rx8010->regs))
386 return PTR_ERR(rx8010->regs);
392 rx8010->rtc = devm_rtc_allocate_device(dev);
393 if (IS_ERR(rx8010->rtc))
394 return PTR_ERR(rx8010->rtc);
405 "rx8010", client);
411 clear_bit(RTC_FEATURE_ALARM, rx8010->rtc->features);
414 rx8010->rtc->ops = &rx8010_rtc_ops;
415 rx8010->rtc->max_user_freq = 1;
416 rx8010->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000;
417 rx8010->rtc->range_max = RTC_TIMESTAMP_END_2099;
419 return devm_rtc_register_device(rx8010->rtc);
424 .name = "rtc-rx8010",