Search

Technical Discussion Group Forum

This forum is provided for user discussion. While Beacon EmbeddedWorks support staff and engineers participate, Beacon EmbeddedWorks does not guarantee the accuracy of all information within in the Technical Discussion Group (TDG).

The "Articles" forums provide brief Articles written by Beacon EmbeddedWorks engineers that address the most frequently asked technical questions.

To receive email notifications when updates are posted for a Beacon EmbeddedWorks product download, please subscribe to the TDG Forum of interest.

TDG Forum

PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 17 Nov 2007 07:54 PM by  prashm_77@yahoo.com
IMX LITE KIT Linux no messages after booting the kernel mess
 3 Replies
Sort:
You are not authorized to post a reply.
Author Messages
prashm_77@yahoo.com
New Member
New Member
Posts:


--
15 Nov 2007 10:08 PM
    Hai

    We have purchased IMX LITE KIT board and we are trying to load LINUX using the Logic Boot Loader.We would like to load linux on the board and write some application using NFS rootfs mode.
    Currrently we have connected only the serial port and ethernet connections on the board, we have not connected any other resource other than these .All other conenctions are left intact.

    For waking up the board with linux , currently we tried the following steps to load linux

    1. First we tried to load the zImage (Linux image provided by logicpd IMX-LITE CD), with logicloader options
    *****************************************************************

    LogicLoader

    (c) Copyright 2002-2006, Logic Product Development, Inc.
    All Rights Reserved.
    Version pre2.4-initial-IMX31_10 0001
    *****************************************************************

    losh> ifconfig sm0 dhcp; load elf /tftp/192.168.50.15:loader_nfs;
    netif->hwaddr: ff:00:07:ff:ff:23
    init91C117(): soft reset
    init91C117(): Set device FIFO sizes
    init91C117(): Set up device interrupts
    enableTx91C117
    netif->hwaddr: 00:08:ee:01:7b:56
    init91C117(): soft reset
    init91C117(): Set device FIFO sizes
    init91C117(): Set up device interrupts
    enableTx91C117
    netif->hwaddr: 00:08:ee:01:7b:56
    init91C117(): soft reset
    init91C117(): Set device FIFO sizes
    init91C117(): Set up device interrupts
    enableTx91C117
    Starting DHCP on sm0 .
    loading from /tftp/192.168.50.15:loader_nfs:
    ......
    ELF section 0: download address: 0x80208000 load address: 0x800d0000
    loaded 1208 @ 0x800d0000 Ram
    ...done
    file loaded
    losh> load raw 0x81000000 851244 /tftp/192.168.50.15:zImage; exec
    loading from /tftp/192.168.50.15:zImage:
    loading raw binary to 0x81000000 (ram) len 000cfd2c:
    ................................................................................
    ...........................done
    file loaded
    Uncompressing Linux.......................................................... do
    ne, booting the kernel.

    *****************************************************************

    Also we have tried the same by installing the LTIB on to a new PC and followinf the steps mentioned in logicpd forum
    http://www.logicpd.com/su...opic.php?p=3463#3463 and http://www.logicpd.com/su...viewtopic.php?t=1160
    We have also tried with linux 2.6.19.2 and 2.6.22 also and find that we are not seeing any messages after
    Uncompressing Linux.......................................................... do
    ne, booting the kernel.

    So please inform us, what could be the issue, So please help on this

    Regards
    ashwinb@logicpd.com
    New Member
    New Member
    Posts:


    --
    16 Nov 2007 05:58 AM
    Where is the filesystem stored? Is it NFS or a JFFS2 image stored in Flash?

    You will want to use an 'exec' command more like:

    exec "console=/dev/ttyS0 root=nfs.." and other familiar Linux commands..just executing "exec" will not get you these Linux options.
    jonathankaufmann@gmail.com
    New Member
    New Member
    Posts:


    --
    17 Nov 2007 12:58 PM
    Shouldn't you be calling something like "exec 0x800d0000" rather than just "exec"? I'm not sure w/o looking at LoLo information, but I would guess that just "exec" would assume "exec 0x81000000" in your case, which means it is not trying to run your 2nd stage boot loader. I may be totally wrong, its just that I always pass the entry point of my 2nd stage loader.

    Here is a script I wrote that compiles my kernel, and send commands over serial to boot the new kernel properly. It makes kernel development much smoother since you don't have to type all the commands in your terminal and figure out the appropriate filesize everytime.


    #!/bin/bash
    # Filename: makescript
    # AUTHOR: Jonathan Kaufmann

    # Define the following variables
    BOOTLOADER=/tftpboot/cloader
    IMAGE_DEST=/tftpboot/zImage
    IPADDR=192.168.0.100
    NETMASK=255.255.255.0
    GATEWAY=192.168.0.1
    NFS_SERVER=192.168.0.160
    SERIAL_PORT=/dev/ttyS0

    RESULT=0
    if [ "$1" = "-x" ]; then
    echo "Skipping Build"
    else
    ./ltib --force -p kernel
    RESULT=$?
    fi

    if [ "$RESULT" = "0" ]; then
    cp rootfs/boot/zImage $IMAGE_DEST
    LOADER_START=`objdump $BOOTLOADER -f | grep "start address" | awk '{print $3}'`
    LOADER_SIZE=`ls -al $BOOTLOADER | awk '{print $5}'`
    ZIMAGE_SIZE=`ls -al $IMAGE_DEST | awk '{print $5}'`

    IFCONFIG="ifconfig sm0 $IPADDR $NETMASK $GATEWAY"

    SER_COMMAND="; $IFCONFIG ; load elf $LOADER_START $LOADER_SIZE /tftp/$NFS_SERVER:$BOOTLOADER ; load raw 0x81000000 $ZIMAGE_SIZE /tftp/$NFS_SERVER:$IMAGE_DEST ; exec $LOADER_START"
    echo "Sending the following command to port $SERIAL_PORT:"
    echo "$SER_COMMAND"
    echo "$SER_COMMAND" > $SERIAL_PORT
    else
    echo "Kernel compilation failed!!!"
    fi


    Setup all the variables at the top of the script appropriately and make sure that is in the root directory of your LTIB installation folder. CD to the folder and run it using ./makescript. If you don't wish to compile the kernel and just want to send the proper commands to load and execute the kernel on your LITEKIT board, then just run ./makescript -x

    You may also want to make sure that your 2nd stage bootloader has the right command line options being built. I know that when I am outputting to my LCD, the last line I ever see on the serial console is.

    Quote:

    Uncompressing Linux.......................................................... done


    This may also be b/c since you are not actually booting your 2nd stage bootloader, the kernel has no command line and therefore may default to the screen (which is non-existent in your case).

    Make sure you have something like console=ttymxc0 in your kernel COMMAND_LINE variable, which will tell all kernel output to be spit out the serial port.

    You would be getting a lot farther in the boot progress if your problem was an NFS server problem.
    prashm_77@yahoo.com
    New Member
    New Member
    Posts:


    --
    17 Nov 2007 07:54 PM
    Hai

    We just downloaded unpatched linux-2.6.19 kernel from http://www.kernel.org and patch with http://caiaq.org/download...9.2-mx3lite.patch.gz (~1.1MB)

    It works fine

    Thanks zongue for the patch


    Regards
    You are not authorized to post a reply.