Changing tick interval - MIPS

sd109 <[email protected]>
Newsgroups gmane.os.ecos.devel
Message-ID <[email protected]>
I have a MIPS platform running ECOS v2.0. Default tick interval is 10ms. There are a few tasks at equal priority, and time slicing is enabled (5 ticks). At 10ms tick interval, everything works fine. All equal priority tasks get a chance to run.
 
I tried changing tick intervals by modifying CYGNUM_HAL_RTC_DENOMINATOR value.
 
First, i lowered the tick interval to 1ms. After this, i see only one task is running. None of the other tasks are getting a chance to run. Then i changed tick interval to 5ms. Same result. It seems like context switch is not happening.
 
Secondly, i increased the tick interval to 50ms and 100ms. And, the system hangs on boot up. Nothing runs.
 
As soon as i change the CYGNUM_HAL_RTC_DENOMINATOR value to 10ms (default), things get back to normal. I am not sure why changing the tick interval has such a big impact on scheduling. The RTC interrupt on MIPS is derived from count and compare register, which i would assume can handle 1ms or 5ms or 50ms durations. In other words, i am not suspecting the RTC interrupt itself.
 
Any clues on why this is happening? The only value that i change is CYGNUM_HAL_RTC_DENOMINATOR. I do see that CYGNUM_HAL_RTC_PERIOD changes based on the denominator value.
 
Are there any other dependencies to change tick interval? I wonder what is so special about the default 10ms tick interval?

Thanks in advance.
Santosh
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.