pub fn set_flag_and_reboot() -> ! {
    critical_section::with(|_| {
        unsafe { BOOTLOADER_FLAG.get().write(BOOTLOADER_FLAG_VALUE) };
        cortex_m::peripheral::SCB::sys_reset();
    })
}