Hi Denis,

On 6/3/26 9:07 AM, [email protected] wrote:
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));

NACK, this is potentially misleading as sysreset drivers can end up performing something different (see sysreset_walk_arg() just below).

Cheers,
Quentin

Reply via email to