Hi, Gilles.
I could not find "mxc_min_delay = 0xff" in linux source tree
and xenomai directory. mxc_min_delay comes from ipipe,
there is also no such statement in latest patch downloaded
from website.
If mxc_min_delay is 0xff, in my system this means 32us for 8MHz
ipipe tsc. For a real time system, It seems a little bit longer.
I used mxc_min_delay=16(2us) to do a test during last weekend,
until now and no stall have happened again. So mxc_min_delay = 0x10
maybe enough for my test CPU, I can't decide which value should be used.
The following code copy from the time.c file that patched by xenomai.
void __ipipe_mach_set_dec(unsigned long delay)
{
if (delay > mxc_min_delay) {
unsigned long tcmp;
if (!timer_is_v2()) {
tcmp = __raw_readl(timer_base + MX1_2_TCN) + delay;
__raw_writel(tcmp, timer_base + MX1_2_TCMP);
} else {
tcmp = __raw_readl(timer_base + V2_TCN) + delay;
__raw_writel(tcmp, timer_base + V2_TCMP);
}
} else
ipipe_trigger_irq(__ipipe_mach_timerint);
}
My question is whether this function will be interrupted by other high priority
interrupts.
--
Ma.
-----Original Message-----
From: Gilles Chanteperdrix [mailto:[email protected]]
Sent: 2012年3月9日 17:11
To: 马强
Cc: [email protected]
Subject: Re: [Xenomai-help] Xenomai stop working
You can try mxc_min_delay = 0xff, since it is what linux does in the
latest release.
--
Gilles.
_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help