Symbol: twl_rtc
drivers/rtc/rtc-twl.c
158
static int twl_rtc_read_u8(struct twl_rtc *twl_rtc, u8 *data, u8 reg)
drivers/rtc/rtc-twl.c
162
ret = twl_i2c_read_u8(TWL_MODULE_RTC, data, (twl_rtc->reg_map[reg]));
drivers/rtc/rtc-twl.c
171
static int twl_rtc_write_u8(struct twl_rtc *twl_rtc, u8 data, u8 reg)
drivers/rtc/rtc-twl.c
175
ret = twl_i2c_write_u8(TWL_MODULE_RTC, data, (twl_rtc->reg_map[reg]));
drivers/rtc/rtc-twl.c
185
static int set_rtc_irq_bit(struct twl_rtc *twl_rtc, unsigned char bit)
drivers/rtc/rtc-twl.c
191
if (twl_rtc->rtc_irq_bits & bit)
drivers/rtc/rtc-twl.c
194
val = twl_rtc->rtc_irq_bits | bit;
drivers/rtc/rtc-twl.c
196
ret = twl_rtc_write_u8(twl_rtc, val, REG_RTC_INTERRUPTS_REG);
drivers/rtc/rtc-twl.c
198
twl_rtc->rtc_irq_bits = val;
drivers/rtc/rtc-twl.c
206
static int mask_rtc_irq_bit(struct twl_rtc *twl_rtc, unsigned char bit)
drivers/rtc/rtc-twl.c
212
if (!(twl_rtc->rtc_irq_bits & bit))
drivers/rtc/rtc-twl.c
215
val = twl_rtc->rtc_irq_bits & ~bit;
drivers/rtc/rtc-twl.c
216
ret = twl_rtc_write_u8(twl_rtc, val, REG_RTC_INTERRUPTS_REG);
drivers/rtc/rtc-twl.c
218
twl_rtc->rtc_irq_bits = val;
drivers/rtc/rtc-twl.c
226
struct twl_rtc *twl_rtc = dev_get_drvdata(dev);
drivers/rtc/rtc-twl.c
231
ret = set_rtc_irq_bit(twl_rtc,
drivers/rtc/rtc-twl.c
233
if (device_can_wakeup(dev) && !twl_rtc->wake_enabled) {
drivers/rtc/rtc-twl.c
235
twl_rtc->wake_enabled = true;
drivers/rtc/rtc-twl.c
238
ret = mask_rtc_irq_bit(twl_rtc,
drivers/rtc/rtc-twl.c
240
if (twl_rtc->wake_enabled) {
drivers/rtc/rtc-twl.c
242
twl_rtc->wake_enabled = false;
drivers/rtc/rtc-twl.c
260
struct twl_rtc *twl_rtc = dev_get_drvdata(dev);
drivers/rtc/rtc-twl.c
266
ret = twl_rtc_read_u8(twl_rtc, &save_control, REG_RTC_CTRL_REG);
drivers/rtc/rtc-twl.c
272
if (twl_rtc->class == TWL_6030) {
drivers/rtc/rtc-twl.c
275
ret = twl_rtc_write_u8(twl_rtc, save_control,
drivers/rtc/rtc-twl.c
289
if (twl_rtc->class == TWL_6030)
drivers/rtc/rtc-twl.c
292
ret = twl_rtc_write_u8(twl_rtc, rtc_control, REG_RTC_CTRL_REG);
drivers/rtc/rtc-twl.c
299
(twl_rtc->reg_map[REG_SECONDS_REG]), ALL_TIME_REGS);
drivers/rtc/rtc-twl.c
307
if (twl_rtc->class == TWL_6030) {
drivers/rtc/rtc-twl.c
308
ret = twl_rtc_write_u8(twl_rtc, save_control, REG_RTC_CTRL_REG);
drivers/rtc/rtc-twl.c
328
struct twl_rtc *twl_rtc = dev_get_drvdata(dev);
drivers/rtc/rtc-twl.c
341
ret = twl_rtc_read_u8(twl_rtc, &save_control, REG_RTC_CTRL_REG);
drivers/rtc/rtc-twl.c
346
ret = twl_rtc_write_u8(twl_rtc, save_control, REG_RTC_CTRL_REG);
drivers/rtc/rtc-twl.c
352
(twl_rtc->reg_map[REG_SECONDS_REG]), ALL_TIME_REGS);
drivers/rtc/rtc-twl.c
360
ret = twl_rtc_write_u8(twl_rtc, save_control, REG_RTC_CTRL_REG);
drivers/rtc/rtc-twl.c
371
struct twl_rtc *twl_rtc = dev_get_drvdata(dev);
drivers/rtc/rtc-twl.c
376
twl_rtc->reg_map[REG_ALARM_SECONDS_REG], ALL_TIME_REGS);
drivers/rtc/rtc-twl.c
391
if (twl_rtc->rtc_irq_bits & BIT_RTC_INTERRUPTS_REG_IT_ALARM_M)
drivers/rtc/rtc-twl.c
399
struct twl_rtc *twl_rtc = dev_get_drvdata(dev);
drivers/rtc/rtc-twl.c
417
twl_rtc->reg_map[REG_ALARM_SECONDS_REG], ALL_TIME_REGS);
drivers/rtc/rtc-twl.c
431
struct twl_rtc *twl_rtc = data;
drivers/rtc/rtc-twl.c
437
res = twl_rtc_read_u8(twl_rtc, &rd_reg, REG_RTC_STATUS_REG);
drivers/rtc/rtc-twl.c
451
res = twl_rtc_write_u8(twl_rtc, BIT_RTC_STATUS_REG_ALARM_M,
drivers/rtc/rtc-twl.c
456
if (twl_rtc->class == TWL_4030) {
drivers/rtc/rtc-twl.c
475
rtc_update_irq(twl_rtc->rtc, 1, events);
drivers/rtc/rtc-twl.c
506
struct twl_rtc *twl_rtc;
drivers/rtc/rtc-twl.c
521
twl_rtc = devm_kzalloc(&pdev->dev, sizeof(*twl_rtc), GFP_KERNEL);
drivers/rtc/rtc-twl.c
522
if (!twl_rtc)
drivers/rtc/rtc-twl.c
526
twl_rtc->class = TWL_4030;
drivers/rtc/rtc-twl.c
527
twl_rtc->reg_map = (u8 *)twl4030_rtc_reg_map;
drivers/rtc/rtc-twl.c
529
twl_rtc->class = TWL_6030;
drivers/rtc/rtc-twl.c
530
twl_rtc->reg_map = (u8 *)twl6030_rtc_reg_map;
drivers/rtc/rtc-twl.c
536
ret = twl_rtc_read_u8(twl_rtc, &rd_reg, REG_RTC_STATUS_REG);
drivers/rtc/rtc-twl.c
547
ret = twl_rtc_write_u8(twl_rtc, rd_reg, REG_RTC_STATUS_REG);
drivers/rtc/rtc-twl.c
551
if (twl_rtc->class == TWL_6030) {
drivers/rtc/rtc-twl.c
558
ret = twl_rtc_write_u8(twl_rtc, BIT_RTC_CTRL_REG_STOP_RTC_M,
drivers/rtc/rtc-twl.c
564
ret = twl_rtc_write_u8(twl_rtc, 0, REG_RTC_INTERRUPTS_REG);
drivers/rtc/rtc-twl.c
569
ret = twl_rtc_read_u8(twl_rtc, &twl_rtc->rtc_irq_bits,
drivers/rtc/rtc-twl.c
574
platform_set_drvdata(pdev, twl_rtc);
drivers/rtc/rtc-twl.c
577
twl_rtc->rtc = devm_rtc_device_register(&pdev->dev, pdev->name,
drivers/rtc/rtc-twl.c
579
if (IS_ERR(twl_rtc->rtc))
drivers/rtc/rtc-twl.c
580
return PTR_ERR(twl_rtc->rtc);
drivers/rtc/rtc-twl.c
585
dev_name(&twl_rtc->rtc->dev), twl_rtc);
drivers/rtc/rtc-twl.c
602
devm_rtc_nvmem_register(twl_rtc->rtc, &nvmem_cfg);
drivers/rtc/rtc-twl.c
607
devm_rtc_nvmem_register(twl_rtc->rtc, &nvmem_cfg);
drivers/rtc/rtc-twl.c
612
devm_rtc_nvmem_register(twl_rtc->rtc, &nvmem_cfg);
drivers/rtc/rtc-twl.c
624
struct twl_rtc *twl_rtc = platform_get_drvdata(pdev);
drivers/rtc/rtc-twl.c
627
mask_rtc_irq_bit(twl_rtc, BIT_RTC_INTERRUPTS_REG_IT_ALARM_M);
drivers/rtc/rtc-twl.c
628
mask_rtc_irq_bit(twl_rtc, BIT_RTC_INTERRUPTS_REG_IT_TIMER_M);
drivers/rtc/rtc-twl.c
629
if (twl_rtc->class == TWL_6030) {
drivers/rtc/rtc-twl.c
639
struct twl_rtc *twl_rtc = platform_get_drvdata(pdev);
drivers/rtc/rtc-twl.c
643
mask_rtc_irq_bit(twl_rtc, BIT_RTC_INTERRUPTS_REG_IT_TIMER_M);
drivers/rtc/rtc-twl.c
649
struct twl_rtc *twl_rtc = dev_get_drvdata(dev);
drivers/rtc/rtc-twl.c
651
twl_rtc->irqstat = twl_rtc->rtc_irq_bits;
drivers/rtc/rtc-twl.c
653
mask_rtc_irq_bit(twl_rtc, BIT_RTC_INTERRUPTS_REG_IT_TIMER_M);
drivers/rtc/rtc-twl.c
659
struct twl_rtc *twl_rtc = dev_get_drvdata(dev);
drivers/rtc/rtc-twl.c
661
set_rtc_irq_bit(twl_rtc, twl_rtc->irqstat);