Symbol: pcf85363
drivers/rtc/rtc-pcf85363.c
123
static int pcf85363_load_capacitance(struct pcf85363 *pcf85363, struct device_node *node)
drivers/rtc/rtc-pcf85363.c
132
dev_warn(&pcf85363->rtc->dev, "Unknown quartz-load-femtofarads value: %d. Assuming 7000",
drivers/rtc/rtc-pcf85363.c
145
return regmap_update_bits(pcf85363->regmap, CTRL_OSCILLATOR,
drivers/rtc/rtc-pcf85363.c
151
struct pcf85363 *pcf85363 = dev_get_drvdata(dev);
drivers/rtc/rtc-pcf85363.c
156
ret = regmap_bulk_read(pcf85363->regmap, DT_100THS, buf, len);
drivers/rtc/rtc-pcf85363.c
180
struct pcf85363 *pcf85363 = dev_get_drvdata(dev);
drivers/rtc/rtc-pcf85363.c
197
ret = regmap_bulk_write(pcf85363->regmap, CTRL_STOP_EN,
drivers/rtc/rtc-pcf85363.c
202
ret = regmap_bulk_write(pcf85363->regmap, DT_100THS,
drivers/rtc/rtc-pcf85363.c
207
return regmap_write(pcf85363->regmap, CTRL_STOP_EN, 0);
drivers/rtc/rtc-pcf85363.c
212
struct pcf85363 *pcf85363 = dev_get_drvdata(dev);
drivers/rtc/rtc-pcf85363.c
217
ret = regmap_bulk_read(pcf85363->regmap, DT_SECOND_ALM1, buf,
drivers/rtc/rtc-pcf85363.c
228
ret = regmap_read(pcf85363->regmap, CTRL_INTA_EN, &val);
drivers/rtc/rtc-pcf85363.c
237
static int _pcf85363_rtc_alarm_irq_enable(struct pcf85363 *pcf85363, unsigned
drivers/rtc/rtc-pcf85363.c
244
ret = regmap_update_bits(pcf85363->regmap, DT_ALARM_EN, alarm_flags,
drivers/rtc/rtc-pcf85363.c
249
ret = regmap_update_bits(pcf85363->regmap, CTRL_INTA_EN,
drivers/rtc/rtc-pcf85363.c
256
return regmap_update_bits(pcf85363->regmap, CTRL_FLAGS, FLAGS_A1F, 0);
drivers/rtc/rtc-pcf85363.c
262
struct pcf85363 *pcf85363 = dev_get_drvdata(dev);
drivers/rtc/rtc-pcf85363.c
264
return _pcf85363_rtc_alarm_irq_enable(pcf85363, enabled);
drivers/rtc/rtc-pcf85363.c
269
struct pcf85363 *pcf85363 = dev_get_drvdata(dev);
drivers/rtc/rtc-pcf85363.c
283
ret = _pcf85363_rtc_alarm_irq_enable(pcf85363, 0);
drivers/rtc/rtc-pcf85363.c
287
ret = regmap_bulk_write(pcf85363->regmap, DT_SECOND_ALM1, buf,
drivers/rtc/rtc-pcf85363.c
292
return _pcf85363_rtc_alarm_irq_enable(pcf85363, alrm->enabled);
drivers/rtc/rtc-pcf85363.c
297
struct pcf85363 *pcf85363 = i2c_get_clientdata(dev_id);
drivers/rtc/rtc-pcf85363.c
301
err = regmap_read(pcf85363->regmap, CTRL_FLAGS, &flags);
drivers/rtc/rtc-pcf85363.c
306
rtc_update_irq(pcf85363->rtc, 1, RTC_IRQF | RTC_AF);
drivers/rtc/rtc-pcf85363.c
307
regmap_update_bits(pcf85363->regmap, CTRL_FLAGS, FLAGS_A1F, 0);
drivers/rtc/rtc-pcf85363.c
325
struct pcf85363 *pcf85363 = priv;
drivers/rtc/rtc-pcf85363.c
327
return regmap_bulk_read(pcf85363->regmap, CTRL_RAM + offset,
drivers/rtc/rtc-pcf85363.c
334
struct pcf85363 *pcf85363 = priv;
drivers/rtc/rtc-pcf85363.c
336
return regmap_bulk_write(pcf85363->regmap, CTRL_RAM + offset,
drivers/rtc/rtc-pcf85363.c
343
struct pcf85363 *pcf85363 = priv;
drivers/rtc/rtc-pcf85363.c
347
ret = regmap_read(pcf85363->regmap, CTRL_RAMBYTE, &tmp_val);
drivers/rtc/rtc-pcf85363.c
356
struct pcf85363 *pcf85363 = priv;
drivers/rtc/rtc-pcf85363.c
360
return regmap_write(pcf85363->regmap, CTRL_RAMBYTE,
drivers/rtc/rtc-pcf85363.c
384
struct pcf85363 *pcf85363;
drivers/rtc/rtc-pcf85363.c
410
pcf85363 = devm_kzalloc(&client->dev, sizeof(struct pcf85363),
drivers/rtc/rtc-pcf85363.c
412
if (!pcf85363)
drivers/rtc/rtc-pcf85363.c
415
pcf85363->regmap = devm_regmap_init_i2c(client, &config->regmap);
drivers/rtc/rtc-pcf85363.c
416
if (IS_ERR(pcf85363->regmap)) {
drivers/rtc/rtc-pcf85363.c
418
return PTR_ERR(pcf85363->regmap);
drivers/rtc/rtc-pcf85363.c
421
i2c_set_clientdata(client, pcf85363);
drivers/rtc/rtc-pcf85363.c
423
pcf85363->rtc = devm_rtc_allocate_device(&client->dev);
drivers/rtc/rtc-pcf85363.c
424
if (IS_ERR(pcf85363->rtc))
drivers/rtc/rtc-pcf85363.c
425
return PTR_ERR(pcf85363->rtc);
drivers/rtc/rtc-pcf85363.c
427
err = pcf85363_load_capacitance(pcf85363, client->dev.of_node);
drivers/rtc/rtc-pcf85363.c
432
pcf85363->rtc->ops = &rtc_ops;
drivers/rtc/rtc-pcf85363.c
433
pcf85363->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000;
drivers/rtc/rtc-pcf85363.c
434
pcf85363->rtc->range_max = RTC_TIMESTAMP_END_2099;
drivers/rtc/rtc-pcf85363.c
439
regmap_write(pcf85363->regmap, CTRL_FLAGS, 0);
drivers/rtc/rtc-pcf85363.c
440
regmap_update_bits(pcf85363->regmap, CTRL_PIN_IO,
drivers/rtc/rtc-pcf85363.c
462
set_bit(RTC_FEATURE_ALARM, pcf85363->rtc->features);
drivers/rtc/rtc-pcf85363.c
464
clear_bit(RTC_FEATURE_ALARM, pcf85363->rtc->features);
drivers/rtc/rtc-pcf85363.c
467
ret = devm_rtc_register_device(pcf85363->rtc);
drivers/rtc/rtc-pcf85363.c
470
nvmem_cfg[i].priv = pcf85363;
drivers/rtc/rtc-pcf85363.c
471
devm_rtc_nvmem_register(pcf85363->rtc, &nvmem_cfg[i]);