diff options
Diffstat (limited to 'drivers/rtc')
| -rw-r--r-- | drivers/rtc/rtc-cmos.c | 89 | ||||
| -rw-r--r-- | drivers/rtc/rtc-ds1305.c | 6 | ||||
| -rw-r--r-- | drivers/rtc/rtc-ds1307.c | 6 | ||||
| -rw-r--r-- | drivers/rtc/rtc-ds1511.c | 10 | ||||
| -rw-r--r-- | drivers/rtc/rtc-ds1553.c | 4 | ||||
| -rw-r--r-- | drivers/rtc/rtc-ds1742.c | 4 | ||||
| -rw-r--r-- | drivers/rtc/rtc-m41t80.c | 16 | ||||
| -rw-r--r-- | drivers/rtc/rtc-m48t59.c | 4 | ||||
| -rw-r--r-- | drivers/rtc/rtc-stk17ta8.c | 4 | ||||
| -rw-r--r-- | drivers/rtc/rtc-tx4939.c | 4 |
10 files changed, 82 insertions, 65 deletions
diff --git a/drivers/rtc/rtc-cmos.c b/drivers/rtc/rtc-cmos.c index e9aa814ddd23..96e8e70fbf1e 100644 --- a/drivers/rtc/rtc-cmos.c +++ b/drivers/rtc/rtc-cmos.c | |||
| @@ -238,31 +238,32 @@ static int cmos_read_alarm(struct device *dev, struct rtc_wkalrm *t) | |||
| 238 | rtc_control = CMOS_READ(RTC_CONTROL); | 238 | rtc_control = CMOS_READ(RTC_CONTROL); |
| 239 | spin_unlock_irq(&rtc_lock); | 239 | spin_unlock_irq(&rtc_lock); |
| 240 | 240 | ||
| 241 | /* REVISIT this assumes PC style usage: always BCD */ | 241 | if (!(rtc_control & RTC_DM_BINARY) || RTC_ALWAYS_BCD) { |
| 242 | 242 | if (((unsigned)t->time.tm_sec) < 0x60) | |
| 243 | if (((unsigned)t->time.tm_sec) < 0x60) | 243 | t->time.tm_sec = bcd2bin(t->time.tm_sec); |
| 244 | t->time.tm_sec = bcd2bin(t->time.tm_sec); | ||
| 245 | else | ||
| 246 | t->time.tm_sec = -1; | ||
| 247 | if (((unsigned)t->time.tm_min) < 0x60) | ||
| 248 | t->time.tm_min = bcd2bin(t->time.tm_min); | ||
| 249 | else | ||
| 250 | t->time.tm_min = -1; | ||
| 251 | if (((unsigned)t->time.tm_hour) < 0x24) | ||
| 252 | t->time.tm_hour = bcd2bin(t->time.tm_hour); | ||
| 253 | else | ||
| 254 | t->time.tm_hour = -1; | ||
| 255 | |||
| 256 | if (cmos->day_alrm) { | ||
| 257 | if (((unsigned)t->time.tm_mday) <= 0x31) | ||
| 258 | t->time.tm_mday = bcd2bin(t->time.tm_mday); | ||
| 259 | else | 244 | else |
| 260 | t->time.tm_mday = -1; | 245 | t->time.tm_sec = -1; |
| 261 | if (cmos->mon_alrm) { | 246 | if (((unsigned)t->time.tm_min) < 0x60) |
| 262 | if (((unsigned)t->time.tm_mon) <= 0x12) | 247 | t->time.tm_min = bcd2bin(t->time.tm_min); |
| 263 | t->time.tm_mon = bcd2bin(t->time.tm_mon) - 1; | 248 | else |
| 249 | t->time.tm_min = -1; | ||
| 250 | if (((unsigned)t->time.tm_hour) < 0x24) | ||
| 251 | t->time.tm_hour = bcd2bin(t->time.tm_hour); | ||
| 252 | else | ||
| 253 | t->time.tm_hour = -1; | ||
| 254 | |||
| 255 | if (cmos->day_alrm) { | ||
| 256 | if (((unsigned)t->time.tm_mday) <= 0x31) | ||
| 257 | t->time.tm_mday = bcd2bin(t->time.tm_mday); | ||
| 264 | else | 258 | else |
| 265 | t->time.tm_mon = -1; | 259 | t->time.tm_mday = -1; |
| 260 | |||
| 261 | if (cmos->mon_alrm) { | ||
| 262 | if (((unsigned)t->time.tm_mon) <= 0x12) | ||
| 263 | t->time.tm_mon = bcd2bin(t->time.tm_mon)-1; | ||
| 264 | else | ||
| 265 | t->time.tm_mon = -1; | ||
| 266 | } | ||
| 266 | } | 267 | } |
| 267 | } | 268 | } |
| 268 | t->time.tm_year = -1; | 269 | t->time.tm_year = -1; |
| @@ -322,29 +323,26 @@ static void cmos_irq_disable(struct cmos_rtc *cmos, unsigned char mask) | |||
| 322 | static int cmos_set_alarm(struct device *dev, struct rtc_wkalrm *t) | 323 | static int cmos_set_alarm(struct device *dev, struct rtc_wkalrm *t) |
| 323 | { | 324 | { |
| 324 | struct cmos_rtc *cmos = dev_get_drvdata(dev); | 325 | struct cmos_rtc *cmos = dev_get_drvdata(dev); |
| 325 | unsigned char mon, mday, hrs, min, sec; | 326 | unsigned char mon, mday, hrs, min, sec, rtc_control; |
| 326 | 327 | ||
| 327 | if (!is_valid_irq(cmos->irq)) | 328 | if (!is_valid_irq(cmos->irq)) |
| 328 | return -EIO; | 329 | return -EIO; |
| 329 | 330 | ||
| 330 | /* REVISIT this assumes PC style usage: always BCD */ | ||
| 331 | |||
| 332 | /* Writing 0xff means "don't care" or "match all". */ | ||
| 333 | |||
| 334 | mon = t->time.tm_mon + 1; | 331 | mon = t->time.tm_mon + 1; |
| 335 | mon = (mon <= 12) ? bin2bcd(mon) : 0xff; | ||
| 336 | |||
| 337 | mday = t->time.tm_mday; | 332 | mday = t->time.tm_mday; |
| 338 | mday = (mday >= 1 && mday <= 31) ? bin2bcd(mday) : 0xff; | ||
| 339 | |||
| 340 | hrs = t->time.tm_hour; | 333 | hrs = t->time.tm_hour; |
| 341 | hrs = (hrs < 24) ? bin2bcd(hrs) : 0xff; | ||
| 342 | |||
| 343 | min = t->time.tm_min; | 334 | min = t->time.tm_min; |
| 344 | min = (min < 60) ? bin2bcd(min) : 0xff; | ||
| 345 | |||
| 346 | sec = t->time.tm_sec; | 335 | sec = t->time.tm_sec; |
| 347 | sec = (sec < 60) ? bin2bcd(sec) : 0xff; | 336 | |
| 337 | rtc_control = CMOS_READ(RTC_CONTROL); | ||
| 338 | if (!(rtc_control & RTC_DM_BINARY) || RTC_ALWAYS_BCD) { | ||
| 339 | /* Writing 0xff means "don't care" or "match all". */ | ||
| 340 | mon = (mon <= 12) ? bin2bcd(mon) : 0xff; | ||
| 341 | mday = (mday >= 1 && mday <= 31) ? bin2bcd(mday) : 0xff; | ||
| 342 | hrs = (hrs < 24) ? bin2bcd(hrs) : 0xff; | ||
| 343 | min = (min < 60) ? bin2bcd(min) : 0xff; | ||
| 344 | sec = (sec < 60) ? bin2bcd(sec) : 0xff; | ||
| 345 | } | ||
| 348 | 346 | ||
| 349 | spin_lock_irq(&rtc_lock); | 347 | spin_lock_irq(&rtc_lock); |
| 350 | 348 | ||
| @@ -478,7 +476,7 @@ static int cmos_procfs(struct device *dev, struct seq_file *seq) | |||
| 478 | "update_IRQ\t: %s\n" | 476 | "update_IRQ\t: %s\n" |
| 479 | "HPET_emulated\t: %s\n" | 477 | "HPET_emulated\t: %s\n" |
| 480 | // "square_wave\t: %s\n" | 478 | // "square_wave\t: %s\n" |
| 481 | // "BCD\t\t: %s\n" | 479 | "BCD\t\t: %s\n" |
| 482 | "DST_enable\t: %s\n" | 480 | "DST_enable\t: %s\n" |
| 483 | "periodic_freq\t: %d\n" | 481 | "periodic_freq\t: %d\n" |
| 484 | "batt_status\t: %s\n", | 482 | "batt_status\t: %s\n", |
| @@ -486,7 +484,7 @@ static int cmos_procfs(struct device *dev, struct seq_file *seq) | |||
| 486 | (rtc_control & RTC_UIE) ? "yes" : "no", | 484 | (rtc_control & RTC_UIE) ? "yes" : "no", |
| 487 | is_hpet_enabled() ? "yes" : "no", | 485 | is_hpet_enabled() ? "yes" : "no", |
| 488 | // (rtc_control & RTC_SQWE) ? "yes" : "no", | 486 | // (rtc_control & RTC_SQWE) ? "yes" : "no", |
| 489 | // (rtc_control & RTC_DM_BINARY) ? "no" : "yes", | 487 | (rtc_control & RTC_DM_BINARY) ? "no" : "yes", |
| 490 | (rtc_control & RTC_DST_EN) ? "yes" : "no", | 488 | (rtc_control & RTC_DST_EN) ? "yes" : "no", |
| 491 | cmos->rtc->irq_freq, | 489 | cmos->rtc->irq_freq, |
| 492 | (valid & RTC_VRT) ? "okay" : "dead"); | 490 | (valid & RTC_VRT) ? "okay" : "dead"); |
| @@ -519,7 +517,8 @@ static const struct rtc_class_ops cmos_rtc_ops = { | |||
| 519 | #define NVRAM_OFFSET (RTC_REG_D + 1) | 517 | #define NVRAM_OFFSET (RTC_REG_D + 1) |
| 520 | 518 | ||
| 521 | static ssize_t | 519 | static ssize_t |
| 522 | cmos_nvram_read(struct kobject *kobj, struct bin_attribute *attr, | 520 | cmos_nvram_read(struct file *filp, struct kobject *kobj, |
| 521 | struct bin_attribute *attr, | ||
| 523 | char *buf, loff_t off, size_t count) | 522 | char *buf, loff_t off, size_t count) |
| 524 | { | 523 | { |
| 525 | int retval; | 524 | int retval; |
| @@ -547,7 +546,8 @@ cmos_nvram_read(struct kobject *kobj, struct bin_attribute *attr, | |||
| 547 | } | 546 | } |
| 548 | 547 | ||
| 549 | static ssize_t | 548 | static ssize_t |
| 550 | cmos_nvram_write(struct kobject *kobj, struct bin_attribute *attr, | 549 | cmos_nvram_write(struct file *filp, struct kobject *kobj, |
| 550 | struct bin_attribute *attr, | ||
| 551 | char *buf, loff_t off, size_t count) | 551 | char *buf, loff_t off, size_t count) |
| 552 | { | 552 | { |
| 553 | struct cmos_rtc *cmos; | 553 | struct cmos_rtc *cmos; |
| @@ -749,12 +749,11 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq) | |||
| 749 | 749 | ||
| 750 | spin_unlock_irq(&rtc_lock); | 750 | spin_unlock_irq(&rtc_lock); |
| 751 | 751 | ||
| 752 | /* FIXME teach the alarm code how to handle binary mode; | 752 | /* FIXME: |
| 753 | * <asm-generic/rtc.h> doesn't know 12-hour mode either. | 753 | * <asm-generic/rtc.h> doesn't know 12-hour mode either. |
| 754 | */ | 754 | */ |
| 755 | if (is_valid_irq(rtc_irq) && | 755 | if (is_valid_irq(rtc_irq) && !(rtc_control & RTC_24H)) { |
| 756 | (!(rtc_control & RTC_24H) || (rtc_control & (RTC_DM_BINARY)))) { | 756 | dev_warn(dev, "only 24-hr supported\n"); |
| 757 | dev_dbg(dev, "only 24-hr BCD mode supported\n"); | ||
| 758 | retval = -ENXIO; | 757 | retval = -ENXIO; |
| 759 | goto cleanup1; | 758 | goto cleanup1; |
| 760 | } | 759 | } |
diff --git a/drivers/rtc/rtc-ds1305.c b/drivers/rtc/rtc-ds1305.c index 7836c9cec557..48da85e97ca4 100644 --- a/drivers/rtc/rtc-ds1305.c +++ b/drivers/rtc/rtc-ds1305.c | |||
| @@ -542,7 +542,8 @@ static void msg_init(struct spi_message *m, struct spi_transfer *x, | |||
| 542 | } | 542 | } |
| 543 | 543 | ||
| 544 | static ssize_t | 544 | static ssize_t |
| 545 | ds1305_nvram_read(struct kobject *kobj, struct bin_attribute *attr, | 545 | ds1305_nvram_read(struct file *filp, struct kobject *kobj, |
| 546 | struct bin_attribute *attr, | ||
| 546 | char *buf, loff_t off, size_t count) | 547 | char *buf, loff_t off, size_t count) |
| 547 | { | 548 | { |
| 548 | struct spi_device *spi; | 549 | struct spi_device *spi; |
| @@ -572,7 +573,8 @@ ds1305_nvram_read(struct kobject *kobj, struct bin_attribute *attr, | |||
| 572 | } | 573 | } |
| 573 | 574 | ||
| 574 | static ssize_t | 575 | static ssize_t |
| 575 | ds1305_nvram_write(struct kobject *kobj, struct bin_attribute *attr, | 576 | ds1305_nvram_write(struct file *filp, struct kobject *kobj, |
| 577 | struct bin_attribute *attr, | ||
| 576 | char *buf, loff_t off, size_t count) | 578 | char *buf, loff_t off, size_t count) |
| 577 | { | 579 | { |
| 578 | struct spi_device *spi; | 580 | struct spi_device *spi; |
diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c index c4ec5c158aa1..de033b7ac21f 100644 --- a/drivers/rtc/rtc-ds1307.c +++ b/drivers/rtc/rtc-ds1307.c | |||
| @@ -556,7 +556,8 @@ static const struct rtc_class_ops ds13xx_rtc_ops = { | |||
| 556 | #define NVRAM_SIZE 56 | 556 | #define NVRAM_SIZE 56 |
| 557 | 557 | ||
| 558 | static ssize_t | 558 | static ssize_t |
| 559 | ds1307_nvram_read(struct kobject *kobj, struct bin_attribute *attr, | 559 | ds1307_nvram_read(struct file *filp, struct kobject *kobj, |
| 560 | struct bin_attribute *attr, | ||
| 560 | char *buf, loff_t off, size_t count) | 561 | char *buf, loff_t off, size_t count) |
| 561 | { | 562 | { |
| 562 | struct i2c_client *client; | 563 | struct i2c_client *client; |
| @@ -580,7 +581,8 @@ ds1307_nvram_read(struct kobject *kobj, struct bin_attribute *attr, | |||
| 580 | } | 581 | } |
| 581 | 582 | ||
| 582 | static ssize_t | 583 | static ssize_t |
| 583 | ds1307_nvram_write(struct kobject *kobj, struct bin_attribute *attr, | 584 | ds1307_nvram_write(struct file *filp, struct kobject *kobj, |
| 585 | struct bin_attribute *attr, | ||
| 584 | char *buf, loff_t off, size_t count) | 586 | char *buf, loff_t off, size_t count) |
| 585 | { | 587 | { |
| 586 | struct i2c_client *client; | 588 | struct i2c_client *client; |
diff --git a/drivers/rtc/rtc-ds1511.c b/drivers/rtc/rtc-ds1511.c index 06b8566c4532..37268e97de49 100644 --- a/drivers/rtc/rtc-ds1511.c +++ b/drivers/rtc/rtc-ds1511.c | |||
| @@ -423,8 +423,9 @@ static const struct rtc_class_ops ds1511_rtc_ops = { | |||
| 423 | }; | 423 | }; |
| 424 | 424 | ||
| 425 | static ssize_t | 425 | static ssize_t |
| 426 | ds1511_nvram_read(struct kobject *kobj, struct bin_attribute *ba, | 426 | ds1511_nvram_read(struct file *filp, struct kobject *kobj, |
| 427 | char *buf, loff_t pos, size_t size) | 427 | struct bin_attribute *ba, |
| 428 | char *buf, loff_t pos, size_t size) | ||
| 428 | { | 429 | { |
| 429 | ssize_t count; | 430 | ssize_t count; |
| 430 | 431 | ||
| @@ -452,8 +453,9 @@ ds1511_nvram_read(struct kobject *kobj, struct bin_attribute *ba, | |||
| 452 | } | 453 | } |
| 453 | 454 | ||
| 454 | static ssize_t | 455 | static ssize_t |
| 455 | ds1511_nvram_write(struct kobject *kobj, struct bin_attribute *bin_attr, | 456 | ds1511_nvram_write(struct file *filp, struct kobject *kobj, |
| 456 | char *buf, loff_t pos, size_t size) | 457 | struct bin_attribute *bin_attr, |
| 458 | char *buf, loff_t pos, size_t size) | ||
| 457 | { | 459 | { |
| 458 | ssize_t count; | 460 | ssize_t count; |
| 459 | 461 | ||
diff --git a/drivers/rtc/rtc-ds1553.c b/drivers/rtc/rtc-ds1553.c index 244f9994bcbb..ff432e2ca275 100644 --- a/drivers/rtc/rtc-ds1553.c +++ b/drivers/rtc/rtc-ds1553.c | |||
| @@ -252,7 +252,7 @@ static const struct rtc_class_ops ds1553_rtc_ops = { | |||
| 252 | .update_irq_enable = ds1553_rtc_update_irq_enable, | 252 | .update_irq_enable = ds1553_rtc_update_irq_enable, |
| 253 | }; | 253 | }; |
| 254 | 254 | ||
| 255 | static ssize_t ds1553_nvram_read(struct kobject *kobj, | 255 | static ssize_t ds1553_nvram_read(struct file *filp, struct kobject *kobj, |
| 256 | struct bin_attribute *bin_attr, | 256 | struct bin_attribute *bin_attr, |
| 257 | char *buf, loff_t pos, size_t size) | 257 | char *buf, loff_t pos, size_t size) |
| 258 | { | 258 | { |
| @@ -267,7 +267,7 @@ static ssize_t ds1553_nvram_read(struct kobject *kobj, | |||
| 267 | return count; | 267 | return count; |
| 268 | } | 268 | } |
| 269 | 269 | ||
| 270 | static ssize_t ds1553_nvram_write(struct kobject *kobj, | 270 | static ssize_t ds1553_nvram_write(struct file *filp, struct kobject *kobj, |
| 271 | struct bin_attribute *bin_attr, | 271 | struct bin_attribute *bin_attr, |
| 272 | char *buf, loff_t pos, size_t size) | 272 | char *buf, loff_t pos, size_t size) |
| 273 | { | 273 | { |
diff --git a/drivers/rtc/rtc-ds1742.c b/drivers/rtc/rtc-ds1742.c index 2b4b0bc42d6f..042630c90dd3 100644 --- a/drivers/rtc/rtc-ds1742.c +++ b/drivers/rtc/rtc-ds1742.c | |||
| @@ -128,7 +128,7 @@ static const struct rtc_class_ops ds1742_rtc_ops = { | |||
| 128 | .set_time = ds1742_rtc_set_time, | 128 | .set_time = ds1742_rtc_set_time, |
| 129 | }; | 129 | }; |
| 130 | 130 | ||
| 131 | static ssize_t ds1742_nvram_read(struct kobject *kobj, | 131 | static ssize_t ds1742_nvram_read(struct file *filp, struct kobject *kobj, |
| 132 | struct bin_attribute *bin_attr, | 132 | struct bin_attribute *bin_attr, |
| 133 | char *buf, loff_t pos, size_t size) | 133 | char *buf, loff_t pos, size_t size) |
| 134 | { | 134 | { |
| @@ -143,7 +143,7 @@ static ssize_t ds1742_nvram_read(struct kobject *kobj, | |||
| 143 | return count; | 143 | return count; |
| 144 | } | 144 | } |
| 145 | 145 | ||
| 146 | static ssize_t ds1742_nvram_write(struct kobject *kobj, | 146 | static ssize_t ds1742_nvram_write(struct file *filp, struct kobject *kobj, |
| 147 | struct bin_attribute *bin_attr, | 147 | struct bin_attribute *bin_attr, |
| 148 | char *buf, loff_t pos, size_t size) | 148 | char *buf, loff_t pos, size_t size) |
| 149 | { | 149 | { |
diff --git a/drivers/rtc/rtc-m41t80.c b/drivers/rtc/rtc-m41t80.c index 60fe266f0f49..038095d99976 100644 --- a/drivers/rtc/rtc-m41t80.c +++ b/drivers/rtc/rtc-m41t80.c | |||
| @@ -623,7 +623,7 @@ static ssize_t wdt_read(struct file *file, char __user *buf, | |||
| 623 | * according to their available features. We only actually usefully support | 623 | * according to their available features. We only actually usefully support |
| 624 | * querying capabilities and current status. | 624 | * querying capabilities and current status. |
| 625 | */ | 625 | */ |
| 626 | static int wdt_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 626 | static int wdt_ioctl(struct file *file, unsigned int cmd, |
| 627 | unsigned long arg) | 627 | unsigned long arg) |
| 628 | { | 628 | { |
| 629 | int new_margin, rv; | 629 | int new_margin, rv; |
| @@ -676,6 +676,18 @@ static int wdt_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | |||
| 676 | return -ENOTTY; | 676 | return -ENOTTY; |
| 677 | } | 677 | } |
| 678 | 678 | ||
| 679 | static long wdt_unlocked_ioctl(struct file *file, unsigned int cmd, | ||
| 680 | unsigned long arg) | ||
| 681 | { | ||
| 682 | int ret; | ||
| 683 | |||
| 684 | lock_kernel(); | ||
| 685 | ret = wdt_ioctl(file, cmd, arg); | ||
| 686 | unlock_kernel(); | ||
| 687 | |||
| 688 | return ret; | ||
| 689 | } | ||
| 690 | |||
| 679 | /** | 691 | /** |
| 680 | * wdt_open: | 692 | * wdt_open: |
| 681 | * @inode: inode of device | 693 | * @inode: inode of device |
| @@ -736,7 +748,7 @@ static int wdt_notify_sys(struct notifier_block *this, unsigned long code, | |||
| 736 | static const struct file_operations wdt_fops = { | 748 | static const struct file_operations wdt_fops = { |
| 737 | .owner = THIS_MODULE, | 749 | .owner = THIS_MODULE, |
| 738 | .read = wdt_read, | 750 | .read = wdt_read, |
| 739 | .ioctl = wdt_ioctl, | 751 | .unlocked_ioctl = wdt_unlocked_ioctl, |
| 740 | .write = wdt_write, | 752 | .write = wdt_write, |
| 741 | .open = wdt_open, | 753 | .open = wdt_open, |
| 742 | .release = wdt_release, | 754 | .release = wdt_release, |
diff --git a/drivers/rtc/rtc-m48t59.c b/drivers/rtc/rtc-m48t59.c index 365ff3ac2348..be8359fdb65a 100644 --- a/drivers/rtc/rtc-m48t59.c +++ b/drivers/rtc/rtc-m48t59.c | |||
| @@ -343,7 +343,7 @@ static const struct rtc_class_ops m48t02_rtc_ops = { | |||
| 343 | .set_time = m48t59_rtc_set_time, | 343 | .set_time = m48t59_rtc_set_time, |
| 344 | }; | 344 | }; |
| 345 | 345 | ||
| 346 | static ssize_t m48t59_nvram_read(struct kobject *kobj, | 346 | static ssize_t m48t59_nvram_read(struct file *filp, struct kobject *kobj, |
| 347 | struct bin_attribute *bin_attr, | 347 | struct bin_attribute *bin_attr, |
| 348 | char *buf, loff_t pos, size_t size) | 348 | char *buf, loff_t pos, size_t size) |
| 349 | { | 349 | { |
| @@ -363,7 +363,7 @@ static ssize_t m48t59_nvram_read(struct kobject *kobj, | |||
| 363 | return cnt; | 363 | return cnt; |
| 364 | } | 364 | } |
| 365 | 365 | ||
| 366 | static ssize_t m48t59_nvram_write(struct kobject *kobj, | 366 | static ssize_t m48t59_nvram_write(struct file *filp, struct kobject *kobj, |
| 367 | struct bin_attribute *bin_attr, | 367 | struct bin_attribute *bin_attr, |
| 368 | char *buf, loff_t pos, size_t size) | 368 | char *buf, loff_t pos, size_t size) |
| 369 | { | 369 | { |
diff --git a/drivers/rtc/rtc-stk17ta8.c b/drivers/rtc/rtc-stk17ta8.c index b53a00198dbe..3b943673cd3e 100644 --- a/drivers/rtc/rtc-stk17ta8.c +++ b/drivers/rtc/rtc-stk17ta8.c | |||
| @@ -244,7 +244,7 @@ static const struct rtc_class_ops stk17ta8_rtc_ops = { | |||
| 244 | .alarm_irq_enable = stk17ta8_rtc_alarm_irq_enable, | 244 | .alarm_irq_enable = stk17ta8_rtc_alarm_irq_enable, |
| 245 | }; | 245 | }; |
| 246 | 246 | ||
| 247 | static ssize_t stk17ta8_nvram_read(struct kobject *kobj, | 247 | static ssize_t stk17ta8_nvram_read(struct file *filp, struct kobject *kobj, |
| 248 | struct bin_attribute *attr, char *buf, | 248 | struct bin_attribute *attr, char *buf, |
| 249 | loff_t pos, size_t size) | 249 | loff_t pos, size_t size) |
| 250 | { | 250 | { |
| @@ -259,7 +259,7 @@ static ssize_t stk17ta8_nvram_read(struct kobject *kobj, | |||
| 259 | return count; | 259 | return count; |
| 260 | } | 260 | } |
| 261 | 261 | ||
| 262 | static ssize_t stk17ta8_nvram_write(struct kobject *kobj, | 262 | static ssize_t stk17ta8_nvram_write(struct file *filp, struct kobject *kobj, |
| 263 | struct bin_attribute *attr, char *buf, | 263 | struct bin_attribute *attr, char *buf, |
| 264 | loff_t pos, size_t size) | 264 | loff_t pos, size_t size) |
| 265 | { | 265 | { |
diff --git a/drivers/rtc/rtc-tx4939.c b/drivers/rtc/rtc-tx4939.c index 20bfc64a15c8..ec6313d15359 100644 --- a/drivers/rtc/rtc-tx4939.c +++ b/drivers/rtc/rtc-tx4939.c | |||
| @@ -188,7 +188,7 @@ static const struct rtc_class_ops tx4939_rtc_ops = { | |||
| 188 | .alarm_irq_enable = tx4939_rtc_alarm_irq_enable, | 188 | .alarm_irq_enable = tx4939_rtc_alarm_irq_enable, |
| 189 | }; | 189 | }; |
| 190 | 190 | ||
| 191 | static ssize_t tx4939_rtc_nvram_read(struct kobject *kobj, | 191 | static ssize_t tx4939_rtc_nvram_read(struct file *filp, struct kobject *kobj, |
| 192 | struct bin_attribute *bin_attr, | 192 | struct bin_attribute *bin_attr, |
| 193 | char *buf, loff_t pos, size_t size) | 193 | char *buf, loff_t pos, size_t size) |
| 194 | { | 194 | { |
| @@ -207,7 +207,7 @@ static ssize_t tx4939_rtc_nvram_read(struct kobject *kobj, | |||
| 207 | return count; | 207 | return count; |
| 208 | } | 208 | } |
| 209 | 209 | ||
| 210 | static ssize_t tx4939_rtc_nvram_write(struct kobject *kobj, | 210 | static ssize_t tx4939_rtc_nvram_write(struct file *filp, struct kobject *kobj, |
| 211 | struct bin_attribute *bin_attr, | 211 | struct bin_attribute *bin_attr, |
| 212 | char *buf, loff_t pos, size_t size) | 212 | char *buf, loff_t pos, size_t size) |
| 213 | { | 213 | { |
