Lines Matching refs:max31335
259 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_volatile_reg() local
260 const struct chip_desc *chip = max31335->chip; in max31335_volatile_reg()
286 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_read_time() local
290 ret = regmap_bulk_read(max31335->regmap, max31335->chip->sec_reg, date, in max31335_read_time()
311 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_set_time() local
325 return regmap_bulk_write(max31335->regmap, max31335->chip->sec_reg, date, in max31335_set_time()
331 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_read_alarm() local
336 ret = regmap_bulk_read(max31335->regmap, max31335->chip->alarm1_sec_reg, regs, in max31335_read_alarm()
355 ret = regmap_read(max31335->regmap, max31335->chip->int_en_reg, &ctrl); in max31335_read_alarm()
359 ret = regmap_read(max31335->regmap, max31335->chip->int_status_reg, &status); in max31335_read_alarm()
371 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_set_alarm() local
383 ret = regmap_bulk_write(max31335->regmap, max31335->chip->alarm1_sec_reg, in max31335_set_alarm()
389 ret = regmap_update_bits(max31335->regmap, max31335->chip->int_en_reg, in max31335_set_alarm()
394 ret = regmap_update_bits(max31335->regmap, max31335->chip->int_status_reg, in max31335_set_alarm()
402 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_alarm_irq_enable() local
404 return regmap_update_bits(max31335->regmap, max31335->chip->int_en_reg, in max31335_alarm_irq_enable()
410 struct max31335_data *max31335 = dev_id; in max31335_handle_irq() local
411 struct mutex *lock = &max31335->rtc->ops_lock; in max31335_handle_irq()
416 ret = regmap_read(max31335->regmap, max31335->chip->int_status_reg, &status); in max31335_handle_irq()
421 ret = regmap_update_bits(max31335->regmap, max31335->chip->int_status_reg, in max31335_handle_irq()
426 rtc_update_irq(max31335->rtc, 1, RTC_AF | RTC_IRQF); in max31335_handle_irq()
444 struct max31335_data *max31335) in max31335_trickle_charger_setup() argument
477 return regmap_write(max31335->regmap, max31335->chip->trickle_reg, in max31335_trickle_charger_setup()
486 struct max31335_data *max31335 = clk_hw_to_max31335(hw); in max31335_clkout_recalc_rate() local
491 ret = regmap_read(max31335->regmap, max31335->chip->clkout_reg, ®); in max31335_clkout_recalc_rate()
514 struct max31335_data *max31335 = clk_hw_to_max31335(hw); in max31335_clkout_set_rate() local
522 return regmap_update_bits(max31335->regmap, max31335->chip->clkout_reg, in max31335_clkout_set_rate()
528 struct max31335_data *max31335 = clk_hw_to_max31335(hw); in max31335_clkout_enable() local
530 return regmap_set_bits(max31335->regmap, max31335->chip->clkout_reg, in max31335_clkout_enable()
536 struct max31335_data *max31335 = clk_hw_to_max31335(hw); in max31335_clkout_disable() local
538 regmap_clear_bits(max31335->regmap, max31335->chip->clkout_reg, in max31335_clkout_disable()
544 struct max31335_data *max31335 = clk_hw_to_max31335(hw); in max31335_clkout_is_enabled() local
548 ret = regmap_read(max31335->regmap, max31335->chip->clkout_reg, ®); in max31335_clkout_is_enabled()
572 struct max31335_data *max31335 = priv; in max31335_nvmem_reg_read() local
573 unsigned int reg = max31335->chip->ram_reg + offset; in max31335_nvmem_reg_read()
575 return regmap_bulk_read(max31335->regmap, reg, val, bytes); in max31335_nvmem_reg_read()
581 struct max31335_data *max31335 = priv; in max31335_nvmem_reg_write() local
582 unsigned int reg = max31335->chip->ram_reg + offset; in max31335_nvmem_reg_write()
584 return regmap_bulk_write(max31335->regmap, reg, val, bytes); in max31335_nvmem_reg_write()
598 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_read_temp() local
606 ret = regmap_bulk_read(max31335->regmap, max31335->chip->temp_reg, in max31335_read_temp()
646 struct max31335_data *max31335 = dev_get_drvdata(dev); in max31335_clkout_register() local
650 return regmap_clear_bits(max31335->regmap, max31335->chip->clkout_reg, in max31335_clkout_register()
653 max31335->clkout.init = &max31335_clk_init; in max31335_clkout_register()
655 ret = devm_clk_hw_register(dev, &max31335->clkout); in max31335_clkout_register()
660 &max31335->clkout); in max31335_clkout_register()
664 max31335->clkout.clk = devm_clk_get_enabled(dev, NULL); in max31335_clkout_register()
665 if (IS_ERR(max31335->clkout.clk)) in max31335_clkout_register()
666 return dev_err_probe(dev, PTR_ERR(max31335->clkout.clk), in max31335_clkout_register()
674 struct max31335_data *max31335; in max31335_probe() local
681 max31335 = devm_kzalloc(&client->dev, sizeof(*max31335), GFP_KERNEL); in max31335_probe()
682 if (!max31335) in max31335_probe()
685 max31335->regmap = devm_regmap_init_i2c(client, ®map_config); in max31335_probe()
686 if (IS_ERR(max31335->regmap)) in max31335_probe()
687 return PTR_ERR(max31335->regmap); in max31335_probe()
689 i2c_set_clientdata(client, max31335); in max31335_probe()
693 max31335->chip = match; in max31335_probe()
694 max31335->rtc = devm_rtc_allocate_device(&client->dev); in max31335_probe()
695 if (IS_ERR(max31335->rtc)) in max31335_probe()
696 return PTR_ERR(max31335->rtc); in max31335_probe()
698 max31335->rtc->ops = &max31335_rtc_ops; in max31335_probe()
699 max31335->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; in max31335_probe()
700 max31335->rtc->range_max = RTC_TIMESTAMP_END_2199; in max31335_probe()
701 max31335->rtc->alarm_offset_max = 24 * 60 * 60; in max31335_probe()
711 "max31335", max31335); in max31335_probe()
717 max31335->irq = client->irq; in max31335_probe()
722 clear_bit(RTC_FEATURE_ALARM, max31335->rtc->features); in max31335_probe()
724 max31335_nvmem_cfg.priv = max31335; in max31335_probe()
725 ret = devm_rtc_nvmem_register(max31335->rtc, &max31335_nvmem_cfg); in max31335_probe()
731 if (max31335->chip->temp_reg) { in max31335_probe()
732 hwmon = devm_hwmon_device_register_with_info(&client->dev, client->name, max31335, in max31335_probe()
740 ret = max31335_trickle_charger_setup(&client->dev, max31335); in max31335_probe()
744 return devm_rtc_register_device(max31335->rtc); in max31335_probe()