Lines Matching refs:da9055
14 #include <linux/mfd/da9055/core.h>
15 #include <linux/mfd/da9055/reg.h>
16 #include <linux/mfd/da9055/pdata.h>
20 struct da9055 *da9055;
28 ret = da9055_reg_update(rtc->da9055, DA9055_REG_ALARM_Y,
32 dev_err(rtc->da9055->dev, "Failed to enable ALM: %d\n",
36 ret = da9055_reg_update(rtc->da9055, DA9055_REG_ALARM_Y,
39 dev_err(rtc->da9055->dev,
56 static int da9055_read_alarm(struct da9055 *da9055, struct rtc_time *rtc_tm)
61 ret = da9055_group_read(da9055, DA9055_REG_ALARM_MI, 5, v);
63 dev_err(da9055->dev, "Failed to group read ALM: %d\n", ret);
77 static int da9055_set_alarm(struct da9055 *da9055, struct rtc_time *rtc_tm)
85 ret = da9055_reg_update(da9055, DA9055_REG_ALARM_MI,
88 dev_err(da9055->dev, "Failed to write ALRM MIN: %d\n", ret);
95 ret = da9055_group_write(da9055, DA9055_REG_ALARM_H, 2, v);
99 ret = da9055_reg_update(da9055, DA9055_REG_ALARM_MO,
102 dev_err(da9055->dev, "Failed to write ALM Month:%d\n", ret);
104 ret = da9055_reg_update(da9055, DA9055_REG_ALARM_Y,
107 dev_err(da9055->dev, "Failed to write ALM Year:%d\n", ret);
112 static int da9055_rtc_get_alarm_status(struct da9055 *da9055)
116 ret = da9055_reg_read(da9055, DA9055_REG_ALARM_Y);
118 dev_err(da9055->dev, "Failed to read ALM: %d\n", ret);
131 ret = da9055_reg_read(rtc->da9055, DA9055_REG_COUNT_S);
142 ret = da9055_group_read(rtc->da9055, DA9055_REG_COUNT_S, 6, v);
144 dev_err(rtc->da9055->dev, "Failed to read RTC time : %d\n",
173 return da9055_group_write(rtc->da9055, DA9055_REG_COUNT_S, 6, v);
182 ret = da9055_read_alarm(rtc->da9055, tm);
187 alrm->enabled = da9055_rtc_get_alarm_status(rtc->da9055);
202 ret = da9055_set_alarm(rtc->da9055, tm);
226 static int da9055_rtc_device_init(struct da9055 *da9055,
232 ret = da9055_reg_update(da9055, DA9055_REG_CONTROL_B,
236 ret = da9055_reg_update(da9055, DA9055_REG_EN_32K,
242 ret = da9055_reg_update(da9055, DA9055_REG_CONTROL_B,
249 ret = da9055_reg_update(da9055, DA9055_REG_CONTROL_B,
258 ret = da9055_reg_update(da9055, DA9055_REG_ALARM_MO,
276 rtc->da9055 = dev_get_drvdata(pdev->dev.parent);
277 pdata = dev_get_platdata(rtc->da9055->dev);
280 ret = da9055_rtc_device_init(rtc->da9055, pdata);
284 ret = da9055_reg_read(rtc->da9055, DA9055_REG_ALARM_Y);
309 dev_err(rtc->da9055->dev, "irq registration failed: %d\n", ret);
389 .name = "da9055-rtc",
399 MODULE_ALIAS("platform:da9055-rtc");