summaryrefslogtreecommitdiff
path: root/drivers/sysreset/sysreset-uclass.c
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2021-04-20 07:32:04 -0400
committerTom Rini <[email protected]>2021-04-20 07:32:04 -0400
commit842d049be23976ebcbb2522fa8d752d3aae8631a (patch)
treeca4ff1ffa3d447d51e945ce4cd9f75f6e80babe9 /drivers/sysreset/sysreset-uclass.c
parenteed05148c261e3b5f00b11a7a14bf0222b80a0ac (diff)
parent4e9bce12432492aa7a7c2121d9fae1640606ace5 (diff)
Merge branch '2021-04-20-assorted-improvements'
- ARM64 GIC fix, CONFIG_IRQ now moved to Kconfig - IDE, lz4 fixes - octeontx cleanups / enhancements - highbank DM migration - psci updates - Enable use of -fstack-protector
Diffstat (limited to 'drivers/sysreset/sysreset-uclass.c')
-rw-r--r--drivers/sysreset/sysreset-uclass.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/sysreset/sysreset-uclass.c b/drivers/sysreset/sysreset-uclass.c
index 9512f6881fc..279b087d16d 100644
--- a/drivers/sysreset/sysreset-uclass.c
+++ b/drivers/sysreset/sysreset-uclass.c
@@ -122,10 +122,19 @@ void reset_cpu(void)
#if IS_ENABLED(CONFIG_SYSRESET_CMD_RESET)
int do_reset(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
{
+ enum sysreset_t reset_type = SYSRESET_COLD;
+
+ if (argc > 2)
+ return CMD_RET_USAGE;
+
+ if (argc == 2 && argv[1][0] == '-' && argv[1][1] == 'w') {
+ reset_type = SYSRESET_WARM;
+ }
+
printf("resetting ...\n");
mdelay(100);
- sysreset_walk_halt(SYSRESET_COLD);
+ sysreset_walk_halt(reset_type);
return 0;
}