Commit f5334aa8 authored by Biju Das's avatar Biju Das Committed by Alexandre Belloni
Browse files

rtc: da9063: Use dev_err_probe()

parent 4b60c32e
Loading
Loading
Loading
Loading
+17 −25
Original line number Diff line number Diff line
@@ -407,57 +407,49 @@ static int da9063_rtc_probe(struct platform_device *pdev)
				 config->rtc_enable_reg,
				 config->rtc_enable_mask,
				 config->rtc_enable_mask);
	if (ret < 0) {
		dev_err(&pdev->dev, "Failed to enable RTC\n");
		return ret;
	}
	if (ret < 0)
		return dev_err_probe(&pdev->dev, ret, "Failed to enable RTC\n");

	ret = regmap_update_bits(rtc->regmap,
				 config->rtc_enable_32k_crystal_reg,
				 config->rtc_crystal_mask,
				 config->rtc_crystal_mask);
	if (ret < 0) {
		dev_err(&pdev->dev, "Failed to run 32kHz oscillator\n");
		return ret;
	}
	if (ret < 0)
		return dev_err_probe(&pdev->dev, ret,
				     "Failed to run 32kHz oscillator\n");

	ret = regmap_update_bits(rtc->regmap,
				 config->rtc_alarm_secs_reg,
				 config->rtc_alarm_status_mask,
				 0);
	if (ret < 0) {
		dev_err(&pdev->dev, "Failed to access RTC alarm register\n");
		return ret;
	}
	if (ret < 0)
		return dev_err_probe(&pdev->dev, ret,
				     "Failed to access RTC alarm register\n");

	ret = regmap_update_bits(rtc->regmap,
				 config->rtc_alarm_secs_reg,
				 DA9063_ALARM_STATUS_ALARM,
				 DA9063_ALARM_STATUS_ALARM);
	if (ret < 0) {
		dev_err(&pdev->dev, "Failed to access RTC alarm register\n");
		return ret;
	}
	if (ret < 0)
		return dev_err_probe(&pdev->dev, ret,
				     "Failed to access RTC alarm register\n");

	ret = regmap_update_bits(rtc->regmap,
				 config->rtc_alarm_year_reg,
				 config->rtc_tick_on_mask,
				 0);
	if (ret < 0) {
		dev_err(&pdev->dev, "Failed to disable TICKs\n");
		return ret;
	}
	if (ret < 0)
		return dev_err_probe(&pdev->dev, ret,
				     "Failed to disable TICKs\n");

	data[RTC_SEC] = 0;
	ret = regmap_bulk_read(rtc->regmap,
			       config->rtc_alarm_secs_reg,
			       &data[config->rtc_data_start],
			       config->rtc_alarm_len);
	if (ret < 0) {
		dev_err(&pdev->dev, "Failed to read initial alarm data: %d\n",
			ret);
		return ret;
	}
	if (ret < 0)
		return dev_err_probe(&pdev->dev, ret,
				     "Failed to read initial alarm data\n");

	platform_set_drvdata(pdev, rtc);