On 05/06/2011 11:28 AM, Alexey Galakhov wrote:
> On 05/05/2011 11:26 PM, Gilles Chanteperdrix wrote:
>> Please try and move the cal to ipipe_tsc_update to the acktimer function.
>> Also call printk in the actkimer function, in order to see if the last
>> action is a set_dec, or an acktimer.
> Just tried to add printk (not moved anything). Got:

Just explaining what happens.

> 
> ipipe_mach_set_dec: 4294967295
> ipipe_mach_set_dec: 4294967295

These are for the setup calibration (rthal_calibrate_timer).

> ipipe_mach_set_dec: 42186

This is the call to __ipipe_mach_release_timer, at the end of
calibration, which should put the timer back under Linux control, in
auto-reload mode.

> Xenomai: scheduling class idle registered.
> Xenomai: scheduling class rt registered.
> acktimer
> acktimer
> acktimer
> acktimer
> acktimer

Linux ticks, set_dec is not called, because the timer auto-reloads.

> Xenomai: real-time nucleus v2.5.6 (Wormhole Wizards) loaded.
> ipipe_mach_set_dec: 42187

Here the timer goes under Xenomai control, ipipe_mach_timerstolen is set
to 1.

> Xenomai: starting native API services.
> Xenomai: starting POSIX services.
> Xenomai: starting RTDM services.
> acktimer

First timer interrupt, should trig a call to Xenomai tick timer handler,
which should reprogram the next timer. At this time, there is only one
timer in Xenomai's list: the host timer, so, we should see an
set_dec(42186) again.

The problem probably comes from the fact that you are running with
CONFIG_GENERIC_CLOCKEVENTS, I will try and reproduce this on different
hardware.

-- 
                                            Gilles.

_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main

Reply via email to