Hi Robert,
Robert Schwebel wrote:
Hello Wolfgang,
On Sun, Feb 11, 2007 at 12:10:15PM +0100, Wolfgang Grandegger wrote:
what is the status of the Preemptive Kernel and the High Resolution
Timers for Linux 2.6.20 for PowerPC (arch/powerpc or arch/ppc)?
I realized build problems when trying to get it working for my Lite5200
(MPC5200) board with patch-2-6-20-rt5. The patch seems to contain
reminders of merge conflicts, e.g.:
+++ linux/include/asm-powerpc/hw_irq.h
...
+<<<<<<< delete extern unsigned long local_get_flags(void);
+<<<<<<< delete extern unsigned long local_irq_disable(void);
and the make fails in arch/powerpc/kernel/time.c as well (see attachment).
We have 2.6.20-rt3 running on the phyCORE-MPC5200B, so that one should
work and the merge problems did probably come in later (don't have the
time to look right now because of the Embedded World activities for next
week).
As I see it, 2.6.20-rt3 has the same issues (have now attached the
missing make output). I fixed them manually and are now able to boot and
run the 2.6.20-rt5 on my Icecube board. Nevertheless, cyclictest returns
high values of around 8000-10000 (8-10ms). The fact that the unknown
field 'is_continuous' in arch/powerpc/kernel/time.c is still present
gives me the impression, that the code in there is not up-to-date. See
you next week on the Embedded World.
Thanks.
Wolfgang.
CC arch/powerpc/kernel/time.o
In file included from arch/powerpc/kernel/time.c:924:
include/linux/clocksource.h: In function 'ns2cyc':
include/linux/clocksource.h:174: warning: comparison of distinct pointer types lacks a cast
include/linux/clocksource.h:174: warning: right shift count >= width of type
include/linux/clocksource.h:174: warning: passing argument 1 of '__div64_32' from incompatible pointer type
arch/powerpc/kernel/time.c: At top level:
arch/powerpc/kernel/time.c:938: error: unknown field 'is_continuous' specified in initializer
make[1]: *** [arch/powerpc/kernel/time.o] Error 1
make[1]: Target `__build' not remade because of errors.
make: *** [arch/powerpc/kernel] Error 2