bios/main: use edata instead of erodata

This commit is contained in:
Florent Kermarrec 2018-08-07 09:02:09 +02:00
parent 580efecc8c
commit 22f645adc1
1 changed files with 5 additions and 5 deletions

View File

@ -413,7 +413,7 @@ static void do_command(char *c)
printf("Command not found\n"); printf("Command not found\n");
} }
extern unsigned int _ftext, _erodata; extern unsigned int _ftext, _edata;
static void crcbios(void) static void crcbios(void)
{ {
@ -423,14 +423,14 @@ static void crcbios(void)
unsigned int actual_crc; unsigned int actual_crc;
/* /*
* _erodata is located right after the end of the flat * _edata is located right after the end of the flat
* binary image. The CRC tool writes the 32-bit CRC here. * binary image. The CRC tool writes the 32-bit CRC here.
* We also use the address of _erodata to know the length * We also use the address of _edata to know the length
* of our code. * of our code.
*/ */
offset_bios = (unsigned int)&_ftext; offset_bios = (unsigned int)&_ftext;
expected_crc = _erodata; expected_crc = _edata;
length = (unsigned int)&_erodata - offset_bios; length = (unsigned int)&_edata - offset_bios;
actual_crc = crc32((unsigned char *)offset_bios, length); actual_crc = crc32((unsigned char *)offset_bios, length);
if(expected_crc == actual_crc) if(expected_crc == actual_crc)
printf("BIOS CRC passed (%08x)\n", actual_crc); printf("BIOS CRC passed (%08x)\n", actual_crc);