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.

CC3235S: CC3235S

Part Number: CC3235S
Other Parts Discussed in Thread: UNIFLASH

Hi sir,

    We use   cc3235 launchpad. Because oringinal memory arrangement is not enough for us. 

So we modifly some change in cc32xx_tirtos.cmd.

below is our changes.

#define SRAM_BASE 0x20004000
#define SRAM0_BASE 0x20000000

--stack_size=1024   /* C stack is also used for ISR stack */

HEAPSIZE = 0x10000;  /* Size of heap buffer used by HeapMem */

MEMORY
{
    SRAM0 (RWX) : origin = 0x20000000, length = 0x4000
    SRAM  (RWX) : origin = 0x20004000, length = 0x00040000 - 0x4000
}

/* Section allocation in memory */

SECTIONS
{
    .text       : > SRAM
    .bss        : > SRAM
    .TI.ramfunc : > SRAM
    .data       : > SRAM
    .const      : > SRAM
    .sysmem     : > SRAM

    .cinit      : > SRAM0
	.pinit      : > SRAM
    .init_array : > SRAM

    /* Heap buffer used by HeapMem */
    .priheap    : {
        __primary_heap_start__ = .;
        . += HEAPSIZE;
        __primary_heap_end__ = .;
    } > SRAM align 8

    .stack      : > SRAM0(HIGH)
}

we change .cinit to sram0. But when we use ccs debug function it can run correctly.

But when we use uniflash to program our .bin in mcu. It can not boot correctly.

Do we need to modily our bootloader,or some changes.

  • Hi,

    You cannot use SRAM0 for .cinit section. At SRAM0 you can use .stack, .heap or any RAM section which is used at runtime.

    .cinit section section is a part of "code" and their content needs to be loaded by ROM bootloder into RAM. ROM bootloder is not able load content into SRAM0. This is because ROM bootloader use RAM0 section as own RAM.

    Jan