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.
Tool/software: Code Composer Studio
When trying to run code on CPU2 from GSRAM it looks like it's ending up in an ITRAP:
82 LB _c_int00 ;Branch to start of boot._asm in RTS library $../F2837xD_CodeStartBranch.asm:82:107$(), code_start: 000000: 004113C7 LB _c_int00 000002: 0000 ITRAP0 000003: 0002 POP IFR 000004: 0000 ITRAP0 000005: 0000 ITRAP0 000006: 0000 ITRAP0 000007: 0000 ITRAP0 000008: 0000 ITRAP0 000009: 0000 ITRAP0 00000a: 13C7 MPYS P, T, *+XAR7[0] 00000b: 0001 ABORTI
The appropriate registers in MemCfgRegs.GSxMSEL.bit.MSEL_GSn have been set in the CPU1 code, and the linker command file is configured for each core based on the GSnRAM it would like to use.
I'm guessing that CPU2 is trying to run its code before the before CPU1 has set the MemCfgRegs registers???
If CPU2 can execute code from GSRAM I'm not sure how to set it up.
Kindly,
Graham
Hi Graham,
I did the modification using assembly on the CodeStartBranch.asm. Actually, I am not an expert of assembly, what I did is, I wrote the C code on an test project. Then using assembly view of CCS, I got the assembly version of that code. But I have to say that you have to have at least little bit opinion about assembly language in order to pick necessary part of the code. After getting necessary assembly code, I modified the CodeStartBranch.asm using that piece of code.
You can find how to view assembly version of C code in the link below.
e2e.ti.com/.../68716
Regards,
Hakan