All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai] Raspberry Pi + Xenomai doesn't compile
@ 2015-05-21 20:18 Marc Marí
  2015-05-21 20:48 ` Lennart Sorensen
  2015-05-21 21:24 ` Gilles Chanteperdrix
  0 siblings, 2 replies; 10+ messages in thread
From: Marc Marí @ 2015-05-21 20:18 UTC (permalink / raw)
  To: xenomai

Hello

I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B with
kernel version 3.8.13. In theory, it should be straightforward, but I
don't get it to compile, and I don't know if I'm missing something
vital or something is broken.

This is what I executed:

$ git clone git@github.com:raspberrypi/linux.git
$ mv linux rpi-xenomai
$ git checkout rpi-3.8.y
$ patch -p1 -i \
../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
$ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm --linux=./ \
--adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
$ patch -p1 -i \
../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-

I get this output:

kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
kernel/ipipe/core.c:1748:2: error: implicit declaration of function
‘get_fs’ [-Werror=implicit-function-declaration]
  mm_segment_t old_fs = get_fs();
  ^
kernel/ipipe/core.c:1750:2: error: implicit declaration of function
‘set_fs’ [-Werror=implicit-function-declaration]
  set_fs(KERNEL_DS);
  ^
kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first use in
this function)
  set_fs(KERNEL_DS);
         ^
kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
reported only once for each function it appears in
kernel/ipipe/core.c:1753:2: error: implicit declaration of function
‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
  ret = __copy_from_user_inatomic(dst,
  ^
kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first use in
this function)
  set_fs(KERNEL_DS);
         ^
kernel/ipipe/core.c:1770:2: error: implicit declaration of function
‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
  ret = __copy_to_user_inatomic((__force void __user *)dst, src, size);
  ^
cc1: some warnings being treated as errors
scripts/Makefile.build:307: recipe for target 'kernel/ipipe/core.o'
failed
make[2]: *** [kernel/ipipe/core.o] Error 1
scripts/Makefile.build:454: recipe for target 'kernel/ipipe' failed
make[1]: *** [kernel/ipipe] Error 2
Makefile:791: recipe for target 'kernel' failed
make: *** [kernel] Error 2


I tried by including asm/uaccess.h, which solved the issue. But the
kernel doesn't boot, and there is no message. It just hangs.

I tried the same kernel without Xenomai patch, and it compiles and
boots without problem.

Thanks in advance
Marc


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 20:18 [Xenomai] Raspberry Pi + Xenomai doesn't compile Marc Marí
@ 2015-05-21 20:48 ` Lennart Sorensen
  2015-05-21 20:53   ` Marc Marí
  2015-05-21 21:27   ` Gilles Chanteperdrix
  2015-05-21 21:24 ` Gilles Chanteperdrix
  1 sibling, 2 replies; 10+ messages in thread
From: Lennart Sorensen @ 2015-05-21 20:48 UTC (permalink / raw)
  To: Marc Marí; +Cc: xenomai

On Thu, May 21, 2015 at 10:18:11PM +0200, Marc Marí wrote:
> Hello
> 
> I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B with
> kernel version 3.8.13. In theory, it should be straightforward, but I
> don't get it to compile, and I don't know if I'm missing something
> vital or something is broken.
> 
> This is what I executed:
> 
> $ git clone git@github.com:raspberrypi/linux.git
> $ mv linux rpi-xenomai
> $ git checkout rpi-3.8.y
> $ patch -p1 -i \
> ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
> $ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm --linux=./ \
> --adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
> $ patch -p1 -i \
> ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
> $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
> $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> 
> I get this output:
> 
> kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
> kernel/ipipe/core.c:1748:2: error: implicit declaration of function
> ‘get_fs’ [-Werror=implicit-function-declaration]
>   mm_segment_t old_fs = get_fs();
>   ^
> kernel/ipipe/core.c:1750:2: error: implicit declaration of function
> ‘set_fs’ [-Werror=implicit-function-declaration]
>   set_fs(KERNEL_DS);
>   ^
> kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first use in
> this function)
>   set_fs(KERNEL_DS);
>          ^
> kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
> reported only once for each function it appears in
> kernel/ipipe/core.c:1753:2: error: implicit declaration of function
> ‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
>   ret = __copy_from_user_inatomic(dst,
>   ^
> kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
> kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first use in
> this function)
>   set_fs(KERNEL_DS);
>          ^
> kernel/ipipe/core.c:1770:2: error: implicit declaration of function
> ‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
>   ret = __copy_to_user_inatomic((__force void __user *)dst, src, size);
>   ^
> cc1: some warnings being treated as errors
> scripts/Makefile.build:307: recipe for target 'kernel/ipipe/core.o'
> failed
> make[2]: *** [kernel/ipipe/core.o] Error 1
> scripts/Makefile.build:454: recipe for target 'kernel/ipipe' failed
> make[1]: *** [kernel/ipipe] Error 2
> Makefile:791: recipe for target 'kernel' failed
> make: *** [kernel] Error 2
> 
> 
> I tried by including asm/uaccess.h, which solved the issue. But the
> kernel doesn't boot, and there is no message. It just hangs.
> 
> I tried the same kernel without Xenomai patch, and it compiles and
> boots without problem.

Did you enable IPIPE in the config?  After all bcmrpi_defconfig probably
does NOT include IPIPE config, and most releases of ipipe don't compile
if you disable IPIPE support.  I have only ever seen recent versions
actually be able to compile with CONFIG_IPIPE=n.

-- 
Len Sorensen


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 20:48 ` Lennart Sorensen
@ 2015-05-21 20:53   ` Marc Marí
  2015-05-21 21:01     ` Lennart Sorensen
  2015-05-21 21:27   ` Gilles Chanteperdrix
  1 sibling, 1 reply; 10+ messages in thread
From: Marc Marí @ 2015-05-21 20:53 UTC (permalink / raw)
  To: Lennart Sorensen; +Cc: xenomai

El Thu, 21 May 2015 16:48:56 -0400
"Lennart Sorensen" <lsorense@csclub.uwaterloo.ca> escribió:
> On Thu, May 21, 2015 at 10:18:11PM +0200, Marc Marí wrote:
> > Hello
> > 
> > I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B
> > with kernel version 3.8.13. In theory, it should be
> > straightforward, but I don't get it to compile, and I don't know if
> > I'm missing something vital or something is broken.
> > 
> > This is what I executed:
> > 
> > $ git clone git@github.com:raspberrypi/linux.git
> > $ mv linux rpi-xenomai
> > $ git checkout rpi-3.8.y
> > $ patch -p1 -i \
> > ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
> > $ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm --linux=./ \
> > --adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
> > $ patch -p1 -i \
> > ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
> > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
> > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> > 
> > I get this output:
> > 
> > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
> > kernel/ipipe/core.c:1748:2: error: implicit declaration of function
> > ‘get_fs’ [-Werror=implicit-function-declaration]
> >   mm_segment_t old_fs = get_fs();
> >   ^
> > kernel/ipipe/core.c:1750:2: error: implicit declaration of function
> > ‘set_fs’ [-Werror=implicit-function-declaration]
> >   set_fs(KERNEL_DS);
> >   ^
> > kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first
> > use in this function)
> >   set_fs(KERNEL_DS);
> >          ^
> > kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
> > reported only once for each function it appears in
> > kernel/ipipe/core.c:1753:2: error: implicit declaration of function
> > ‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
> >   ret = __copy_from_user_inatomic(dst,
> >   ^
> > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
> > kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first
> > use in this function)
> >   set_fs(KERNEL_DS);
> >          ^
> > kernel/ipipe/core.c:1770:2: error: implicit declaration of function
> > ‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
> >   ret = __copy_to_user_inatomic((__force void __user *)dst, src,
> > size); ^
> > cc1: some warnings being treated as errors
> > scripts/Makefile.build:307: recipe for target 'kernel/ipipe/core.o'
> > failed
> > make[2]: *** [kernel/ipipe/core.o] Error 1
> > scripts/Makefile.build:454: recipe for target 'kernel/ipipe' failed
> > make[1]: *** [kernel/ipipe] Error 2
> > Makefile:791: recipe for target 'kernel' failed
> > make: *** [kernel] Error 2
> > 
> > 
> > I tried by including asm/uaccess.h, which solved the issue. But the
> > kernel doesn't boot, and there is no message. It just hangs.
> > 
> > I tried the same kernel without Xenomai patch, and it compiles and
> > boots without problem.
> 
> Did you enable IPIPE in the config?  After all bcmrpi_defconfig
> probably does NOT include IPIPE config, and most releases of ipipe
> don't compile if you disable IPIPE support.  I have only ever seen
> recent versions actually be able to compile with CONFIG_IPIPE=n.
> 

Enabled by default:

$ grep -r IPIPE .config
CONFIG_IPIPE_WANT_ACTIVE_MM=y
CONFIG_IPIPE_WANT_PREEMPTIBLE_SWITCH=y
CONFIG_IPIPE_ARM_KUSER_TSC=y
CONFIG_IPIPE=y
CONFIG_IPIPE_LEGACY=y
CONFIG_IPIPE_CORE=y
CONFIG_IPIPE_CORE_APIREV=2
CONFIG_IPIPE_WANT_APIREV_2=y
CONFIG_IPIPE_TARGET_APIREV=2
CONFIG_IPIPE_HAVE_HOSTRT=y
CONFIG_IPIPE_DELAYED_ATOMICSW=y
# CONFIG_IPIPE_DEBUG is not set

$ grep -r XENOMAI .config
CONFIG_XENOMAI=y


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 20:53   ` Marc Marí
@ 2015-05-21 21:01     ` Lennart Sorensen
  0 siblings, 0 replies; 10+ messages in thread
From: Lennart Sorensen @ 2015-05-21 21:01 UTC (permalink / raw)
  To: Marc Marí; +Cc: xenomai

On Thu, May 21, 2015 at 10:53:51PM +0200, Marc Marí wrote:
> Enabled by default:
> 
> $ grep -r IPIPE .config
> CONFIG_IPIPE_WANT_ACTIVE_MM=y
> CONFIG_IPIPE_WANT_PREEMPTIBLE_SWITCH=y
> CONFIG_IPIPE_ARM_KUSER_TSC=y
> CONFIG_IPIPE=y
> CONFIG_IPIPE_LEGACY=y
> CONFIG_IPIPE_CORE=y
> CONFIG_IPIPE_CORE_APIREV=2
> CONFIG_IPIPE_WANT_APIREV_2=y
> CONFIG_IPIPE_TARGET_APIREV=2
> CONFIG_IPIPE_HAVE_HOSTRT=y
> CONFIG_IPIPE_DELAYED_ATOMICSW=y
> # CONFIG_IPIPE_DEBUG is not set
> 
> $ grep -r XENOMAI .config
> CONFIG_XENOMAI=y

Well that was the most obvious problem I have encountered with things
not compiling.  No idea then.

I stopped touching 3.8 a long time about because it was way too unstable
on the cpu we are using (caused random segfaults frequently).  Didn't seem
to be a problem with 3.8 in general, just for this particular chip.

-- 
Len Sorensen


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 20:18 [Xenomai] Raspberry Pi + Xenomai doesn't compile Marc Marí
  2015-05-21 20:48 ` Lennart Sorensen
@ 2015-05-21 21:24 ` Gilles Chanteperdrix
  2015-05-21 22:37   ` Marc Marí
  1 sibling, 1 reply; 10+ messages in thread
From: Gilles Chanteperdrix @ 2015-05-21 21:24 UTC (permalink / raw)
  To: Marc Marí; +Cc: xenomai

On Thu, May 21, 2015 at 10:18:11PM +0200, Marc Marí wrote:
> Hello
> 
> I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B with
> kernel version 3.8.13. In theory, it should be straightforward, but I
> don't get it to compile, and I don't know if I'm missing something
> vital or something is broken.
> 
> This is what I executed:
> 
> $ git clone git@github.com:raspberrypi/linux.git
> $ mv linux rpi-xenomai
> $ git checkout rpi-3.8.y
> $ patch -p1 -i \
> ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
> $ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm --linux=./ \
> --adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
> $ patch -p1 -i \
> ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
> $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
> $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> 
> I get this output:
> 
> kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
> kernel/ipipe/core.c:1748:2: error: implicit declaration of function
> ‘get_fs’ [-Werror=implicit-function-declaration]
>   mm_segment_t old_fs = get_fs();
>   ^
> kernel/ipipe/core.c:1750:2: error: implicit declaration of function
> ‘set_fs’ [-Werror=implicit-function-declaration]
>   set_fs(KERNEL_DS);
>   ^
> kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first use in
> this function)
>   set_fs(KERNEL_DS);
>          ^
> kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
> reported only once for each function it appears in
> kernel/ipipe/core.c:1753:2: error: implicit declaration of function
> ‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
>   ret = __copy_from_user_inatomic(dst,
>   ^
> kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
> kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first use in
> this function)
>   set_fs(KERNEL_DS);
>          ^
> kernel/ipipe/core.c:1770:2: error: implicit declaration of function
> ‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
>   ret = __copy_to_user_inatomic((__force void __user *)dst, src, size);

This part of the code is compiled conditionally if CONFIG_KGDB is
enabled. Have you tried turning KGDB off? Chances are, nobody ever
tried running Xenomai with KGDB on ARM, so, I doubt it has any
chance to work anyway.

-- 
					    Gilles.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 20:48 ` Lennart Sorensen
  2015-05-21 20:53   ` Marc Marí
@ 2015-05-21 21:27   ` Gilles Chanteperdrix
  2015-05-22 16:59     ` Marc Marí
  1 sibling, 1 reply; 10+ messages in thread
From: Gilles Chanteperdrix @ 2015-05-21 21:27 UTC (permalink / raw)
  To: Lennart Sorensen; +Cc: xenomai

On Thu, May 21, 2015 at 04:48:56PM -0400, Lennart Sorensen wrote:
> On Thu, May 21, 2015 at 10:18:11PM +0200, Marc Marí wrote:
> > Hello
> > 
> > I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B with
> > kernel version 3.8.13. In theory, it should be straightforward, but I
> > don't get it to compile, and I don't know if I'm missing something
> > vital or something is broken.
> > 
> > This is what I executed:
> > 
> > $ git clone git@github.com:raspberrypi/linux.git
> > $ mv linux rpi-xenomai
> > $ git checkout rpi-3.8.y
> > $ patch -p1 -i \
> > ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
> > $ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm --linux=./ \
> > --adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
> > $ patch -p1 -i \
> > ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
> > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
> > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> > 
> > I get this output:
> > 
> > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
> > kernel/ipipe/core.c:1748:2: error: implicit declaration of function
> > ‘get_fs’ [-Werror=implicit-function-declaration]
> >   mm_segment_t old_fs = get_fs();
> >   ^
> > kernel/ipipe/core.c:1750:2: error: implicit declaration of function
> > ‘set_fs’ [-Werror=implicit-function-declaration]
> >   set_fs(KERNEL_DS);
> >   ^
> > kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first use in
> > this function)
> >   set_fs(KERNEL_DS);
> >          ^
> > kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
> > reported only once for each function it appears in
> > kernel/ipipe/core.c:1753:2: error: implicit declaration of function
> > ‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
> >   ret = __copy_from_user_inatomic(dst,
> >   ^
> > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
> > kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first use in
> > this function)
> >   set_fs(KERNEL_DS);
> >          ^
> > kernel/ipipe/core.c:1770:2: error: implicit declaration of function
> > ‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
> >   ret = __copy_to_user_inatomic((__force void __user *)dst, src, size);
> >   ^
> > cc1: some warnings being treated as errors
> > scripts/Makefile.build:307: recipe for target 'kernel/ipipe/core.o'
> > failed
> > make[2]: *** [kernel/ipipe/core.o] Error 1
> > scripts/Makefile.build:454: recipe for target 'kernel/ipipe' failed
> > make[1]: *** [kernel/ipipe] Error 2
> > Makefile:791: recipe for target 'kernel' failed
> > make: *** [kernel] Error 2
> > 
> > 
> > I tried by including asm/uaccess.h, which solved the issue. But the
> > kernel doesn't boot, and there is no message. It just hangs.
> > 
> > I tried the same kernel without Xenomai patch, and it compiles and
> > boots without problem.
> 
> Did you enable IPIPE in the config?  After all bcmrpi_defconfig probably
> does NOT include IPIPE config, and most releases of ipipe don't compile
> if you disable IPIPE support.  I have only ever seen recent versions
> actually be able to compile with CONFIG_IPIPE=n.

That statement is simply not true. Most I-pipe patched kernel
compile with IPIPE off, but you happened to find one that did not.
Please stop spreading this misconception.

-- 
					    Gilles.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 21:24 ` Gilles Chanteperdrix
@ 2015-05-21 22:37   ` Marc Marí
  2015-05-22 15:37     ` Giovanni Balestrieri
  0 siblings, 1 reply; 10+ messages in thread
From: Marc Marí @ 2015-05-21 22:37 UTC (permalink / raw)
  To: Gilles Chanteperdrix; +Cc: xenomai

El Thu, 21 May 2015 23:24:32 +0200
Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> escribió:
> On Thu, May 21, 2015 at 10:18:11PM +0200, Marc Marí wrote:
> > Hello
> > 
> > I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B
> > with kernel version 3.8.13. In theory, it should be
> > straightforward, but I don't get it to compile, and I don't know if
> > I'm missing something vital or something is broken.
> > 
> > This is what I executed:
> > 
> > $ git clone git@github.com:raspberrypi/linux.git
> > $ mv linux rpi-xenomai
> > $ git checkout rpi-3.8.y
> > $ patch -p1 -i \
> > ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
> > $ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm --linux=./ \
> > --adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
> > $ patch -p1 -i \
> > ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
> > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
> > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> > 
> > I get this output:
> > 
> > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
> > kernel/ipipe/core.c:1748:2: error: implicit declaration of function
> > ‘get_fs’ [-Werror=implicit-function-declaration]
> >   mm_segment_t old_fs = get_fs();
> >   ^
> > kernel/ipipe/core.c:1750:2: error: implicit declaration of function
> > ‘set_fs’ [-Werror=implicit-function-declaration]
> >   set_fs(KERNEL_DS);
> >   ^
> > kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first
> > use in this function)
> >   set_fs(KERNEL_DS);
> >          ^
> > kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
> > reported only once for each function it appears in
> > kernel/ipipe/core.c:1753:2: error: implicit declaration of function
> > ‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
> >   ret = __copy_from_user_inatomic(dst,
> >   ^
> > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
> > kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first
> > use in this function)
> >   set_fs(KERNEL_DS);
> >          ^
> > kernel/ipipe/core.c:1770:2: error: implicit declaration of function
> > ‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
> >   ret = __copy_to_user_inatomic((__force void __user *)dst, src,
> > size);
> 
> This part of the code is compiled conditionally if CONFIG_KGDB is
> enabled. Have you tried turning KGDB off? Chances are, nobody ever
> tried running Xenomai with KGDB on ARM, so, I doubt it has any
> chance to work anyway.
> 

It stopped compiling asking to disable CC_STACKPROTECTOR. It now
compiles, but it doesn't boot, and also doesn't give much information.
Let's see if I can figure out this one.

Thanks!
Marc


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 22:37   ` Marc Marí
@ 2015-05-22 15:37     ` Giovanni Balestrieri
  2015-05-22 16:34       ` Gilles Chanteperdrix
  0 siblings, 1 reply; 10+ messages in thread
From: Giovanni Balestrieri @ 2015-05-22 15:37 UTC (permalink / raw)
  To: Marc Marí; +Cc: xenomai

Hi Marc,

I had the same problem a few months ago. I've first built a minimal system
with Buildroot and then applied the Adeos and Xenomai 2.6.3 patches to the
3.8.13 kernel.

Please refer to this sequence of steps:
http://userk.co.uk/real-time-system-with-raspberry-pi/

If you find something wrong, please let me know and I will update the page.
Hope it helps

GB


[image: www.whazzo.com] <http://www.whazzo.com>


2015-05-22 0:37 GMT+02:00 Marc Marí <5.markmb.5@gmail.com>:

> El Thu, 21 May 2015 23:24:32 +0200
> Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> escribió:
> > On Thu, May 21, 2015 at 10:18:11PM +0200, Marc Marí wrote:
> > > Hello
> > >
> > > I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B
> > > with kernel version 3.8.13. In theory, it should be
> > > straightforward, but I don't get it to compile, and I don't know if
> > > I'm missing something vital or something is broken.
> > >
> > > This is what I executed:
> > >
> > > $ git clone git@github.com:raspberrypi/linux.git
> > > $ mv linux rpi-xenomai
> > > $ git checkout rpi-3.8.y
> > > $ patch -p1 -i \
> > >
> ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
> > > $ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm --linux=./ \
> > >
> --adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
> > > $ patch -p1 -i \
> > >
> ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
> > > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcmrpi_defconfig
> > > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> > >
> > > I get this output:
> > >
> > > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
> > > kernel/ipipe/core.c:1748:2: error: implicit declaration of function
> > > ‘get_fs’ [-Werror=implicit-function-declaration]
> > >   mm_segment_t old_fs = get_fs();
> > >   ^
> > > kernel/ipipe/core.c:1750:2: error: implicit declaration of function
> > > ‘set_fs’ [-Werror=implicit-function-declaration]
> > >   set_fs(KERNEL_DS);
> > >   ^
> > > kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first
> > > use in this function)
> > >   set_fs(KERNEL_DS);
> > >          ^
> > > kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
> > > reported only once for each function it appears in
> > > kernel/ipipe/core.c:1753:2: error: implicit declaration of function
> > > ‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
> > >   ret = __copy_from_user_inatomic(dst,
> > >   ^
> > > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
> > > kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first
> > > use in this function)
> > >   set_fs(KERNEL_DS);
> > >          ^
> > > kernel/ipipe/core.c:1770:2: error: implicit declaration of function
> > > ‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
> > >   ret = __copy_to_user_inatomic((__force void __user *)dst, src,
> > > size);
> >
> > This part of the code is compiled conditionally if CONFIG_KGDB is
> > enabled. Have you tried turning KGDB off? Chances are, nobody ever
> > tried running Xenomai with KGDB on ARM, so, I doubt it has any
> > chance to work anyway.
> >
>
> It stopped compiling asking to disable CC_STACKPROTECTOR. It now
> compiles, but it doesn't boot, and also doesn't give much information.
> Let's see if I can figure out this one.
>
> Thanks!
> Marc
>
> _______________________________________________
> Xenomai mailing list
> Xenomai@xenomai.org
> http://xenomai.org/mailman/listinfo/xenomai
>

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-22 15:37     ` Giovanni Balestrieri
@ 2015-05-22 16:34       ` Gilles Chanteperdrix
  0 siblings, 0 replies; 10+ messages in thread
From: Gilles Chanteperdrix @ 2015-05-22 16:34 UTC (permalink / raw)
  To: Giovanni Balestrieri; +Cc: xenomai

On Fri, May 22, 2015 at 05:37:35PM +0200, Giovanni Balestrieri wrote:
> Hi Marc,
> 
> I had the same problem a few months ago. I've first built a minimal system
> with Buildroot and then applied the Adeos and Xenomai 2.6.3 patches to the
> 3.8.13 kernel.

Bad advice. Please use the latest stable version 2.6.4 and not
2.6.3. The two versions are ABI compatible and 2.6.4 contains fixes
for 2.6.3 bugs.

-- 
					    Gilles.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Xenomai] Raspberry Pi + Xenomai doesn't compile
  2015-05-21 21:27   ` Gilles Chanteperdrix
@ 2015-05-22 16:59     ` Marc Marí
  0 siblings, 0 replies; 10+ messages in thread
From: Marc Marí @ 2015-05-22 16:59 UTC (permalink / raw)
  To: Gilles Chanteperdrix; +Cc: xenomai

El Thu, 21 May 2015 23:27:32 +0200
Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> escribió:
> On Thu, May 21, 2015 at 04:48:56PM -0400, Lennart Sorensen wrote:
> > On Thu, May 21, 2015 at 10:18:11PM +0200, Marc Marí wrote:
> > > Hello
> > > 
> > > I'm trying to put Xenomai 2.6.4 on top of a Raspberry Pi model B
> > > with kernel version 3.8.13. In theory, it should be
> > > straightforward, but I don't get it to compile, and I don't know
> > > if I'm missing something vital or something is broken.
> > > 
> > > This is what I executed:
> > > 
> > > $ git clone git@github.com:raspberrypi/linux.git
> > > $ mv linux rpi-xenomai
> > > $ git checkout rpi-3.8.y
> > > $ patch -p1 -i \
> > > ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-pre-2.patch
> > > $ ../xenomai-2.6.4/scripts/prepare-kernel.sh --arch=arm
> > > --linux=./ \
> > > --adeos=../xenomai-2.6.4/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-4.patch
> > > $ patch -p1 -i
> > > \ ../xenomai-2.6.4/ksrc/arch/arm/patches/raspberry/ipipe-core-3.8.13-raspberry-post-2.patch
> > > $ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> > > bcmrpi_defconfig $ make ARCH=arm
> > > CROSS_COMPILE=arm-linux-gnueabihf-
> > > 
> > > I get this output:
> > > 
> > > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_read’:
> > > kernel/ipipe/core.c:1748:2: error: implicit declaration of
> > > function ‘get_fs’ [-Werror=implicit-function-declaration]
> > >   mm_segment_t old_fs = get_fs();
> > >   ^
> > > kernel/ipipe/core.c:1750:2: error: implicit declaration of
> > > function ‘set_fs’ [-Werror=implicit-function-declaration]
> > >   set_fs(KERNEL_DS);
> > >   ^
> > > kernel/ipipe/core.c:1750:9: error: ‘KERNEL_DS’ undeclared (first
> > > use in this function)
> > >   set_fs(KERNEL_DS);
> > >          ^
> > > kernel/ipipe/core.c:1750:9: note: each undeclared identifier is
> > > reported only once for each function it appears in
> > > kernel/ipipe/core.c:1753:2: error: implicit declaration of
> > > function
> > > ‘__copy_from_user_inatomic’ [-Werror=implicit-function-declaration]
> > > ret = __copy_from_user_inatomic(dst, ^
> > > kernel/ipipe/core.c: In function ‘ipipe_probe_kernel_write’:
> > > kernel/ipipe/core.c:1767:9: error: ‘KERNEL_DS’ undeclared (first
> > > use in this function)
> > >   set_fs(KERNEL_DS);
> > >          ^
> > > kernel/ipipe/core.c:1770:2: error: implicit declaration of
> > > function
> > > ‘__copy_to_user_inatomic’ [-Werror=implicit-function-declaration]
> > > ret = __copy_to_user_inatomic((__force void __user *)dst, src,
> > > size); ^ cc1: some warnings being treated as errors
> > > scripts/Makefile.build:307: recipe for target
> > > 'kernel/ipipe/core.o' failed
> > > make[2]: *** [kernel/ipipe/core.o] Error 1
> > > scripts/Makefile.build:454: recipe for target 'kernel/ipipe'
> > > failed make[1]: *** [kernel/ipipe] Error 2
> > > Makefile:791: recipe for target 'kernel' failed
> > > make: *** [kernel] Error 2
> > > 
> > > 
> > > I tried by including asm/uaccess.h, which solved the issue. But
> > > the kernel doesn't boot, and there is no message. It just hangs.
> > > 
> > > I tried the same kernel without Xenomai patch, and it compiles and
> > > boots without problem.
> > 
> > Did you enable IPIPE in the config?  After all bcmrpi_defconfig
> > probably does NOT include IPIPE config, and most releases of ipipe
> > don't compile if you disable IPIPE support.  I have only ever seen
> > recent versions actually be able to compile with CONFIG_IPIPE=n.
> 
> That statement is simply not true. Most I-pipe patched kernel
> compile with IPIPE off, but you happened to find one that did not.
> Please stop spreading this misconception.
> 

Thanks. I had to disable a few config options, including the DWC OTG
driver in order to boot. It now works.

Thanks
Marc


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2015-05-22 16:59 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-21 20:18 [Xenomai] Raspberry Pi + Xenomai doesn't compile Marc Marí
2015-05-21 20:48 ` Lennart Sorensen
2015-05-21 20:53   ` Marc Marí
2015-05-21 21:01     ` Lennart Sorensen
2015-05-21 21:27   ` Gilles Chanteperdrix
2015-05-22 16:59     ` Marc Marí
2015-05-21 21:24 ` Gilles Chanteperdrix
2015-05-21 22:37   ` Marc Marí
2015-05-22 15:37     ` Giovanni Balestrieri
2015-05-22 16:34       ` 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.