Hello
I am able to generate the CRC of individual flash sections during link time using the following in the cmd file
.text : palign(4) > FLASH, crc_table(crc_table_for_text,algorithm= CRC32_PRIME)
.const : palign(4) > FLASH, crc_table(crc_table_for_const,algorithm= CRC32_PRIME)
.cinit : palign(4) > FLASH, crc_table(crc_table_for_cinit,algorithm= CRC32_PRIME)
.TI.crctab : > FLASH
I can then load the target and during runtime validate the CRCs for each section is correct.
What I would like to do is to be able to only have the linker generate one CRC for a specific section of what is loaded to flash.
I have tried using the following sample but have had no luck.
MEMORY { /* Carve out a section of FLASH to store the CRC result */ CRC_PRELUDE : origin=0x0, length=0x10 GROUP { FLASH : origin=0x10, length=0xFFFF } crc(_flash_crc, algorithm=CRC8_PRIME) /* Other memory ranges... */ } SECTION { .TI.memcrc > CRC_PRELUDE }
I am using
Compiler Tools 20.2.6
It appears I am perhaps not using the GROUP option correctly, and my environment does not recognize the crc() function?
Any assistance would be appreciated.
Thanks In Advance.
Perry