From 0c3922c32d013f2a2265e0cc83de38c7eae5b2d9 Mon Sep 17 00:00:00 2001 From: Chintan Vankar Date: Wed, 26 Mar 2025 10:51:42 +0530 Subject: [PATCH] source: linux: Add documentation of Ethernet boot for J722S Ethernet boot support has been added to J722s SoC, add documentation for the same. Signed-off-by: Chintan Vankar --- configs/J722S/J722S_linux_toc.txt | 1 + .../U-Boot/UG-General-Info.rst | 12 ++--- .../U-Boot/UG-Network-K3.rst | 44 +++++++++++++++++++ 3 files changed, 51 insertions(+), 6 deletions(-) diff --git a/configs/J722S/J722S_linux_toc.txt b/configs/J722S/J722S_linux_toc.txt index 9188ffc81..da305d6ef 100644 --- a/configs/J722S/J722S_linux_toc.txt +++ b/configs/J722S/J722S_linux_toc.txt @@ -33,6 +33,7 @@ linux/Foundational_Components/U-Boot/UG-NOR linux/Foundational_Components/U-Boot/UG-UART linux/Foundational_Components/U-Boot/UG-SATA linux/Foundational_Components/U-Boot/UG-DDRSS-J7 +linux/Foundational_Components/U-Boot/UG-Network-K3 linux/Foundational_Components/U-Boot/UG-HyperBus linux/Foundational_Components/U-Boot/UG-RemoteProc linux/Foundational_Components/U-Boot/Applications diff --git a/source/linux/Foundational_Components/U-Boot/UG-General-Info.rst b/source/linux/Foundational_Components/U-Boot/UG-General-Info.rst index 29f182fb4..bb9269a23 100644 --- a/source/linux/Foundational_Components/U-Boot/UG-General-Info.rst +++ b/source/linux/Foundational_Components/U-Boot/UG-General-Info.rst @@ -391,12 +391,12 @@ Build U-Boot .. ifconfig:: CONFIG_part_variant in ('J722S') - +----------------------------+---------------------------------+--------------------------------+--------------------------------+------------------------------------+------------------------------------+ - | Board | SD/eMMC Boot | UART boot | OSPI boot | USB DFU | USB MSC | - +============================+=================================+================================+================================+====================================+====================================+ - | J722S EVM | j722s\_evm\_r5\_defconfig | j722s\_evm\_r5\_defconfig | j722s\_evm\_r5\_defconfig | j722s\_evm\_r5\_usbdfu.config | j722s\_evm\_r5\_usbmsc.config | - | | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | - +----------------------------+---------------------------------+--------------------------------+--------------------------------+------------------------------------+------------------------------------+ + +----------------------------+---------------------------------+--------------------------------+--------------------------------+------------------------------------+------------------------------------+------------------------------------------+ + | Board | SD/eMMC Boot | UART boot | OSPI boot | USB DFU | USB MSC | Ethernet Boot | + +============================+=================================+================================+================================+====================================+====================================+==========================================+ + | J722S EVM | j722s\_evm\_r5\_defconfig | j722s\_evm\_r5\_defconfig | j722s\_evm\_r5\_defconfig | j722s\_evm\_r5\_usbdfu.config | j722s\_evm\_r5\_usbmsc.config | j722s\_evm\_r5\_ethboot\_defconfig | + | | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_defconfig | j722s\_evm\_a53\_ethboot\_defconfig | + +----------------------------+---------------------------------+--------------------------------+--------------------------------+------------------------------------+------------------------------------+------------------------------------------+ .. ifconfig:: CONFIG_part_variant in ('J721E','J7200','J721S2','J784S4','J742S2') diff --git a/source/linux/Foundational_Components/U-Boot/UG-Network-K3.rst b/source/linux/Foundational_Components/U-Boot/UG-Network-K3.rst index 4e2ef7ed3..5136b5c82 100644 --- a/source/linux/Foundational_Components/U-Boot/UG-Network-K3.rst +++ b/source/linux/Foundational_Components/U-Boot/UG-Network-K3.rst @@ -50,6 +50,24 @@ binaries files to be sent over TFTP are listed in the table below. - Disable link info Bootmode pin so that ROM can identify the PHY and establishes link with the supported speed and duplex mode. - Please note that due to MDIO corruption (Errata i2329), booting over Ethernet is not recommended for production purposes. +.. ifconfig:: CONFIG_part_variant in ('J722S') + + +------------------+--------------------------------------+-----------------------+------------------------+---------------------------+----------------------------+ + | Board | Defconfigs | Supported interfaces | ROM | R5 SPL | A53 SPL | + +==================+======================================+=======================+========================+===========================+============================+ + | J722s EVM | ``j722s_evm_r5_ethboot_defconfig`` | CPSW NUSS Ethernet | VCI: TI K3 Bootp Boot | VCI: J722S U-Boot R5 SPL | VCI: J722S U-Boot A53 SPL | + | | ``j722s_evm_a53_ethboot_defconfig`` | | :file:`tiboot3.bin` | :file:`tispl.bin` | :file:`u-boot.img` | + +------------------+--------------------------------------+-----------------------+------------------------+---------------------------+----------------------------+ + + Build tiboot3.bin using ``j722s_evm_r5_ethboot_defconfig``. Build tispl.bin and u-boot.img using ``j722s_evm_a53_ethboot_defconfig``. For instructions to build the bootloader images please refer to :ref:`Build-U-Boot-label`. + + .. important:: + + - Ethernet RGMII boot is supported over RGMII on J722s SoC. + - CPSW PHYs should be strapped as per ROM's expectation described in part's TRM. + - When the link info Bootmode pin is enabled, this means no auto-negotiation or reading of the Ethernet PHY is needed since the ROM will assume the link is up at 1Gbps, full duplex mode. + - Disable link info Bootmode pin so that ROM can identify the PHY and establishes link with the supported speed and duplex mode. + .. ifconfig:: CONFIG_part_variant in ('AM64X') If using ISC dhcpd an example host entry would look like this: @@ -102,5 +120,31 @@ binaries files to be sent over TFTP are listed in the table below. next-server 10.0.0.1; } +.. ifconfig:: CONFIG_part_variant in ('J722S') + + If using ISC dhcpd an example host entry would look like this: + + .. code-block:: text + + 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) = "J722S U-Boot R5 SPL" + { + filename "tispl.bin"; + } elsif substring (option vendor-class-identifier, 0, 21) = "J722S 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 `__.