This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP432E401Y: MSP432E401Y Linker generated CRC

Part Number: MSP432E401Y

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