Tool/software: Linux
Hi experts,
I have tried a couple of MCS versions:
ti-processor-sdk-linux-rt-k2hk-evm-05.02.00.10-Linux-x86-Install.bin
ti-processor-sdk-linux-rt-k2hk-evm-05.00.00.15-Linux-x86-Install.bin
The evaluation board is new (I haven't uboot updated and -if it is possible- I prefeir keep it).
The tftpboot requires uImage.bin file not present, then I have done a script for convert the output files (skern-k2hk and linux Image) built using your setup.sh script to tried to boot.
I suppose the linux entry point & load address was both set to 0x80008000 (I have also tried several address: 0x88000000, 0x0C000000, etc) with any success.
I use keystone-k2hk-evm.dtb built with your script as to as downloaded in 0x87000000 address (you can see the following script).
#!/bin/bash
esc=`echo -en "\033"`
# Set colors
cc_red="${esc}[0;31m"
cc_green="${esc}[0;32m"
cc_yellow="${esc}[0;33m"
cc_blue="${esc}[0;34m"
cc_normal=`echo -en "${esc}[m\017"`
function mkImages()
{
DEST_DIR=$PWD
BASE=$PWD
UBOOT_BASE=$BASE/board-support/u-boot-*
LINUX_BASE=$BASE/board-support/linux-rt-4.14.79+gitAUTOINC+28d73230da-g28d73230da
LOAD_ADDRESS=0x80008000
#LOAD_ADDRESS=0x88000000
#LOAD_ADDRESS=0xC0008000
#LOAD_ADDRESS=0xC0003000
#LOAD_ADDRESS=0x0C000000
#LOAD_ADDRESS=0x80008000
#LOAD_ADDRESS=0x00000000
ENTRY_POINT=$LOAD_ADDRESS
case "$1" in
linux-dtbs)
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@ Linux DTB @@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
LOAD_ADDRESS=0x87000000
ENTRY_POINT=$LOAD_ADDRESS
INFILE=$LINUX_BASE/arch/arm/boot/dts/keystone-k2hk-evm.dtb
OUTFILE=linux_dtb.img
$UBOOT_BASE/tools/mkimage -A arm -O linux -T firmware -C none -n "Linux DTB" -a $LOAD_ADDRESS -e $ENTRY_POINT -d $INFILE ulinux-DRSP_dtb.img
cp $INFILE $OUTFILE
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
;;
u-boot-dtb)
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@ Uboot DTB @@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
INFILE=./board-support/u-boot-*/u-boot.dtb
#INFILE=./board-support/u-boot-*/arch/arm/dts/keystone-k2hk-evm.dtb
OUTFILE=u-boot_dtb.img
cp $INFILE $OUTFILE
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
;;
u-boot)
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@@ U-Boot @@@@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
LOAD_ADDRESS=0x0c000000
ENTRY_POINT=0x00000000
INFILE=./board-support/u-boot-*/u-boot
OUTFILE=u-boot.img
$UBOOT_BASE/tools/mkimage -A arm -O u-boot -T firmware -C none -n "UBoot" -a $LOAD_ADDRESS -e $ENTRY_POINT -d $INFILE $OUTFILE
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
;;
boot-monitor)
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@ Boot Monitor @@@@@@@@@@@@@@@@@@@@${cc_normal}"
LOAD_ADDRESS=0c5f0000
ENTRY_POINT=$LOAD_ADDRESS
INFILE=./board-support/boot-monitor-*/skern-k2hk
OUTFILE=skern.img
$UBOOT_BASE/tools/mkimage -A arm -O linux -T firmware -C none -n "Boot Monitor" -a $LOAD_ADDRESS -e $ENTRY_POINT -d $INFILE $OUTFILE
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
;;
linux)
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@@@ Linux @@@@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
INFILE="$LINUX_BASE/arch/arm/boot/Image"
OUTFILE=uImage.img
$UBOOT_BASE/tools/mkimage -A arm -O linux -T kernel -C none -n "Linux kernel" -a $LOAD_ADDRESS -e $ENTRY_POINT -d $INFILE $OUTFILE
echo "${cc_red}@@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@${cc_normal}"
;;
*)
ls -lasrt
cp *.img /tftpboot
return
;;
esac
}
mkImages "linux-dtbs"
mkImages "linux"
mkImages "u-boot"
mkImages "u-boot-spl"
mkImages "boot-monitor"
mkImages "xxxxx"
Output log:
@@@@@@@@@@@@@@@@@@@@@ Linux DTB @@@@@@@@@@@@@@@@@@@@@@
Image Name: Linux DTB
Created: Mon Feb 11 21:01:51 2019
Image Type: ARM Linux Firmware (uncompressed)
Data Size: 39302 Bytes = 38.38 KiB = 0.04 MiB
Load Address: 87000000
Entry Point: 87000000
@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@ Linux @@@@@@@@@@@@@@@@@@@@@@@@
Image Name: Linux kernel
Created: Mon Feb 11 21:01:51 2019
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 17059840 Bytes = 16660.00 KiB = 16.27 MiB
Load Address: 88000000
Entry Point: 88000000
@@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@ U-Boot @@@@@@@@@@@@@@@@@@@@@@@@
Image Name: UBoot
Created: Mon Feb 11 21:01:52 2019
Image Type: ARM U-Boot Firmware (uncompressed)
Data Size: 5039392 Bytes = 4921.28 KiB = 4.81 MiB
Load Address: 0c000000
Entry Point: 00000000
@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@ Uboot DTB @@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@ Boot Monitor @@@@@@@@@@@@@@@@@@@@
Image Name: Boot Monitor
Created: Mon Feb 11 21:01:52 2019
Image Type: ARM Linux Firmware (uncompressed)
Data Size: 32768 Bytes = 32.00 KiB = 0.03 MiB
Load Address: 0c5f0000
Entry Point: 0c5f0000
@@@@@@@@@@@@@@@@@@@@@@ End @@@@@@@@@@@@@@@@@@@@@@@@@@@
28 -rwxr-xr-x 1 inddaia innodesi 25973 Dec 16 10:31 Makefile
4 drwxr-xr-x 24 inddaia innodesi 4096 Feb 11 20:12 ..
4 -rw-rw-r-- 1 inddaia innodesi 1538 Feb 11 20:45 Rules.make
16 -rwxr-xr-x 1 inddaia innodesi 16199 Feb 11 21:01 setup_mio.sh
40 -rw-r--r-- 1 inddaia innodesi 39366 Feb 11 21:01 ulinux_dtb.img
40 -rw-r--r-- 1 inddaia innodesi 39302 Feb 11 21:01 linux_dtb.img
16664 -rw-r--r-- 1 inddaia innodesi 17059904 Feb 11 21:01 uImage.img
4924 -rw-r--r-- 1 inddaia innodesi 5039456 Feb 11 21:01 u-bootimg
28 -rw-r--r-- 1 inddaia innodesi 27955 Feb 11 21:01 u-boot_dtb.img
36 -rw-r--r-- 1 inddaia innodesi 32832 Feb 11 21:01 skern.img
4 drwxr-xr-x 8 inddaia innodesi 4096 Feb 11 21:01 .
After that I copy the img files in /tftpboot directory.
Target Log:
TCI6638 EVM # setenv boot net
TCI6638 EVM # setenv nfs_root nfs_root=/export/targetNFS/
TCI6638 EVM # seten vargs_net 'setenv bootargs earlyprintk \${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=\${serverip}:\${nfs_root},\${nfs_options}ip=dhcp'
TCI6638 EVM # setenv bootargs 'earlyprintk debug console=ttyS0,115200n8 ip=dhcp rootwait=1 root=/dev/nfs nfsroot=\${serverip}:\${nfs_options}'
TCI6638 EVM # setenv bootcmd run init_\${boot} get_fdt_\${boot} get_kern_\${boot} run_kern
TCI6638 EVM # setenv tftpboot_root /tftpboot
TCI6638 EVM # setenv serverip 192.168.99.24
TCI6638 EVM # setenv ipaddr 192.168.99.23
TCI6638 EVM # setenv name_fdt tftpboot/keystone-k2hk-evm.dtb
TCI6638 EVM # setenv name_kern tftpboot/uImage.img
TCI6638 EVM # setenv name_mon tftpboot/skern.img
TCI6638 EVM # boot
BOOTP broadcast 1
*** Unhandled DHCP Option in OFFER/ACK: 44
*** Unhandled DHCP Option in OFFER/ACK: 44
DHCP client bound to address 192.168.99.23
Using TCI6638_EMAC device
TFTP from server 192.168.99.24; our IP address is 192.168.99.23
Filename '/tftpboot/keystone-k2hk-evm.dtb'.
Load address: 0x87000000
Loading: ###
2.1 MiB/s
done
Bytes transferred = 39302 (9986 hex)
BOOTP broadcast 1
*** Unhandled DHCP Option in OFFER/ACK: 44
*** Unhandled DHCP Option in OFFER/ACK: 44
DHCP client bound to address 192.168.99.23
Using TCI6638_EMAC device
TFTP from server 192.168.99.24; our IP address is 192.168.99.23
Filename '/tftpboot/uImage.img'.
Load address: 0x88000000
Loading: #################################################################
#################################################################
.....
##########################################################
2.3 MiB/s
done
Bytes transferred = 17059904 (1045040 hex)
## Booting kernel from Legacy Image at 88000000 ...
Image Name: Linux kernel
Created: 2019-02-11 20:01:51 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 17059840 Bytes = 16.3 MiB
Load Address: 88000000
Entry Point: 88000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 87000000
Booting using the fdt blob at 0x87000000
XIP Kernel Image ... OK
OK
Using Device Tree in place at 87000000, end 8700c985
Starting kernel ...
Nothing else seems appear, I suppose some command/parameter is incorrect but it's a bit difficult found that.
Uboot parameters:
TCI6638 EVM # printenv
addr_fdt=0x87000000
addr_fs=0x82000000
addr_kern=0x88000000
addr_mon=0x0c5f0000
addr_ubi=0x82000000
addr_uboot=0x87000000
args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1
args_net=setenv bootargs ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp
args_ramfs=setenv bootargs ${bootargs} earlyprintk 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} earlyprintk rdinit=/sbin/init rw root=/dev/ram0
baudrate=115200
boot=net
bootargs=earlyprintk debug console=ttyS0,115200n8 ip=dhcp rootwait=1 root=/dev/nfs nfsroot=${serverip}:${nfs_options}
bootcmd=run init_${boot} get_fdt_${boot} get_kern_${boot} 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=TCI6638_EMAC
ethaddr=d4:f5:13:aa:ed:ca
fdt_high=0xffffffff
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_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_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=0
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
init_uinitrd=run set_fs_uinitrd args_all args_uinitrd get_fs_uinitrd
initrd_high=0xffffffff
ipaddr=192.168.99.23
mem_lpae=1
mem_reserve=512M
mtdparts=mtdparts=davinci_nand.0:1024k(bootloader)ro,512k(params)ro,129536k(ubifs)
name_fdt=tftpboot/keystone-k2hk-evm.dtb
name_fs=arago-console-image.cpio.gz
name_kern=tftpboot/uImage.img
name_mon=tftpboot/skern.img
name_ubi=keystone-evm-ubifs.ubi
name_uboot=u-boot-spi-keystone-evm.gph
name_uinitrd=uinitrd.bin
nfs_options=v3,tcp,rsize=4096,wsize=4096
nfs_root=nfs_root=/export/targetNFS/
no_post=1
run_kern=bootm ${addr_kern} ${addr_uinitrd} ${addr_fdt}
run_mon=mon_install ${addr_mon}
serverip=192.168.99.24
set_fs_none=setenv addr_uinitrd -
set_fs_uinitrd=setenv addr_uinitrd ${addr_fs}
stderr=serial
stdin=serial
stdout=serial
tftpboot_root=/tftpboot
vargs_net=setenv bootargs earlyprintk ${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=${serverip}:${nfs_root},${nfs_options} ip=dhcp
ver=U-Boot 2013.01-00004-g0c2f8a2 (Aug 16 2013 - 19:04:15)
I have also tried with monitor file but the problem remain.
TCI6638 EVM # setenv boot net
TCI6638 EVM # setenv nfs_root nfs_root=/export/targetNFS/
TCI6638 EVM # seten vargs_net 'setenv bootargs earlyprintk \${bootargs} rootfstype=nfs root=/dev/nfs rw nfsroot=\${serverip}:\${nfs_root},\${nfs_options}ip=dhcp'
TCI6638 EVM # setenv bootargs 'earlyprintk debug console=ttyS0,115200n8 ip=dhcp rootwait=1 root=/dev/nfs nfsroot=\${serverip}:\${nfs_options}'
TCI6638 EVM # setenv bootcmd run init_\${boot} get_fdt_\${boot} get_mon_\${boot} get_kern_\${boot} run_mon run_kern
TCI6638 EVM # setenv tftpboot_root /tftpboot
TCI6638 EVM # setenv serverip 192.168.99.24
TCI6638 EVM # setenv ipaddr 192.168.99.23
TCI6638 EVM # setenv name_fdt tftpboot/keystone-k2hk-evm.dtb
TCI6638 EVM # setenv name_kern tftpboot/uImage.img
TCI6638 EVM # setenv name_mon tftpboot/skern.img
TCI6638 EVM # boot
BOOTP broadcast 1
BOOTP broadcast 2
*** Unhandled DHCP Option in OFFER/ACK: 44
*** Unhandled DHCP Option in OFFER/ACK: 44
DHCP client bound to address 192.168.99.23
Using TCI6638_EMAC device
TFTP from server 192.168.99.24; our IP address is 192.168.99.23
Filename '/tftpboot/keystone-k2hk-evm.dtb'.
Load address: 0x87000000
Loading: ###
2 MiB/s
done
Bytes transferred = 39302 (9986 hex)
BOOTP broadcast 1
*** Unhandled DHCP Option in OFFER/ACK: 44
*** Unhandled DHCP Option in OFFER/ACK: 44
DHCP client bound to address 192.168.99.23
Using TCI6638_EMAC device
TFTP from server 192.168.99.24; our IP address is 192.168.99.23
Filename '/tftpboot/skern.img'.
Load address: 0xc5f0000
Loading: ###
2.1 MiB/s
done
Bytes transferred = 32832 (8040 hex)
BOOTP broadcast 1
*** Unhandled DHCP Option in OFFER/ACK: 44
*** Unhandled DHCP Option in OFFER/ACK: 44
DHCP client bound to address 192.168.99.23
Using TCI6638_EMAC device
TFTP from server 192.168.99.24; our IP address is 192.168.99.23
Filename '/tftpboot/uImage.img'.
Load address: 0x88000000
Loading: #################################################################
....
#################################################################
##########################################################
2.3 MiB/s
done
Bytes transferred = 17059904 (1045040 hex)
Could you help me?
Best regards
Dario