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.

AM3517 EMAC Booting boot announce frame

Other Parts Discussed in Thread: AM3517

Hi,

 

We are using EMAC boot in AM3517 application and we need some confirmation about the Boot Announce Frame.

The "sys_boot" is set to boot from EMAC "sys_boot[5:0]=0b101010  EMAC->USB->MMC1->XIP".

 

We see that, when there is no boot image on the XIP(NOR)

boot announce frame is broadcasted on the ethernet line

but,  when there is a boot image on the XIP(NOR), the boot announce frame is 

not broadcasted.

 

Please let me know if this is ok and is this a proper behaviour in case of AM3517. 

 

Regards.

paddu.

  • Hi,
    This is an urgent issue to be closed.
    Please let me know, if the above behaviour is according to the AM3517's specification.
    i.e. even though the boot mode is set as  "EMAC->USB->MMC1->XIP"  
    if there is a Boot Image present on the XIP(NOR)  the boot won't start from EMAC?
    Regards.
    Paddu
  • Hi paddu,

    you are most likely hitting the scenario whereby the external PHY is not ready to transmit when the EMAC boot code is first outputting the broadcast packet. 

    Note that since the EMAC in your boot sequence is your permanent boot source (as noted by the italics in the table in the TRM), your boot sequence is really EMAC->USB->MMC1->XIP->EMAC->EMAC->EMAC->etc.

    So when you don't have a valid image in XIP, the boot code first executes the EMAC boot code and sends out the broadcast packet.  However, the PHY at this time has not had enough time to initialize, and does not pass on the packet on the wire.  The EMAC boot fails, and the AM3517 moves on to the next in the boot sequence (USB).  USB then fails, MMC1 fails, and XIP also fails (no image), then EMAC boot continually repeats.  In one of those repeated EMAC boots, the PHY has finally initialized and you see the broadcast packet on the wire, and the Ethernet boot works successfully.

    If you take that same scenario, and add in a valid XIP image, the boot never has a chance to get to those subsequent EMAC boot scenarios, since it will successfully boot from XIP.  Thus, you never see the boot packet on the wire. 

    So really the issue is getting the PHY initialized fast enough before the first attempt by the AM3517 to send out the broadcast packet.  This will require more complicated board level power sequencing to achieve.

    Regards,

    James

     

     

  • Hello James,

    Thank you for the information.

    Actually we tried to confirm with the CONTROL_STATUS register and the Tracing vectors using CCSv4 debug,
    and we could see the sequence which you have mentioned above"EMAC->USB->MMC1->XIP->EMAC->EMAC->EMAC->".
    We understood that the issue could be related to external PHY.

    We need one more clarification about the Booting Sequence.
    You have mentioned that "EMAC boot continually repeats" in your comment above,
    but I couldn't find any statements or flow chart saying "repeated try" in the Reference manual(SPRUGR0B).

    Below is a part of "Figure 24-8. Overall Booting Sequence" from the TRM.
    According to my understanding, if the Step 6(Peripheral booting) fails it will come back to Step 4(Take first/next device from the list),
    which means it would scan all the devices once again not only the EMAC.
    That could be EMAC->USB->MMC1->XIP->EMAC->USB->MMC1->XIP->EMAC->USB->MMC1->XIP->.....

    Is there anything missing from the TRM?

    Please let me know if there any explanation on this.

     

     Best Regards.

      Paddu

     

  • Hi James,

     

    I understood that below sequence will be repeated until the boot image is found.

    EMAC->USB->MMC1->XIP->WarmReset->EMAC->XIP->WarmReset->EMAC->XIP->WarmReset->...

     

    We believe there should be some correction in the Reference manual(SPRUGR0B).

    In the Figure 24-9. "Device List Set-Up" the 

    statement "Take only permanent booting devices from sys_boot" could be changed

    to "Take only permanent booting devices from sys_boot and Table 24-5"

     

    Please let me know if there is any comment on the above.

     

    Regards.

  • Hi James,

     

    I understood that below sequence will be repeated until the boot image is found.

    EMAC->USB->MMC1->XIP->WarmReset->EMAC->XIP->WarmReset->EMAC->XIP->WarmReset->...

     

    We believe there should be some correction in the Reference manual(SPRUGR0B).

    In the Figure 24-9. "Device List Set-Up" the 

    statement "Take only permanent booting devices from sys_boot" could be changed

    to "Take only permanent booting devices from sys_boot and device mentioned in Table 24-5"

     

    Please let me know if there is any comment on the above.

     

    Regards.