3.1.1.3. Booting over Ethernet (Ethernet RGMII)

This section documents how to configure the DHCP/BOOTP server to load bootloaders on to AM64x family of SoCs in Ethernet RGMII Boot mode.

3.1.1.3.1. Booting U-Boot from the network

AM64x family of SoCs supports loading SPL and U-Boot over the network using DHCP/BOOTP protocol. The DHCP server replying to DHCP/BOOTP requests from the SoC must provide filename to be fetched over TFTP for each stage depending on the Vendor-Class-Identifier (VCI) DHCP field specified in the request. VCI DHCP field is filled out by the ROM and subsequent stages and corresponding binaries files to be sent over TFTP are listed in the table below.

Board

Defconfigs

Supported interfaces

ROM

R5 SPL

A53 SPL

AM64x GP EVM

am64x_evm_r5_defconfig am64x_evm_a53_defconfig

CPSW NUSS Ethernet

VCI: TI K3 Bootp Boot tiboot3.bin

VCI: AM64X U-Boot R5 SPL tispl.bin

VCI: AM64X U-Boot A53 SPL u-boot.img

Important

  • Ethernet RGMII boot is supported over RGMII2 (Second port) on AM64x SoC.

  • RGMII boot is only supported on AM64x SK EVM and not supported on AM64x GP EVM as port is muxed to ICSSG by default

  • CPSW PHYs should be strapped as per ROM’s expectation described in part’s TRM.

  • Link info Bootmode pin needs to be ON along with RGMII boot mode selection Bootmode pins.

If using ISC dhcpd an example host entry would look like this:

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) = "AM64X U-Boot R5 SPL"
  {
    filename "tispl.bin";
  } elsif substring (option vendor-class-identifier, 0, 21) = "AM64X 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;
}

A walk through of these steps to setup isc-dhcp-server on Ubuntu can be found at here.