cs5535-mfgpt: Add another reset method
authorRichard Weinberger <richard@nod.at>
Sat, 30 Mar 2013 19:48:16 +0000 (20:48 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 1 Apr 2013 19:29:52 +0000 (12:29 -0700)
commit945480b159aa0869bf5dadc07fdbae964882820b
treec17504b13e341abaca738a3ec5b0d4eb3f3d86c0
parent974857266aae29c371ac2313ab520616335caec9
cs5535-mfgpt: Add another reset method

The CS5535/CS5536 MFGPT has no support to reset the device.
The current method uses an undocumented bit but does not work on all
devices. At least on my ALIX board it completely freezes the board.

This new method tries to soft reset all timers by unconfiguring them.
But this does not clear the RO setup register and therefore it has to
be ignored while probing.

Resetting the timers is not only needed on broken BIOSes also when
kexec is used. Otherwise the new kernel will find preconfigured timers
and odd things will happen.

Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/cs5535-mfgpt.c