Kernel 3.0.7 hangs while booting.

Hi,

I am trying to port Linux Kernel 3.0.7 on my Beagle BoardxM.
I used the following Config file that i got from here:

http://git.angstrom-distribution.org/cgi-bin/cgit.cgi/meta-texasinstruments/tree/recipes-kernel/linux/linux-3.0/beagleboard/defconfig

I am able to build the source code of the Kernel successfully,
using the above Config file and following the following commands:

make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- distclean
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- omap2plus_defconfig
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

I replaced the data of omap2plus_defconfig config file with the
above config file data. However, after building the Kernel successfully,
and after porting it to the SD Card, during booting the Kernel hangs up.

Texas Instruments X-Loader 1.4.4ss (Mar 8 2011 - 08:51:11)
Beagle xM
Reading boot sector
Loading u-boot.bin from mmc

U-Boot 2010.03 (Feb 20 2011 - 20:15:58)

OMAP3630/3730-GP ES2.0, CPU-OPP2, L3-165MHz,
OMAP3 Beagle board + LPDDR/NAND
I2C: ready
DRAM: 512 MB
NAND: 0 MiB
*** Warning - bad CRC or NAND, using default environment

In: serial
Out: serial
Err: serial

Probing for expansion boards, if none are connected you’ll see a harmless I2C e.

No EEPROM on expansion board
Beagle xM Rev A
Die ID #34fe00019ff80000015eeaa10102a014
Hit any key to stop autoboot: 0
mmc1 is available
The user button is currently NOT pressed.
reading boot.scr

** Unable to read “boot.scr” from mmc 1:1 **
reading uImage

3399271 bytes read
Booting from mmc …

Booting kernel from Legacy Image at 80200000 …

Image Name: ARM Linux Kernel
Image Type: ARM Linux Kernel Image (gzip compressed)
Data Size: 3399207 Bytes = 3.2 MB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum … OK
Uncompressing Kernel Image … OK

Starting kernel …

Uncompressing Linux… done, booting the kernel.

and the Kernel hangs up.
Can someone point out the issue…?

Thanks,
Rajiv.

But it already has been ported!

I mean it hangs while booting up…

Make sure that the console is on ttyO2.

j.

I have BeagleBoard-xM rev C and successfully built Linux 3.1 kernel
uImage.
It also shows me up "Uncompressing Linux... done, booting the kernel"
string and hang up.

My gcc - from codesourcery may2011. I'm using kernel command line same
as in original images (from /proc/cmdline),
and defconfig from this
http://git.angstrom-distribution.org/cgi-bin/cgit.cgi/meta-texasinstruments/tree/recipes-kernel/linux/linux-3.0/beagleboard/defconfig

What we doing wrong?

P.S.
When I restore original uImage from http://narcissus.angstrom-distribution.org
- it works again...

How to build valid kernel image for BeagleBoard-xM of latest version?
- I NEED 3.1 and latest drivers
Also I'm trying to get working I2C :slight_smile:

I have BeagleBoard-xM rev C and successfully built Linux 3.1 kernel uImage.
It also shows me up "Uncompressing Linux... done, booting the kernel"
string and hang up.

My gcc - from codesourcery may2011. I'm using kernel command line same
as in original images (from /proc/cmdline),
and defconfig from this
http://git.angstrom-distribution.org/cgi-bin/cgit.cgi/meta-texasinstruments/tree/recipes-kernel/linux/linux-3.0/beagleboard/defconfig
Also, I set up to use only internal kernel command line...

What we doing wrong?

P.S.
When I restore original uImage from
http://narcissus.angstrom-distribution.org - it works again...

How to build valid kernel image for BeagleBoard-xM of latest version?
- I NEED 3.1 and latest drivers
Also I'm trying to get working I2C :slight_smile:

I have BeagleBoard-xM rev C and successfully built Linux 3.1 kernel uImage.
It also shows me up "Uncompressing Linux... done, booting the kernel"
string and hang up.

My gcc - from codesourcery may2011. I'm using kernel command line same
as in original images (from /proc/cmdline),
and defconfig from this
http://git.angstrom-distribution.org/cgi-bin/cgit.cgi/meta-texasinstruments/tree/recipes-kernel/linux/linux-3.0/beagleboard/defconfig
Also, I set up to use only internal kernel command line...

What does that line say?

Hi Alex,
Maybe this site would be your solution;
http://processors.wiki.ti.com/index.php/Kernel_-Common_Problems_Booting_Linux#Problem.232_-No_more_output_is_seen_on_the_console_after.22booting_the_kernel.22

I solved my problem with cause 1.

No, ttyO2 does not help me to run Linux 3.1 on BeagleBoard-xM rev C...
I see peripheral LEDs stop blinking when "uncompressing done,
booting", so it's a deep system hang up.

FAQ: For a newer kernel (> 2.6.35) the console will be on ttyO2

Note: please keep replies on the mailing list so that everyone benefits.
Private support is available only with a support contract from MLB Associates.

Hi,

I changed from ttyUSB0 to ttyO2. After that on starting minicom
we get /dev/ttyO2 : Device not found.

I think they meant on the kernel command line on the Beagleboard, not on your host machine when you’re trying to connect to the Beagleboard.

-Michael

Ok,

I tried with the following commands on the Board shell:

#setenv console ttyO2,115200n8
#mmc init
#fatload mmc 0 0x80200000 uImage
#bootm 0x80200000

Yet, the kernel hangs during uncompressing the kernel and
booting it up…

Thanks,
Rajiv.

Rajiv,

try to upgrade u-boot to a more recent version and see if it helps.
Upgrade i easy: download a precompiled binary (you can generate a
smallest possible Angstrom image on narcissus and copy the file from
the tarball) and copy it to the root partition on the card. The kernel
should boot even without uEnv.txt

regards,
j.

Hi,

I changed this file ‘omap-serial.h’ in ‘arch/arm/plat-omap/include/plat/omap-serial.h’.
There was something like this :

#define OMAP_SERIAL_NAME “ttyO”

i made ‘ttyO’ to ‘ttyS’

in #define OMAP_SERIAL_NAME “ttyS”

and cross compiled and built the kernel image using the following change for kernel3.0.7.

Now, to my surprise, after flashing the kernel image to my SD Card, the
kernel doesnt hang up during compressing the kernel image and boots
up successfully, however at a later point while starting the gnome display login
it throws the following errors:

Loading kernel modules for gstreamer-ti…
Running /usr/share/ti/gst/omap3530/loadmodules.shFATAL: Module cmemk not found.
FATAL: Module dsplinkk not found.
FATAL: Module lpm_omap3530 not found.
FATAL: Module sdmak not found.
done
Starting PVR
Usage: insmod filename [args]
FATAL: Module omaplfb not found.
FATAL: Module bufferclass_ti not found.
BusyBox v1.13.2 (2011-01-04 12:34:55 CET) multi-call binary

Usage: mknod [OPTIONS] NAME TYPE MAJOR MINOR

Create a special file (block, character, or pipe)

Options:
-m Create the special file using the specified mode (default a=rw)
TYPEs include:
b: Make a block device
c or u: Make a character device
p: Make a named pipe (MAJOR and MINOR are ignored)

chmod: /dev/pvrsrvkm: No such file or directory
Starting GNOME Display Manager gdm
[ 131.901702] omap_device: omap-mcbsp.2: new worst case activate latency 0: 307
[ 131.936614] omap_device: omap-mcbsp.2: new worst case deactivate latency 0: 7

It throws some module linking error related to loading the gstreamer modules.
How to disable it, and if my procedure of changing the OMAP_SERIAL_NAME
is feasible…?

Thanks,
Rajiv.

Hi,
I changed this file 'omap-serial.h' in
'arch/arm/plat-omap/include/plat/omap-serial.h'.
There was something like this :
#define OMAP_SERIAL_NAME "ttyO"
i made 'ttyO' to 'ttyS'
in #define OMAP_SERIAL_NAME "ttyS"
and cross compiled and built the kernel image using the following change for
kernel3.0.7.
Now, to my surprise, after flashing the kernel image to my SD Card, the
kernel doesnt hang up during compressing the kernel image and boots
up successfully, however at a later point while starting the gnome display
login
it throws the following errors:
Loading kernel modules for gstreamer-ti...

Running /usr/share/ti/gst/omap3530/loadmodules.shFATAL: Module cmemk not
found.
FATAL: Module dsplinkk not found.

FATAL: Module lpm_omap3530 not found.

FATAL: Module sdmak not found.

done

Starting PVR

Usage: insmod filename [args]

FATAL: Module omaplfb not found.

FATAL: Module bufferclass_ti not found.

Looks like you tried to load the sgx subsytem without the driver modules...

BusyBox v1.13.2 (2011-01-04 12:34:55 CET) multi-call binary

Usage: mknod [OPTIONS] NAME TYPE MAJOR MINOR

Create a special file (block, character, or pipe)

Options:

    \-m      Create the special file using the specified mode \(default

a=rw)
TYPEs include:

    b:      Make a block device

    c or u: Make a character device

    p:      Make a named pipe \(MAJOR and MINOR are ignored\)

chmod: /dev/pvrsrvkm: No such file or directory

Starting GNOME Display Manager gdm

[ 131.901702] omap_device: omap-mcbsp.2: new worst case activate latency 0:
307
[ 131.936614] omap_device: omap-mcbsp.2: new worst case deactivate latency
0: 7
It throws some module linking error related to loading the gstreamer
modules.
How to disable it, and if my procedure of changing the OMAP_SERIAL_NAME
is feasible....?

This just means you never actually correctly changed the bootargs that
were loading the kernel, to actually use /dev/ttyO2 over
/dev/ttyS2....

Regards,

Hi,

As, u had previously told in a post tht support for ‘ttyS’ driver
is already enabled, whereas support for ‘ttyO’ needs to be enabled
in the config files, so kernel3.0.7 should also support ‘ttyS’
driver for the sake of backward compatibility…Can we proceed
with this assumption…?

Thanks,
Rajiv.

Nope, take a look at the serial code, specially the way the if defines
are set for the serial.

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=arch/arm/mach-omap2/serial.c;h=466fc722fa0f39f03b8d93cf84e4dae4f57fd029;hb=HEAD#l710

You might think that, just because you have the serial option set for
"ttyS" and the omap option for "ttyO" that it would fall back.. But
now relook at the code, if the CONFIG_SERIAL_OMAP is set the old
driver path isn't going to work for the old 8250 based serial driver
as all the hacks to make the 8250serial driver worked are going to be
removed by the c preproccssor....

So, for your beagle, if these two config's are set in your config for 3.0.7:

SERIAL_OMAP
SERIAL_OMAP_CONSOLE

Then, your serial port is ttyOx

So depending on how your system boots, fix the appropriate setting..

Fix the nand via setenv
Fix the "boot.scr" boot file
Fix the "uEnv.txt" boot file

Regards,

Yes, yes, it finally worked…Referring to uhr previous posts inwhich u had explained how to create a boot.scr file

http://groups.google.com/group/beagleboard/browse_thread/thread/e97fb9895c09a98c?pli=1

‘normal.scr’, created a boot.scr file from boot.cmd script file
using mkimage utility of u-boot and placed it in the boot partition of my SD Card…
Great work there Robert…for i used this script of ‘normal.cmd’
and created a script file ‘boot.cmd’ and using mkimage created
the boot.scr.

In this boot.cmd script,

http://gitorious.org/beagleboard-default-u-boot/jason-clone/blobs/for-khasim-rebase/mkbootscr

I modified,

setenv bootargs 'console=ttyS2,115200n8 console=tty0 root=/dev/ram0 rw ramdisk_size=32768 initrd=0x81600000,32M'

To,

I compile the new image for beagleboardXm using linux kernel 3.2 but I
am not able to access the LAN
When type ifconfig I got only

Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

pls help........