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.

SK-AM62B-P1: Booting via ethernet - SK-AM62B-P1

Part Number: SK-AM62B-P1

Tool/software:

Hi Team,

I am attempting to load U-Boot via Ethernet.

using this thread as reference : ://e2e.ti.com/support/processors-group/processors/f/processors-forum/1328520/faq-how-to-boot-sk-am62b-sk-am62a-via-ethernet-and-flash-u-boot-and-linux-binaries-into-emmc-via-ethernet

I am facing issue in ethernet booting I have setup everything that mentioned in following link. Not able to see any TFTP logs in console please help me regarding this attached following screenshots of wireshark and dhcp status.

1. tftp configuration in (/etc/xinetd.d/tftp)

4

Best reagrds,

Rj

  • Hello Rj,

    Can you clarify the following

    1. What SDK version are you using?

    2. Are you using the SK-AM62B-P1 EVM or a custom board?

    3. What shows up in the boot log (for your EVM or your custom board)?

    -Daolin

  • hello Daolin Qiu,

    1,2 > Im using SK-AM62B-P1 EVM , SDK version is 09.02.01.10

    3 > No booting log is showing in treminal

    Attaching wireshark log , Is  VCI filed is missing something ?

     

    Attaching status of xinetd.service, is tftpd is trying to fetch files from /tftpboot but its not happening ?

    Best Regards,

    RJ

  • Hi RJ,

    Did you make sure the following were in your /etc/dhcp/dhcpd.conf?

    if substring (option vendor-class-identifier, 0, 16) = "TI K3 Bootp Boot"
      {
        filename "tiboot3.bin";
      } elsif substring (option vendor-class-identifier, 0, 20) = "AM62X U-Boot R5 SPL"
      {
        filename "tispl.bin";
      } elsif substring (option vendor-class-identifier, 0, 21) = "AM62X U-Boot A53 SPL"
      {
        filename "u-boot.img";
      }

    Additionally, have you ensured all 3 boot binaries (tiboot3.bin, tispl.bin, u-boot.img) are in your /tftpboot directory?

    I'm assuming your boot switches are configured correctly for ethernet boot as primary boot?

    Did you run into any issues while building the 3 boot binaries using the am62x_evm_r5_ethboot_defconfig out of box from SDK 09.02.01.10 without changing anything?

    -Daolin

  • Hi Daolin,

    1 > Attaching conf on my /etc/dhcp/dhcpd.conf path both looks similar conf.

    option domain-name "example.org";
    option domain-name-servers ns1.example.org, ns2.example.org;
    
    default-lease-time 600;
    max-lease-time 7200;
    
    
    ddns-update-style none;
    
    
    subnet 10.0.0.0 netmask 255.0.0.0
    {
      range dynamic-bootp 10.0.0.2 10.0.0.16;
      if substring (option vendor-class-identifier, 0, 16) = "TI K3 Bootp Boot"
      {
        filename "tiboot3.bin";
      } elsif substring (option vendor-class-identifier, 0, 20) = "AM62X U-Boot R5 SPL"
      {
        filename "tispl.bin";
      } elsif substring (option vendor-class-identifier, 0, 21) = "AM62X U-Boot A53 SPL"
      {
        filename "u-boot.img";
      }
    
      range 10.0.0.17 10.0.0.25;
      default-lease-time 60000;
      max-lease-time 720000;
      next-server 10.0.0.1;
    }
    

    2 >  /tftpboot directory 

    3 > boot switches conf , please let me know am i missing something ?!

          SW1[0-7] = 1 1 0 0 0 1 0 0

          SW2[8-15]= 0 0 0 0 0 0 0 0

    4>  briefly explanation what have i done using SDK 09.02.01.10

    #path/ti-processor-sdk-linux-am62xx-evm-09.02.01.10/Rules.make
    
    # UBOOT_MACHINE_R5=am62x_evm_r5_defconfig //rj
    UBOOT_MACHINE_R5=am62x_evm_r5_ethboot_defconfig
    
    ---------> make u-boot
    ---------> Changed in Rules.make ran in to error 
    -----------------------------------------------------------------------------------------------------
    /home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/k3r5-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-oe-eabi/arm-oe-eabi-ld.bfd: drivers/net/ti/am65-cpsw-nuss.o: in function `am65_cpsw_am654_get_efuse_macid':
    /home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732/drivers/net/ti/am65-cpsw-nuss.c:550: undefined reference to `syscon_regmap_lookup_by_phandle'
    make[3]: *** [/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732/scripts/Makefile.spl:527: spl/u-boot-spl] Error 1
    make[2]: *** [/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732/Makefile:2043: spl/u-boot-spl] Error 2
    make[2]: Leaving directory '/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/u-boot-build/r5'
    make[1]: *** [Makefile:177: sub-make] Error 2
    make[1]: Leaving directory '/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732'
    make: *** [makerules/Makefile_u-boot:28: u-boot-r5] Error 2
    
    ----------------------------------------------------------------------------------------------------------
    # https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1328520/faq-how-to-boot-sk-am62b-sk-am62a-via-ethernet-and-flash-u-boot-and-linux-binaries-into-emmc-via-ethernet
    # as per this replaced am65-cpsw-nuss.c with with proveded file in the link above .
    -----------------------------------------------------------------------------------------------------------
    
    -------------->make u-boot
    # path / ti-processor-sdk-linux-am62xx-evm-09.02.01.10/board-support/u-boot-build/a53/
    # pulled tispl.bin and u-boot.img from this directory 
    # path / /ti-processor-sdk-linux-am62xx-evm-09.02.01.10/board-support/u-boot-build/r5/
    # pulled tiboot3.bin from this directory
    
    

    Thanks and Regards,

    RJ

  • Hello RJ,

    Thanks for sharing these details. While, replacing the am65-cpsw-nuss.c file does get rid of the build issue, I recently learned from a colleague that there are more specific changes that can be made to enable building the correct U-boot binaries for ethernet boot. 

    Please see the patch given in the bottom this thread https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1364861/sk-am62b-p1-uboot_machine-am62x_evm_r5_ethboot_defconfig-not-compiling-in-yocto/5237349#5237349, try to apply the patch and rebuild the U-boot binaries.

    Please give it a try and let me know what the results are!

    -Daolin

  • hello Daolin,

    Thanks for the updates! 

    I Have build u-boot binaries using above mentioned e2e thread : https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1364861/sk-am62b-p1-uboot_machine-am62x_evm_r5_ethboot_defconfig-not-compiling-in-yocto/5237349#5237349

    but not able to ethernet boot , attaching text file what i have done . in these thread  boot logs are available in my case its not happening, not a single boot log is not there in terminal ! 

    #path/ti-processor-sdk-linux-am62xx-evm-09.02.01.10/Rules.make
    
    # UBOOT_MACHINE_R5=am62x_evm_r5_defconfig //rj
    UBOOT_MACHINE_R5=am62x_evm_r5_ethboot_defconfig
    
    ---------> make u-boot
    ---------> Changed in Rules.make ran in to error 
    -----------------------------------------------------------------------------------------------------
    /home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/k3r5-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-oe-eabi/arm-oe-eabi-ld.bfd: drivers/net/ti/am65-cpsw-nuss.o: in function `am65_cpsw_am654_get_efuse_macid':
    /home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732/drivers/net/ti/am65-cpsw-nuss.c:550: undefined reference to `syscon_regmap_lookup_by_phandle'
    make[3]: *** [/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732/scripts/Makefile.spl:527: spl/u-boot-spl] Error 1
    make[2]: *** [/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732/Makefile:2043: spl/u-boot-spl] Error 2
    make[2]: Leaving directory '/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/u-boot-build/r5'
    make[1]: *** [Makefile:177: sub-make] Error 2
    make[1]: Leaving directory '/home/a0500327/Documents/ti-processor-sdk-linux-rt-am62xx-evm-09.01.00.08/board-support/ti-u-boot-2023.04+gitAUTOINC+b0d717b732-gb0d717b732'
    make: *** [makerules/Makefile_u-boot:28: u-boot-r5] Error 2
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    # not replaced  am65-cpsw-nuss.c  .
    -------------------------------------------------------------------------------------------------------------------------------------------------------------------
    
    #https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1364861/sk-am62b-p1-uboot_machine-am62x_evm_r5_ethboot_defconfig-not-compiling-in-yocto/5237349#5237349
    # as per thread added the patch in ti-processor-sdk-linux-am62xx-evm-09.02.01.10/board-support/ti-u-boot-2023.04+gitAUTOINC+8366064208/configs/am62x_evm_r5_ethboot_defconfig
    CONFIG_SYSCON=y
    CONFIG_SPL_SYSCON=y
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    
    -------------->make u-boot
    # path / ti-processor-sdk-linux-am62xx-evm-09.02.01.10/board-support/u-boot-build/a53/
    # pulled tispl.bin and u-boot.img from this directory 
    # path / /ti-processor-sdk-linux-am62xx-evm-09.02.01.10/board-support/u-boot-build/r5/
    # pulled tiboot3.bin from this directory

    1. In Wireshark log BOOTP replays is occurring and sending tiboot3.bin  but TFTP is not happening here what would be the issue ?. i assign my ethernet ip manually is that a issue ? 

    2.  boot logs are not visible in terminal .

    Attaching the wireshark log for reference and boot files

    1.

    best reagrds,

    RJ

  • Hello RJ,

    I was able to setup my known working ethernet boot on an SK-AM62B-P1 in order compare with your observations. I noticed that in your wireshark screenshot, there are ARP messages asking for who has IP address 10.0.0.1. I think this IP address should be associated with your Host PC but based on the BOOTP reply, it seems that the IP address of your Host PC is actually 10.0.0.26. 

    i assign my ethernet ip manually is that a issue ? 

    Since the method described in the E2E FAQ is with using DHCP and the SDK documentation also specify adding content to /etc/dhcp/dhcpd.conf, the IP address of your Host PC ethernet should be assigned dynamically. Can you try to get your Host PC IP address assigned to 10.0.0.1 and see what happens?

    -Daolin

  • hello Daolin Qiu,

    Thanks for the update ! 

    Since the method described in the E2E FAQ is with using DHCP and the SDK documentation also specify adding content to /etc/dhcp/dhcpd.conf, the IP address of your Host PC ethernet should be assigned dynamically. Can you try to get your Host PC IP address assigned to 10.0.0.1 and see what happens?

    trying with  this IP  resolved my issue . Im curious that why is it asking for 10.0.0.1 ? as per my knowledge conf in /etc/dhcp/dhcpd.conf  that I'm running will assign an IP in the pool of   10.0.0.2 to 10.0.0.16 to the EVM only and also I'm assign an out of this pool  IP to my host PC (manually 10.0.0.26). can you please educate me what's I'm lacking ?.

    thanks for the continues support !

    wishing you the best!

    -RJ

  • Hi RJ,

    Great news, thanks for updating me on the results!

    I'm no expert myself on why the ARP message is looking for IP address of 10.0.0.1 but I speculate that the network setting on your Host PC might have been configured to a gateway IP address of 10.0.0.1. This network setting is most likely separate from your /etc/dhcp/dhcpd.conf file which is the file configuration to set up a DHCP server on your Host PC so that any connected devices to the Host PC (or via a switch) can be dynamically assigned IP addresses. 

    For example, on my Linux (Ubuntu 22.04) Host PC, in "Advanced Network Configuration", I have configured my IP address for the connected ethernet interface to be the below, while my /etc/dhcp/dhcpd.conf file is configured so that range 172.168.1.10 to 172.168.1.168 can be dynamically assigned to connected devices to the Host PC. 

    I hope this helps your understanding!

    -Daolin