Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2e483c87 authored by Moritz Fischer's avatar Moritz Fischer Committed by Greg Kroah-Hartman
Browse files

rtc: ds1374: wdt: Fix stop/start ioctl always returning -EINVAL




[ Upstream commit 538c08f4c89580fc644e2bc64e0a4b86c925da4e ]

The WDIOC_SETOPTIONS case in the watchdog ioctl would alwayss falls
through to the -EINVAL case. This is wrong since thew watchdog does
actually get stopped or started correctly.

Fixes: 920f91e5 ("drivers/rtc/rtc-ds1374.c: add watchdog support")
Signed-off-by: default avatarMoritz Fischer <mdf@kernel.org>
Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: default avatarSasha Levin <alexander.levin@microsoft.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent f20cb85e
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -548,14 +548,15 @@ static long ds1374_wdt_ioctl(struct file *file, unsigned int cmd,
		if (options & WDIOS_DISABLECARD) {
			pr_info("disable watchdog\n");
			ds1374_wdt_disable();
			return 0;
		}

		if (options & WDIOS_ENABLECARD) {
			pr_info("enable watchdog\n");
			ds1374_wdt_settimeout(wdt_margin);
			ds1374_wdt_ping();
			return 0;
		}

		return -EINVAL;
	}
	return -ENOTTY;