Updater: Store update file name in safety memory before executing updater. Currently name is hardcoded.

This commit is contained in:
Mario Hüttel 2021-04-07 13:26:39 +02:00
parent dca839ce2e
commit bfdc3d3246
3 changed files with 5 additions and 3 deletions

View File

@ -33,6 +33,6 @@
*/
void __attribute__((noreturn)) start_updater_ram_code(void);
void __attribute__((noreturn)) start_updater(void);
void __attribute__((noreturn)) updater_update_from_file(const char *filename);
#endif /* __UPDATER_UPDATER_H__ */

View File

@ -633,7 +633,7 @@ shellmatta_retCode_t shell_cmd_update(const shellmatta_handle_t handle, const ch
(void)arguments;
(void)length;
start_updater();
updater_update_from_file("update.hex");
return SHELLMATTA_OK;
}

View File

@ -59,7 +59,7 @@ void __attribute__((noreturn)) start_updater_ram_code(void)
while(1);
}
void __attribute__((noreturn)) start_updater(void)
void __attribute__((noreturn)) updater_update_from_file(const char *filename)
{
struct safety_memory_boot_status status;
@ -67,6 +67,8 @@ void __attribute__((noreturn)) start_updater(void)
status.reboot_to_bootloader = 0xFFFFFFFFUL;
safety_memory_set_boot_status(&status);
safety_memory_set_update_filename(filename);
NVIC_SystemReset();
while (1);
}