This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Board could not be detected when running setup.sh

I have downloaded the ti-processor-sdk-linux-k2e-evm and run the setup.sh as the SDK getting started guide told. But it says it can't find my K2E EVM as follows.

root@hjj64-virtual-machine:~# cd /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/
root@hjj64-virtual-machine:/usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07# ./setup.sh 
-------------------------------------------------------------------------------
TISDK setup script
This script will set up your development host for SDK development.
Parts of this script require administrator priviliges (sudo access).
-------------------------------------------------------------------------------

--------------------------------------------------------------------------------
Verifying Linux host distribution
Ubuntu 12.04 LTS and Ubuntu 14.04 LTS is being used, continuing..
--------------------------------------------------------------------------------

Starting with Ubuntu 12.04 serial devices are only accessible by members of the 'dialout' group.
A user must be apart of this group to have the proper permissions to access a serial device.

Are you running this script using sudo? The detected username is 'root'.
Verify and enter your Linux username below
[ root ] 

User 'root' is already apart of the 'dialout' group

-------------------------------------------------------------------------------
setup package script
This script will make sure you have the proper host support packages installed
This script requires administrator priviliges (sudo access) if packages are to be installed.
-------------------------------------------------------------------------------
System has required packages!
--------------------------------------------------------------------------------
Package verification and installation successfully completed
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
In which directory do you want to install the target filesystem?(if this directory does not exist it will be created)
[ /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS ] 
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
This step will extract the target filesystem to /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS

Note! This command requires you to have administrator priviliges (sudo access) 
on your host.
Press return to continue
/usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS already exists
(r) rename existing filesystem (o) overwrite existing filesystem (s) skip filesystem extraction
[r] s
Skipping filesystem extraction
WARNING! Keeping the previous filesystem may cause compatibility problems if you are upgrading the SDK
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
This step will set up the SDK to install binaries in to:
    /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS/home/root/k2e-evm

The files will be available from /home/root/k2e-evm on the target.

This setting can be changed later by editing Rules.make and changing the
EXEC_DIR or DESTDIR variable (depending on your SDK).

Press return to continue
Rules.make edited successfully..
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
This step will export your target filesystem for NFS access.

Note! This command requires you to have administrator priviliges (sudo access) 
on your host.
Press return to continue
/usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS already NFS exported, skipping..

 * Stopping NFS kernel daemon                                            [ OK ] 
 * Unexporting directories for NFS kernel daemon...                      [ OK ] 
 * Exporting directories for NFS kernel daemon...                        [ OK ] 
 * Starting NFS kernel daemon                                            [ OK ] 
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Which directory do you want to be your tftp root directory?(if this directory does not exist it will be created for you)
[ /tftpboot ] 
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
This step will set up the tftp server in the /tftpboot directory.

Note! This command requires you to have administrator priviliges (sudo access) 
on your host.
Press return to continue

/tftpboot already exists, not creating..

/tftpboot/zImage-k2e-evm.bin already exists. The existing installed file can be renamed and saved under the new name.
(r) rename (o) overwrite (s) skip copy 
[r] s
Skipping copy of zImage-k2e-evm.bin, existing version will be used

/tftpboot/k2e-evm.dtb already exists. The existing installed file can be renamed and saved under the new name.
(o) overwrite (s) skip copy 
[o] s
Skipping copy of k2e-evm.dtb, existing version will be used

/tftpboot/u-boot-spi-k2e-evm.gph already exists. The existing installed file can be renamed and saved under the new name.
(o) overwrite (s) skip copy 
[o] s
Skipping copy of u-boot-spi-k2e-evm.gph, existing version will be used

/tftpboot/skern-k2e.bin already exists. The existing installed file can be renamed and saved under the new name.
(o) overwrite (s) skip copy 
[o] s
Skipping copy of skern-k2e.bin, existing version will be used

/tftpboot/k2-fw-initrd.cpio.gz already exists. The existing installed file can be renamed and saved under the new name.
(o) overwrite (s) skip copy 
[o] s
Skipping copy of k2-fw-initrd.cpio.gz, existing version will be used

/etc/xinetd.d/tftp already exists..
/tftpboot already exported for TFTP, skipping..

Restarting tftp server
 * Stopping internet superserver xinetd                                  [ OK ] 
 * Starting internet superserver xinetd                                  [ OK ] 
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------"
This step will set up minicom (serial communication application) for
SDK development


For boards that contain a USB-to-Serial converter on the board such as:
	* BeagleBone
	* Beaglebone Black
	* AM335x EVM-SK
	* AM57xx EVM
	* K2H, K2L, and K2E EVMs

the port used for minicom will be automatically detected. By default Ubuntu
will not recognize this device. Setup will add a udev rule to
/etc/udev/ so that from now on it will be recognized as soon as the board is
plugged in.

For other boards, the serial will defualt to /dev/ttyS0. Please update based
on your setup.

--------------------------------------------------------------------------------


NOTE: If your using any of the above boards simply hit enter
and the correct port will be determined automatically at a
later step.  For all other boards select the serial port
that the board is connected to.
Which serial port do you want to use with minicom?
[ /dev/ttyS0 ] /dev/ttyS1

Copied existing /root/.minirc.dfl to /root/.minirc.dfl.old

Configuration saved to /root/.minirc.dfl. You can change it further from inside
minicom, see the Software Development Guide for more information.
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
This step will set up the u-boot variables for booting the EVM.
--------------------------------------------------------------------------------
Autodetected the following ip address of your host, correct it if necessary
[  ] 192.168.1.20


/tftpboot/arago-base-tisdk-image-k2e-evm.ubi already exists. The existing installed file can be renamed and saved under the new name.
(o) overwrite (s) skip copy 
[o] s
Skipping copy of arago-base-tisdk-image-k2e-evm.ubi, existing version will be used

/tftpboot/tisdk-server-rootfs-image-k2e-evm.ubi already exists. The existing installed file can be renamed and saved under the new name.
(o) overwrite (s) skip copy 
[o] s
Skipping copy of tisdk-server-rootfs-image-k2e-evm.ubi, existing version will be used
--------------------------------------------------------------------------------
Would you like to update U-boot on the board (y/n)?
[ y ] y

Select secondary boot:
 1: NFS
 2: UBI

[ 1 ] 

Available kernel images in /tftpboot:
    arago-base-tisdk-image-k2e-evm.ubi
    k2e-evm.dtb
    k2-fw-initrd.cpio.gz
    skern-k2e.bin
    tisdk-server-rootfs-image-k2e-evm.ubi
    u-boot-spi-k2e-evm.gph
    zImage-k2e-evm.bin

Which kernel image do you want to boot from TFTP?
[ zImage-k2e-evm.bin ] 
--------------------------------------------------------------------------------
Would you like to create a minicom script with the above parameters (y/n)?
[ y ] 

Successfully wrote /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/bin/setupBoard.minicom

Board could not be detected. Please connect the board to the PC.
Press any key to try checking again.

There are two manual setting. One is /dev/ttyS1 and the other is IP address 192.168.1.20.

I get the information successfully in ttyS1 like what shows below

So /dev/ttyS1 seems right and IP address I think it doesn't matter.

Is there anything I should set on K2E EVM board? When should I connect the board to PC? When should I power on?

  • Can you please set boot mode to No-boot mode and do the same again ?


    There are two manual setting. One is /dev/ttyS1 and the other is IP address 192.168.1.20.
    I get the information successfully in ttyS1 like what shows below

    It seems you have connected the serial port from board to PC correctly.
  • Sorry, you don't want to change No-boot mode but SPI or NAND where you have u-boot.

    I've used the USB cable connected to PC and got /dev/ttyUSB0 and /dev/ttyUSB1, for K2E board, you should use /dev/ttyUSB1 to get the uboot logs. Able to detect my board and initialized minicom settings.

    I hope you are using Serial console cables from board (COM1 and COM2)
    Can you please try to use the USB cable (J1) ?
  • Hi Titus, I have tried setting boot mode to no-boot mode by setting SW1 1111 and changed /dev/ttyS0 from /dev/ttyS0 to /dev/ttyS7 and from /dev/ttyUSB0 to /dev/ttyUSB7 but it didn't work.

    I am confused about the second reply you post. I did use USB cable(J1) and /dev/ttyS1 to get the uboot logs just like the top of the putty screen shot.

    So I think /dev/ttyS1 is the right setting.

  • Hi Titus, I'm a fool. I did set boot mode to no-boot mode but I didn't realize I unplug the usb-serial cable until now. Now I have detected the board but it stop at somewhere as follows.

    Successfully wrote /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/bin/setupBoard.minicom
    
    --------------------------------------------------------------------------------
    
    Detecting connection to board... k2e-evm autodetected at /dev/ttyUSB0
    
    Please verify that this is correct or manually enter the correct port:
    
    [/dev/ttyUSB0] 
    
    
    --------------------------------------------------------------------------------
    Would you like to run the setup script now (y/n)?
    
    Please connect the ethernet cable as described in the Quick Start Guide.
    Once answering 'y' on the prompt below, you will have 300 seconds to connect
    the board and power cycle it before the setup times out
    
    After successfully executing this script, your EVM will be set up. You will be 
    able to connect to it by executing 'minicom -w' or if you prefer a windows host
    you can set up Tera Term as explained in the Software Developer's Guide.
    If you connect minicom or Tera Term and power cycle the board Linux will boot.
    
    [ y ] 
    
    
    Welcome to minicom 2.7
    
    OPTIONS: I18n 
    Compiled on Jan  1 2014, 17:13:19.
    Port /dev/ttyUSB0, 22:14:12
    
    Press CTRL-A Z for help on special keys
    
    

    It autodetect the board at /dev/ttyUSB0 instead of /dev/ttyUSB1 you suggested. I have tried /dev/ttyUSB1 but nothing changed. And according to  I have tried to connect the board both at first and during but nothing changed. 

  • You should use /dev/ttyUSB1 (for K2E), at this stage, try to reboot the board, you would see the u-boot log (if you have it)
  • Thanks for your quick reply! Well, it seems not correct cause it shows BMC info. as follows. Should I input something it BMC mode? Does reboot means power down and up the board?

    BMC VERSION 1.1.0.6                                                             
    BUILT Jan 22 2015 22:14:10                                                      
    ---------------------                                                           
                                                                                    
    [00:00:00]  BMC Init Begin                                                      
    [00:00:00]  BMC Version 1.1.0.6                                                 
    [00:00:00]  UCD9xxx Reset Done..                                                
    [00:00:00]  EVMK2E                                                              
    [00:00:00]  1.0.3                                                               
    [00:00:00]  S/N: 15030289                                                       
    [00:00:00]  BMC Init Complete                                                   
    [00:00:00]  Main PWR Start Begin                                                
    [00:00:00]  PCICLKMUX_SEL.. Internal Clock                                      
    [00:00:00]  Main PWR Start Complete                                             
    [00:00:00]  SOC PWR Start Begin                                                 
    [00:00:00]  User Profile for CDCM 0: OFF CDCM 1: OFF                            
    [00:00:00]  Testing register 0 of clock 1... 0x01B8, got 0x01B8 Passed.         
    [00:00:00]  Testing register 1 of clock 1... 0x0000, got 0x0000 Passed.         
    [00:00:00]  Testing register 2 of clock 1... 0x0018, got 0x0018 Passed.         
    [00:00:00]  Testing register 3 of clock 1... 0x08F4, got 0x08F4 Passed.         
    [00:00:00]  Testing register 4 of clock 1... 0x30AB, got 0x30AB Passed.         
    [00:00:00]  Testing register 5 of clock 1... 0x0023, got 0x0023 Passed.         
    [00:00:00]  Testing register 6 of clock 1... 0x0003, got 0x0003 Passed.         
    [00:00:00]  Testing register 7 of clock 1... 0x0023, got 0x0023 Passed.         
    [00:00:00]  Testing register 8 of clock 1... 0x0004, got 0x0004 Passed.         
    [00:00:00]  Testing register 9 of clock 1... 0x4003, got 0x4003 Passed.         
    [00:00:00]  Testing register 10 of clock 1... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Testing register 11 of clock 1... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Testing register 12 of clock 1... 0x0003, got 0x0003 Passed.        
    [00:00:00]  Testing register 13 of clock 1... 0x0030, got 0x0030 Passed.        
    [00:00:00]  Testing register 14 of clock 1... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Testing register 15 of clock 1... 0x0003, got 0x0003 Passed.        
    [00:00:00]  Testing register 16 of clock 1... 0x0040, got 0x0040 Passed.        
    [00:00:00]  Testing register 17 of clock 1... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Testing register 18 of clock 1... 0x0003, got 0x0003 Passed.        
    [00:00:00]  Testing register 19 of clock 1... 0x0040, got 0x0040 Passed.        
    [00:00:00]  Testing register 20 of clock 1... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Clock Ref is SECONDARY of clock 1                                   
    [00:00:00]  Clock 1                                                             
    [00:00:00]  Passed                                                              
    [00:00:00]  Testing register 0 of clock 2... 0x01B8, got 0x01B8 Passed.         
    [00:00:00]  Testing register 1 of clock 2... 0x0000, got 0x0000 Passed.         
    [00:00:00]  Testing register 2 of clock 2... 0x0018, got 0x0018 Passed.         
    [00:00:00]  Testing register 3 of clock 2... 0x08F4, got 0x08F4 Passed.         
    [00:00:00]  Testing register 4 of clock 2... 0x306B, got 0x306B Passed.         
    [00:00:00]  Testing register 5 of clock 2... 0x0103, got 0x0103 Passed.         
    [00:00:00]  Testing register 6 of clock 2... 0x0001, got 0x0001 Passed.         
    [00:00:00]  Testing register 7 of clock 2... 0x0023, got 0x0023 Passed.         
    [00:00:00]  Testing register 8 of clock 2... 0x0004, got 0x0004 Passed.         
    [00:00:00]  Testing register 9 of clock 2... 0x0203, got 0x0203 Passed.         
    [00:00:00]  Testing register 10 of clock 2... 0x0022, got 0x0022 Passed.        
    [00:00:00]  Testing register 11 of clock 2... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Testing register 12 of clock 2... 0x0203, got 0x0203 Passed.        
    [00:00:00]  Testing register 13 of clock 2... 0x0022, got 0x0022 Passed.        
    [00:00:00]  Testing register 14 of clock 2... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Testing register 15 of clock 2... 0x0003, got 0x0003 Passed.        
    [00:00:00]  Testing register 16 of clock 2... 0x0040, got 0x0040 Passed.        
    [00:00:00]  Testing register 17 of clock 2... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Testing register 18 of clock 2... 0x0003, got 0x0003 Passed.        
    [00:00:00]  Testing register 19 of clock 2... 0x0040, got 0x0040 Passed.        
    [00:00:00]  Testing register 20 of clock 2... 0x0000, got 0x0000 Passed.        
    [00:00:00]  Clock Ref is SECONDARY of clock 2                                   
    [00:00:00]  Clock 2                                                             
    [00:00:00]  Passed                                                              
    [00:00:00]  SOC PWR Start Complete                                              
    [00:00:01]  SOC RST Begin                                                       
    [00:00:01]  Current BootMode is set to DSP No-Boot                              
    [00:00:01]  SOC RST Complete                                                    
    [00:00:01]  BOOT COMPLETE                                                       
    BMC>
    

  • You will get BMC shell in /dev/ttyUSB0 and Linux & u-boot (ARM) shell in /dev/ttyUSB1
  • I open /dev/ttyUSB0 and /dev/ttyUSB1 by putty at the same time but when I power down and up the board, I only get BMC shell in /dev/ttyUSB1. There is nothing in /dev/ttyUSB0.
  • Please make sure that you have set boot mode to SPI or NAND and also you have u-boot flashed on SPI and NAND flash.
  • Sorry Titus, I make a mistake about "reboot" you said before. I think it's just powering down and up. Now I get the u-boot shell but I think there is something wrong about serverip.

    root@hjj64-virtual-machine:~# cd /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/
    root@hjj64-virtual-machine:/usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07# ./setup.sh 
    -------------------------------------------------------------------------------
    TISDK setup script
    This script will set up your development host for SDK development.
    Parts of this script require administrator priviliges (sudo access).
    -------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    Verifying Linux host distribution
    Ubuntu 12.04 LTS and Ubuntu 14.04 LTS is being used, continuing..
    --------------------------------------------------------------------------------
    
    Starting with Ubuntu 12.04 serial devices are only accessible by members of the 'dialout' group.
    A user must be apart of this group to have the proper permissions to access a serial device.
    
    Are you running this script using sudo? The detected username is 'root'.
    Verify and enter your Linux username below
    [ root ] 
    
    User 'root' is already apart of the 'dialout' group
    
    -------------------------------------------------------------------------------
    setup package script
    This script will make sure you have the proper host support packages installed
    This script requires administrator priviliges (sudo access) if packages are to be installed.
    -------------------------------------------------------------------------------
    System has required packages!
    --------------------------------------------------------------------------------
    Package verification and installation successfully completed
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    In which directory do you want to install the target filesystem?(if this directory does not exist it will be created)
    [ /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS ] 
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    This step will extract the target filesystem to /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS
    
    Note! This command requires you to have administrator priviliges (sudo access) 
    on your host.
    Press return to continue
    /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS already exists
    (r) rename existing filesystem (o) overwrite existing filesystem (s) skip filesystem extraction
    [r] s
    Skipping filesystem extraction
    WARNING! Keeping the previous filesystem may cause compatibility problems if you are upgrading the SDK
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    This step will set up the SDK to install binaries in to:
        /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS/home/root/k2e-evm
    
    The files will be available from /home/root/k2e-evm on the target.
    
    This setting can be changed later by editing Rules.make and changing the
    EXEC_DIR or DESTDIR variable (depending on your SDK).
    
    Press return to continue
    Rules.make edited successfully..
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    This step will export your target filesystem for NFS access.
    
    Note! This command requires you to have administrator priviliges (sudo access) 
    on your host.
    Press return to continue
    /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS already NFS exported, skipping..
    
     * Stopping NFS kernel daemon                                            [ OK ] 
     * Unexporting directories for NFS kernel daemon...                      [ OK ] 
     * Exporting directories for NFS kernel daemon...                        [ OK ] 
     * Starting NFS kernel daemon                                            [ OK ] 
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    Which directory do you want to be your tftp root directory?(if this directory does not exist it will be created for you)
    [ /tftpboot ] 
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    This step will set up the tftp server in the /tftpboot directory.
    
    Note! This command requires you to have administrator priviliges (sudo access) 
    on your host.
    Press return to continue
    
    /tftpboot already exists, not creating..
    
    /tftpboot/zImage-k2e-evm.bin already exists. The existing installed file can be renamed and saved under the new name.
    (r) rename (o) overwrite (s) skip copy 
    [r] s
    Skipping copy of zImage-k2e-evm.bin, existing version will be used
    
    /tftpboot/k2e-evm.dtb already exists. The existing installed file can be renamed and saved under the new name.
    (o) overwrite (s) skip copy 
    [o] s
    Skipping copy of k2e-evm.dtb, existing version will be used
    
    /tftpboot/u-boot-spi-k2e-evm.gph already exists. The existing installed file can be renamed and saved under the new name.
    (o) overwrite (s) skip copy 
    [o] s
    Skipping copy of u-boot-spi-k2e-evm.gph, existing version will be used
    
    /tftpboot/skern-k2e.bin already exists. The existing installed file can be renamed and saved under the new name.
    (o) overwrite (s) skip copy 
    [o] s
    Skipping copy of skern-k2e.bin, existing version will be used
    
    /tftpboot/k2-fw-initrd.cpio.gz already exists. The existing installed file can be renamed and saved under the new name.
    (o) overwrite (s) skip copy 
    [o] s
    Skipping copy of k2-fw-initrd.cpio.gz, existing version will be used
    
    /etc/xinetd.d/tftp already exists..
    /tftpboot already exported for TFTP, skipping..
    
    Restarting tftp server
     * Stopping internet superserver xinetd                                  [ OK ] 
     * Starting internet superserver xinetd                                  [ OK ] 
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------"
    This step will set up minicom (serial communication application) for
    SDK development
    
    
    For boards that contain a USB-to-Serial converter on the board such as:
    	* BeagleBone
    	* Beaglebone Black
    	* AM335x EVM-SK
    	* AM57xx EVM
    	* K2H, K2L, and K2E EVMs
    
    the port used for minicom will be automatically detected. By default Ubuntu
    will not recognize this device. Setup will add a udev rule to
    /etc/udev/ so that from now on it will be recognized as soon as the board is
    plugged in.
    
    For other boards, the serial will defualt to /dev/ttyS0. Please update based
    on your setup.
    
    --------------------------------------------------------------------------------
    
    
    NOTE: If your using any of the above boards simply hit enter
    and the correct port will be determined automatically at a
    later step.  For all other boards select the serial port
    that the board is connected to.
    Which serial port do you want to use with minicom?
    [ /dev/ttyS0 ] /dev/ttyUSB0
    
    Copied existing /root/.minirc.dfl to /root/.minirc.dfl.old
    
    Configuration saved to /root/.minirc.dfl. You can change it further from inside
    minicom, see the Software Development Guide for more information.
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    This step will set up the u-boot variables for booting the EVM.
    --------------------------------------------------------------------------------
    Autodetected the following ip address of your host, correct it if necessary
    [  ] 192.168.1.1
    
    
    /tftpboot/arago-base-tisdk-image-k2e-evm.ubi already exists. The existing installed file can be renamed and saved under the new name.
    (o) overwrite (s) skip copy 
    [o] s
    Skipping copy of arago-base-tisdk-image-k2e-evm.ubi, existing version will be used
    
    /tftpboot/tisdk-server-rootfs-image-k2e-evm.ubi already exists. The existing installed file can be renamed and saved under the new name.
    (o) overwrite (s) skip copy 
    [o] s
    Skipping copy of tisdk-server-rootfs-image-k2e-evm.ubi, existing version will be used
    --------------------------------------------------------------------------------
    Would you like to update U-boot on the board (y/n)?
    [ y ] y
    
    Select secondary boot:
     1: NFS
     2: UBI
    
    [ 1 ] 
    
    Available kernel images in /tftpboot:
        arago-base-tisdk-image-k2e-evm.ubi
        k2e-evm.dtb
        k2-fw-initrd.cpio.gz
        skern-k2e.bin
        tisdk-server-rootfs-image-k2e-evm.ubi
        u-boot-spi-k2e-evm.gph
        zImage-k2e-evm.bin
    
    Which kernel image do you want to boot from TFTP?
    [ zImage-k2e-evm.bin ] tisdk-server-rootfs-image-k2e-evm.ubi
    --------------------------------------------------------------------------------
    Would you like to create a minicom script with the above parameters (y/n)?
    [ y ] 
    
    Successfully wrote /usr/local/ti/ti-processor-sdk-linux-k2e-evm-02.00.01.07/bin/setupBoard.minicom
    
    --------------------------------------------------------------------------------
    
    Detecting connection to board... k2e-evm autodetected at /dev/ttyUSB0
    
    Please verify that this is correct or manually enter the correct port:
    
    [/dev/ttyUSB0] 
    
    
    --------------------------------------------------------------------------------
    Would you like to run the setup script now (y/n)?
    
    Please connect the ethernet cable as described in the Quick Start Guide.
    Once answering 'y' on the prompt below, you will have 300 seconds to connect
    the board and power cycle it before the setup times out
    
    After successfully executing this script, your EVM will be set up. You will be 
    able to connect to it by executing 'minicom -w' or if you prefer a windows host
    you can set up Tera Term as explained in the Software Developer's Guide.
    If you connect minicom or Tera Term and power cycle the board Linux will boot.
    
    [ y ] 
    
    
    Welcome to minicom 2.7
    
    OPTIONS: I18n 
    Compiled on Jan  1 2014, 17:13:19.
    Port /dev/ttyUSB0, 16:23:36
    
    Press CTRL-A Z for help on special keys
    
    
    U-Boot SPL 2013.01 (Oct 02 2014 - 01:27:46)
    SF: Detected N25Q128A with page size 64 KiB, total 16 MiB
    
    
    U-Boot 2013.01 (Oct 02 2014 - 01:27:46)
    
    I2C:   ready
    Detected SO-DIMM [18KSF51272HZ-1G6K2]
    DRAM: 4 GiB
    
    Reseting entire DDR3 memory to 0 ...
    DRAM:  2 GiB
    NAND:  512 MiB
    Net:   K2E_EMAC0                                                                
    Warning: K2E_EMAC0 using MAC address from net device                            
    , K2E_EMAC1, K2E_EMAC2, K2E_EMAC3, K2E_EMAC4, K2E_EMAC5, K2E_EMAC6, K2E_EMAC7   
    Hit any key to stop autobo 0                                                    
    K2E EVM # env default -f -a                                                     
    ## saveenv                                                                      
    Saving Environment to NAND...                                                   
    Erasing Nand...                                                                 
    Erasing at 0x120000 -- 100% complete.                                           
    Writing to Nand... done                                                         
    K2E EVM # reset                                                                 
    resetting ...                                                                   
                                                                                    
    U-Boot SPL 2013.01 (Oct 02 2014 - 01:27:46)                                     
    SF: Detected N25Q128A with page size 64 KiB, total 16 MiB                       
                                                                                    
                                                                                    
    U-Boot 2013.01 (Oct 02 2014 - 01:27:46)                                         
                                                                                    
    I2C:   ready                                                                    
    Detected SO-DIMM [18KSF51272HZ-1G6K2]                                           
    DRAM: 4 GiB                                                                     
                                                                                    
    Reseting entire DDR3 memory to 0 ...                                            
    DRAM:  2 GiB                                                                    
    NAND:  512 MiB                                                                  
    Net:   K2E_EMAC0                                                                
    Warning: K2E_EMAC0 using MAC address from net device                            
    , K2E_EMAC1, K2E_EMAC2, K2E_EMAC3, K2E_EMAC4, K2E_EMAC5, K2E_EMAC6, K2E_EMAC7   
    Hit any key to stop autobo 0                                                    
    K2E EVM # setenv serverip 192.168.1.1                                           
    K2E EVM # setenv tftp_root '/tftpboot'                                          
    K2E EVM # setenv name_uboot u-boot-spi-k2e-evm.gph                              
    K2E EVM # if test -n $burn_uboot_spi; then setenv burn_uboot $burn_uboot_spi; fi
    K2E EVM # setenv update_uboot 'if run get_uboot_net burn_uboot; then echo U-Boot
     successfully updated; else echo U-boot update failed!; fi'                     
    K2E EVM # run update_uboot                                                      
    BOOTP broadcast 1                                                               
    DHCP client bound to address 192.168.1.150                                      
    Using K2E_EMAC0 device                                                          
    TFTP from server 192.168.1.1; our IP address is 192.168.1.150                   
    Filename '/tftpboot/u-boot-spi-k2e-evm.gph'.                                    
    Load address: 0x87000000                                                        
    Loading: T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T
     T T T T T T T T T T T T T T T T T T T T T T T T T T T T                        
    Retry count exceeded; starting again                                            
    *** ERROR: `eth2addr' not set                                                   
    *** ERROR: `eth3addr' not set                                                   
    *** ERROR: `eth4addr' not set                                                   
    *** ERROR: `eth5addr' not set                                                   
    *** ERROR: `eth6addr' not set                                                   
    *** ERROR: `eth7addr' not set                                                   
    BOOTP broadcast 1                                                               
    DHCP client bound to address 192.168.1.150                                      
    Using K2E_EMAC0 device                                                          
    TFTP from server 192.168.1.1; our IP address is 192.168.1.150                   
    Filename '/tftpboot/u-boot-spi-k2e-evm.gph'.                                    
    Load address: 0x87000000                                                        
    Loading: T T T T T T T T T T T T T T T T T T T T T T                            
    Abort                                                                           
    U-boot update failed!                                                           
    K2E EVM # 

    First, I manually set serverip 192.168.1.20 both on PC and at line163 but when it came to the line 288, it becomes "TFTP from server 192.168.1.1; our IP address is 192.168.1.150".

    Second, I use DHCP and serverip is nothing. When it came to the line 288, "TFTP from server 192.168.1.1; our IP address is 192.168.1.150".

    At last, I manually set serverip 192.168.1.1 both on PC and at line163 and it shows as above.

  • How did you connect the ethernet cable in PC, EVM board ?
    Please use ethernet witch in between PC and EVM.

    1) You can connect Ethernet cable to your PC and EVM board to DHCP server switch (you would get IP address automatically from DHCP server).
    2) You can connect Ethernet cable between PC and EVM board directly (with switch or without switch), but you need to assign IP address manually in PC and EVM.

    Don't use "192.168.1.1" IP address as Server IP in PC, it should be gateway.

    Set/assign server IP address 192.168.1.52 for PC and set EVM IP address as 192.168.1.50

    ex:
    setenv ipaddr 192.168.1.50 (EVM's IP)
    setenv serverip 192.168.1.52 (PC's IP)
  • I tried it in both ways. When I connect Ethernet cable between PC and EVM board directly, the board can't get an IP. When I connect Ethernet cable between PC and EVM board to a router, it get an IP "192.168.1.150". I don't want to set "192.168.1.1" as the serverip. I tried to set "192.168.1.20" as the serverip but when it reboot, it auto-change into "192.168.1.1". When is the right time to set IPs by "setenv ipaddr 192.168.1.50 (EVM's IP) setenv serverip 192.168.1.52 (PC's IP)"?

  • I don't want to set "192.168.1.1" as the serverip. I tried to set "192.168.1.20" as the serverip but when it reboot, it auto-change into "192.168.1.1".

    Have you done "saveenv" after set the IP addressed ?
    You have to store it those settings by "saveenv" u-boot command.

    After server and IP address setting, try to ping each other.
  • I set the serverip when I run the setup.sh as follows, not in the u-boot command.

    --------------------------------------------------------------------------------
    This step will set up the u-boot variables for booting the EVM.
    --------------------------------------------------------------------------------
    Autodetected the following ip address of your host, correct it if necessary
    [ ] 192.168.1.20

    Then when the board reboots, it set the u-boot command automatically.
    Maybe I can ignore the setup.sh and write the u-boot command by myself. But though I may succeed in downloading the u-boot-spi-k2e-evm.gph and updating the u-boot, I don't know the next u-boot commands to load filesystem tisdk-server-rootfs-image-k2e-evm.ubi those are supposed to be set automatically by setup.sh.
  • This is the step to flash the UBI into NAND.
    u-boot# run get_ubi_net
    u-boot# run burn_ubi
    u-boot# setenv boot ubi
    u-boot# saveenv


    Refer this wiki page for programming your board.
    processors.wiki.ti.com/.../Program_EVM_UG
  • Thanks Titus, but I want to NFS the filesystem rather than FLASH into NAND.
    And I use u-boot command as follows instead of using setup.sh

    env default -f -a
    saveenv
    reset

    setenv serverip 192.168.1.20
    setenv ipaddr 192.168.1.21
    setenv name_uboot u-boot-spi-k2e-evm.gph
    setenv tftp_root '/tftpboot'
    if test -n $burn_uboot_spi; then setenv burn_uboot $burn_uboot_spi; fi
    setenv update_uboot 'if run get_uboot_net burn_uboot; then echo U-Boot successfully updated; else echo U-Boot update failed!; fi'
    saveenv
    run update_uboot

    But nothing changed. When I connected directly, it sticked to "BOOTP broadcast 1/2/3/4/5". It seemed it failed to get an IP. When I connected with a router, it ran to the line "TFTP from server 192.168.1.1; our IP address is 192.168.1.150". It seemed it didn't care what I have set before. Can you give me the complete commands to update uboot and nfs filesystem? The program EVM UG seems not enough.
  • Please follow the commands to boot through NFS.

    Ex:
    Copy all the boot imgae files into
    /tftpboot/images_k2e

    Keep filesystem in "/usr/local/k2e_fs"

    K2HK EVM # env default -f -a
    K2HK EVM # setenv serverip 192.168.1.20
    K2HK EVM # setenv ipaddr 192.168.1.25
    K2HK EVM # setenv boot net
    K2HK EVM # setenv nfs_root /usr/local/k2e_fs
    K2HK EVM # setenv tftp_root images_k2e
    K2HK EVM # saveenv
    K2HK EVM # reset
  • I have tried what you told but the board sticked to BOOTP broadcast as follows.(The board connected directly.)

    K2E EVM # env default -f -a
    ## Resetting to default environment
    K2E EVM # printenv
    addr_fdt=0x87000000
    addr_fs=0x82000000
    addr_kern=0x88000000
    addr_mon=0x0c140000
    addr_secdb_key=0xc000000
    addr_ubi=0x82000000
    addr_uboot=0x87000000
    args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1
    args_hdd=setenv bootargs ${bootargs} rw root=/dev/sda1
    args_net=setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp
    args_ramfs=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x802000000,9M
    args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048
    args_uinitrd=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0
    baudrate=115200
    boot=ubi
    bootcmd=run init_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern
    bootdelay=3
    bootfile=uImage
    burn_ubi=nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}
    burn_uboot=sf probe; sf erase 0 0x100000; sf write ${addr_uboot} 0 ${filesize}
    fdt_high=0xffffffff
    get_fdt_hdd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_net=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ramfs=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ubi=ubifsload ${addr_fdt} ${name_fdt}
    get_fdt_uinitrd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fs_ramfs=dhcp ${addr_fs} ${tftp_root}/${name_fs}
    get_fs_uinitrd=dhcp ${addr_fs} ${tftp_root}/${name_uinitrd}
    get_kern_hdd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_net=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ramfs=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ubi=ubifsload ${addr_kern} ${name_kern}
    get_kern_uinitrd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_mon_hdd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_net=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ramfs=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ubi=ubifsload ${addr_mon} ${name_mon}
    get_mon_uinitrd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_ubi_net=dhcp ${addr_ubi} ${tftp_root}/${name_ubi}
    get_uboot_net=dhcp ${addr_uboot} ${tftp_root}/${name_uboot}
    has_mdio=1
    init_hdd=run set_fs_none args_all args_hdd
    init_net=run set_fs_none args_all args_net
    init_ramfs=run set_fs_none args_all args_ramfs get_fs_ramfs
    init_ubi=run set_fs_none args_all args_ubi; ubi part ubifs; ubifsmount boot;ubifsload ${addr_secdb_key} securedb.key.bin;
    init_uinitrd=run set_fs_uinitrd args_all args_uinitrd get_fs_uinitrd
    initrd_high=0xffffffff
    mem_lpae=1
    mem_reserve=512M
    mtdparts=mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)
    name_fdt=uImage-k2e-evm.dtb
    name_fs=arago-console-image-k2e-evm.cpio.gz
    name_kern=uImage-keystone-evm.bin
    name_mon=skern-k2e-evm.bin
    name_ubi=k2e-evm-ubifs.ubi
    name_uboot=u-boot-spi-k2e-evm.gph
    name_uinitrd=uinitrd.bin
    nfs_options=v3,tcp,rsize=4096,wsize=4096
    nfs_root=/export
    no_post=1
    run_kern=bootm ${addr_kern} ${addr_uinitrd} ${addr_fdt}
    run_mon=mon_install ${addr_mon}
    set_fs_none=setenv addr_uinitrd -
    set_fs_uinitrd=setenv addr_uinitrd ${addr_fs}
    tftp_root=/
    
    Environment size: 3099/262140 bytes
    K2E EVM # setenv serverip 192.168.1.20
    K2E EVM # setenv ipaddr 192.168.1.25
    K2E EVM # setenv boot net
    K2E EVM # setenv nfs_root /usr/local/k2e_fs
    K2E EVM # setenv tftp_root /tftpboot
    K2E EVM # saveenv
    Saving Environment to NAND...
    Erasing Nand...
    Erasing at 0x120000 -- 100% complete.
    Writing to Nand... done
    K2E EVM # printenv
    addr_fdt=0x87000000
    addr_fs=0x82000000
    addr_kern=0x88000000
    addr_mon=0x0c140000
    addr_secdb_key=0xc000000
    addr_ubi=0x82000000
    addr_uboot=0x87000000
    args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1
    args_hdd=setenv bootargs ${bootargs} rw root=/dev/sda1
    args_net=setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp
    args_ramfs=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x802000000,9M
    args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048
    args_uinitrd=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0
    baudrate=115200
    boot=net
    bootcmd=run init_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern
    bootdelay=3
    bootfile=uImage
    burn_ubi=nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}
    burn_uboot=sf probe; sf erase 0 0x100000; sf write ${addr_uboot} 0 ${filesize}
    fdt_high=0xffffffff
    get_fdt_hdd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_net=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ramfs=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ubi=ubifsload ${addr_fdt} ${name_fdt}
    get_fdt_uinitrd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fs_ramfs=dhcp ${addr_fs} ${tftp_root}/${name_fs}
    get_fs_uinitrd=dhcp ${addr_fs} ${tftp_root}/${name_uinitrd}
    get_kern_hdd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_net=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ramfs=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ubi=ubifsload ${addr_kern} ${name_kern}
    get_kern_uinitrd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_mon_hdd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_net=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ramfs=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ubi=ubifsload ${addr_mon} ${name_mon}
    get_mon_uinitrd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_ubi_net=dhcp ${addr_ubi} ${tftp_root}/${name_ubi}
    get_uboot_net=dhcp ${addr_uboot} ${tftp_root}/${name_uboot}
    has_mdio=1
    init_hdd=run set_fs_none args_all args_hdd
    init_net=run set_fs_none args_all args_net
    init_ramfs=run set_fs_none args_all args_ramfs get_fs_ramfs
    init_ubi=run set_fs_none args_all args_ubi; ubi part ubifs; ubifsmount boot;ubifsload ${addr_secdb_key} securedb.key.bin;
    init_uinitrd=run set_fs_uinitrd args_all args_uinitrd get_fs_uinitrd
    initrd_high=0xffffffff
    ipaddr=192.168.1.25
    mem_lpae=1
    mem_reserve=512M
    mtdparts=mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)
    name_fdt=uImage-k2e-evm.dtb
    name_fs=arago-console-image-k2e-evm.cpio.gz
    name_kern=uImage-keystone-evm.bin
    name_mon=skern-k2e-evm.bin
    name_ubi=k2e-evm-ubifs.ubi
    name_uboot=u-boot-spi-k2e-evm.gph
    name_uinitrd=uinitrd.bin
    nfs_options=v3,tcp,rsize=4096,wsize=4096
    nfs_root=/usr/local/k2e_fs
    no_post=1
    run_kern=bootm ${addr_kern} ${addr_uinitrd} ${addr_fdt}
    run_mon=mon_install ${addr_mon}
    serverip=192.168.1.20
    set_fs_none=setenv addr_uinitrd -
    set_fs_uinitrd=setenv addr_uinitrd ${addr_fs}
    tftp_root=/tftpboot
    
    Environment size: 3163/262140 bytes
    K2E EVM # reset
    resetting ...
    
    U-Boot SPL 2013.01 (Oct 02 2014 - 01:27:46)
    SF: Detected N25Q128A with page size 64 KiB, total 16 MiB
    
    
    U-Boot 2013.01 (Oct 02 2014 - 01:27:46)
    
    I2C:   ready
    Detected SO-DIMM [18KSF51272HZ-1G6K2]
    DRAM: 4 GiB
    
    Reseting entire DDR3 memory to 0 ...
    DRAM:  2 GiB
    NAND:  512 MiB
    Net:   K2E_EMAC0
    Warning: K2E_EMAC0 using MAC address from net device
    , K2E_EMAC1, K2E_EMAC2, K2E_EMAC3, K2E_EMAC4, K2E_EMAC5, K2E_EMAC6, K2E_EMAC7
    Hit any key to stop autoboot:  0
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    BOOTP broadcast 4
    BOOTP broadcast 5
    BOOTP broadcast 6
    BOOTP broadcast 7
    BOOTP broadcast 8
    BOOTP broadcast 9
    BOOTP broadcast 10
    BOOTP broadcast 11
    BOOTP broadcast 12
    BOOTP broadcast 13
    BOOTP broadcast 14
    BOOTP broadcast 15
    BOOTP broadcast 16
    BOOTP broadcast 17
    BOOTP broadcast 18
    BOOTP broadcast 19
    BOOTP broadcast 20
    BOOTP broadcast 21
    BOOTP broadcast 22
    BOOTP broadcast 23
    BOOTP broadcast 24
    BOOTP broadcast 25
    BOOTP broadcast 26
    BOOTP broadcast 27
    BOOTP broadcast 28
    BOOTP broadcast 29
    BOOTP broadcast 30
    BOOTP broadcast 31
    BOOTP broadcast 32
    
    Retry count exceeded; starting again
    *** ERROR: `eth2addr' not set
    *** ERROR: `eth3addr' not set
    *** ERROR: `eth4addr' not set
    *** ERROR: `eth5addr' not set
    *** ERROR: `eth6addr' not set
    *** ERROR: `eth7addr' not set
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    
    Abort
    K2E EVM # printenv
    addr_fdt=0x87000000
    addr_fs=0x82000000
    addr_kern=0x88000000
    addr_mon=0x0c140000
    addr_secdb_key=0xc000000
    addr_ubi=0x82000000
    addr_uboot=0x87000000
    addr_uinitrd=-
    args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1
    args_hdd=setenv bootargs ${bootargs} rw root=/dev/sda1
    args_net=setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp
    args_ramfs=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x802000000,9M
    args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048
    args_uinitrd=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0
    baudrate=115200
    boot=net
    bootargs=console=ttyS0,115200n8 rootwait=1 rootfstype=nfs root=/dev/nfs rw nfsroot=192.168.1.20:/usr/local/k2e_fs,v3,tcp,rsize=4096,wsize=4096 ip=dhcp
    bootcmd=run init_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern
    bootdelay=3
    bootfile=uImage
    burn_ubi=nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}
    burn_uboot=sf probe; sf erase 0 0x100000; sf write ${addr_uboot} 0 ${filesize}
    ethact=K2E_EMAC0
    ethaddr=7c:66:9d:ff:d2:f4
    fdt_high=0xffffffff
    get_fdt_hdd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_net=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ramfs=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ubi=ubifsload ${addr_fdt} ${name_fdt}
    get_fdt_uinitrd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fs_ramfs=dhcp ${addr_fs} ${tftp_root}/${name_fs}
    get_fs_uinitrd=dhcp ${addr_fs} ${tftp_root}/${name_uinitrd}
    get_kern_hdd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_net=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ramfs=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ubi=ubifsload ${addr_kern} ${name_kern}
    get_kern_uinitrd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_mon_hdd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_net=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ramfs=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ubi=ubifsload ${addr_mon} ${name_mon}
    get_mon_uinitrd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_ubi_net=dhcp ${addr_ubi} ${tftp_root}/${name_ubi}
    get_uboot_net=dhcp ${addr_uboot} ${tftp_root}/${name_uboot}
    has_mdio=1
    init_hdd=run set_fs_none args_all args_hdd
    init_net=run set_fs_none args_all args_net
    init_ramfs=run set_fs_none args_all args_ramfs get_fs_ramfs
    init_ubi=run set_fs_none args_all args_ubi; ubi part ubifs; ubifsmount boot;ubifsload ${addr_secdb_key} securedb.key.bin;
    init_uinitrd=run set_fs_uinitrd args_all args_uinitrd get_fs_uinitrd
    initrd_high=0xffffffff
    ipaddr=192.168.1.25
    mem_lpae=1
    mem_reserve=512M
    mtdparts=mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)
    name_fdt=uImage-k2e-evm.dtb
    name_fs=arago-console-image-k2e-evm.cpio.gz
    name_kern=uImage-keystone-evm.bin
    name_mon=skern-k2e-evm.bin
    name_ubi=k2e-evm-ubifs.ubi
    name_uboot=u-boot-spi-k2e-evm.gph
    name_uinitrd=uinitrd.bin
    nfs_options=v3,tcp,rsize=4096,wsize=4096
    nfs_root=/usr/local/k2e_fs
    no_post=1
    run_kern=bootm ${addr_kern} ${addr_uinitrd} ${addr_fdt}
    run_mon=mon_install ${addr_mon}
    serverip=192.168.1.20
    set_fs_none=setenv addr_uinitrd -
    set_fs_uinitrd=setenv addr_uinitrd ${addr_fs}
    stderr=serial
    stdin=serial
    stdout=serial
    tftp_root=/tftpboot
    ver=U-Boot 2013.01 (Oct 02 2014 - 01:27:46)
    
    Environment size: 3473/262140 bytes
    

  • I have given those commands as example.
    You need to use different IP addresses for your EVM and PC (depends on your IP).
    Also you can use the same address but you need to change it in PC.

    Have you copied all the pre-built images to directory "/tftpboot/images_k2e" ??

    I hope you have filesystem already in "/home/<user>/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS"
    If yes, you can use the same path. No need to use different one.

    Ex:
    Copy all the boot imgae files into
    /tftpboot/images_k2e

    Ex:
    K2HK EVM # env default -f -a
    K2HK EVM # setenv serverip 192.168.1.20 ( PC address)
    K2HK EVM # setenv ipaddr 192.168.1.25 (EVM address)
    K2HK EVM # setenv boot net
    K2HK EVM # setenv nfs_root /home/Titus/ti-processor-sdk-linux-k2e-evm-02.00.01.07/targetNFS
    K2HK EVM # setenv tftp_root images_k2e
    K2HK EVM # saveenv
    K2HK EVM # reset


    processors.wiki.ti.com/.../Processor_SDK_Linux_Setup_Script
  • Yes. 192.168.1.20 is the IP address of my VMware PC. I don't think the problem is the setting of NFSroot or TFTProot cause it has not run so far yet. I set the serverip 192.168.1.20 and ipaddr 192.168.1.25. And I  ping from the board to PC correctly. Then I boot, fail and ping again. It fails too! It says I don't set the 'ipaddr' env which can be found by 'printenv' command. I setenv ipaddr again and the ping succeeds. I am confused about the result and I print my info. as follows.

    K2E EVM # printenv
    addr_fdt=0x87000000
    addr_fs=0x82000000
    addr_kern=0x88000000
    addr_mon=0x0c140000
    addr_secdb_key=0xc000000
    addr_ubi=0x82000000
    addr_uboot=0x87000000
    addr_uinitrd=-
    args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1
    args_hdd=setenv bootargs ${bootargs} rw root=/dev/sda1
    args_net=setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp
    args_ramfs=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x802000000,9M
    args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048
    args_uinitrd=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0
    baudrate=115200
    boot=net
    bootargs=console=ttyS0,115200n8 rootwait=1 rootfstype=nfs root=/dev/nfs rw nfsroot=192.168.1.20:/usr/loacl/k2e_fs/targetNFS,v3,tcp,rsize=4096,wsize=4096 ip=dhcp
    bootcmd=run init_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern
    bootdelay=3
    bootfile=uImage
    burn_ubi=nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}
    burn_uboot=sf probe; sf erase 0 0x100000; sf write ${addr_uboot} 0 ${filesize}
    ethact=K2E_EMAC0
    ethaddr=7c:66:9d:ff:d2:f4
    fdt_high=0xffffffff
    get_fdt_hdd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_net=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ramfs=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ubi=ubifsload ${addr_fdt} ${name_fdt}
    get_fdt_uinitrd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fs_ramfs=dhcp ${addr_fs} ${tftp_root}/${name_fs}
    get_fs_uinitrd=dhcp ${addr_fs} ${tftp_root}/${name_uinitrd}
    get_kern_hdd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_net=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ramfs=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ubi=ubifsload ${addr_kern} ${name_kern}
    get_kern_uinitrd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_mon_hdd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_net=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ramfs=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ubi=ubifsload ${addr_mon} ${name_mon}
    get_mon_uinitrd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_ubi_net=dhcp ${addr_ubi} ${tftp_root}/${name_ubi}
    get_uboot_net=dhcp ${addr_uboot} ${tftp_root}/${name_uboot}
    has_mdio=1
    init_hdd=run set_fs_none args_all args_hdd
    init_net=run set_fs_none args_all args_net
    init_ramfs=run set_fs_none args_all args_ramfs get_fs_ramfs
    init_ubi=run set_fs_none args_all args_ubi; ubi part ubifs; ubifsmount boot;ubifsload ${addr_secdb_key} securedb.key.bin;
    init_uinitrd=run set_fs_uinitrd args_all args_uinitrd get_fs_uinitrd
    initrd_high=0xffffffff
    ipaddr=192.168.1.25
    mem_lpae=1
    mem_reserve=512M
    mtdparts=mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)
    name_fdt=uImage-k2e-evm.dtb
    name_fs=arago-console-image-k2e-evm.cpio.gz
    name_kern=uImage-keystone-evm.bin
    name_mon=skern-k2e-evm.bin
    name_ubi=k2e-evm-ubifs.ubi
    name_uboot=u-boot-spi-k2e-evm.gph
    name_uinitrd=uinitrd.bin
    nfs_options=v3,tcp,rsize=4096,wsize=4096
    nfs_root=/usr/loacl/k2e_fs/targetNFS
    no_post=1
    run_kern=bootm ${addr_kern} ${addr_uinitrd} ${addr_fdt}
    run_mon=mon_install ${addr_mon}
    serverip=192.168.1.20
    set_fs_none=setenv addr_uinitrd -
    set_fs_uinitrd=setenv addr_uinitrd ${addr_fs}
    stderr=serial
    stdin=serial
    stdout=serial
    tftp_root=/tftpboot/images_k2e
    ver=U-Boot 2013.01 (Oct 02 2014 - 01:27:46)
    
    Environment size: 3504/262140 bytes
    K2E EVM # ping 192.168.1.20
    Using K2E_EMAC0 device
    host 192.168.1.20 is alive
    K2E EVM # boot
    BOOTP broadcast 1
    BOOTP broadcast 2
    BOOTP broadcast 3
    BOOTP broadcast 4
    BOOTP broadcast 5
    
    Abort
    K2E EVM # ping 192.168.1.20
    *** ERROR: `ipaddr' not set
    ping failed; host 192.168.1.20 is not alive
    K2E EVM # printenv
    addr_fdt=0x87000000
    addr_fs=0x82000000
    addr_kern=0x88000000
    addr_mon=0x0c140000
    addr_secdb_key=0xc000000
    addr_ubi=0x82000000
    addr_uboot=0x87000000
    addr_uinitrd=-
    args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1
    args_hdd=setenv bootargs ${bootargs} rw root=/dev/sda1
    args_net=setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp
    args_ramfs=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0 initrd=0x802000000,9M
    args_ubi=setenv bootargs ${bootargs} rootfstype=ubifs root=ubi0:rootfs rootflags=sync rw ubi.mtd=2,2048
    args_uinitrd=setenv bootargs ${bootargs} rdinit=/sbin/init rw root=/dev/ram0
    baudrate=115200
    boot=net
    bootargs=console=ttyS0,115200n8 rootwait=1 rootfstype=nfs root=/dev/nfs rw nfsroot=192.168.1.20:/usr/loacl/k2e_fs/targetNFS,v3,tcp,rsize=4096,wsize=4096 ip=dhcp
    bootcmd=run init_${boot} get_fdt_${boot} get_mon_${boot} get_kern_${boot} run_mon run_kern
    bootdelay=3
    bootfile=uImage
    burn_ubi=nand erase.part ubifs; nand write ${addr_ubi} ubifs ${filesize}
    burn_uboot=sf probe; sf erase 0 0x100000; sf write ${addr_uboot} 0 ${filesize}
    ethact=K2E_EMAC0
    ethaddr=7c:66:9d:ff:d2:f4
    fdt_high=0xffffffff
    get_fdt_hdd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_net=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ramfs=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fdt_ubi=ubifsload ${addr_fdt} ${name_fdt}
    get_fdt_uinitrd=dhcp ${addr_fdt} ${tftp_root}/${name_fdt}
    get_fs_ramfs=dhcp ${addr_fs} ${tftp_root}/${name_fs}
    get_fs_uinitrd=dhcp ${addr_fs} ${tftp_root}/${name_uinitrd}
    get_kern_hdd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_net=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ramfs=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_kern_ubi=ubifsload ${addr_kern} ${name_kern}
    get_kern_uinitrd=dhcp ${addr_kern} ${tftp_root}/${name_kern}
    get_mon_hdd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_net=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ramfs=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_mon_ubi=ubifsload ${addr_mon} ${name_mon}
    get_mon_uinitrd=dhcp ${addr_mon} ${tftp_root}/${name_mon}
    get_ubi_net=dhcp ${addr_ubi} ${tftp_root}/${name_ubi}
    get_uboot_net=dhcp ${addr_uboot} ${tftp_root}/${name_uboot}
    has_mdio=1
    init_hdd=run set_fs_none args_all args_hdd
    init_net=run set_fs_none args_all args_net
    init_ramfs=run set_fs_none args_all args_ramfs get_fs_ramfs
    init_ubi=run set_fs_none args_all args_ubi; ubi part ubifs; ubifsmount boot;ubifsload ${addr_secdb_key} securedb.key.bin;
    init_uinitrd=run set_fs_uinitrd args_all args_uinitrd get_fs_uinitrd
    initrd_high=0xffffffff
    ipaddr=192.168.1.25
    mem_lpae=1
    mem_reserve=512M
    mtdparts=mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,-(ubifs)
    name_fdt=uImage-k2e-evm.dtb
    name_fs=arago-console-image-k2e-evm.cpio.gz
    name_kern=uImage-keystone-evm.bin
    name_mon=skern-k2e-evm.bin
    name_ubi=k2e-evm-ubifs.ubi
    name_uboot=u-boot-spi-k2e-evm.gph
    name_uinitrd=uinitrd.bin
    nfs_options=v3,tcp,rsize=4096,wsize=4096
    nfs_root=/usr/loacl/k2e_fs/targetNFS
    no_post=1
    run_kern=bootm ${addr_kern} ${addr_uinitrd} ${addr_fdt}
    run_mon=mon_install ${addr_mon}
    serverip=192.168.1.20
    set_fs_none=setenv addr_uinitrd -
    set_fs_uinitrd=setenv addr_uinitrd ${addr_fs}
    stderr=serial
    stdin=serial
    stdout=serial
    tftp_root=/tftpboot/images_k2e
    ver=U-Boot 2013.01 (Oct 02 2014 - 01:27:46)
    
    Environment size: 3504/262140 bytes
    K2E EVM # setenv ipaddr 192.168.1.25
    K2E EVM # ping 192.168.1.20
    Using K2E_EMAC0 device
    host 192.168.1.20 is alive
    K2E EVM #
    

  • It seems, you don't the DHCP server running, so can you please use the following commands. (its just use 'tftpboot' instead of 'dhcp')

    I'm able to boot my board with the following commands.

    K2HK EVM # env default -f -a
    K2HK EVM # setenv serverip 192.168.2.29
    K2HK EVM # setenv ipaddr 192.168.2.35
    K2HK EVM # setenv boot net
    K2HK EVM # setenv nfs_root /usr/local/k2e_fs
    K2HK EVM # setenv tftp_root images_k2e

    K2HK EVM # setenv get_kern_net tftpboot ${addr_kern} ${tftp_root}/${name_kern}
    K2HK EVM # setenv get_mon_net tftpboot ${addr_mon} ${tftp_root}/${name_mon}
    K2HK EVM # setenv get_fdt_net tftpboot ${addr_fdt} ${tftp_root}/${name_fdt}
    K2HK EVM # setenv args_net 'setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=192.168.2.35:192.168.2.29:192.168.2.1:255.255.255.0::eth0:off'
    K2HK EVM # saveenv
    K2HK EVM # reset
  • Sorry for reply so late. I have tried but nothing changed. Should I re-program my u-boot by CCS? I think there is something wrong with DHPC of the u-boot on my board.
  • How did you connect the ethernet cable on your board and PC ?

    I have used these commands and able to boot.

    I just connected the Ethernet cable from EVM board to PC.
    I set IP address manually (statically) as 192.168.2.29 in PC and used IP address 192.168.2.35 in EVM target board
    Then I typed the following commands in u-boot of EVM.


    K2HK EVM # env default -f -a
    K2HK EVM # setenv serverip 192.168.2.29
    K2HK EVM # setenv ipaddr 192.168.2.35
    K2HK EVM # setenv boot net
    K2HK EVM # setenv nfs_root /usr/local/k2e_fs
    K2HK EVM # setenv tftp_root images_k2e

    K2HK EVM # setenv get_kern_net tftpboot ${addr_kern} ${tftp_root}/${name_kern}
    K2HK EVM # setenv get_mon_net tftpboot ${addr_mon} ${tftp_root}/${name_mon}
    K2HK EVM # setenv get_fdt_net tftpboot ${addr_fdt} ${tftp_root}/${name_fdt}
    K2HK EVM # setenv args_net 'setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=192.168.2.35:192.168.2.29:192.168.2.1:255.255.255.0::eth0:off'
    K2HK EVM # saveenv
    K2HK EVM # reset


    Please share the output of each and every command.