Searched hist:"2 ea4e76e997019ae25ac3417aa46e31ddf7ecb17" (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/drivers/watchdog/ |
H A D | mtx-1_wdt.c | diff 2ea4e76e997019ae25ac3417aa46e31ddf7ecb17 Wed Jun 15 12:15:41 CDT 2011 Florian Fainelli <florian@openwrt.org> watchdog: mtx1-wdt: fix GPIO toggling
Commit e391be76 (MIPS: Alchemy: Clean up GPIO registers and accessors) changed the way the GPIO was toggled. Prior to this patch, we would always actively drive the GPIO output to either 0 or 1, this patch drove the GPIO active to 0, and put the GPIO in tristate to drive it to 1, unfortunately this does not work, revert back to active driving.
Using a signed variable (gstate) to hold the gpio state and using a bit- wise operation on it also resulted in toggling value from 1 to -2 since the variable is signed. This value was then passed on to gpio_direction_ output, which always perform a if (value) ... to set the value to the gpio, so we were always writing a 1 to this GPIO instead of 1 -> 0 -> 1 ...
Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Cc: stable <stable@kernel.org>
|