blob: 93912adc896d90d8146796d80fddc4e1159e5c5b [file] [log] [blame]
Marcel Ziswiler315deb32023-08-04 12:08:08 +02001.. SPDX-License-Identifier: GPL-2.0-or-later
2.. sectionauthor:: Marcel Ziswiler <marcel.ziswiler@toradex.com>
3
4Verdin AM62 Module
5==================
6
Marcel Ziswiler712d6242023-08-07 01:44:46 +02007- SoM: https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
8- Carrier board: https://www.toradex.com/products/carrier-board/verdin-development-board-kit
9
Marcel Ziswiler315deb32023-08-04 12:08:08 +020010Quick Start
11-----------
12
13- Get the binary-only SYSFW
14- Get binary-only TI Linux firmware
15- Build the ARM trusted firmware binary
16- Build the OPTEE binary
17- Build U-Boot for the R5
18- Build U-Boot for the A53
19- Flash to eMMC
20- Boot
21
22For an overview of the TI AM62 SoC boot flow please head over to:
23:doc:`../ti/am62x_sk`
24
25Sources:
26--------
Marcel Ziswiler813070a2023-08-29 00:01:53 +020027
Marcel Ziswiler315deb32023-08-04 12:08:08 +020028.. include:: ../ti/k3.rst
29 :start-after: .. k3_rst_include_start_boot_sources
30 :end-before: .. k3_rst_include_end_boot_sources
31
Dhruva Gole4a395e92024-08-05 19:59:32 +053032.. include:: ../ti/k3.rst
33 :start-after: .. k3_rst_include_start_boot_firmwares
34 :end-before: .. k3_rst_include_end_tifsstub
35
Marcel Ziswiler315deb32023-08-04 12:08:08 +020036Build procedure:
37----------------
Marcel Ziswiler813070a2023-08-29 00:01:53 +020038
Marcel Ziswiler315deb32023-08-04 12:08:08 +0200390. Setup the environment variables:
40
41.. include:: ../ti/k3.rst
42 :start-after: .. k3_rst_include_start_common_env_vars_desc
43 :end-before: .. k3_rst_include_end_common_env_vars_desc
44
45.. include:: ../ti/k3.rst
46 :start-after: .. k3_rst_include_start_board_env_vars_desc
47 :end-before: .. k3_rst_include_end_board_env_vars_desc
48
49Set the variables corresponding to this platform:
50
51.. include:: ../ti/k3.rst
52 :start-after: .. k3_rst_include_start_common_env_vars_defn
53 :end-before: .. k3_rst_include_end_common_env_vars_defn
54.. code-block:: bash
55
56 $ export UBOOT_CFG_CORTEXR=verdin-am62_r5_defconfig
57 $ export UBOOT_CFG_CORTEXA=verdin-am62_a53_defconfig
58 $ export TFA_BOARD=lite
Marcel Ziswiler813070a2023-08-29 00:01:53 +020059 $ # we don't use any extra TFA parameters
Marcel Ziswiler315deb32023-08-04 12:08:08 +020060 $ unset TFA_EXTRA_ARGS
61 $ export OPTEE_PLATFORM=k3-am62x
62 $ export OPTEE_EXTRA_ARGS="CFG_WITH_SOFTWARE_PRNG=y"
63
64.. include:: ../ti/am62x_sk.rst
65 :start-after: .. am62x_evm_rst_include_start_build_steps
66 :end-before: .. am62x_evm_rst_include_end_build_steps
67
68Flash to eMMC
69-------------
70
71.. code-block:: bash
72
73 => mmc dev 0 1
74 => fatload mmc 1 ${loadaddr} tiboot3.bin
75 => mmc write ${loadaddr} 0x0 0x400
76 => fatload mmc 1 ${loadaddr} tispl.bin
77 => mmc write ${loadaddr} 0x400 0x1000
78 => fatload mmc 1 ${loadaddr} u-boot.img
79 => mmc write ${loadaddr} 0x1400 0x2000
80
Marcel Ziswileref002e52023-08-29 00:01:54 +020081As a convenience, instead of having to remember all those addresses and sizes,
82one may also use the update U-Boot wrappers:
83
84.. code-block:: bash
85
86 > tftpboot ${loadaddr} tiboot3-am62x-gp-verdin.bin
87 > run update_tiboot3
88
89 > tftpboot ${loadaddr} tispl.bin
90 > run update_tispl
91
92 > tftpboot ${loadaddr} u-boot.img
93 > run update_uboot
94
Marcel Ziswiler315deb32023-08-04 12:08:08 +020095Boot
96----
97
Marcel Ziswiler813070a2023-08-29 00:01:53 +020098Output::
Marcel Ziswiler315deb32023-08-04 12:08:08 +020099
Marcel Ziswiler712d6242023-08-07 01:44:46 +0200100 U-Boot SPL 2023.10-rc1-00210-gb678170a34c (Aug 03 2023 - 00:09:14 +0200)
101 SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.1--v09.00.01 (Kool Koala)')
102 SPL initial stack usage: 13368 bytes
103 Trying to boot from MMC1
104 Authentication passed
105 Authentication passed
106 Authentication passed
107 Authentication passed
108 Authentication passed
109 Starting ATF on ARM64 core...
Marcel Ziswiler315deb32023-08-04 12:08:08 +0200110
Marcel Ziswiler712d6242023-08-07 01:44:46 +0200111 NOTICE: BL31: v2.9(release):v2.9.0-73-g463655cc8
112 NOTICE: BL31: Built : 14:51:42, Jun 5 2023
113 I/TC:
114 I/TC: OP-TEE version: 3.21.0-168-g322cf9e33 (gcc version 12.2.1 20221205 (Arm GNU Toolchain 12.2.Rel1 (Build arm-12.24))) #2 Mon Jun 5 13:04:15 UTC 2023 aarch64
115 I/TC: WARNING: This OP-TEE configuration might be insecure!
116 I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
117 I/TC: Primary CPU initializing
118 I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.1--v09.00.01 (Kool Koala)')
119 I/TC: HUK Initialized
120 I/TC: Primary CPU switching to normal world boot
Marcel Ziswiler315deb32023-08-04 12:08:08 +0200121
Marcel Ziswiler712d6242023-08-07 01:44:46 +0200122 U-Boot SPL 2023.10-rc1-00210-gb678170a34c (Aug 03 2023 - 00:09:41 +0200)
123 SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.1--v09.00.01 (Kool Koala)')
124 SPL initial stack usage: 1840 bytes
125 Trying to boot from MMC1
126 Authentication passed
127 Authentication passed
Marcel Ziswiler315deb32023-08-04 12:08:08 +0200128
129
Marcel Ziswiler712d6242023-08-07 01:44:46 +0200130 U-Boot 2023.10-rc1-00210-gb678170a34c (Aug 03 2023 - 00:09:41 +0200)
Marcel Ziswiler315deb32023-08-04 12:08:08 +0200131
Marcel Ziswiler712d6242023-08-07 01:44:46 +0200132 SoC: AM62X SR1.0 HS-FS
133 DRAM: 2 GiB
134 Core: 136 devices, 28 uclasses, devicetree: separate
135 MMC: mmc@fa10000: 0, mmc@fa00000: 1
136 Loading Environment from MMC... OK
137 In: serial@2800000
138 Out: serial@2800000
139 Err: serial@2800000
140 Model: Toradex 0076 Verdin AM62 Quad 2GB WB IT V1.0A
141 Serial#: 15037380
142 Carrier: Toradex Verdin Development Board V1.1A, Serial# 10754333
143 am65_cpsw_nuss ethernet@8000000: K3 CPSW: nuss_ver: 0x6BA01103 cpsw_ver: 0x6BA81103 ale_ver: 0x00290105 Ports:2 mdio_freq:1000000
144 Setting variant to wifi
145 Net:
146 Warning: ethernet@8000000port@1 MAC addresses don't match:
147 Address in ROM is 1c:63:49:22:5f:f9
148 Address in environment is 00:14:2d:e5:73:c4
149 eth0: ethernet@8000000port@1 [PRIME], eth1: ethernet@8000000port@2
150 Hit any key to stop autoboot: 0
151 Verdin AM62 #