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.

AM4378: u-boot-spl failed to boot over ethernet peripheral.

Part Number: AM4378

I am trying to do peripheral boot to flash emmc on am437x GP-EVM.

Configured the boot pins, I am getting BOOTP packets on u-buntu machine and configured dhp & tftp server to send u-boot.img ,u-boot-spl binaries.

RBL is able download u-boot-spl.bin file. u-boot-spl unable to send BOOTP Packets and throwing below error.

Could not get PHY for ethernet@4a10000: addr 0

Problem booting with BOOTP.

SPL: failed to boot from all boot device.

### ERROR #### Please RESET the board ###

I tried using binaries from SDK also getting the same error.

all my binaries are out of yocto, Entire set up worked once showed a demo on EMMC flashing with nfs server. All of a sudden i am getting this error.

  • I tried adding some print statements. also enabled flag DEBUG. 

    common/spl/spl_net.c
    @@ -41,7 +41,7 @@ static int spl_net_load_image(struct spl_image_info *spl_image,
    env_set("ethact", bootdev->boot_device_name);
    rv = net_loop(BOOTP);
    if (rv < 0) {
    - printf("Problem booting with BOOTP\n");
    + printf("Problem booting with BOOTP rv=%d\n",rv);
    return rv;
    }

    b/net/net.c
    @@ -441,12 +441,14 @@ restart:
    switch (net_check_prereq(protocol)) {
    case 1:
    /* network not configured */
    + printf("/* network not configured */\n");
    eth_halt();
    net_set_state(prev_net_state);
    return -ENODEV;

    case 2:
    /* network device not configured */
    + printf("/* network device not configured */\n");
    break;

    After Loading u-boot-spl over ethernet, I am return type as -19 which is ENODEV. Looks like problem with ethernet initialization.

    Here is the output: 

    Could not get PHY for ethernet@4a10000: addr 0

    Problem booting with BOOTP rv =-19.

    SPL: failed to boot from all boot device.

    ### ERROR #### Please RESET the board ###

    Needed your help in debugging this issue.  

  • Siva,

    I agree that this look like an Ethernet initialization/configuration issue. The fact you can load U-Boot at all is promising because it indicates your hardware is likely good.

    Which version of TI Processor SDK version most closely matches the U-Boot version you are using? What Ethernet PHY are you using connected to what AM437x pins? Can you provide the appropriate schematic snippets?

    Thanks,

    Stuart

  • Hi Stuart Baker,

    I am seeing this issue on am437x-GP-EVM board with prebuild sdk binaries also. I am using TI SDK 08.02.00.24 version prebuild binaries. 

    For Debuging purpose i am using ti-u-boot-2020.01 branch, i am not sure about which TI Processor SDK version this u-boot closely matches. 

    Regards,

    Siva.

  • Siva,

    Yes, you mentioned that it is the GP-EVM in the original post, I'm sorry that I missed that. I'm trying to locate a subject matter expert who can try and reproduce the issue.

    Thanks,

    Stuart

  • Hi,

    Which TI SDK version are you using? Also you mentioned a yocto build was this your build? Would you be able to try the binaries from a TI SDK release?

    Regards,

    Schuyler