Message ID | 1511545078-39589-1-git-send-email-philipp.tomsich@theobroma-systems.com |
---|---|
State | Accepted |
Commit | b53f6992e9cb7f0d892ebc2b1620b55559f461be |
Delegated to: | Simon Glass |
Headers | show |
Series | [U-Boot] dm: reset: have the reset-command perform a COLD reset | expand |
On 24 November 2017 at 10:37, Philipp Tomsich <philipp.tomsich@theobroma-systems.com> wrote: > The DM version of do_reset has been issuing a warm-reset, which (on > some platforms keeps GPIOs and other parts of the platform active). > This may cause unintended behaviour, as calling do_reset usually > indicates a desire to reset the board/platform and not just the CPU. > > This changes do_reset to always request a COLD reset. > Note that programmatic uses can still invoke a WARM reset through > reset_cpu() or using sysreset_walk(). > > Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> > --- > > drivers/sysreset/sysreset-uclass.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Simon Glass <sjg@chromium.org>
On 24 November 2017 at 10:37, Philipp Tomsich <philipp.tomsich@theobroma-systems.com> wrote: > The DM version of do_reset has been issuing a warm-reset, which (on > some platforms keeps GPIOs and other parts of the platform active). > This may cause unintended behaviour, as calling do_reset usually > indicates a desire to reset the board/platform and not just the CPU. > > This changes do_reset to always request a COLD reset. > Note that programmatic uses can still invoke a WARM reset through > reset_cpu() or using sysreset_walk(). > > Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> > --- > > drivers/sysreset/sysreset-uclass.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Simon Glass <sjg@chromium.org> Applied to u-boot-dm thanks!
diff --git a/drivers/sysreset/sysreset-uclass.c b/drivers/sysreset/sysreset-uclass.c index 3566d17..0747c52 100644 --- a/drivers/sysreset/sysreset-uclass.c +++ b/drivers/sysreset/sysreset-uclass.c @@ -70,7 +70,7 @@ void reset_cpu(ulong addr) int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { - sysreset_walk_halt(SYSRESET_WARM); + sysreset_walk_halt(SYSRESET_COLD); return 0; }
The DM version of do_reset has been issuing a warm-reset, which (on some platforms keeps GPIOs and other parts of the platform active). This may cause unintended behaviour, as calling do_reset usually indicates a desire to reset the board/platform and not just the CPU. This changes do_reset to always request a COLD reset. Note that programmatic uses can still invoke a WARM reset through reset_cpu() or using sysreset_walk(). Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> --- drivers/sysreset/sysreset-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)