Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

watchdog: sch56xx-common: set correct bits in register()

WDOG_NO_WAY_OUT (3) and WDOG_ACTIVE (0) are the bit numbers, not a mask.
So "data->wddev.status |= WDOG_ACTIVE;" was intended to set bit zero but
it is a no-op.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>

authored by

Dan Carpenter and committed by
Wim Van Sebroeck
bb644913 664a0d78

+2 -2
+2 -2
drivers/hwmon/sch56xx-common.c
··· 464 464 data->wddev.min_timeout = 1; 465 465 data->wddev.max_timeout = 255 * 60; 466 466 if (nowayout) 467 - data->wddev.status |= WDOG_NO_WAY_OUT; 467 + set_bit(WDOG_NO_WAY_OUT, &data->wddev.status); 468 468 if (output_enable & SCH56XX_WDOG_OUTPUT_ENABLE) 469 - data->wddev.status |= WDOG_ACTIVE; 469 + set_bit(WDOG_ACTIVE, &data->wddev.status); 470 470 471 471 /* Since the watchdog uses a downcounter there is no register to read 472 472 the BIOS set timeout from (if any was set at all) ->