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

Commit 0e45adb8 authored by Oliver Schuster's avatar Oliver Schuster Committed by Linus Torvalds
Browse files

[WATCHDOG] Fix it8712f_wdt.c wrong byte order accessing WDT_TIMEOUT



This patch corrects an error in the driver it8712f_wdt.  You cannot set
the 16-bit WDT_TIMEOUT access as a 16-bit outw, because the byte
ordering will be wrong.  So just do the high 8 bits as a separate
access.

Signed-off-by: default avatarOliver Schuster <olivers137@aol.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent d5f1a21c
Loading
Loading
Loading
Loading
+2 −12
Original line number Diff line number Diff line
@@ -111,15 +111,6 @@ superio_inw(int reg)
	return val;
}

static void
superio_outw(int val, int reg)
{
	outb(reg++, REG);
	outb((val >> 8) & 0xff, VAL);
	outb(reg, REG);
	outb(val & 0xff, VAL);
}

static inline void
superio_select(int ldn)
{
@@ -170,8 +161,7 @@ it8712f_wdt_update_margin(void)
	superio_outb(config, WDT_CONFIG);

	if (revision >= 0x08)
		superio_outw(units, WDT_TIMEOUT);
	else
		superio_outb(units >> 8, WDT_TIMEOUT + 1);
	superio_outb(units, WDT_TIMEOUT);
}