diff options
Diffstat (limited to 'drivers/rtc/rtc-dev.c')
-rw-r--r-- | drivers/rtc/rtc-dev.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/rtc/rtc-dev.c b/drivers/rtc/rtc-dev.c index 583789c66cdb..dcf5f86461f7 100644 --- a/drivers/rtc/rtc-dev.c +++ b/drivers/rtc/rtc-dev.c | |||
@@ -53,9 +53,10 @@ static int rtc_dev_open(struct inode *inode, struct file *file) | |||
53 | * Routine to poll RTC seconds field for change as often as possible, | 53 | * Routine to poll RTC seconds field for change as often as possible, |
54 | * after first RTC_UIE use timer to reduce polling | 54 | * after first RTC_UIE use timer to reduce polling |
55 | */ | 55 | */ |
56 | static void rtc_uie_task(void *data) | 56 | static void rtc_uie_task(struct work_struct *work) |
57 | { | 57 | { |
58 | struct rtc_device *rtc = data; | 58 | struct rtc_device *rtc = |
59 | container_of(work, struct rtc_device, uie_task); | ||
59 | struct rtc_time tm; | 60 | struct rtc_time tm; |
60 | int num = 0; | 61 | int num = 0; |
61 | int err; | 62 | int err; |
@@ -398,7 +399,7 @@ static int rtc_dev_add_device(struct class_device *class_dev, | |||
398 | spin_lock_init(&rtc->irq_lock); | 399 | spin_lock_init(&rtc->irq_lock); |
399 | init_waitqueue_head(&rtc->irq_queue); | 400 | init_waitqueue_head(&rtc->irq_queue); |
400 | #ifdef CONFIG_RTC_INTF_DEV_UIE_EMUL | 401 | #ifdef CONFIG_RTC_INTF_DEV_UIE_EMUL |
401 | INIT_WORK(&rtc->uie_task, rtc_uie_task, rtc); | 402 | INIT_WORK(&rtc->uie_task, rtc_uie_task); |
402 | setup_timer(&rtc->uie_timer, rtc_uie_timer, (unsigned long)rtc); | 403 | setup_timer(&rtc->uie_timer, rtc_uie_timer, (unsigned long)rtc); |
403 | #endif | 404 | #endif |
404 | 405 | ||