aboutsummaryrefslogtreecommitdiff
path: root/drivers/sysreset/sysreset_sandbox.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/sysreset/sysreset_sandbox.c')
-rw-r--r--drivers/sysreset/sysreset_sandbox.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/sysreset/sysreset_sandbox.c b/drivers/sysreset/sysreset_sandbox.c
index 7f6d4186e1..38e2a7e241 100644
--- a/drivers/sysreset/sysreset_sandbox.c
+++ b/drivers/sysreset/sysreset_sandbox.c
@@ -84,7 +84,13 @@ int sandbox_sysreset_get_status(struct udevice *dev, char *buf, int size)
int sandbox_sysreset_get_last(struct udevice *dev)
{
- return SYSRESET_COLD;
+ struct sandbox_state *state = state_get_current();
+
+ /*
+ * The first phase is a power reset, after that we assume we don't
+ * know.
+ */
+ return state->jumped_fname ? SYSRESET_WARM : SYSRESET_POWER;
}
static struct sysreset_ops sandbox_sysreset_ops = {