diff options
-rw-r--r-- | board/nocturne/base_detect.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/board/nocturne/base_detect.c b/board/nocturne/base_detect.c index 8e3ac022e0..188d9fecd0 100644 --- a/board/nocturne/base_detect.c +++ b/board/nocturne/base_detect.c @@ -211,11 +211,17 @@ static void base_detect_deferred(void) }; DECLARE_HOOK(HOOK_INIT, base_detect_deferred, HOOK_PRIO_INIT_ADC + 1); -static void power_on_base(void) +static void restart_state_machine(void) { + /* + * Since we do not poll in S5, the base may or may not be connected, + * therefore intentionally set the state to detached such that we can + * detect and power on the base if necessary. + */ + set_state(BASE_DETACHED); hook_call_deferred(&base_detect_deferred_data, 0); } -DECLARE_HOOK(HOOK_CHIPSET_STARTUP, power_on_base, HOOK_PRIO_DEFAULT); +DECLARE_HOOK(HOOK_CHIPSET_STARTUP, restart_state_machine, HOOK_PRIO_DEFAULT); static void power_off_base(void) { |