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

watchdog: sp5100_tco: Set the AcpiMmioSel bitmask value to 1 instead of 2

The AcpiMmioSel bit is bit 1 in the AcpiMmioEn register, but the current
sp5100_tco driver is using bit 2.

See 2.3.3 Power Management (PM) Registers page 150 of the
AMD SB800-Series Southbridges Register Reference Guide [1].

AcpiMmioEn - RW – 8/16/32 bits - [PM_Reg: 24h]
Field Name Bits Default Description
AcpiMMioDecodeEn 0 0b Set to 1 to enable AcpiMMio space.
AcpiMMIoSel 1 0b Set AcpiMMio registers to be memory-mapped or IO-mapped space.
0: Memory-mapped space
1: I/O-mapped space

The sp5100_tco driver expects zero as a value of AcpiMmioSel (bit 1).

Fortunately, no problems were caused by this typo, because the default
value of the undocumented misused bit 2 seems to be zero.

However, the sp5100_tco driver should use the correct bitmask value.

[1] http://support.amd.com/us/Embedded_TechDocs/45482.pdf

Signed-off-by: Takahisa Tanaka <mc74hc00@gmail.com>
Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Cc: stable <stable@vger.kernel.org>

authored by

Takahisa Tanaka and committed by
Wim Van Sebroeck
81fc933f 18e43212

+1 -1
+1 -1
drivers/watchdog/sp5100_tco.h
··· 57 57 #define SB800_PM_WATCHDOG_DISABLE (1 << 2) 58 58 #define SB800_PM_WATCHDOG_SECOND_RES (3 << 0) 59 59 #define SB800_ACPI_MMIO_DECODE_EN (1 << 0) 60 - #define SB800_ACPI_MMIO_SEL (1 << 2) 60 + #define SB800_ACPI_MMIO_SEL (1 << 1) 61 61 62 62 63 63 #define SB800_PM_WDT_MMIO_OFFSET 0xB00