Part Number: TMS320F28379D
Other Parts Discussed in Thread: SYSBIOS
Tool/software:
Hi, I have an old project where the ramfuncs section looks like as follow, and I want to migrate it usinf TI.ramfunc
SECTIONS
{
ramfuncs: LOAD = FLASHB | FLASHC | FLASHD | FLASHE PAGE = 0, ALIGN(8)
RUN = RAMGS0123_DMA
LOAD_START(_RamfuncsLoadStart)
LOAD_SIZE(_RamfuncsLoadSize)
RUN_START(_RamfuncsRunStart)
{
//*(.text:_SCOPE_func1)
*(.text:_xdc_runtime_Timestamp_get32__F)
//*(.text:_ti_sysbios_family_c28_TimestampProvider_get32__E)
*(.text:_ti_sysbios_family_c28_Timer_getExpiredCounts__E)
*(.text:_ti_sysbios_family_c28_Hwi_getInterruptFlag__E)
//*(.text:_xdc_runtime_Timestamp_SupportProxy_get32__E)
*(.text:_ti_sysbios_family_c28_Hwi_switchAndDispatch__I)
*(.text:_ti_sysbios_family_c28_Hwi_dispatchCore__I)
}
}
This following code is a failed attempt:
SECTIONS
{
.TI.ramfunc : {} LOAD = FLASHB | FLASHC | FLASHD | FLASHE,
RUN = RAMGS0123_DMA,
LOAD_START(_RamfuncsLoadStart),
LOAD_SIZE(_RamfuncsLoadSize),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart)
{
//*(.text:_SCOPE_func1)
*(.text:_xdc_runtime_Timestamp_get32__F)
//*(.text:_ti_sysbios_family_c28_TimestampProvider_get32__E)
*(.text:_ti_sysbios_family_c28_Timer_getExpiredCounts__E)
*(.text:_ti_sysbios_family_c28_Hwi_getInterruptFlag__E)
//*(.text:_xdc_runtime_Timestamp_SupportProxy_get32__E)
*(.text:_ti_sysbios_family_c28_Hwi_switchAndDispatch__I)
*(.text:_ti_sysbios_family_c28_Hwi_dispatchCore__I)
},
RUN_SIZE(_RamfuncsRunSize),
RUN_END(_RamfuncsRunEnd),
PAGE = 0, ALIGN(8)
}It compile but the code exit (abort). This is happening particulary with the xdc... and ti_sysbios lines are enable.
I have tried to comment all of them and the program run fine.
Also I tried to add the function SCOPE_func1 to RAM using __atribute__((ramfunc)), and that build and run fine:
Any help is welcome