Hello!
I have serious problems with Linux kernel 3+ on "BeagleBoard-xM rev C"
and completely don't understand my steps to success...
My actions:
1) Got this file http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.1.tar.bz2
(uncompressed and added to local mercurial repo for my convenience)
2) Got gcc version 4.5.2 (Sourcery G++ Lite 2011.03-41) and
export ARCH=arm
export CROSS_COMPILE=/home/.../arm-2011.03/bin/arm-none-linux-gnueabi-
I found solution of this problem, it's a bug in compiler!
Then I tried this https://sourcery.mentor.com/sgpp/lite/arm/portal/release858
after reproduction of all listed above steps + gcc version 4.3.3
(Sourcery G++ Lite 2009q1-203) I got Linux kernel 3.1 loading on
BeagleBoard-xM rev C and mount rootfs ok.
Currently I have other sort of problems, in defconfig many necessary
modules missing, so I'm going to enable them and recompile again:
FATAL: Module dsplinkk not found.
FATAL: Module lpm_omap3530 not found.
FATAL: Module sdmak not found.
FATAL: Module omaplfb not found.
FATAL: Module bufferclass_ti not found.
I hope PowerVR has opensource kernel drivers...
P.S.
IMHO level and style of support is quite inadequate, not supported in
mainline, strange patches, no defconfigs for beagle... or I missed
something important.
So, please, tell me, how can I help bleagleboard project? What I
should do to make beagleboard-xm rev C support in Linux 3.1+ (next
release) in "out of the box style":
1) just download from kernel.org
2) load defconfig arch/arm/configs for beagle
3) compile & run & enjoy of FULL 100% working kernel
Finally, I solved all boot problems of Linux 3.1 kernel on
BeagleBoard-xM rev C by just using standard armel crosscompiler (gcc
version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3)):
sudo apt-get install g++-arm-linux-gnueabi gcc-arm-linux-gnueabi
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabi-
I hope this advice about use of default Ubuntu's 11.10 cross-compiler
will be useful for somebody, it's was surprise for me to see it in
repos