Updater: Store update file name in safety memory before executing updater. Currently name is hardcoded.
This commit is contained in:
		@@ -33,6 +33,6 @@
 | 
				
			|||||||
 */
 | 
					 */
 | 
				
			||||||
void __attribute__((noreturn)) start_updater_ram_code(void);
 | 
					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__ */
 | 
					#endif /* __UPDATER_UPDATER_H__ */
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -633,7 +633,7 @@ shellmatta_retCode_t shell_cmd_update(const shellmatta_handle_t handle, const ch
 | 
				
			|||||||
	(void)arguments;
 | 
						(void)arguments;
 | 
				
			||||||
	(void)length;
 | 
						(void)length;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	start_updater();
 | 
						updater_update_from_file("update.hex");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return SHELLMATTA_OK;
 | 
						return SHELLMATTA_OK;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -59,7 +59,7 @@ void __attribute__((noreturn)) start_updater_ram_code(void)
 | 
				
			|||||||
	while(1);
 | 
						while(1);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void __attribute__((noreturn)) start_updater(void)
 | 
					void __attribute__((noreturn)) updater_update_from_file(const char *filename)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	struct safety_memory_boot_status status;
 | 
						struct safety_memory_boot_status status;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -67,6 +67,8 @@ void __attribute__((noreturn)) start_updater(void)
 | 
				
			|||||||
	status.reboot_to_bootloader = 0xFFFFFFFFUL;
 | 
						status.reboot_to_bootloader = 0xFFFFFFFFUL;
 | 
				
			||||||
	safety_memory_set_boot_status(&status);
 | 
						safety_memory_set_boot_status(&status);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						safety_memory_set_update_filename(filename);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	NVIC_SystemReset();
 | 
						NVIC_SystemReset();
 | 
				
			||||||
	while (1);
 | 
						while (1);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user