Add a diagnostic console trace indicating the reset type.

Signed-off-by: Denis Mukhin <[email protected]>
---
Changes since v3:
- moved get_reset_type_str() next to do_reset()
---
 drivers/sysreset/sysreset-uclass.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/drivers/sysreset/sysreset-uclass.c 
b/drivers/sysreset/sysreset-uclass.c
index 1ba698b37285..2b7717857ce6 100644
--- a/drivers/sysreset/sysreset-uclass.c
+++ b/drivers/sysreset/sysreset-uclass.c
@@ -161,6 +161,22 @@ static enum sysreset_t sysreset_get_default_type(void)
        return SYSRESET_COLD;
 }
 
+static const char *get_reset_type_str(enum sysreset_t reset_type)
+{
+       switch (reset_type) {
+       case SYSRESET_WARM:
+               return "warm";
+       case SYSRESET_COLD:
+               return "cold";
+       case SYSRESET_POWER:
+               return "power";
+       case SYSRESET_POWER_OFF:
+               return "power off";
+       default:
+               return "unknown";
+       }
+}
+
 int do_reset(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 {
        enum sysreset_t reset_type = sysreset_get_default_type();
@@ -181,7 +197,7 @@ int do_reset(struct cmd_tbl *cmdtp, int flag, int argc, 
char *const argv[])
                }
        }
 
-       printf("resetting ...\n");
+       printf("resetting (%s)...\n", get_reset_type_str(reset_type));
        mdelay(100);
 
 #if IS_ENABLED(CONFIG_SYSRESET_CMD_RESET_ARGS)
-- 
2.54.0

Reply via email to