[PATCH v2 2/2] doc: board: phytec: Add phyCORE-AM62x

Dhruva Gole d-gole at ti.com
Fri Dec 1 11:10:20 CET 2023


Hi,

On Nov 30, 2023 at 12:56:07 +0100, Wadim Egorov wrote:
> Add documentation for PHYTEC phyCORE-AM62x SoM.
> 
> Signed-off-by: Wadim Egorov <w.egorov at phytec.de>
> ---
> v2: Rebased on top of -next
> 

Please CC Tom Rini <trini at konsulko.com> on the series.

> ---
>  doc/board/phytec/index.rst         |   1 +
>  doc/board/phytec/phycore-am62x.rst | 125 +++++++++++++++++++++++++++++
>  doc/board/ti/k3.rst                |   1 +
>  3 files changed, 127 insertions(+)
>  create mode 100644 doc/board/phytec/phycore-am62x.rst
> 
> diff --git a/doc/board/phytec/index.rst b/doc/board/phytec/index.rst
> index a5b442045e..b914cc3fbd 100644
> --- a/doc/board/phytec/index.rst
> +++ b/doc/board/phytec/index.rst
> @@ -6,5 +6,6 @@ PHYTEC
>  .. toctree::
>     :maxdepth: 2
>  
> +   phycore-am62x
>     phycore-imx8mm
>     phycore-imx8mp
> diff --git a/doc/board/phytec/phycore-am62x.rst b/doc/board/phytec/phycore-am62x.rst
> new file mode 100644
> index 0000000000..46312a73bc
> --- /dev/null
> +++ b/doc/board/phytec/phycore-am62x.rst
> @@ -0,0 +1,125 @@
> +.. SPDX-License-Identifier: GPL-2.0+
> +.. sectionauthor:: Wadim Egorov <w.egorov at phytec.de>
> +
> +phyCORE-AM62x
> +=============
> +
> +The `phyCORE-AM62x <https://www.phytec.com/product/phycore-am62x>`_ is a
> +SoM (System on Module) featuring TI's AM62x SoC. It can be used in combination
> +with different carrier boards. This module can come with different sizes and
> +models for DDR, eMMC, SPI NOR Flash and various SoCs from the AM62x family.
> +
> +A development Kit, called `phyBOARD-Lyra <https://www.phytec.com/product/phyboard-am62x>`_
> +is used as a carrier board reference design around the AM62x SoM.
> +
> +Quickstart
> +----------
> +
> +* Download sources and TI firmware blobs
> +* Build Trusted Firmware-A
> +* Build OP-TEE
> +* Build U-Boot for the R5
> +* Build U-Boot for the A53
> +* Create bootable uSD Card
> +* Boot
> +
> +Sources
> +-------
> +
> +.. include::  ../ti/k3.rst
> +    :start-after: .. k3_rst_include_start_boot_sources
> +    :end-before: .. k3_rst_include_end_boot_sources
> +
> +Build procedure
> +---------------
> +
> +Setup the environment variables:
> +
> +.. include::  ../ti/k3.rst
> +    :start-after: .. k3_rst_include_start_common_env_vars_desc
> +    :end-before: .. k3_rst_include_end_common_env_vars_desc
> +
> +.. include::  ../ti/k3.rst
> +    :start-after: .. k3_rst_include_start_board_env_vars_desc
> +    :end-before: .. k3_rst_include_end_board_env_vars_desc
> +
> +Set the variables corresponding to this platform:
> +
> +.. include::  ../ti/k3.rst
> +    :start-after: .. k3_rst_include_start_common_env_vars_defn
> +    :end-before: .. k3_rst_include_end_common_env_vars_defn
> +.. code-block:: bash
> +
> + $ export UBOOT_CFG_CORTEXR=phycore_am62x_r5_defconfig
> + $ export UBOOT_CFG_CORTEXA=phycore_am62x_a53_defconfig
> + $ export TFA_BOARD=lite
> + $ # we don't use any extra TFA parameters
> + $ unset TFA_EXTRA_ARGS
> + $ export OPTEE_PLATFORM=k3-am62x
> + $ export OPTEE_EXTRA_ARGS="CFG_WITH_SOFTWARE_PRNG=y"

Does this need to be the case? If it's just copied from AM62x then I
think I need to fix that documentation, not sure if we necessarily need
SW_RNG and thus disable HW_RNG upstream.

The context here was we were enabling SW_RNG a while back due to a crash
after suspend resume on AM62x, however that issue no longer seems to
cause any lock ups/ crash.

> +
> +.. include::  ../ti/am62x_sk.rst
> +    :start-after: .. am62x_evm_rst_include_start_build_steps
> +    :end-before: .. am62x_evm_rst_include_end_build_steps
> +
> +uSD Card creation
> +-----------------
> +
> +Use fdisk to partition the uSD card. The layout should look similar to:
> +
> +.. code-block:: bash
> +
> + $ sudo fdisk -l /dev/mmcblk0
> + Disk /dev/mmcblk0: 7.56 GiB, 8120172544 bytes, 15859712 sectors
> + Units: sectors of 1 * 512 = 512 bytes
> + Sector size (logical/physical): 512 bytes / 512 bytes
> + I/O size (minimum/optimal): 512 bytes / 512 bytes
> + Disklabel type: dos
> + Disk identifier: 0x6583d9a3
> +
> + Device         Boot  Start     End Sectors   Size Id Type
> + /dev/mmcblk0p1 *      2048  264191  262144   128M  c W95 FAT32 (LBA)
> + /dev/mmcblk0p2      264192 1934953 1670762 815.8M 83 Linux
> +
> +
> +Once partitioned, the boot partition has to be formatted with a FAT filesystem.
> +Assuming the uSD card is `/dev/mmcblk0`:
> +
> +.. code-block:: bash
> +
> + $ mkfs.vfat /dev/mmcblk0p1
> +
> +To boot from an uSD on a GP device simply copy the following artifacts to the

nit: "a" micro SD card not an


Are most of the SoM's GP devices? Otherwise thinking if we should make
the documentation for HSFS as a default and GP as an exception?

Or else just say copy tiboot3.bin as is on the SD card for HSFS devices
and for GP.... (as you have done below)

> +FAT partition:
> +
> +* tiboot3-am62x-gp-phycore-som.bin from R5 build as tiboot3.bin
> +* tispl.bin_unsigned from Cortex-A build as tispl.bin
> +* u-boot.img_unsigned from Cortex-A build as u-boot.img
> +
> +Boot
> +----
> +
> +Put the uSD card in the slot on the board and apply power. Check the serial
> +console for output.
> +
> +Flash to SPI NOR
> +----------------
> +
> +Below commands can be used to flash the SPI NOR flash; assuming
> +tiboot3.bin, tispl.bin and u-boot.img are stored on the uSD card.
> +
> +.. code-block:: bash
> +
> +  sf probe
> +  fatload mmc 1 ${loadaddr} tiboot3.bin
> +  sf update $loadaddr 0x0 $filesize
> +  fatload mmc 1 ${loadaddr} tispl.bin
> +  sf update $loadaddr 0x80000 $filesize
> +  fatload mmc 1 ${loadaddr} u-boot.img
> +  sf update $loadaddr 0x280000 $filesize
> +

Want to add some documentation on Boot Modes? Something like [0]?


> +Further Information
> +-------------------
> +
> +Please see :doc:`../ti/am62x_sk` chapter for further AM62 SoC related documentation
> +and https://docs.phytec.com/phycore-am62x for vendor documentation.
> diff --git a/doc/board/ti/k3.rst b/doc/board/ti/k3.rst
> index a127215ce5..435c72a428 100644
> --- a/doc/board/ti/k3.rst
> +++ b/doc/board/ti/k3.rst
> @@ -33,6 +33,7 @@ K3 Based SoCs
>     am62ax_sk
>     am62x_sk
>     ../beagle/am62x_beagleplay
> +   ../phytec/phycore-am62x
>     ../toradex/verdin-am62
>     am64x_evm

Rest looks good, so with the above suggestions,

Reviewed-by: Dhruva Gole <d-gole at ti.com>

[0] https://docs.u-boot.org/en/v2023.07.02/board/ti/am62x_sk.html

-- 
Best regards,
Dhruva Gole <d-gole at ti.com>


More information about the U-Boot mailing list