lotus: Use dummy serial number if flash was erased

Signed-off-by: Daniel Schaefer <dhs@frame.work>
This commit is contained in:
Daniel Schaefer 2023-01-16 22:06:28 +08:00
parent 84e018fecf
commit 24f6dbc4a9

View File

@ -28,6 +28,12 @@ void *lotus_serial_number_string(void) {
char *serialnum_ptr = (char*) (FLASH_OFFSET + LAST_4K_BLOCK);
memcpy(ascii_serialnum, serialnum_ptr, SERIALNUM_LEN);
// Replace with dummy serialnumber if the flash is erased
if (ascii_serialnum[0] == 0xFF) {
memcpy(ascii_serialnum, SERIAL_NUMBER, sizeof(SERIAL_NUMBER));
}
for (int c = 0; c < SERIALNUM_LEN; c++) {
utf16_serialnum[c*2] = ascii_serialnum[c];
}