Other Parts Discussed in Thread: SYSBIOS
Tool/software: TI-RTOS
Hi,
I'm TaekSeung Lee.
I'm evaluating a test code on EvmAm57xx.(linux on A15, RTOS on DSP1, other cores(DSP2, IPU1,2 ...) are not used)
On my application, DSP1 needs 2 hw timers. The first for RTOS's 1 mSec Clock_tick(), and second for FPGA 138uSec interrupt.
My understanding is that GPTimers 5 and 6 are assigned to the DSPs in the AM57x family.
on Linux side, edit "am57xx-beagle-x15-common.dtsi" for disable DSP2, and assigned timer6 to DSP1.
&dsp1 {
status = "okay";
memory-region = <&dsp1_cma_pool>;
mboxes = <&mailbox5 &mbox_dsp1_ipc3x>;
/*timers = <&timer5>;*/
timers = <&timer5>, <&timer6>;
watchdog-timers = <&timer10>;
};
// remark out
/*&dsp2 {
status = "okay";
status = "disabled";
memory-region = <&dsp2_cma_pool>;
mboxes = <&mailbox6 &mbox_dsp2_ipc3x>;
timers = <&timer6>;
watchdog-timers = <&timer13>;
};*/
on RTOS, create two timers.
Timer_Params_init(&timerParams);
timerParams.period = 138;
timerParams.periodType = Timer_PeriodType_MICROSECS;
timerParams.startMode = Timer_StartMode_USER;
timerParams.arg = 1;
myTimer = Timer_create(Timer_ANY, myIsr, &timerParams, &eb);
if (myTimer == NULL)
{
System_abort("Timer create failed");
}
create successfully. Timer 5(id 4)
but second timer was failed.
Timer_Params_init(&timerParams);
timerParams.period = 1000;
timerParams.periodType = Timer_PeriodType_MICROSECS;
timerParams.arg = 2;
SystemTimer = Timer_create(Timer_ANY, myTimerTick, &timerParams, &eb);
if (SystemTimer == NULL)
{
System_abort("Timer create failed");
}
trace log:
cat /sys/kernel/debug/remoteproc/remoteproc0/trace0
[ 0.000] Watchdog enabled: TimerBase = 0x48086000 Freq = 0
[ 0.000] 19 Resource entries at 0x95000000
......
[ 0.000] [t=0x0020b256] ti.sysbios.family.c64p.Hwi: ERROR: line 194: E_alreadyDefined: Hwi already defined: intr# 15
[ 0.000] ti.sysbios.family.c64p.Hwi: line 194: E_alreadyDefined: Hwi already defined: intr# 15
Who used intr# 15(timer 6)? Where can I configure interrupts?
I read the following thread, but not helped.
Thank you.