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.

EVMK2H: Loading latest pre-built UBOOT and Linux to EVMK2H flash

Part Number: EVMK2H

I am trying to update the UBOOT and Linux on an EVMK2HX module (stored in flash) to the pre-built files in the current version (06_00_00_07) and then upgrade the 2 GB EVMK2HX memory module to an 8 GB one.  There appear to be a number of ways to do this, which seem to be somewhat inconsistent( to a newbie).

  1. The following steps for downloading the 06_00_00_07 SDK provided UBOOT image to NOR flash were gleaned from the documentation (mostly section 3.1.1.2.5). Are they correct?
    1. Setup a TFTP server on the local network, connect the EVMK2HX Ethernet and USB-to-Serial cables, set the boot switches to 0001, and boot the module.
    2. At the prompt on the serial connection, type:
    • printenv                               (see EVs just to know what they are)
    • env default –f –a
    • saveenv
    • setenv server_ip <TFTP Server IP address>
    • setenv tftp_root <TFTP root directory where the UBI image is copied to>
    • setenv name_uboot u-boot-spi.gph
    • run get_uboot_net
    • run burn_uboot_spi

 

2. Can the module be rebooted to see if the UBOOT load was successful, or should the Linux image be loaded prior to rebooting?

3. The 06_00_00_07 SDK Getting Started Guide section 1.1.4.2 indicates that the Linux image is written as a single ubi file(named tisdk-server-rootfs-image-k2h-evm.ubi), however a single tar.xz file is provided instead. How is that file converted into a ubi file that can be downloaded?

4. The following steps for downloading the 06_00_00_07 SDK provided Linux ubi file were gleaned from section 3.4 and section 3.3.6 question 3:

    1. Setup a TFTP server on the local network, connect the EVMK2HX Ethernet and USB-to-Serial cables, set the boot switches to 0001, and boot the module. (Skip this step if the answer to question 2 is to load Linux before rebooting)
    2. At the prompt on the serial connection, type:
      • setenv server_ip <TFTP Server IP address>
      • setenv name_ubi <the UBI image name>
      • setenv tftp_root <TFTP root directory where the UBI image is copied to>
      • run get_ubi_net
      • run burn_ubi
      • setenv boot ubi
      • saveenv
      • boot

c. Test the changes by typing:

      • bootmode #2
      • reboot

 5. If the EVMK2HX module does not boot after the above, what is the recovery mechanism? … Use the UART and BMC mechanism described by     board-support/u-boot-2019 … /board/ti/ks2_evm/README

Just trying to make sure the steps are correct and a recovery path is known.

Thanks,

- bob g.

  • 6064524 said:
    3. The 06_00_00_07 SDK Getting Started Guide section 1.1.4.2 indicates that the Linux image is written as a single ubi file(named tisdk-server-rootfs-image-k2h-evm.ubi), however a single tar.xz file is provided instead. How is that file converted into a ubi file that can be downloaded?

    Having installed ti-processor-sdk-linux-k2hk-evm-06.00.00.07 confirm that there is no tisdk-server-rootfs-image-k2hk-evm.ubi / tisdk-server-rootfs-image-k2h-evm.ubi file supplied in the installation, even though listed in the 1.1.4.2. Files Provided section of the getting started guide.

    [Where the instructions sometimes use the filename tisdk-server-rootfs-image-k2hk-evm.ubi and othe times tisdk-server-rootfs-image-k2h-evm.ubi]

    The installation does contain a bin/create-ubifs.sh script which can be used to convert a file system to a .ubi file.

    Having extracted the contents of the tisdk-server-rootfs-image-k2hk-evm.tar.xz archive to a tisdk-server-rootfs-image-k2hk-evm directory tried running the create-ubifs.sh script which failed reporting:

    mr_halfword@Haswell-Ubuntu:~/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/filesystem$ sudo ../bin/create-ubifs.sh tisdk-server-rootfs-image-k2hk-evm
    
    Parameters:
        image_rootfs_dir ..... "tisdk-server-rootfs-image-k2hk-evm"
        image_name_prefix .... "/home/mr_halfword/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/filesystem/custom-k2hk-evm-rootfs"
        vol_name ............. "k2hk-evm-rootfs"
    
    mkfs.ubifs
    	root:         tisdk-server-rootfs-image-k2hk-evm/
    	min_io_size:  2048
    	leb_size:     126976
    	max_leb_cnt:  5600
    	output:       /home/mr_halfword/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/filesystem/custom-k2hk-evm-rootfs.ubifs
    	jrn_size:     8388608
    	reserved:     0
    	compr:        lzo
    	keyhash:      r5
    	fanout:       8
    	orph_lebs:    1
    	space_fixup:  1
    Error: max_leb_cnt too low (10995 needed)
    
    Error: mkfs.ubifs failed!

    The "Error: max_leb_cnt too low (10995 needed)" was due to the "-c, --max-leb-cnt=COUNT  maximum logical erase block count" mkfs.ubifs parameter which is hard coded in the bin/create-ubifs.sh script being too small for the size of the file system in tisdk-server-rootfs-image-k2hk-evm.tar.xz.

    Based on the error made a modification to the bin/create-ubifs.sh script to increase the max-leb-cnt from 5600 to 10995:

    MKUBIFS_ARGS="-F -m 2048 -e 126976 -c 10995"
    #MKUBIFS_ARGS="-F -m 2048 -e 126976 -c 5600"

    With this change was able to create the tisdk-server-rootfs-image-k2hk-evm.ubi file:

    mr_halfword@Haswell-Ubuntu:~/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/filesystem$ sudo ../bin/create-ubifs.sh tisdk-server-rootfs-image-k2hk-evm -o tisdk-server-rootfs-image-k2hk-evm
    
    Parameters:
        image_rootfs_dir ..... "tisdk-server-rootfs-image-k2hk-evm"
        image_name_prefix .... "tisdk-server-rootfs-image-k2hk-evm"
        vol_name ............. "k2hk-evm-rootfs"
    
    mkfs.ubifs
    	root:         tisdk-server-rootfs-image-k2hk-evm/
    	min_io_size:  2048
    	leb_size:     126976
    	max_leb_cnt:  10995
    	output:       tisdk-server-rootfs-image-k2hk-evm.ubifs
    	jrn_size:     8388608
    	reserved:     0
    	compr:        lzo
    	keyhash:      r5
    	fanout:       8
    	orph_lebs:    1
    	space_fixup:  1
    	super lebs:   1
    	master lebs:  2
    	log_lebs:     5
    	lpt_lebs:     2
    	orph_lebs:    1
    	main_lebs:    10984
    	gc lebs:      1
    	index lebs:   223
    	leb_cnt:      10995
    	UUID:         67BAC2BC-C75B-4785-A512-934BB642EE48
    Success!
    ubinize: LEB size:                  126976
    ubinize: PEB size:                  131072
    ubinize: min. I/O size:             2048
    ubinize: sub-page size:             2048
    ubinize: VID offset:                2048
    ubinize: data offset:               4096
    ubinize: UBI image sequence number: 1318322249
    ubinize: loaded the ini-file "tisdk-server-rootfs-image-k2hk-evm.ubinize.cfg"
    ubinize: count of sections: 1
    
    ubinize: parsing section "ubifs"
    ubinize: mode=ubi, keep parsing
    ubinize: volume type: dynamic
    ubinize: volume ID: 0
    ubinize: volume size was not specified in section "ubifs", assume minimum to fit image "tisdk-server-rootfs-image-k2hk-evm.ubifs"1396101120 bytes (1.3 GiB)
    ubinize: volume name: k2hk-evm-rootfs
    ubinize: volume alignment: 1
    ubinize: autoresize flags found
    ubinize: adding volume 0
    ubinize: writing volume 0
    ubinize: image file: tisdk-server-rootfs-image-k2hk-evm.ubifs
    
    ubinize: writing layout volume
    ubinize: done
    
    Success! The UBI image is available at "tisdk-server-rootfs-image-k2hk-evm.ubi"

    However, the size of the tisdk-server-rootfs-image-k2hk-evm.ubi was 1.4 GB which exceeds the 512 MB size of the NAND flash on the EVMK2H.

    In previous versions of the ti-processor-sdk-linux-k2hk-evm there was confusion when the installation supplied a ubi file which was too large for the EVMK2H NAND flash, which then resulted in "NAND write: Size exceeds partition or device limit" errors when attempted to program the image. Suspect that is why the tisdk-server-rootfs-image-k2hk-evm.ubi is not in the installation.

  • Chester Gillon said:
    However, the size of the tisdk-server-rootfs-image-k2hk-evm.ubi was 1.4 GB which exceeds the 512 MB size of the NAND flash on the EVMK2H.

    Given that the options are:

    1. Get the EVMK2H to NFS mount the contents of tisdk-server-rootfs-image-k2hk-evm.tar.xz file system, where the file system is hosted on a PC. The setup.sh script in the root of the ti-processor-sdk-linux-k2hk-evm-06.00.00.07 installation can do all the setup steps required for that, and when prompted select NFS as the secondary boot. I was able to get that to work on a Ubuntu 18.04.3 LTS host. The setup.sh script can also program uboot into NOR flash, rather than having to use the program_evm.js script as suggested in 1.1.4.5. Programming the bin files.

    2. Program the smaller arago-base-tisdk-image-k2hk-evm.ubi into NAND flash, which should take 166 MB out of the 512 MB NAND flash. This smaller image doesn't contain the compilers and some other tools which are in the larger tisdk-server-rootfs-image-k2hk-evm.tar.xz image.

    The setup.sh script has the option to program the NAND flash with a ubi image, but when I tried it the Linux Kernel boot from NAND flash failed - need to investigate.

    3. Create a custom file system ubi image to be programmed into flash, but selecting the required tools for the target.

  • Chester Gillon said:
    Having installed ti-processor-sdk-linux-k2hk-evm-06.00.00.07 confirm that there is no tisdk-server-rootfs-image-k2hk-evm.ubi / tisdk-server-rootfs-image-k2h-evm.ubi file supplied in the installation, even though listed in the 1.1.4.2. Files Provided section of the getting started guide.

    Having perform a clean re-installation of ti-processor-sdk-linux-k2hk-evm-06.00.00.07 to discard the above changes, I found the absence of the filesystem/tisdk-server-rootfs-image-k2hk-evm.ubi in the installation causes the setup.sh script to abort with the following when it is attempting to ask which ubi file to program into flash:

    Would you like to update the UBI filesystem on the board? (y/n)
    [ y ] 
    Available ubi images in /tftpboot:
        arago-base-tisdk-image-k2hk-evm.ubi
        arago-tiny-image-k2hk-evm.ubi
        tisdk-docker-rootfs-image-k2hk-evm.ubi
    
    ./bin/setup-uboot-env.sh: 74: shift: can't shift that many
    Failed setup, aborting..

    The complete output from the setup.sh run is attached.

    Looking at the bin/setup-uboot-env.sh script which failed the problem is that the script expects the default image tisdk-server-rootfs-image-k2hk-evm.ubi to be present, but since that image isn't present the script then crashes, since at the following line the ubifsimagedefault variable is not set:

    prompt_feedback "Which ubi image do you want to boot?" ubifsimage $ubifsimagedefault

    Thus, in the absence of a valid filesystem/tisdk-server-rootfs-image-k2hk-evm.ubi a work-around to allow the setup.sh script to run to attempt to program other UBI images to to create an empty file with:

    touch filesystem/tisdk-server-rootfs-image-k2hk-evm.ubi

    setup_ubi_boot.log
    -------------------------------------------------------------------------------
    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, Ubuntu 14.04, or 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.
    
    User 'mr_halfword' 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)
    [ /home/mr_halfword/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/targetNFS ] --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    This step will extract the target filesystem to /home/mr_halfword/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/targetNFS
    
    Note! This command requires you to have administrator priviliges (sudo access) 
    on your host.
    Press return to continue
    Multiple filesystems found.
            1:tisdk-server-rootfs-image-k2hk-evm.tar.xz
            2:tisdk-docker-rootfs-image-k2hk-evm.tar.xz
    
    Enter Number of rootfs Tarball: [1] 
    
    Successfully extracted tisdk-server-rootfs-image-k2hk-evm.tar.xz to /home/mr_halfword/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/targetNFS
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------
    This step will set up the SDK to install binaries in to:
        /home/mr_halfword/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/targetNFS/home/root/k2hk-evm
    
    The files will be available from /home/root/k2hk-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 continueRules.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/home/mr_halfword/ti/ti-processor-sdk-linux-k2hk-evm-06.00.00.07/targetNFS already NFS exported, skipping..
    
    Stopping nfs-kernel-server (via systemctl): nfs-kernel-server.service.
    Starting nfs-kernel-server (via systemctl): nfs-kernel-server.service.
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    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..
    
    Successfully copied *Image-k2hk-evm.bin to tftp root directory /tftpboot
    
    Successfully copied keystone-k2hk-evm.dtb to tftp root directory /tftpboot
    
    Successfully copied keystone-k2hk-evm-k2hk-evm.dtb to tftp root directory /tftpboot
    ls: cannot access '*.dtbo': No such file or directory
    
    Successfully copied u-boot-spi-k2hk-evm.gph to tftp root directory /tftpboot
    
    Successfully copied skern-k2hk.bin to tftp root directory /tftpboot
    
    Successfully copied k2-fw-initrd.cpio.gz to tftp root directory /tftpboot
    
    /etc/xinetd.d/tftp already exists..
    /tftpboot already exported for TFTP, skipping..
    
    Restarting tftp server
    Stopping xinetd (via systemctl): xinetd.service.
    Starting xinetd (via systemctl): xinetd.service.
    --------------------------------------------------------------------------------
    
    --------------------------------------------------------------------------------"
    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 ] 
    Copied existing /home/mr_halfword/.minirc.dfl to /home/mr_halfword/.minirc.dfl.old
    
    Configuration saved to /home/mr_halfword/.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 
    
    ls: cannot access './bin/../filesystem/tisdk-server-rootfs-image-k2hk-evm.ubi': No such file or directory
    basename: missing operand
    Try 'basename --help' for more information.
    
    Successfully copied arago-base-tisdk-image-k2hk-evm.ubi to tftp root directory /tftpboot
    
    Successfully copied arago-tiny-image-k2hk-evm.ubi to tftp root directory /tftpboot
    
    Successfully copied tisdk-docker-rootfs-image-k2hk-evm.ubi to tftp root directory /tftpboot
    --------------------------------------------------------------------------------
    Would you like to update U-boot on the board? (y/n)
    [ y ] 
    Would you like to update the UBI filesystem on the board? (y/n)
    [ y ] 
    Available ubi images in /tftpboot:
        arago-base-tisdk-image-k2hk-evm.ubi
        arago-tiny-image-k2hk-evm.ubi
        tisdk-docker-rootfs-image-k2hk-evm.ubi
    
    ./bin/setup-uboot-env.sh: 74: shift: can't shift that many
    Failed setup, aborting..
    

  • Chester Gillon said:
    2. Program the smaller arago-base-tisdk-image-k2hk-evm.ubi into NAND flash, which should take 166 MB out of the 512 MB NAND flash. This smaller image doesn't contain the compilers and some other tools which are in the larger tisdk-server-rootfs-image-k2hk-evm.tar.xz image.

    The setup.sh script has the option to program the NAND flash with a ubi image, but when I tried it the Linux Kernel boot from NAND flash failed - need to investigate.

    The attached file setup_ubi_boot_empty_default.log is the output from the setup.sh when attempted to program the arago-base-tisdk-image-k2hk-evm.ubi from the ti-processor-sdk-linux-k2hk-evm-06.00.00.07 installation.

    During the boot the first error is the /boot/k2-fw-initrd.cpio.gz file can't be loaded:

    Loading file '/boot/k2-fw-initrd.cpio.gz' to addr 0x88080000...
    ** File not found /boot/k2-fw-initrd.cpio.gz **

    The second error is that the mtd ubifs can't be opened:

        2.752004] UBI error: cannot open mtd ubifs, error -2

    Which then results in the the Linux boot halting with:

    [    2.789205] VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0) error -19
    [    2.797255] Please append a correct "root=" boot option; here are the availale partitions:

    I removed the first error by updating the arago-base-tisdk-image-k2hk-evm.ubi to contain the boot/k2-fw-initrd.cpio.gz file, but Linux still failed to boot with the "UBI error: cannot open mtd ubifs, error -2", as per the attachment setup_ubi_base_k2-fw-initrd.log.

    Not sure if I have made a mistake, or there is an error in the ti-processor-sdk-linux-k2hk-evm-06.00.00.07 scripts or file systems.

    The steps to update the arago-base-tisdk-image-k2hk-evm.ubi to include the boot/k2-fw-initrd.cpio.gz were:

    a. Extract the filesystem/arago-base-tisdk-image-k2hk-evm.tar.xz archive.

    b. Copy the firmware file from the targetNFS directory:

    cp -p targetNFS/boot/k2-fw-initrd.cpio.gz filesystem/arago-base-tisdk-image-k2hk-evm/boot/

    c. Recreate the arago-base-tisdk-image-k2hk-evm.ubi file with:

    sudo ../bin/create-ubifs.sh arago-base-tisdk-image-k2hk-evm -o arago-base-tisdk-image-k2hk-evm
    [sudo] password for mr_halfword: 
    
    Parameters:
        image_rootfs_dir ..... "arago-base-tisdk-image-k2hk-evm"
        image_name_prefix .... "arago-base-tisdk-image-k2hk-evm"
        vol_name ............. "k2hk-evm-rootfs"
    
    mkfs.ubifs
    	root:         arago-base-tisdk-image-k2hk-evm/
    	min_io_size:  2048
    	leb_size:     126976
    	max_leb_cnt:  5600
    	output:       arago-base-tisdk-image-k2hk-evm.ubifs
    	jrn_size:     8388608
    	reserved:     0
    	compr:        lzo
    	keyhash:      r5
    	fanout:       8
    	orph_lebs:    1
    	space_fixup:  1
    	super lebs:   1
    	master lebs:  2
    	log_lebs:     5
    	lpt_lebs:     2
    	orph_lebs:    1
    	main_lebs:    1246
    	gc lebs:      1
    	index lebs:   22
    	leb_cnt:      1257
    	UUID:         96F33220-88C7-4F2F-90AC-927304889746
    Success!
    ubinize: LEB size:                  126976
    ubinize: PEB size:                  131072
    ubinize: min. I/O size:             2048
    ubinize: sub-page size:             2048
    ubinize: VID offset:                2048
    ubinize: data offset:               4096
    ubinize: UBI image sequence number: 395364800
    ubinize: loaded the ini-file "arago-base-tisdk-image-k2hk-evm.ubinize.cfg"
    ubinize: count of sections: 1
    
    ubinize: parsing section "ubifs"
    ubinize: mode=ubi, keep parsing
    ubinize: volume type: dynamic
    ubinize: volume ID: 0
    ubinize: volume size was not specified in section "ubifs", assume minimum to fit image "arago-base-tisdk-image-k2hk-evm.ubifs"159608832 bytes (152.2 MiB)
    ubinize: volume name: k2hk-evm-rootfs
    ubinize: volume alignment: 1
    ubinize: autoresize flags found
    ubinize: adding volume 0
    ubinize: writing volume 0
    ubinize: image file: arago-base-tisdk-image-k2hk-evm.ubifs
    
    ubinize: writing layout volume
    ubinize: done
    
    Success! The UBI image is available at "arago-base-tisdk-image-k2hk-evm.ubi"

    setup_ubi_boot_empty_default.logsetup_ubi_base_k2-fw-initrd.log

  • Hi, Bob,

    For your questions:

    1) Setting dip switch to 0001 will set to NoBoot mode in which you won't get the u-boot prompt to do the rest of your steps. Please see the dip switch settings in section 6.3.7.3.1 of the K2H EVM Hardware Setup Guide:

    http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/How_to_Guides_Hardware_Setup_with_CCS.html#evmk2h-hardware-setup-guide

    In Program EVM User's Guide, under Verifying CCS Connection section, it has the following context and specifically says "Set the boot mode to SPI Little Endian Boot"

    Due to hardware NAND issue, EVM of certain revisions need to use alternative programming method:

    EVM Revision NAND Known Issue Programming Method
    Rev 3.0 Yes Alternative U-Boot command
    Rev 2.0 Yes Alternative U-Boot command
    Rev 1.x No Program_evm

    For Rev 2.0 and 3.0 EVM using alternative U-Boot command to program NAND, please follow the steps below: Set the boot mode to SPI Little Endian boot mode

    Your steps are correct except the boot mode should not be noBoot, but ARM SPI.

    2) Once the command "run burn_uboot_spi" is completed, the next reboot or power cycle will run the new uboot. You should reset the u-boot env variables with "env default -f -a" with the new settings and saveenv it.

    3) 4 ubi files are provided in Linux ProcSDK.

         $ ~/work/ti-processor-sdk-linux-k2hk-evm-05.02.00.10/filesystem$ la *.ubi
            arago-base-tisdk-image-k2hk-evm.ubi            tisdk-docker-rootfs-image-k2hk-evm.ubi
            arago-tiny-image-k2hk-evm.ubi                       tisdk-server-rootfs-image-k2hk-evm.ubi

    Be aware of the ubi file size. the tisdk-server-rootfs ubi file is definitely too large to fit in the NAND. arago-base-tisdk-image may have a chance. I would suggest you use Network boot. Please see Section 3.1.1.4.1.6 (Booting Linux from the Network) in U-boot User's Guide

    http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components_U-Boot.html#network-wired-or-usb-client

    Since it use the NFS file system, so untar the tisdk-server-rootfs.tar.xz file to the nfs mount point. There won't be any file size limit.

    4) The step to program .ubi file to NAND is the same as programming .gph file to NOR except one uses get_ubi_net/burn_ubi and the other get_uboot_net/burn_uboot_spi.

       I don't think u-boot takes reboot command. The reboot command should be entered in BMC console which is the 2nd port (usually the higher port) when you plug in the USB cable to PC.

    5) I suspect the EVM doesn't boot is because the dip switch setting isn't set to ARM SPI boot. In case the u-boot in NOR is trashed, yes, follow either methods described in the README file should be able to bring up the u-boot, but you still need to download the gph file and burn_uboot_spi to program the NOR.

    Hope these answer your questions.

    Rex

       

  • () Hi Chester, Rex,

       These resolved the problem.  I was able to download the latest Uboot and then boot the full featured Linux (tisdk-server-rootfs-image-k2hk-evm.tar.xz) from nfs.  Storing Linux on the board is preferable and I will likely try that shortly, but get development activities can get moving right now via the nfs Linux.  I will be looking into using the arago-base-tisdk-image-k2hk-evm.ubi  image, rebuilding as described above by Chester.

    As a side note, after getting the full image (tisdk-server-rootfs-image-k2hk-evm.tar.xz) to load via nfs, I replaced the 2 GB SODIMM with an 8 GB SODIMM (Micron P/N MT18KSF1G72HZ-1G6P1) and Linux sees full memory range.  Upgrading the memory size appears to be as simple as replacing the memory module and using a newer version of the SDK (06_00_00_07 in this case).

    Thank you for your help!