Lines Matching refs:ds1374

70 struct ds1374 {  struct
189 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_read_alarm() local
197 mutex_lock(&ds1374->mutex); in ds1374_read_alarm()
220 mutex_unlock(&ds1374->mutex); in ds1374_read_alarm()
227 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_set_alarm() local
254 mutex_lock(&ds1374->mutex); in ds1374_set_alarm()
280 mutex_unlock(&ds1374->mutex); in ds1374_set_alarm()
288 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_irq() local
291 schedule_work(&ds1374->work); in ds1374_irq()
297 struct ds1374 *ds1374 = container_of(work, struct ds1374, work); in ds1374_work() local
298 struct i2c_client *client = ds1374->client; in ds1374_work()
301 mutex_lock(&ds1374->mutex); in ds1374_work()
318 rtc_update_irq(ds1374->rtc, 1, RTC_AF | RTC_IRQF); in ds1374_work()
322 if (!ds1374->exiting) in ds1374_work()
325 mutex_unlock(&ds1374->mutex); in ds1374_work()
332 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_alarm_irq_enable() local
335 mutex_lock(&ds1374->mutex); in ds1374_alarm_irq_enable()
350 mutex_unlock(&ds1374->mutex); in ds1374_alarm_irq_enable()
457 struct ds1374 *ds1374 = i2c_get_clientdata(save_client); in ds1374_wdt_open() local
460 mutex_lock(&ds1374->mutex); in ds1374_wdt_open()
462 mutex_unlock(&ds1374->mutex); in ds1374_wdt_open()
469 mutex_unlock(&ds1374->mutex); in ds1374_wdt_open()
567 struct ds1374 *ds1374 = i2c_get_clientdata(save_client); in ds1374_wdt_unlocked_ioctl() local
569 mutex_lock(&ds1374->mutex); in ds1374_wdt_unlocked_ioctl()
571 mutex_unlock(&ds1374->mutex); in ds1374_wdt_unlocked_ioctl()
616 struct ds1374 *ds1374; in ds1374_probe() local
619 ds1374 = devm_kzalloc(&client->dev, sizeof(struct ds1374), GFP_KERNEL); in ds1374_probe()
620 if (!ds1374) in ds1374_probe()
623 ds1374->client = client; in ds1374_probe()
624 i2c_set_clientdata(client, ds1374); in ds1374_probe()
626 INIT_WORK(&ds1374->work, ds1374_work); in ds1374_probe()
627 mutex_init(&ds1374->mutex); in ds1374_probe()
644 ds1374->rtc = devm_rtc_device_register(&client->dev, client->name, in ds1374_probe()
646 if (IS_ERR(ds1374->rtc)) { in ds1374_probe()
648 return PTR_ERR(ds1374->rtc); in ds1374_probe()
669 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_remove() local
677 mutex_lock(&ds1374->mutex); in ds1374_remove()
678 ds1374->exiting = 1; in ds1374_remove()
679 mutex_unlock(&ds1374->mutex); in ds1374_remove()
682 cancel_work_sync(&ds1374->work); in ds1374_remove()