* [Xenomai] [Xenomai -help] unsupported ARM9 machine @ 2012-06-05 12:20 Marcin Kuśka 2012-06-05 12:27 ` [Xenomai] " Gilles Chanteperdrix 0 siblings, 1 reply; 17+ messages in thread From: Marcin Kuśka @ 2012-06-05 12:20 UTC (permalink / raw) To: xenomai Hi, My name is Marcin Kuska and I'm new to this list. Recently i have been trying to compile linux kernel v. 3.0.13 with a Xenomai real time subsystem extension on ARM versatile express board. I'm using buildroot-2012.05 to cross-compile the kernel. I patched linux source tree with adeos-ipipe-3.0.13-arm-1.18-09.patch. The problem is that buildroot cannot finish compilation and returns following errors:* make[1]: Entering directory `/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13' CHK include/linux/version.h CHK include/generated/utsrelease.h make[2]: `include/generated/mach-types.h' is up to date. CALL scripts/checksyscalls.sh CHK include/generated/compile.h LD vmlinux.o arch/arm/common/built-in.o: In function `gic_unmask_irq': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/gic.c:106: multiple definition of `__ipipe_mach_ticks_per_jiffy' arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/entry-armv.S:104: first defined here arch/arm/common/built-in.o: In function `__ipipe_mach_set_dec': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:230: multiple definition of `__ipipe_mach_set_dec' arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:59: first defined here arch/arm/common/built-in.o: In function `__ipipe_mach_release_timer': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:239: multiple definition of `__ipipe_mach_release_timer' arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp.c:509: first defined here arch/arm/common/built-in.o: In function `gic_unmask_irq': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/gic.c:102: multiple definition of `__ipipe_mach_timerstolen' arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/entry-armv.S:104: first defined here arch/arm/common/built-in.o: In function `__ipipe_mach_get_dec': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:248: multiple definition of `__ipipe_mach_get_dec' arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:70: first defined here arch/arm/common/built-in.o: In function `__ipipe_check_tickdev': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:215: multiple definition of `__ipipe_check_tickdev' arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:75: first defined here make[1]: *** [vmlinux.o] Error 1 make[1]: Leaving directory `/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13' make: *** [/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/.stamp_built] Error 2 * and also: "unsupported ARM machine" I have read that xenomai only supports integrator/cp board and any other board like versatile express have to be adapted by myself. So i went to: http://www.xenomai.org/index.php/I-pipe:ArmPorting and started adapting and cannot find files like time.c and irq.c. Moreover I cannot find errors in file gic.c, timer-sp.c and so on (e.g. *gic.c:106: multiple definition of `__ipipe_mach_ticks_per_jiffy'* i cannot find any definition of __ipipe_mach_ticks_per_jiffy so even if I would want to comment one of the definitions to eliminate multipling it's impossible cause it's not there). My description of the problem is very blurred i suppose, so if anybody may be knowing the solution, please ask for more specific details and i will post them. Thank you all for reading this message -- Regards Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-05 12:20 [Xenomai] [Xenomai -help] unsupported ARM9 machine Marcin Kuśka @ 2012-06-05 12:27 ` Gilles Chanteperdrix 2012-06-05 15:34 ` Marcin Kuśka 0 siblings, 1 reply; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-06-05 12:27 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 06/05/2012 02:20 PM, Marcin Kuśka wrote: > Hi, > > My name is Marcin Kuska and I'm new to this list. > > Recently i have been trying to compile linux kernel v. 3.0.13 with a > Xenomai real time subsystem extension on ARM versatile express board. I'm > using buildroot-2012.05 to cross-compile the kernel. I patched linux source > tree with adeos-ipipe-3.0.13-arm-1.18-09.patch. The problem is that > buildroot cannot finish compilation and returns following errors:* > > make[1]: Entering directory > `/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13' > CHK include/linux/version.h > CHK include/generated/utsrelease.h > make[2]: `include/generated/mach-types.h' is up to date. > CALL scripts/checksyscalls.sh > CHK include/generated/compile.h > LD vmlinux.o > arch/arm/common/built-in.o: In function `gic_unmask_irq': > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/gic.c:106: > multiple definition of `__ipipe_mach_ticks_per_jiffy' > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/entry-armv.S:104: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_mach_set_dec': > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:230: > multiple definition of `__ipipe_mach_set_dec' > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:59: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_mach_release_timer': > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:239: > multiple definition of `__ipipe_mach_release_timer' > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp.c:509: > first defined here > arch/arm/common/built-in.o: In function `gic_unmask_irq': > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/gic.c:102: > multiple definition of `__ipipe_mach_timerstolen' > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/entry-armv.S:104: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_mach_get_dec': > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:248: > multiple definition of `__ipipe_mach_get_dec' > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:70: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_check_tickdev': > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:215: > multiple definition of `__ipipe_check_tickdev' > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:75: > first defined here > make[1]: *** [vmlinux.o] Error 1 > make[1]: Leaving directory > `/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13' > make: *** > [/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/.stamp_built] > Error 2 > * > and also: > > "unsupported ARM machine" > > I have read that xenomai only supports integrator/cp board and any other > board like versatile express have to be adapted by myself. So i went to: > > http://www.xenomai.org/index.php/I-pipe:ArmPorting > > and started adapting and cannot find files like time.c and irq.c. Moreover As said in the following document, time.c and irq.c are just indicative names, it is the files where the timer and irq controller are implemented for your platform, you have to find the corresponding files for your platform. > I cannot find errors in file gic.c, timer-sp.c and so on (e.g. *gic.c:106: > multiple definition of `__ipipe_mach_ticks_per_jiffy'* i cannot find any > definition of __ipipe_mach_ticks_per_jiffy so even if I would want to > comment one of the definitions to eliminate multipling it's impossible > cause it's not there). > > My description of the problem is very blurred i suppose, so if anybody may > be knowing the solution, please ask for more specific details and i will > post them. This version of the I-pipe patch does not support kernels compiled for multiple platforms. In the kernel configuration, you should only keep configuration enabled for the only platform/board you use. Then you will not get multiple definitions. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-05 12:27 ` [Xenomai] " Gilles Chanteperdrix @ 2012-06-05 15:34 ` Marcin Kuśka 2012-06-05 15:42 ` Gilles Chanteperdrix 2012-06-05 18:16 ` Gilles Chanteperdrix 0 siblings, 2 replies; 17+ messages in thread From: Marcin Kuśka @ 2012-06-05 15:34 UTC (permalink / raw) To: Gilles Chanteperdrix; +Cc: xenomai Thank you for quick response. Again I tried to compile it using buildroot but this time I used following commands: * * *# cd /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13 # make ARCH=arm vexpress_defconfig // i suppose this sets kernel configuration only for versatile express (ommiting multiple definitions)? # cd .. # xenomai/scripts/prepare-kernel.sh --linux=linux-3.0.13 --adeos=adeos-ipipe-3.0.13-arm-1.18-09.patch --arch=arm # cd /home/marcin/Documents/buildroot-2012.05 # make all * and i received this list of errors * kernel/xenomai/arch/generic/**hal.o In file included from include/asm-generic/xenomai/hal.h:40:0, from /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:32, from kernel/xenomai/arch/generic/hal.c:45: /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:90:5: warning: "IPIPE_MAJOR_NUMBER" is not defined In file included from /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:32:0, from kernel/xenomai/arch/generic/hal.c:45: include/asm-generic/xenomai/hal.h: In function 'rthal_get_cpufreq': include/asm-generic/xenomai/hal.h:227:23: error: storage size of 'sysinfo' isn't known include/asm-generic/xenomai/hal.h:228:2: error: implicit declaration of function 'ipipe_get_sysinfo' include/asm-generic/xenomai/hal.h:227:23: warning: unused variable 'sysinfo' include/asm-generic/xenomai/hal.h: In function 'rthal_get_timerfreq': include/asm-generic/xenomai/hal.h:234:23: error: storage size of 'sysinfo' isn't known include/asm-generic/xenomai/hal.h:234:23: warning: unused variable 'sysinfo' include/asm-generic/xenomai/hal.h: In function 'set_task_nowakeup': include/asm-generic/xenomai/hal.h:324:3: error: 'TASK_NOWAKEUP' undeclared (first use in this function) include/asm-generic/xenomai/hal.h:324:3: note: each undeclared identifier is reported only once for each function it appears in include/asm-generic/xenomai/hal.h: In function 'clear_task_nowakeup': include/asm-generic/xenomai/hal.h:329:2: error: 'TASK_NOWAKEUP' undeclared (first use in this function) include/asm-generic/xenomai/hal.h: In function 'rthal_enable_notifier': include/asm-generic/xenomai/hal.h:347:14: error: 'PF_EVNOTIFY' undeclared (first use in this function) include/asm-generic/xenomai/hal.h: At top level: include/asm-generic/xenomai/hal.h:426:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'rthal_irq_handler_t' include/asm-generic/xenomai/hal.h:427:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'rthal_irq_ackfn_t' include/asm-generic/xenomai/hal.h:439:21: error: 'IPIPE_NR_CPUS' undeclared here (not in a function) include/asm-generic/xenomai/hal.h:460:58: error: 'IPIPE_NR_FAULTS' undeclared here (not in a function) include/asm-generic/xenomai/hal.h:495:9: error: expected declaration specifiers or '...' before 'rthal_irq_handler_t' include/asm-generic/xenomai/hal.h:496:9: error: expected declaration specifiers or '...' before 'rthal_irq_ackfn_t' include/asm-generic/xenomai/hal.h: In function 'rthal_irq_host_pend': include/asm-generic/xenomai/hal.h:517:2: error: implicit declaration of function 'ipipe_propagate_irq' include/asm-generic/xenomai/hal.h: In function '__rthal_apc_schedule': include/asm-generic/xenomai/hal.h:530:3: error: implicit declaration of function 'ipipe_schedule_irq' include/asm-generic/xenomai/hal.h: In function 'rthal_apc_schedule': include/asm-generic/xenomai/hal.h:537:2: error: implicit declaration of function 'ipipe_test_and_stall_pipeline_head' include/asm-generic/xenomai/hal.h:539:2: error: implicit declaration of function 'ipipe_restore_pipeline_head' include/asm-generic/xenomai/hal.h: At top level: include/asm-generic/xenomai/hal.h:548:57: warning: 'struct clock_event_device' declared inside parameter list include/asm-generic/xenomai/hal.h:548:57: warning: its scope is only this definition or declaration, which is probably not what you want include/asm-generic/xenomai/hal.h:548:57: warning: 'enum clock_event_mode' declared inside parameter list include/asm-generic/xenomai/hal.h:549:50: warning: 'struct clock_event_device' declared inside parameter list include/asm-generic/xenomai/hal.h:553:18: warning: 'struct clock_event_device' declared inside parameter list include/asm-generic/xenomai/hal.h:553:18: warning: 'enum clock_event_mode' declared inside parameter list In file included from kernel/xenomai/arch/generic/hal.c:45:0: /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:36:37: warning: "__IPIPE_FEATURE_VFP_SAFE" is not defined /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:37:2: error: #error "Xenomai requires a more recent I-pipe patch to use VFP hardware" In file included from kernel/xenomai/arch/generic/hal.c:45:0: /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h: In function 'rthal_rdtsc': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:176:5: error: implicit declaration of function 'ipipe_read_tsc' /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h: In function 'rthal_timer_program_shot': /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:188:2: error: '__ipipe_mach_timerint' undeclared (first use in this function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:190:2: error: implicit declaration of function '__ipipe_mach_set_dec' /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h: At top level: /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:334:6: error: 'IPIPE_TRAP_ACCESS' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:334:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:334:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:335:6: error: 'IPIPE_TRAP_SECTION' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:335:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:335:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:336:6: error: 'IPIPE_TRAP_DABT' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:336:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:336:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:337:6: error: 'IPIPE_TRAP_UNKNOWN' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:337:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:337:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:338:6: error: 'IPIPE_TRAP_BREAK' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:338:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:338:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:339:6: error: 'IPIPE_TRAP_FPU' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:339:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:339:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:340:6: error: 'IPIPE_TRAP_VFP' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:340:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:340:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:341:6: error: 'IPIPE_TRAP_UNDEFINSTR' undeclared here (not in a function) /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:341:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:341:5: error: (near initialization for 'rthal_fault_labels') /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:345:5: error: array index in initializer not of integer type /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:345:5: error: (near initialization for 'rthal_fault_labels') kernel/xenomai/arch/generic/hal.c:69:42: error: 'SPIN_LOCK_UNLOCKED' undeclared here (not in a function) kernel/xenomai/arch/generic/hal.c:80:1: warning: type defaults to 'int' in declaration of 'rthal_realtime_faults' kernel/xenomai/arch/generic/hal.c: In function 'rthal_critical_enter': kernel/xenomai/arch/generic/hal.c:96:5: error: implicit declaration of function 'ipipe_critical_enter' kernel/xenomai/arch/generic/hal.c: In function 'rthal_critical_exit': kernel/xenomai/arch/generic/hal.c:109:5: error: implicit declaration of function 'ipipe_critical_exit' kernel/xenomai/arch/generic/hal.c: At top level: kernel/xenomai/arch/generic/hal.c:160:9: error: expected declaration specifiers or '...' before 'rthal_irq_handler_t' kernel/xenomai/arch/generic/hal.c:161:9: error: expected declaration specifiers or '...' before 'rthal_irq_ackfn_t' kernel/xenomai/arch/generic/hal.c: In function 'rthal_irq_request': kernel/xenomai/arch/generic/hal.c:163:9: error: 'handler' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:163:35: error: 'IPIPE_NR_IRQS' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:166:5: error: implicit declaration of function 'ipipe_virtualize_irq' kernel/xenomai/arch/generic/hal.c:166:12: error: 'ackfn' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:166:12: error: 'IPIPE_HANDLE_MASK' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:166:12: error: 'IPIPE_WIRED_MASK' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:166:12: error: 'IPIPE_EXCLUSIVE_MASK' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c: In function 'rthal_irq_release': kernel/xenomai/arch/generic/hal.c:203:16: error: 'IPIPE_NR_IRQS' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:206:12: error: 'IPIPE_PASS_MASK' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c: In function 'rthal_init': kernel/xenomai/arch/generic/hal.c:534:5: error: implicit declaration of function 'ipipe_alloc_virq' kernel/xenomai/arch/generic/hal.c:542:11: error: 'ipipe_current_domain' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:542:11: error: 'IPIPE_HANDLE_MASK' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:551:11: error: storage size of 'attr' isn't known kernel/xenomai/arch/generic/hal.c:551:11: error: implicit declaration of function 'ipipe_init_attr' kernel/xenomai/arch/generic/hal.c:551:11: error: 'IPIPE_HEAD_PRIORITY' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:551:11: error: implicit declaration of function 'ipipe_register_domain' kernel/xenomai/arch/generic/hal.c:551:11: warning: unused variable 'attr' kernel/xenomai/arch/generic/hal.c:579:5: error: implicit declaration of function 'ipipe_free_virq' kernel/xenomai/arch/generic/hal.c: In function 'rthal_exit': kernel/xenomai/arch/generic/hal.c:591:2: error: 'ipipe_current_domain' undeclared (first use in this function) kernel/xenomai/arch/generic/hal.c:597:2: error: implicit declaration of function 'ipipe_unregister_domain' kernel/xenomai/arch/generic/hal.c: At top level: kernel/xenomai/arch/generic/hal.c:804:1: warning: type defaults to 'int' in declaration of 'rthal_apc_pending' kernel/xenomai/arch/generic/hal.c: In function 'rthal_irq_release': kernel/xenomai/arch/generic/hal.c:208:1: warning: control reaches end of non-void function kernel/xenomai/arch/generic/hal.c: In function 'rthal_irq_request': kernel/xenomai/arch/generic/hal.c:173:1: warning: control reaches end of non-void function make[5]: *** [kernel/xenomai/arch/generic/hal.* I have no clue what could possibly be wrong with setting. So I decided to compile my own toolchain as follows: 1. crosstool-ng-1.15.2 2. linux-3.0.13: *# make ARCH=arm vexpress_defconfig [*] use the ARM EABI to compile the kernel # make ARCH=arm CROSS_COMPILE=arm-unknown-linux-gnueabi- modules # make ARCH=arm INSTALL_MOD_PATH=/home/marcin/Documents/arm/target modules_install* 3. busybox-1.20.0 4. ramdisk: *# cd /home/marcin/Documents/arm/target # find . | sudo cpio -o -H newc > /home/marcin/Documents/arm/rootfs.cpio* 5. Kernel: *# cd linux-3.0.15 **# ../xenomai/scripts/prepare-kernel.sh --linux=linux-3.0.13 --adeos=adeos-ipipe-3.0.13-arm-1.18-09.patch --arch=arm # make ARCH=arm CROSS_COMPILE=arm-unknown-linux-gnueabi- zImage* and the result is * CHK include/linux/version.h CHK include/generated/utsrelease.h make[1]: `include/generated/mach-types.h' is up to date. CALL scripts/checksyscalls.sh CHK include/generated/compile.h CC kernel/xenomai/arch/generic/hal.o In file included from kernel/xenomai/arch/generic/hal.c:45: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:91:2: error: #error "Unsupported ARM machine" make[4]: *** [kernel/xenomai/arch/generic/hal.o] Error 1 make[3]: *** [kernel/xenomai/arch/generic] Error 2 make[2]: *** [kernel/xenomai/arch] Error 2 make[1]: *** [kernel/xenomai] Error 2 make: *** [kernel] Error 2 *"Unsupported ARM machine" - any suggestions to this?* *regards* *qsiek* * 2012/6/5 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > On 06/05/2012 02:20 PM, Marcin Kuśka wrote: > > Hi, > > > > My name is Marcin Kuska and I'm new to this list. > > > > Recently i have been trying to compile linux kernel v. 3.0.13 with a > > Xenomai real time subsystem extension on ARM versatile express board. I'm > > using buildroot-2012.05 to cross-compile the kernel. I patched linux > source > > tree with adeos-ipipe-3.0.13-arm-1.18-09.patch. The problem is that > > buildroot cannot finish compilation and returns following errors:* > > > > make[1]: Entering directory > > `/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13' > > CHK include/linux/version.h > > CHK include/generated/utsrelease.h > > make[2]: `include/generated/mach-types.h' is up to date. > > CALL scripts/checksyscalls.sh > > CHK include/generated/compile.h > > LD vmlinux.o > > arch/arm/common/built-in.o: In function `gic_unmask_irq': > > > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/gic.c:106: > > multiple definition of `__ipipe_mach_ticks_per_jiffy' > > > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/entry-armv.S:104: > > first defined here > > arch/arm/common/built-in.o: In function `__ipipe_mach_set_dec': > > > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:230: > > multiple definition of `__ipipe_mach_set_dec' > > > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:59: > > first defined here > > arch/arm/common/built-in.o: In function `__ipipe_mach_release_timer': > > > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:239: > > multiple definition of `__ipipe_mach_release_timer' > > > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp.c:509: > > first defined here > > arch/arm/common/built-in.o: In function `gic_unmask_irq': > > > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/gic.c:102: > > multiple definition of `__ipipe_mach_timerstolen' > > > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/entry-armv.S:104: > > first defined here > > arch/arm/common/built-in.o: In function `__ipipe_mach_get_dec': > > > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:248: > > multiple definition of `__ipipe_mach_get_dec' > > > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:70: > > first defined here > > arch/arm/common/built-in.o: In function `__ipipe_check_tickdev': > > > /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/common/timer-sp.c:215: > > multiple definition of `__ipipe_check_tickdev' > > > arch/arm/kernel/built-in.o:/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/arch/arm/kernel/smp_twd.c:75: > > first defined here > > make[1]: *** [vmlinux.o] Error 1 > > make[1]: Leaving directory > > `/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13' > > make: *** > > > [/home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13/.stamp_built] > > Error 2 > > * > > and also: > > > > "unsupported ARM machine" > > > > I have read that xenomai only supports integrator/cp board and any other > > board like versatile express have to be adapted by myself. So i went to: > > > > http://www.xenomai.org/index.php/I-pipe:ArmPorting > > > > and started adapting and cannot find files like time.c and irq.c. > Moreover > > As said in the following document, time.c and irq.c are just indicative > names, it is the files where the timer and irq controller are > implemented for your platform, you have to find the corresponding files > for your platform. > > > I cannot find errors in file gic.c, timer-sp.c and so on (e.g. > *gic.c:106: > > multiple definition of `__ipipe_mach_ticks_per_jiffy'* i cannot find any > > definition of __ipipe_mach_ticks_per_jiffy so even if I would want to > > comment one of the definitions to eliminate multipling it's impossible > > cause it's not there). > > > > My description of the problem is very blurred i suppose, so if anybody > may > > be knowing the solution, please ask for more specific details and i will > > post them. > > This version of the I-pipe patch does not support kernels compiled for > multiple platforms. In the kernel configuration, you should only keep > configuration enabled for the only platform/board you use. Then you will > not get multiple definitions. > > -- > Gilles. > -- Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-05 15:34 ` Marcin Kuśka @ 2012-06-05 15:42 ` Gilles Chanteperdrix 2012-06-13 15:31 ` Marcin Kuśka 2012-06-05 18:16 ` Gilles Chanteperdrix 1 sibling, 1 reply; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-06-05 15:42 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 06/05/2012 05:34 PM, Marcin Kuśka wrote: > Thank you for quick response. > > Again I tried to compile it using buildroot but this time I used > following commands: > / > / > /# cd /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13 > # make ARCH=arm vexpress_defconfig // i suppose this sets kernel > configuration only for versatile express (ommiting multiple definitions)? > # cd .. > # xenomai/scripts/prepare-kernel.sh --linux=linux-3.0.13 > --adeos=adeos-ipipe-3.0.13-arm-1.18-09.patch --arch=arm > # cd /home/marcin/Documents/buildroot-2012.05 > # make all > / You should run make vexpress_defoncig after the prepare-kernel.sh step. I do not think vexpress_defconfig compiles for one board only, as the versatile board may hold several processor. Anyway, it is easy to check: just run make menuconfig/xconfig/whateverconfigyoulike yourself, and check what boards are enabled in the config. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-05 15:42 ` Gilles Chanteperdrix @ 2012-06-13 15:31 ` Marcin Kuśka 2012-06-13 20:14 ` Gilles Chanteperdrix 0 siblings, 1 reply; 17+ messages in thread From: Marcin Kuśka @ 2012-06-13 15:31 UTC (permalink / raw) To: Gilles Chanteperdrix; +Cc: xenomai Hi again, I'm still stuck in compiling Xenomai 2.6.0 with linux 3.0.13 and I'm still receiving mulitple definitions. Lately i run the compiling process with " | grep __ipipe" option to see the warnings at the begining of the compilation and i got this: *$ make ARCH=arm CROSS_COMPILE=arm-unknown-linux-gnueabi- zImage | grep __ipipe arch/arm/kernel/return_address.c:62:2: warning: #warning "TODO: return_address should use unwind tables" In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, from arch/arm/kernel/smp.c:41: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:27:1: warning: "__ipipe_mach_hrtimer_irq" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from arch/arm/kernel/smp.c:14: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:180:1: warning: this is the location of the previous definition In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, from arch/arm/kernel/smp.c:41: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:31:1: warning: "__ipipe_mach_ext_hrtimer" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from arch/arm/kernel/smp.c:14: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:187:1: warning: this is the location of the previous definition In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, from arch/arm/kernel/smp.c:41: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:33:1: warning: "__ipipe_mach_localtimer" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from arch/arm/kernel/smp.c:14: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:203:1: warning: this is the location of the previous definition In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, from arch/arm/kernel/smp.c:41: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:37:1: warning: "__ipipe_mach_doirq" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from arch/arm/kernel/smp.c:14: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:206:1: warning: this is the location of the previous definition In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, from arch/arm/kernel/smp.c:41: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:46:1: warning: "__ipipe_mach_ackirq" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from arch/arm/kernel/smp.c:14: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:209:1: warning: this is the location of the previous definition In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, from arch/arm/kernel/smp.c:41: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:73:1: warning: "__ipipe_mach_hrtimer_freq" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from arch/arm/kernel/smp.c:14: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:167:1: warning: this is the location of the previous definition In file included from arch/arm/kernel/smp_twd.c:24: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:27:1: warning: "__ipipe_mach_hrtimer_irq" redefined In file included from include/linux/ipipe.h:31, from arch/arm/kernel/smp_twd.c:22: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:180:1: warning: this is the location of the previous definition In file included from arch/arm/kernel/smp_twd.c:24: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:31:1: warning: "__ipipe_mach_ext_hrtimer" redefined In file included from include/linux/ipipe.h:31, from arch/arm/kernel/smp_twd.c:22: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:187:1: warning: this is the location of the previous definition In file included from arch/arm/kernel/smp_twd.c:24: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:33:1: warning: "__ipipe_mach_localtimer" redefined In file included from include/linux/ipipe.h:31, from arch/arm/kernel/smp_twd.c:22: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:203:1: warning: this is the location of the previous definition In file included from arch/arm/kernel/smp_twd.c:24: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:37:1: warning: "__ipipe_mach_doirq" redefined In file included from include/linux/ipipe.h:31, from arch/arm/kernel/smp_twd.c:22: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:206:1: warning: this is the location of the previous definition In file included from arch/arm/kernel/smp_twd.c:24: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:46:1: warning: "__ipipe_mach_ackirq" redefined In file included from include/linux/ipipe.h:31, from arch/arm/kernel/smp_twd.c:22: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:209:1: warning: this is the location of the previous definition In file included from arch/arm/kernel/smp_twd.c:24: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:73:1: warning: "__ipipe_mach_hrtimer_freq" redefined In file included from include/linux/ipipe.h:31, from arch/arm/kernel/smp_twd.c:22: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:167:1: warning: this is the location of the previous definition In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:27:1: warning: "__ipipe_mach_hrtimer_irq" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from include/linux/i2c.h:34, from include/linux/fb.h:5, from include/linux/amba/clcd.h:12, from arch/arm/mach-vexpress/ct-ca9x4.c:10: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:180:1: warning: this is the location of the previous definition In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:31:1: warning: "__ipipe_mach_ext_hrtimer" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from include/linux/i2c.h:34, from include/linux/fb.h:5, from include/linux/amba/clcd.h:12, from arch/arm/mach-vexpress/ct-ca9x4.c:10: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:187:1: warning: this is the location of the previous definition In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:33:1: warning: "__ipipe_mach_localtimer" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from include/linux/i2c.h:34, from include/linux/fb.h:5, from include/linux/amba/clcd.h:12, from arch/arm/mach-vexpress/ct-ca9x4.c:10: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:203:1: warning: this is the location of the previous definition In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:37:1: warning: "__ipipe_mach_doirq" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from include/linux/i2c.h:34, from include/linux/fb.h:5, from include/linux/amba/clcd.h:12, from arch/arm/mach-vexpress/ct-ca9x4.c:10: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:206:1: warning: this is the location of the previous definition In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:46:1: warning: "__ipipe_mach_ackirq" redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from include/linux/i2c.h:34, from include/linux/fb.h:5, from include/linux/amba/clcd.h:12, from arch/arm/mach-vexpress/ct-ca9x4.c:10: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:209:1: warning: this is the location of the previous definition In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:73:1: warning: "__ipipe_mach_hrtimer_freq"redefined In file included from include/linux/ipipe.h:31, from include/linux/sched.h:65, from include/linux/i2c.h:34, from include/linux/fb.h:5, from include/linux/amba/clcd.h:12, from arch/arm/mach-vexpress/ct-ca9x4.c:10: /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:167:1: warning: this is the location of the previous definition kernel/time/tick-sched.c:47: warning: 'tick_do_update_jiffies64' defined but not used kernel/time/tick-sched.c:89: warning: 'tick_init_jiffy_update' defined but not used In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, from include/asm-generic/xenomai/syscall.h:69, from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/syscall.h:29, from include/xenomai/nucleus/shadow.h:27, from kernel/xenomai/skins/posix/signal.c:50: include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside parameter list include/linux/ipipe.h:645: warning: its scope is only this definition or declaration, which is probably not what you want In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, from include/asm-generic/xenomai/syscall.h:69, from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/syscall.h:29, from include/xenomai/posix/syscall.h:23, from kernel/xenomai/skins/posix/module.c:50: include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside parameter list include/linux/ipipe.h:645: warning: its scope is only this definition or declaration, which is probably not what you want In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, from kernel/xenomai/skins/posix/syscall.c:24: include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside parameter list include/linux/ipipe.h:645: warning: its scope is only this definition or declaration, which is probably not what you want In file included from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, from include/asm-generic/xenomai/syscall.h:69, from /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/syscall.h:29, from include/xenomai/nucleus/shadow.h:27, from kernel/xenomai/skins/rtdm/syscall.c:20: include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside parameter list include/linux/ipipe.h:645: warning: its scope is only this definition or declaration, which is probably not what you want arch/arm/common/built-in.o: In function `gic_raise_softirq': /home/marcin/Documents/linux-3.0.13/arch/arm/common/gic.c:450: multiple definition of `__ipipe_mach_ticks_per_jiffy' arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/entry-armv.S:80: first defined here arch/arm/common/built-in.o: In function `__ipipe_mach_set_dec': /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:231: multiple definition of `__ipipe_mach_set_dec' arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp_twd.c:60: first defined here arch/arm/common/built-in.o: In function `__ipipe_mach_release_timer': /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:239: multiple definition of `__ipipe_mach_release_timer' arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp.c:509: first defined here arch/arm/common/built-in.o: In function `gic_raise_softirq': /home/marcin/Documents/linux-3.0.13/arch/arm/common/gic.c:450: multiple definition of `__ipipe_mach_timerstolen' arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/entry-armv.S:79: first defined here arch/arm/common/built-in.o: In function `__ipipe_mach_get_dec': /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:249: multiple definition of `__ipipe_mach_get_dec' arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp_twd.c:71: first defined here arch/arm/common/built-in.o: In function `__ipipe_check_tickdev': /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:215: multiple definition of `__ipipe_check_tickdev' arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp_twd.c:75: first defined here make: *** [vmlinux.o] Error 1* In the listing above it's seen that mostly smp_twd.c and smp_twd.h is the problem with multiple definitions but i don't know which option i should uncheck to avoid these definitions - any ideas? I'm pretty sure that my configs are set to one processor only 'cause in buildroot menuconfig i chose cortex-a9 as "Target Architecture Variant". regards, Marcin 2012/6/5 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > On 06/05/2012 05:34 PM, Marcin Kuśka wrote: > > Thank you for quick response. > > > > Again I tried to compile it using buildroot but this time I used > > following commands: > > / > > / > > /# cd /home/marcin/Documents/buildroot-2012.05/output/build/linux-3.0.13 > > # make ARCH=arm vexpress_defconfig // i suppose this sets kernel > > configuration only for versatile express (ommiting multiple definitions)? > > # cd .. > > # xenomai/scripts/prepare-kernel.sh --linux=linux-3.0.13 > > --adeos=adeos-ipipe-3.0.13-arm-1.18-09.patch --arch=arm > > # cd /home/marcin/Documents/buildroot-2012.05 > > # make all > > / > > You should run make vexpress_defoncig after the prepare-kernel.sh step. > > I do not think vexpress_defconfig compiles for one board only, as the > versatile board may hold several processor. Anyway, it is easy to check: > just run make menuconfig/xconfig/whateverconfigyoulike yourself, and > check what boards are enabled in the config. > > -- > Gilles. > -- Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-13 15:31 ` Marcin Kuśka @ 2012-06-13 20:14 ` Gilles Chanteperdrix 2012-06-22 13:07 ` Marcin Kuśka 0 siblings, 1 reply; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-06-13 20:14 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 06/13/2012 05:31 PM, Marcin Kuśka wrote: > Hi again, > > I'm still stuck in compiling Xenomai 2.6.0 with linux 3.0.13 and I'm still > receiving mulitple definitions. Lately i run the compiling process with " | > grep __ipipe" option to see the warnings at the begining of the compilation > and i got this: > > *$ make ARCH=arm CROSS_COMPILE=arm-unknown-linux-gnueabi- zImage | grep > __ipipe > > arch/arm/kernel/return_address.c:62:2: warning: #warning "TODO: > return_address should use unwind tables" > > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, > from arch/arm/kernel/smp.c:41: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:27:1: > warning: "__ipipe_mach_hrtimer_irq" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from arch/arm/kernel/smp.c:14: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:180:1: > warning: this is the location of the previous definition > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, > from arch/arm/kernel/smp.c:41: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:31:1: > warning: "__ipipe_mach_ext_hrtimer" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from arch/arm/kernel/smp.c:14: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:187:1: > warning: this is the location of the previous definition > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, > from arch/arm/kernel/smp.c:41: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:33:1: > warning: "__ipipe_mach_localtimer" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from arch/arm/kernel/smp.c:14: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:203:1: > warning: this is the location of the previous definition > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, > from arch/arm/kernel/smp.c:41: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:37:1: > warning: "__ipipe_mach_doirq" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from arch/arm/kernel/smp.c:14: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:206:1: > warning: this is the location of the previous definition > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, > from arch/arm/kernel/smp.c:41: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:46:1: > warning: "__ipipe_mach_ackirq" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from arch/arm/kernel/smp.c:14: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:209:1: > warning: this is the location of the previous definition > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/localtimer.h:30, > from arch/arm/kernel/smp.c:41: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:73:1: > warning: "__ipipe_mach_hrtimer_freq" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from arch/arm/kernel/smp.c:14: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:167:1: > warning: this is the location of the previous definition > In file included from arch/arm/kernel/smp_twd.c:24: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:27:1: > warning: "__ipipe_mach_hrtimer_irq" redefined > In file included from include/linux/ipipe.h:31, > from arch/arm/kernel/smp_twd.c:22: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:180:1: > warning: this is the location of the previous definition > In file included from arch/arm/kernel/smp_twd.c:24: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:31:1: > warning: "__ipipe_mach_ext_hrtimer" redefined > In file included from include/linux/ipipe.h:31, > from arch/arm/kernel/smp_twd.c:22: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:187:1: > warning: this is the location of the previous definition > In file included from arch/arm/kernel/smp_twd.c:24: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:33:1: > warning: "__ipipe_mach_localtimer" redefined > In file included from include/linux/ipipe.h:31, > from arch/arm/kernel/smp_twd.c:22: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:203:1: > warning: this is the location of the previous definition > In file included from arch/arm/kernel/smp_twd.c:24: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:37:1: > warning: "__ipipe_mach_doirq" redefined > In file included from include/linux/ipipe.h:31, > from arch/arm/kernel/smp_twd.c:22: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:206:1: > warning: this is the location of the previous definition > In file included from arch/arm/kernel/smp_twd.c:24: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:46:1: > warning: "__ipipe_mach_ackirq" redefined > In file included from include/linux/ipipe.h:31, > from arch/arm/kernel/smp_twd.c:22: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:209:1: > warning: this is the location of the previous definition > In file included from arch/arm/kernel/smp_twd.c:24: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:73:1: > warning: "__ipipe_mach_hrtimer_freq" redefined > In file included from include/linux/ipipe.h:31, > from arch/arm/kernel/smp_twd.c:22: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:167:1: > warning: this is the location of the previous definition > In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:27:1: > warning: "__ipipe_mach_hrtimer_irq" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from include/linux/i2c.h:34, > from include/linux/fb.h:5, > from include/linux/amba/clcd.h:12, > from arch/arm/mach-vexpress/ct-ca9x4.c:10: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:180:1: > warning: this is the location of the previous definition > In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:31:1: > warning: "__ipipe_mach_ext_hrtimer" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from include/linux/i2c.h:34, > from include/linux/fb.h:5, > from include/linux/amba/clcd.h:12, > from arch/arm/mach-vexpress/ct-ca9x4.c:10: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:187:1: > warning: this is the location of the previous definition > In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:33:1: > warning: "__ipipe_mach_localtimer" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from include/linux/i2c.h:34, > from include/linux/fb.h:5, > from include/linux/amba/clcd.h:12, > from arch/arm/mach-vexpress/ct-ca9x4.c:10: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:203:1: > warning: this is the location of the previous definition > In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:37:1: > warning: "__ipipe_mach_doirq" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from include/linux/i2c.h:34, > from include/linux/fb.h:5, > from include/linux/amba/clcd.h:12, > from arch/arm/mach-vexpress/ct-ca9x4.c:10: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:206:1: > warning: this is the location of the previous definition > In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:46:1: > warning: "__ipipe_mach_ackirq" redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from include/linux/i2c.h:34, > from include/linux/fb.h:5, > from include/linux/amba/clcd.h:12, > from arch/arm/mach-vexpress/ct-ca9x4.c:10: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:209:1: > warning: this is the location of the previous definition > In file included from arch/arm/mach-vexpress/ct-ca9x4.c:18: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/smp_twd.h:73:1: > warning: "__ipipe_mach_hrtimer_freq"redefined > In file included from include/linux/ipipe.h:31, > from include/linux/sched.h:65, > from include/linux/i2c.h:34, > from include/linux/fb.h:5, > from include/linux/amba/clcd.h:12, > from arch/arm/mach-vexpress/ct-ca9x4.c:10: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/ipipe.h:167:1: > warning: this is the location of the previous definition > kernel/time/tick-sched.c:47: warning: 'tick_do_update_jiffies64' defined > but not used > kernel/time/tick-sched.c:89: warning: 'tick_init_jiffy_update' defined but > not used > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, > from include/asm-generic/xenomai/syscall.h:69, > from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/syscall.h:29, > from include/xenomai/nucleus/shadow.h:27, > from kernel/xenomai/skins/posix/signal.c:50: > include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside > parameter list > include/linux/ipipe.h:645: warning: its scope is only this definition or > declaration, which is probably not what you want > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, > from include/asm-generic/xenomai/syscall.h:69, > from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/syscall.h:29, > from include/xenomai/posix/syscall.h:23, > from kernel/xenomai/skins/posix/module.c:50: > include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside > parameter list > include/linux/ipipe.h:645: warning: its scope is only this definition or > declaration, which is probably not what you want > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, > from kernel/xenomai/skins/posix/syscall.c:24: > include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside > parameter list > include/linux/ipipe.h:645: warning: its scope is only this definition or > declaration, which is probably not what you want > In file included from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/wrappers.h:27, > from include/asm-generic/xenomai/syscall.h:69, > from > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/syscall.h:29, > from include/xenomai/nucleus/shadow.h:27, > from kernel/xenomai/skins/rtdm/syscall.c:20: > include/linux/ipipe.h:645: warning: 'struct vm_area_struct' declared inside > parameter list > include/linux/ipipe.h:645: warning: its scope is only this definition or > declaration, which is probably not what you want > arch/arm/common/built-in.o: In function `gic_raise_softirq': > /home/marcin/Documents/linux-3.0.13/arch/arm/common/gic.c:450: multiple > definition of `__ipipe_mach_ticks_per_jiffy' > arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/entry-armv.S:80: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_mach_set_dec': > /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:231: > multiple definition of `__ipipe_mach_set_dec' > arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp_twd.c:60: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_mach_release_timer': > /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:239: > multiple definition of `__ipipe_mach_release_timer' > arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp.c:509: > first defined here > arch/arm/common/built-in.o: In function `gic_raise_softirq': > /home/marcin/Documents/linux-3.0.13/arch/arm/common/gic.c:450: multiple > definition of `__ipipe_mach_timerstolen' > arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/entry-armv.S:79: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_mach_get_dec': > /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:249: > multiple definition of `__ipipe_mach_get_dec' > arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp_twd.c:71: > first defined here > arch/arm/common/built-in.o: In function `__ipipe_check_tickdev': > /home/marcin/Documents/linux-3.0.13/arch/arm/common/timer-sp.c:215: > multiple definition of `__ipipe_check_tickdev' > arch/arm/kernel/built-in.o:/home/marcin/Documents/linux-3.0.13/arch/arm/kernel/smp_twd.c:75: > first defined here > make: *** [vmlinux.o] Error 1* > > In the listing above it's seen that mostly smp_twd.c and smp_twd.h is the > problem with multiple definitions but i don't know which option i should > uncheck to avoid these definitions - any ideas? > I'm pretty sure that my configs are set to one processor only 'cause in > buildroot menuconfig i chose cortex-a9 as "Target Architecture Variant". The problem is not the configuration of buildroot, the problem is the configuration of the Linux kernel. What you should do is only keep one SOC enabled. If your processor is based on a cortex a9, look at what is done for omap4, since the omap4 is currently the only in-tree supported cortex a9. For instance, the fact that you are compiling both arch/arm/common/timer-sp.c and smp_twd.c will lead to a conflict the way timer-sp.c is currently made. omap4 has the same problem since for instance arch/arm/mach-omap2/timer.c is compiled both in the omap3 and the omap4 case. So, just look at how it is done, and do it the same way. Another simpler solution is to start from the ipipe core-3.2 branch, which supports being built for several SOCs. However, it will require upgrading to xenomai 2.6 branch head. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-13 20:14 ` Gilles Chanteperdrix @ 2012-06-22 13:07 ` Marcin Kuśka 2012-06-22 13:13 ` Gilles Chanteperdrix 0 siblings, 1 reply; 17+ messages in thread From: Marcin Kuśka @ 2012-06-22 13:07 UTC (permalink / raw) To: Gilles Chanteperdrix; +Cc: xenomai 2012/6/13 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > > For instance, the fact that you are compiling both > arch/arm/common/timer-sp.c and smp_twd.c will lead to a conflict the way > timer-sp.c is currently made. omap4 has the same problem since for > instance arch/arm/mach-omap2/timer.c is compiled both in the omap3 and > the omap4 case. So, just look at how it is done, and do it the same way. > > Another simpler solution is to start from the ipipe core-3.2 branch, > which supports being built for several SOCs. However, it will require > upgrading to xenomai 2.6 branch head. > > -- > Gilles. > > Ok I checked the arch/arm/common/timer-sp.c (i assume this file implements the timer for vexpress) and all the__ipipe_mach_timerint; __ipipe_mach_timerstolen; and so on, are there and there is nothing to be done there. I don't know if i understand you right. Which part should I do the same as with omap4? About that simpler solution using ipipe core-3.2 branch. There is no ipipe core-3.2 at the http://download.gna.org/adeos/patches/v3.x/arm/ site or am I looking for wrong site? thank you in advance! -- Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-22 13:07 ` Marcin Kuśka @ 2012-06-22 13:13 ` Gilles Chanteperdrix 2012-06-27 14:20 ` Marcin Kuśka 0 siblings, 1 reply; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-06-22 13:13 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 06/22/2012 03:07 PM, Marcin Kuśka wrote: > 2012/6/13 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > >> >> For instance, the fact that you are compiling both >> arch/arm/common/timer-sp.c and smp_twd.c will lead to a conflict the way >> timer-sp.c is currently made. omap4 has the same problem since for >> instance arch/arm/mach-omap2/timer.c is compiled both in the omap3 and >> the omap4 case. So, just look at how it is done, and do it the same way. >> >> Another simpler solution is to start from the ipipe core-3.2 branch, >> which supports being built for several SOCs. However, it will require >> upgrading to xenomai 2.6 branch head. >> >> -- >> Gilles. >> >> > Ok I checked the arch/arm/common/timer-sp.c (i assume this file implements > the timer for vexpress) and all the__ipipe_mach_timerint; > __ipipe_mach_timerstolen; and so on, are there and there is nothing to be > done there. I don't know if i understand you right. Which part should I do > the same as with omap4? The problem is that if you are compiling with CONFIG_SMP for a cortex a9, there is also an __ipipe_mach_timerint, __ipipe_mach_timerstolen, etc... in the generic code for cortex a9. So, you get multiple definitions. omap4 has exactly the same problem, because it compiles some code which is common with omap3, already modified for CONFIG_IPIPE. So what you have to do is solve the multiple definitions for vexpress the way they are solved for the omap4/omap3. > > > About that simpler solution using ipipe core-3.2 branch. There is no ipipe > core-3.2 at the http://download.gna.org/adeos/patches/v3.x/arm/ site or am > I looking for wrong site? Yes, I am talking about a branch in the adeos ipipe git repository. The patch is not released yet. But anyway, for what you have to do, working with git is much simpler than working with patches. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-22 13:13 ` Gilles Chanteperdrix @ 2012-06-27 14:20 ` Marcin Kuśka 2012-06-27 15:18 ` Gilles Chanteperdrix 0 siblings, 1 reply; 17+ messages in thread From: Marcin Kuśka @ 2012-06-27 14:20 UTC (permalink / raw) To: Gilles Chanteperdrix; +Cc: xenomai Ok thank you for helping me out! You've been very helpfull. Just for anyone trying to do the same in future: I used two of git projects from http://git.xenomai.org/ipipe-gch.git/ - ipipe-gch.git (linux kernel) - xenomai-2.6.git (the file HAVE TO be named xenomai-2.6 as buildroot will be looking for that folder and if he denies to find it in 'output/build' it will start downloading the common xenomai from xenomai site and we don't want that) In buildroot: - Kernel->Kernel version (Custom tarball) and specify the URL of a tarball (ipipe-gch linux kernel) - Linux Kernel Extensions -> UNCHECK Adeos/Xenomai Real-time patch then build the kernel and that's all. For me it worked. Many thanks to Gilles! Marcin Kuśka 2012/6/22 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > On 06/22/2012 03:07 PM, Marcin Kuśka wrote: > > 2012/6/13 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > > > >> > >> For instance, the fact that you are compiling both > >> arch/arm/common/timer-sp.c and smp_twd.c will lead to a conflict the way > >> timer-sp.c is currently made. omap4 has the same problem since for > >> instance arch/arm/mach-omap2/timer.c is compiled both in the omap3 and > >> the omap4 case. So, just look at how it is done, and do it the same way. > >> > >> Another simpler solution is to start from the ipipe core-3.2 branch, > >> which supports being built for several SOCs. However, it will require > >> upgrading to xenomai 2.6 branch head. > >> > >> -- > >> Gilles. > >> > >> > > Ok I checked the arch/arm/common/timer-sp.c (i assume this file > implements > > the timer for vexpress) and all the__ipipe_mach_timerint; > > __ipipe_mach_timerstolen; and so on, are there and there is nothing to be > > done there. I don't know if i understand you right. Which part should I > do > > the same as with omap4? > > The problem is that if you are compiling with CONFIG_SMP for a cortex > a9, there is also an __ipipe_mach_timerint, __ipipe_mach_timerstolen, > etc... in the generic code for cortex a9. So, you get multiple definitions. > > omap4 has exactly the same problem, because it compiles some code which > is common with omap3, already modified for CONFIG_IPIPE. > > So what you have to do is solve the multiple definitions for vexpress > the way they are solved for the omap4/omap3. > > > > > > > About that simpler solution using ipipe core-3.2 branch. There is no > ipipe > > core-3.2 at the http://download.gna.org/adeos/patches/v3.x/arm/ site or > am > > I looking for wrong site? > > Yes, I am talking about a branch in the adeos ipipe git repository. The > patch is not released yet. But anyway, for what you have to do, working > with git is much simpler than working with patches. > > -- > Gilles. > -- Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-27 14:20 ` Marcin Kuśka @ 2012-06-27 15:18 ` Gilles Chanteperdrix 2012-06-27 15:45 ` Marcin Kuśka 0 siblings, 1 reply; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-06-27 15:18 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 06/27/2012 04:20 PM, Marcin Kuśka wrote: > Ok thank you for helping me out! You've been very helpfull. > > Just for anyone trying to do the same in future: > > I used two of git projects from http://git.xenomai.org/ipipe-gch.git/ > > - ipipe-gch.git (linux kernel) > - xenomai-2.6.git (the file HAVE TO be named xenomai-2.6 as buildroot > will be looking for that folder and if he denies to find it in > 'output/build' it will start downloading the common xenomai from xenomai > site and we don't want that) > > > In buildroot: > > - Kernel->Kernel version (Custom tarball) and specify the URL of a > tarball (ipipe-gch linux kernel) > - Linux Kernel Extensions -> UNCHECK Adeos/Xenomai Real-time patch > > then build the kernel and that's all. > > For me it worked. > > Many thanks to Gilles! So, you can run the latency test with this kernel for instance? Looks to me like you are building a kernel without xenomai support... -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-27 15:18 ` Gilles Chanteperdrix @ 2012-06-27 15:45 ` Marcin Kuśka 2012-06-27 16:18 ` Gilles Chanteperdrix 0 siblings, 1 reply; 17+ messages in thread From: Marcin Kuśka @ 2012-06-27 15:45 UTC (permalink / raw) To: Gilles Chanteperdrix; +Cc: xenomai Ahh ok my mistake. I applied the adeos-3.0.13-arm-1.18-09.patch to kernel by myself that is why i uncheck xenomai kernel extension (but not "Package Selection for the target->Real-Time"! That one have to remain checked!) in buildroot setup. Anyway it works and xeno-test works fine also ;) For now I don't want to change anything as long as everything is ok since I have to carry on with the project but later on, I will find out the exact way how did I manage to do this (compile xenomai on versatile express machine). 2012/6/27 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > On 06/27/2012 04:20 PM, Marcin Kuśka wrote: > > Ok thank you for helping me out! You've been very helpfull. > > > > Just for anyone trying to do the same in future: > > > > I used two of git projects from http://git.xenomai.org/ipipe-gch.git/ > > > > - ipipe-gch.git (linux kernel) > > - xenomai-2.6.git (the file HAVE TO be named xenomai-2.6 as buildroot > > will be looking for that folder and if he denies to find it in > > 'output/build' it will start downloading the common xenomai from > xenomai > > site and we don't want that) > > > > > > In buildroot: > > > > - Kernel->Kernel version (Custom tarball) and specify the URL of a > > tarball (ipipe-gch linux kernel) > > - Linux Kernel Extensions -> UNCHECK Adeos/Xenomai Real-time patch > > > > then build the kernel and that's all. > > > > For me it worked. > > > > Many thanks to Gilles! > > So, you can run the latency test with this kernel for instance? Looks to > me like you are building a kernel without xenomai support... > > -- > Gilles. > -- Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-27 15:45 ` Marcin Kuśka @ 2012-06-27 16:18 ` Gilles Chanteperdrix 2012-07-03 16:49 ` Marcin Kuśka 0 siblings, 1 reply; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-06-27 16:18 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 06/27/2012 05:45 PM, Marcin Kuśka wrote: > Ahh ok my mistake. I applied the adeos-3.0.13-arm-1.18-09.patch to kernel > by myself that is why i uncheck xenomai kernel extension (but not "Package > Selection for the target->Real-Time"! That one have to remain checked!) in > buildroot setup. Anyway it works and xeno-test works fine also ;) > For now I don't want to change anything as long as everything is ok since I > have to carry on with the project but later on, I will find out the exact > way how did I manage to do this (compile xenomai on versatile express > machine). It would be interesting if you could post the patch for vexpress, so that we can include it in future ipipe patches. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-27 16:18 ` Gilles Chanteperdrix @ 2012-07-03 16:49 ` Marcin Kuśka 2012-07-03 16:55 ` Gilles Chanteperdrix 0 siblings, 1 reply; 17+ messages in thread From: Marcin Kuśka @ 2012-07-03 16:49 UTC (permalink / raw) To: Gilles Chanteperdrix; +Cc: xenomai All I did was applying standard adeos-3.0.13-arm-1.18-09.patch to kernel ipipe core-3.2 from your repository and used xenomai upgraded to head branch as you suggested. All done in buildroot-2012.05 using buildroot's toolchain. Unfortunately I did not manage to compile it under buildroot environment with an external toolchain such as crosstool-ng or CodeSourcery. The reason why I'm trying to compile the linuxXenomaiOnBoard kernel with an external toolchain is that any application (even hello world) cross-compiled with e.g. crosstool-ng cannot be run on linux with Xenomai on board cross-compiled with a buildroot toolchain (the working one). So again I tried cross-compile linux with xenomai with a crosstool-ng and at first hand xenomai works fine cause i received this in dmesg: * * *I-pipe: head domain Xenomai registered.* *Xenomai: hal/arm started.* *Xenomai: scheduling class idle registered.* *Xenomai: scheduling class rt registered.* *Xenomai: real-time nucleus v2.6.0 (Movin' On) loaded.* *Xenomai: debug mode enabled.* *Xenomai: starting native API services.* *Xenomai: starting POSIX services.* *Xenomai: starting RTDM services.* but, latency test doesn't work. Not even xeno-test. Is there in the linux kernel config any option which enables those? Thanks and regards Marcin Kuśka 2012/6/27 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > On 06/27/2012 05:45 PM, Marcin Kuśka wrote: > > Ahh ok my mistake. I applied the adeos-3.0.13-arm-1.18-09.patch to kernel > > by myself that is why i uncheck xenomai kernel extension (but not > "Package > > Selection for the target->Real-Time"! That one have to remain checked!) > in > > buildroot setup. Anyway it works and xeno-test works fine also ;) > > For now I don't want to change anything as long as everything is ok > since I > > have to carry on with the project but later on, I will find out the exact > > way how did I manage to do this (compile xenomai on versatile express > > machine). > > It would be interesting if you could post the patch for vexpress, so > that we can include it in future ipipe patches. > > -- > Gilles. > -- Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-07-03 16:49 ` Marcin Kuśka @ 2012-07-03 16:55 ` Gilles Chanteperdrix 2012-07-06 12:06 ` Marcin Kuśka 0 siblings, 1 reply; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-07-03 16:55 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 07/03/2012 06:49 PM, Marcin Kuśka wrote: > All I did was applying standard adeos-3.0.13-arm-1.18-09.patch to kernel > ipipe core-3.2 from your repository and used xenomai upgraded to head > branch as you suggested. No, you have to either use adeos-3.0.13 patch with a 3.0 kernel, or use the ipipe core-3.2 patch with no further patch. You can not mix the two. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-07-03 16:55 ` Gilles Chanteperdrix @ 2012-07-06 12:06 ` Marcin Kuśka 2012-07-06 12:18 ` Gilles Chanteperdrix 0 siblings, 1 reply; 17+ messages in thread From: Marcin Kuśka @ 2012-07-06 12:06 UTC (permalink / raw) To: Gilles Chanteperdrix; +Cc: xenomai So what you mean is, run prepare-kernel.sh without option --adeos=path/to/adeos/patch? 2012/7/3 Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > On 07/03/2012 06:49 PM, Marcin Kuśka wrote: > > All I did was applying standard adeos-3.0.13-arm-1.18-09.patch to kernel > > ipipe core-3.2 from your repository and used xenomai upgraded to head > > branch as you suggested. > > No, you have to either use adeos-3.0.13 patch with a 3.0 kernel, or use > the ipipe core-3.2 patch with no further patch. You can not mix the two. > > -- > Gilles. > -- Marcin Kuśka ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-07-06 12:06 ` Marcin Kuśka @ 2012-07-06 12:18 ` Gilles Chanteperdrix 0 siblings, 0 replies; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-07-06 12:18 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 07/06/2012 02:06 PM, Marcin Kuśka wrote: > So what you mean is, run prepare-kernel.sh without option > --adeos=path/to/adeos/patch? You can pass whatever you like to --adeos, right, even not pass it at all. prepare-kernel should not even try to apply an adeos patch. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Xenomai] unsupported ARM9 machine 2012-06-05 15:34 ` Marcin Kuśka 2012-06-05 15:42 ` Gilles Chanteperdrix @ 2012-06-05 18:16 ` Gilles Chanteperdrix 1 sibling, 0 replies; 17+ messages in thread From: Gilles Chanteperdrix @ 2012-06-05 18:16 UTC (permalink / raw) To: Marcin Kuśka; +Cc: xenomai On 06/05/2012 05:34 PM, Marcin Kuśka wrote: > 1. crosstool-ng-1.15.2 > 2. linux-3.0.13: > *# make ARCH=arm vexpress_defconfig > [*] use the ARM EABI to compile the kernel > # make ARCH=arm CROSS_COMPILE=arm-unknown-linux-gnueabi- modules > # make ARCH=arm INSTALL_MOD_PATH=/home/marcin/Documents/arm/target > modules_install* > 3. busybox-1.20.0 > 4. ramdisk: > *# cd /home/marcin/Documents/arm/target > # find . | sudo cpio -o -H newc > /home/marcin/Documents/arm/rootfs.cpio* > 5. Kernel: > *# cd linux-3.0.15 > **# ../xenomai/scripts/prepare-kernel.sh --linux=linux-3.0.13 > --adeos=adeos-ipipe-3.0.13-arm-1.18-09.patch --arch=arm > # make ARCH=arm CROSS_COMPILE=arm-unknown-linux-gnueabi- zImage* > > and the result is > > * CHK include/linux/version.h > CHK include/generated/utsrelease.h > make[1]: `include/generated/mach-types.h' is up to date. > CALL scripts/checksyscalls.sh > CHK include/generated/compile.h > CC kernel/xenomai/arch/generic/hal.o > In file included from kernel/xenomai/arch/generic/hal.c:45: > /home/marcin/Documents/linux-3.0.13/arch/arm/include/asm/xenomai/hal.h:91:2: > error: #error "Unsupported ARM machine" > make[4]: *** [kernel/xenomai/arch/generic/hal.o] Error 1 > make[3]: *** [kernel/xenomai/arch/generic] Error 2 > make[2]: *** [kernel/xenomai/arch] Error 2 > make[1]: *** [kernel/xenomai] Error 2 > make: *** [kernel] Error 2 > > *"Unsupported ARM machine" - any suggestions to this?* It means you have to follow the I-pipe porting guide to add what is missing to support your board/SOC combination. -- Gilles. ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2012-07-06 12:18 UTC | newest] Thread overview: 17+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-06-05 12:20 [Xenomai] [Xenomai -help] unsupported ARM9 machine Marcin Kuśka 2012-06-05 12:27 ` [Xenomai] " Gilles Chanteperdrix 2012-06-05 15:34 ` Marcin Kuśka 2012-06-05 15:42 ` Gilles Chanteperdrix 2012-06-13 15:31 ` Marcin Kuśka 2012-06-13 20:14 ` Gilles Chanteperdrix 2012-06-22 13:07 ` Marcin Kuśka 2012-06-22 13:13 ` Gilles Chanteperdrix 2012-06-27 14:20 ` Marcin Kuśka 2012-06-27 15:18 ` Gilles Chanteperdrix 2012-06-27 15:45 ` Marcin Kuśka 2012-06-27 16:18 ` Gilles Chanteperdrix 2012-07-03 16:49 ` Marcin Kuśka 2012-07-03 16:55 ` Gilles Chanteperdrix 2012-07-06 12:06 ` Marcin Kuśka 2012-07-06 12:18 ` Gilles Chanteperdrix 2012-06-05 18:16 ` Gilles Chanteperdrix
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.