commit | ff6a8f3c06eab0f0afb65d5e5925eee9860f0add | [log] [tgz] |
---|---|---|
author | Simon Glass <sjg@chromium.org> | Tue Apr 28 20:11:29 2015 -0600 |
committer | Simon Glass <sjg@chromium.org> | Wed Apr 29 21:02:31 2015 -0600 |
tree | 365c5606944eb9a1c9ae4bfd8e1f79e138257241 | |
parent | 87f4cd3a308b0bcffd8f9b5e7121fdb086c080f5 [diff] |
x86: Implement reset_cpu() correctly for modern CPUs The existing code is pretty ancient and is unreliable on modern hardware. Generally it will hang. We can use port 0xcf9 to initiate reset on more modern hardware (say in the last 10 years). Update the reset_cpu() function to do this, and add a new 'full reset' function to perform a full power cycle. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>