MVL6 on BeagleBoard-XM (v.A2) hangs at booting the kernel.

wmat - May 16, 2011

I've been trying to get MVIP going on my BeagleBoard-XM (A2) and have so far been unsuccessful.  I followed the 'Booting MontaVista Linux 6 on the BeagleBoard' white paper, changing the MLO and u-boot.bin to the latest version.

Attempted to boot image: uImage-2.6.29-1103151715-ti-omap3-beagle.bin

Result:

 

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

OMAP3630/3730-GP ES1.0, CPU-OPP2, L3-165MHz, 

OMAP3 Beagle board + LPDDR/NAND

I2C:   ready

DRAM:  512 MB

NAND:  256 MiB

In:    serial

Out:   serial

Err:   serial

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

 

No EEPROM on expansion board

Beagle xM Rev A

Die ID #0b7e00001bf00000015739ea0701000f

Hit any key to stop autoboot:  0 

OMAP3 beagleboard.org # setenv bootcmd 'mmc init; fatload mmc 0 0x80300000 uImage.bin; bootm 0x80300000'

OMAP3 beagleboard.org # saveenv

Saving Environment to NAND...

Erasing Nand...

Erasing at 0x260000 -- 100% complete.

Writing to Nand... done

OMAP3 beagleboard.org # boot

mmc1 is available

reading uImage.bin

2559652 bytes read

## Booting kernel from Legacy Image at 80300000 ...

   Image Name:   MontaVista Linux 6/2.6.29/ti-oma

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    2559588 Bytes =  2.4 MB

   Load Address: 80008000

   Entry Point:  80008000

   Verifying Checksum ... OK

   Loading Kernel Image ... OK

OK

 

Starting kernel ...

Uncompressing Linux....................................................................................................................................................................... done, booting the kernel.

Then nothing.  I've tried every possible console setting as well. 

Here's my printenv:

 

 

bootdelay=3

baudrate=115200

loadaddr=0x80200000

rdaddr=0x81600000

usbtty=cdc_acm

console=ttyS2,115200n8

optargs=

bootscr=boot.scr

camera=lbcm3m1

vram=12M

dvimode=640x480MR-16@60

defaultdisplay=dvi

mmcdev=1

mmcroot=/dev/mmcblk0p2 rw

mmcrootfstype=ext3 rootwait

nandroot=/dev/mtdblock4 rw

nandrootfstype=jffs2

ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64M

ramrootfstype=ext2

mmcargs=setenv bootargs console=${console} ${optargs} mpurate=${mpurate} buddy=$

{buddy} camera=${camera} vram=${vram} omapfb.mode=dvi:${dvimode} omapdss.def_dis

p=${defaultdisplay} root=${mmcroot} rootfstype=${mmcrootfstype}

nandargs=setenv bootargs console=${console} ${optargs} mpurate=${mpurate} buddy=

${buddy} camera=${camera} vram=${vram} omapfb.mode=dvi:${dvimode} omapdss.def_di

sp=${defaultdisplay} root=${nandroot} rootfstype=${nandrootfstype}

loadbootscript=fatload mmc ${mmcdev} ${loadaddr} ${bootscr}

ramargs=setenv bootargs console=${console} ${optargs} mpurate=${mpurate} buddy=$

{buddy} camera=${camera} vram=${vram} omapfb.mode=dvi:${dvimode} omapdss.def_dis

p=${defaultdisplay} root=${ramroot} rootfstype=${ramrootfstype}

loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz

bootscript=echo Running bootscript from mmc ...; source ${loadaddr}

loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage

mmcboot=echo Booting from mmc ...; run mmcargs; bootm ${loadaddr}

nandboot=echo Booting from nand ...; run nandargs; nand read ${loadaddr} 280000 

400000; bootm ${loadaddr}

ramboot=echo Booting from ramdisk ...; run ramargs; bootm ${loadaddr}

dieid#=0b7e00001bf00000015739ea0701000f

filesize=30C25C

bootargs=console=ttyS0,115200n8 root=/dev/mmcblk0p2 rw rootwait earlyprintk=seri

al,uart3,115200

bootcmd=mmc init; fatload mmc 0 0x80300000 uImage.bin; bootm 0x80300000

buddy=none

beaglerev=xMA

mpurate=1000

Environment size: 1802/131068 bytes

 

Share this

Comments

We are using imx51 in the

We are using imx51 in the babbage design and the console device is ttymxc0.  For the Beagle board perhaps the console name is given in your /etc/securetty file on the root file system.  Look at the file system on your sd card using a card reader.

I went to a newer kernel

Thanks for the tip, however, I simply went to the latest kernel and set my bootargs to:

bootargs console=ttyO2,115200n8 root=/dev/mmcblk0p2 rw rootwait earlyprintk=serial,uart1,115200

I'm still uncertain why I couldn't get 2.6.29 to output to my console, as I tried every possible setting I could think of.  Oh well, now worries now.

I have to get me an iMX51 ;)

Thanks

Bill

 

ttyO2,115200n8 ???

Hi Bill,

I'm surprised you got that to work as ttyO2 doesn't sound like a valid serial console to me...

ttyO2 is new for OMAP kernels >= 2.6.36

Hi Klaas,

It's new OMAP specific serial device naming for OMAP.  Have a look at arch/arm/plat-omap/include/plat/omap-serial.h for the following:

 

/*
 * Use tty device name as ttyO, [O -> OMAP]
 * in bootargs we specify as console=ttyO0 if uart1
 * is used as console uart.
 */
#define OMAP_SERIAL_NAME        "ttyO"

 

Bill, For

Bill,

For uImage-2.6.29-1103151715-ti-omap3-beagle.bin, try

bootargs=console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootwait

Regards,

Steve

Tried ttyS2

Thanks Steve,  I did try ttyS2 with uImage-2.6.29-1103151715-ti-omap3-beagle.bin with no luck.

 

Is network enabled?  Are you

Is network enabled?  Are you able to telnet or ping the board after booting Linux?  In the past, I have seen that even though serial port does not work, but the kernel is up and runing.

Steve

Moving on to newer kernels.

You could very well be right, Steve.  However, since booting a newer kernel, I haven't attempted 2.6.29 again.  Perhaps I'll try it again though, and test your theory.