Hello,
1. We integrated application project using
- iLLD driver version: 1.0.1.11.0
- Windriver Compiler Version : 5.6.9.3
- Compiler specific files from Software framework tools: SWFramework_3v1r0___p1,
Release version: 3.1.r0_p1
Release date:08.09.2016
2. We debug the project using Windriver workbench 4.7.3 using onboard DAS USB miniwiggler and iSystem plugin.
3. When we loaded project without running to core0_main , we got CPU bus trap errors. On debugging, we found that it was because of calls related to watchdog in IfxCpu_CStart0.c
from _Core0_start function. We commented the following lines as per the code snippet below.
4. After that we are still getting a CPU bus trap error when the Ifx_C_Init() function is executed in IfxCpu_CStart0.c. Please see code snippet below of _Core0_start function :
5. Can you help us with the above .
We see that Ifx_C_Init() function calls the __init_main() function provided by Windriver compiler and this fails with the following bus trap
* Class 4, TIN 1/2. The location of this error changes based on the size of the code.
1. We integrated application project using
- iLLD driver version: 1.0.1.11.0
- Windriver Compiler Version : 5.6.9.3
- Compiler specific files from Software framework tools: SWFramework_3v1r0___p1,
Release version: 3.1.r0_p1
Release date:08.09.2016
2. We debug the project using Windriver workbench 4.7.3 using onboard DAS USB miniwiggler and iSystem plugin.
3. When we loaded project without running to core0_main , we got CPU bus trap errors. On debugging, we found that it was because of calls related to watchdog in IfxCpu_CStart0.c
from _Core0_start function. We commented the following lines as per the code snippet below.
4. After that we are still getting a CPU bus trap error when the Ifx_C_Init() function is executed in IfxCpu_CStart0.c. Please see code snippet below of _Core0_start function :
Code:
void _Core0_start(void)
{
//uint16 cpuWdtPassword = IfxScuWdt_getCpuWatchdogPasswordInline(&MODULE_SCU.WDTCPU[0]);
/* Clear the ENDINIT bit in the WDT_CON0 register, inline funtion */
// IfxScuWdt_clearCpuEndinitInline(&MODULE_SCU.WDTCPU[0], cpuWdtPassword);
// IfxScuWdt_setCpuEndinitInline(&MODULE_SCU.WDTCPU[0], cpuWdtPassword);
/*CPU and safety watchdogs are enabled by default, C initialization functions are not servicing the watchdogs */
#if 0
uint16 safetyWdtPassword = IfxScuWdt_getSafetyWatchdogPassword();
IfxScuWdt_disableCpuWatchdog(cpuWdtPassword);
IfxScuWdt_disableSafetyWatchdog(safetyWdtPassword);
#endif
Ifx_C_Init(); /*Initialization of C runtime variables */
#if 0
IfxScuWdt_enableCpuWatchdog(cpuWdtPassword);
IfxScuWdt_enableSafetyWatchdog(safetyWdtPassword);
#endif
}
}
We see that Ifx_C_Init() function calls the __init_main() function provided by Windriver compiler and this fails with the following bus trap
* Class 4, TIN 1/2. The location of this error changes based on the size of the code.