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.

RTOS/TMDSEVM437X: AM4379 TI-RTOS Systick Handler Location

Part Number: TMDSEVM437X
Other Parts Discussed in Thread: SYSBIOS

Tool/software: TI-RTOS

Hi everyone,

I am looking for the SysTick_Handler() function location of the RTOS of my GP EVM and if exists a function like getTicks() to reveal the current tick number.

I'd like to observe the timings of sequences of the peripheral readings and also will use the number of ticks in my time based calculations.

 

There is one function namely "Timer_getCurrentTick(Timer_Object *timer, Bool saveFlag)" in the Timer.c file of BIOS.

Can I use this function? If so which timer is the core system timer?

 

By the way, it feels a bit emberassing to ask in which file a function/procedure exists :) 

Is there an easy way to find a list of functions&procedures for ex. used in TIRTOS, SYS/BIOS etc.?

Thank you.

  • Korkut,

    We have reached out to the TI RTOS experts to elaborate but the timer mapping for each SOC and core is provided int he timer Tables that are published here

    bios_6_73_01_01/packages/ti/sysbios/timers/dmtimer/doc-files/TimerTables.html

    General guidance is provided here:

    Here are the SYS/BIOS delegates for A9 for AM437x as listed in Settings.xs file  in the folder bios_6_73_01_01\packages\ti\sysbios\family\arm

    •           timerDelegate : "ti.sysbios.timers.dmtimer.Timer",
    •            clockTimerDelegate : "ti.sysbios.family.arm.a9.Timer",
    •            timerSupportDelegate : "ti.sysbios.family.arm.a9.am437x.TimerSupport",
    •            timestampDelegate : "ti.sysbios.family.arm.a15.TimestampProvider",

    This shows that different timers are used for different things.  If you're calling Timer.create() (from .cfg) or Timer_create() (from runtime) then

    the DMTimers are used from timerDelegate (ti.sysbios.timers.dmtimer.Timer).  For the Clock module, it will use 'clockTimerDelegate', which is the system timer.

    Regards,

    Rahul

  • Very well.

    The file locations are more clear now.

    The timer callbacks will take place in runtime and we'd like to stay synchronized with the system core clock.
    It appears that different clocks take part to perform the whole show.

    Still, we'd prefer to stay sync with a reference clock.
    I think we can harvest the ticks from a DMTimer of the timerDelegate and somehow try to auto-align with the clock module.

    Thanks Rahul.
    Let us start with this configuration. I will check back with you, in case, more expertise is required.

    Have a nice day.