Skip to content

source: linux: Add documentation of Ethernet boot for J722S #226

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions configs/J722S/J722S_linux_toc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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')

Expand Down
44 changes: 44 additions & 0 deletions source/linux/Foundational_Components/U-Boot/UG-Network-K3.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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`.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why you want to duplicate information of
source/linux/Foundational_Components/U-Boot/UG-General-Info.rst

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello Udit, It is not duplicate information but it is pointing to the steps on how to build U-Boot images to boot via Ethernet using config files mentioned for Ethernet boot.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Every column other than Supported interfaces seems to be redundant information already provided under UG-General-Info.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Support for Ethernet boot for J722S is added recently, and this is a documentation for that. I believe that we do not have a documentation for thatin UG-General-info page. In the table, columns represent- config files to be used by J722S (specific to Ethernet boot), VCI string information which would be used to configure DHCP server during boot stage. We can find the same documentation already present for AM62 and AM64.

.. 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:
Expand Down Expand Up @@ -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
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something tells me this infinite scrolling block of device specific config snippets should be templated at this point.

{
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
<https://help.ubuntu.com/community/isc-dhcp-server>`__.
Loading