diff options
Diffstat (limited to 'drivers/rtc')
| -rw-r--r-- | drivers/rtc/Kconfig | 4 | ||||
| -rw-r--r-- | drivers/rtc/rtc-cros-ec.c | 4 | ||||
| -rw-r--r-- | drivers/rtc/rtc-da9063.c | 7 | ||||
| -rw-r--r-- | drivers/rtc/rtc-sh.c | 2 | 
4 files changed, 12 insertions, 5 deletions
| diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index a71734c41693..f933c06bff4f 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig @@ -667,9 +667,9 @@ config RTC_DRV_S5M  	  will be called rtc-s5m.  config RTC_DRV_SD3078 -    tristate "ZXW Crystal SD3078" +    tristate "ZXW Shenzhen whwave SD3078"      help -      If you say yes here you get support for the ZXW Crystal +      If you say yes here you get support for the ZXW Shenzhen whwave        SD3078 RTC chips.        This driver can also be built as a module. If so, the module diff --git a/drivers/rtc/rtc-cros-ec.c b/drivers/rtc/rtc-cros-ec.c index e5444296075e..4d6bf9304ceb 100644 --- a/drivers/rtc/rtc-cros-ec.c +++ b/drivers/rtc/rtc-cros-ec.c @@ -298,7 +298,7 @@ static int cros_ec_rtc_suspend(struct device *dev)  	struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(&pdev->dev);  	if (device_may_wakeup(dev)) -		enable_irq_wake(cros_ec_rtc->cros_ec->irq); +		return enable_irq_wake(cros_ec_rtc->cros_ec->irq);  	return 0;  } @@ -309,7 +309,7 @@ static int cros_ec_rtc_resume(struct device *dev)  	struct cros_ec_rtc *cros_ec_rtc = dev_get_drvdata(&pdev->dev);  	if (device_may_wakeup(dev)) -		disable_irq_wake(cros_ec_rtc->cros_ec->irq); +		return disable_irq_wake(cros_ec_rtc->cros_ec->irq);  	return 0;  } diff --git a/drivers/rtc/rtc-da9063.c b/drivers/rtc/rtc-da9063.c index b4e054c64bad..69b54e5556c0 100644 --- a/drivers/rtc/rtc-da9063.c +++ b/drivers/rtc/rtc-da9063.c @@ -480,6 +480,13 @@ static int da9063_rtc_probe(struct platform_device *pdev)  	da9063_data_to_tm(data, &rtc->alarm_time, rtc);  	rtc->rtc_sync = false; +	/* +	 * TODO: some models have alarms on a minute boundary but still support +	 * real hardware interrupts. Add this once the core supports it. +	 */ +	if (config->rtc_data_start != RTC_SEC) +		rtc->rtc_dev->uie_unsupported = 1; +  	irq_alarm = platform_get_irq_byname(pdev, "ALARM");  	ret = devm_request_threaded_irq(&pdev->dev, irq_alarm, NULL,  					da9063_alarm_event, diff --git a/drivers/rtc/rtc-sh.c b/drivers/rtc/rtc-sh.c index d417b203cbc5..1d3de2a3d1a4 100644 --- a/drivers/rtc/rtc-sh.c +++ b/drivers/rtc/rtc-sh.c @@ -374,7 +374,7 @@ static int sh_rtc_set_time(struct device *dev, struct rtc_time *tm)  static inline int sh_rtc_read_alarm_value(struct sh_rtc *rtc, int reg_off)  {  	unsigned int byte; -	int value = 0xff;	/* return 0xff for ignored values */ +	int value = -1;			/* return -1 for ignored values */  	byte = readb(rtc->regbase + reg_off);  	if (byte & AR_ENB) { | 
