Lines Matching refs:ds1374

70 struct ds1374 {  struct
191 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_read_alarm() local
199 mutex_lock(&ds1374->mutex); in ds1374_read_alarm()
222 mutex_unlock(&ds1374->mutex); in ds1374_read_alarm()
229 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_set_alarm() local
256 mutex_lock(&ds1374->mutex); in ds1374_set_alarm()
282 mutex_unlock(&ds1374->mutex); in ds1374_set_alarm()
290 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_irq() local
293 schedule_work(&ds1374->work); in ds1374_irq()
299 struct ds1374 *ds1374 = container_of(work, struct ds1374, work); in ds1374_work() local
300 struct i2c_client *client = ds1374->client; in ds1374_work()
303 mutex_lock(&ds1374->mutex); in ds1374_work()
320 rtc_update_irq(ds1374->rtc, 1, RTC_AF | RTC_IRQF); in ds1374_work()
324 if (!ds1374->exiting) in ds1374_work()
327 mutex_unlock(&ds1374->mutex); in ds1374_work()
334 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_alarm_irq_enable() local
337 mutex_lock(&ds1374->mutex); in ds1374_alarm_irq_enable()
352 mutex_unlock(&ds1374->mutex); in ds1374_alarm_irq_enable()
459 struct ds1374 *ds1374 = i2c_get_clientdata(save_client); in ds1374_wdt_open() local
462 mutex_lock(&ds1374->mutex); in ds1374_wdt_open()
464 mutex_unlock(&ds1374->mutex); in ds1374_wdt_open()
471 mutex_unlock(&ds1374->mutex); in ds1374_wdt_open()
563 struct ds1374 *ds1374 = i2c_get_clientdata(save_client); in ds1374_wdt_unlocked_ioctl() local
565 mutex_lock(&ds1374->mutex); in ds1374_wdt_unlocked_ioctl()
567 mutex_unlock(&ds1374->mutex); in ds1374_wdt_unlocked_ioctl()
612 struct ds1374 *ds1374; in ds1374_probe() local
615 ds1374 = devm_kzalloc(&client->dev, sizeof(struct ds1374), GFP_KERNEL); in ds1374_probe()
616 if (!ds1374) in ds1374_probe()
619 ds1374->client = client; in ds1374_probe()
620 i2c_set_clientdata(client, ds1374); in ds1374_probe()
622 INIT_WORK(&ds1374->work, ds1374_work); in ds1374_probe()
623 mutex_init(&ds1374->mutex); in ds1374_probe()
640 ds1374->rtc = devm_rtc_device_register(&client->dev, client->name, in ds1374_probe()
642 if (IS_ERR(ds1374->rtc)) { in ds1374_probe()
644 return PTR_ERR(ds1374->rtc); in ds1374_probe()
665 struct ds1374 *ds1374 = i2c_get_clientdata(client); in ds1374_remove() local
676 mutex_lock(&ds1374->mutex); in ds1374_remove()
677 ds1374->exiting = 1; in ds1374_remove()
678 mutex_unlock(&ds1374->mutex); in ds1374_remove()
681 cancel_work_sync(&ds1374->work); in ds1374_remove()