diff options
Diffstat (limited to 'drivers/rtc/rtc-ds1307.c')
| -rw-r--r-- | drivers/rtc/rtc-ds1307.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c index 49702942bb08..54c85cdd019d 100644 --- a/drivers/rtc/rtc-ds1307.c +++ b/drivers/rtc/rtc-ds1307.c @@ -1668,6 +1668,8 @@ static const struct watchdog_ops ds1388_wdt_ops = {  static void ds1307_wdt_register(struct ds1307 *ds1307)  {  	struct watchdog_device	*wdt; +	int err; +	int val;  	if (ds1307->type != ds_1388)  		return; @@ -1676,6 +1678,10 @@ static void ds1307_wdt_register(struct ds1307 *ds1307)  	if (!wdt)  		return; +	err = regmap_read(ds1307->regmap, DS1388_REG_FLAG, &val); +	if (!err && val & DS1388_BIT_WF) +		wdt->bootstatus = WDIOF_CARDRESET; +  	wdt->info = &ds1388_wdt_info;  	wdt->ops = &ds1388_wdt_ops;  	wdt->timeout = 99;  |