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.
With CCS3 the linker command file line ".cinit : LOAD=FLASH_INIT, RUN=IRAM, table(BINIT)" works fine.
With CCS4 I got the error:
cannot apply table(BINIT) operator to C auto initialization section ".cinit"; this section contains linker-generated copy table sections.
What can I do to aviod this error? Is the .cinit section in the copy table not longer allowed?
What target ISA are you using? What version of the compiler (not the CCS version)? Are you using EABI?
Yes, as it stands today, using any table operator on the .cinit section is disallowed.
Why do you need to move .cinit into RAM? Auto-init could read directly from FLASH_INIT.
Target is XDS510 and C6701.ccxml, in the general settings a generic C67xx device is selected. Comiler version in CCS3 is v6.0.8, in CCS4 v7.2.3. We are using the COFF ABI because I could not find the csl6701.lib for EABI.
Is it possible to run the auto-init from a 8 or 16 Bit Flash instead from a 32 Bit internal (or external) RAM?
Alexander Beyer said:Is it possible to run the auto-init from a 8 or 16 Bit Flash instead from a 32 Bit internal (or external) RAM?
The .cinit section is read-only, and thus can be placed in flash. I lack the expertise to comment on whether the flash must be 8-bit or 16-bit.
Thanks and regards,
-George