Linux 3.1 + BeagleBoard-xM rev C

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
(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-

3) Then .config from
4) manual apply all patches from
with success, except one file, obvious fix
5) make xconfig
Default kernel command string:
console=ttyO2,115200n8 mpurate=auto buddy=none camera=lbcm3m1 vram=12M
omapfb.mode=dvi:640x480MR-16@60 omapdss.def_disp=dvi
root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
Kernel command line type = Always use the default kernel command
save & exit
then fix .config, some problems with xconfig - it save this line as 3
lines, which is wrong - make them in single line
6) make -j10 uImage - success
7) place to SD card, u-boot - uncompressing my kernel (I see it's
version 3.1+)

then system hangs up, LEDs stop blinking after
"Uncompressing Linux... done, booting the kernel."

What I'm doing wrong?

Wrong kernel version, wrong patches, config? .config points to
but in xM rev C - processor is DM3730, not OMAP3530

I need my own kernel with my drivers and my parameters, 3.1 or at
least Linux 3.0.7/.0.8
Current patches, links, notes, comments - insane mix :smiley:

I found solution of this problem, it's a bug in compiler!
Then I tried this
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... :slight_smile:

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
2) load defconfig arch/arm/configs for beagle
3) compile & run & enjoy of FULL 100% working kernel :slight_smile:

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 :slight_smile:

have you checked with the boot args,The kernel whic i am working is
3.0.1 so in the boot args and inittab change option from ttyS0 to