@@ -47,24 +47,22 @@ TI-SPL:
4747=======
4848
4949Falcon mode makes use of a cut down variant of the tispl binary called
50- `` tifalcon.bin `` with the Cortex-A SPL and it's corresponding DTB removed.
50+ :file: ` tifalcon.bin ` with the Cortex-A SPL and its corresponding DTB removed.
5151This file is deployed to the boot directory inside rootfs so it can be picked by
5252the R5 SPL at boot time.
5353
5454R5 SPL:
5555=======
5656
57- The R5 SPL is used for loading the kernel ``fitImage `` and ``tifalcon.bin ``
58- file, though the ``fitImage `` for falcon boot is signed by using an x509
59- certificate with TIFS keys instead of making use of signature nodes and keys
60- present in the DT. This allows for faster authentication since TIFS uses the
61- security accelerator for authentication, which is much faster than doing the
62- same on R5 core.
63-
64- This support depends on the U-Boot's ``k3_r5_falcon.config `` fragment, which is
65- built alongside the standard R5 defconfig when ``ti-falcon `` is enabled. This
66- updates the R5 memory map at U-Boot SPL stage to the following:
57+ The R5 SPL loads the kernel :file: `fitImage ` and :file: `tifalcon.bin ` file. An
58+ x509 certificate with TIFS keys verifies the :file: `fitImage ` for falcon boot
59+ instead of making use of signature nodes and keys present in the DT. This allows
60+ for faster authentication since TIFS uses the security accelerator for
61+ authentication, which is much faster than doing the same on R5 core.
6762
63+ This support is present alongside the standard R5 ``defconfig `` when ``ti-falcon ``
64+ is enabled due to U-Boot's :file: `k3_r5_falcon.config ` fragment. This updates
65+ the R5 memory map at U-Boot SPL stage to the following:
6866
6967.. code-block ::
7068
@@ -99,7 +97,7 @@ updates the R5 memory map at U-Boot SPL stage to the following:
9997 fitImage:
10098=========
10199
102- The resulting `` fitImage ` ` file in the boot directory of rootfs is produced
100+ The resulting :file: ` fitImage ` file in the boot directory of rootfs is produced
103101with the constituent binaries pre-signed with x509 certificates. This file is
104102authenticated from TIFS at boot time, which allows for a lower boot time than
105103authenticating on the R5 core.
@@ -113,13 +111,13 @@ OSPI boot:
113111
114112.. ifconfig :: CONFIG_part_variant not in ('AM62AX')
115113
116- For OSPI boot, the `` tiboot3.bin `` and `` tifalcon.bin ` ` files should be
114+ For OSPI boot, the :file: ` tiboot3.bin ` and :file: ` tifalcon.bin ` files should be
117115 flashed to the same addresses in flash as regular boot flow but the
118- `` fitImage ` ` is read from the rootfs's boot directory. The MMC device is
116+ :file: ` fitImage ` is read from the rootfs's boot directory. The MMC device is
119117 selected by the ``mmcdev `` env variable for R5 SPL.
120118
121- Below U-Boot commands can be used to download `` tiboot3.bin ` ` and
122- `` tifalcon.bin ` ` over tftp and then flash those to OSPI at their respective
119+ Below U-Boot commands can be used to download :file: ` tiboot3.bin ` and
120+ :file: ` tifalcon.bin ` over tftp and then flash those to OSPI at their respective
123121 addresses.
124122
125123 .. code-block :: console
@@ -137,10 +135,10 @@ OSPI boot:
137135eMMC Boot:
138136==========
139137
140- In eMMC boot mode, the `` tiboot3.bin ` ` file should be flashed to the hardware
141- boot partition whereas `` tifalcon.bin `` and the `` fitImage ` ` are read from
138+ In eMMC boot mode, the :file: ` tiboot3.bin ` file should be flashed to the hardware
139+ boot partition whereas :file: ` tifalcon.bin ` and the :file: ` fitImage ` are read from
142140the rootfs inside UDA. Use the U-Boot commands below to set the correct boot
143- partition and write `` tiboot3.bin ` ` to the correct offset.
141+ partition and write :file: ` tiboot3.bin ` to the correct offset.
144142
145143.. code-block :: console
146144
@@ -166,10 +164,10 @@ Clone the `core-secdev-k3 source <https://git.ti.com/cgit/security-development-t
166164
167165 $ git clone https://git.ti.com/cgit/security-development-tools/core-secdev-k3
168166
169- Copy the required kernel image renamed to `` Image ` ` and the DTB renamed to
170- `` falcon.dtb ` ` inside the core-secdev-k3 source directory.
167+ Copy the required kernel image renamed to :file: ` Image ` and the DTB renamed to
168+ :file: ` falcon.dtb ` inside the core-secdev-k3 source directory.
171169
172- Copy the following contents to a file named `` fitImage.its ` ` inside
170+ Copy the following contents to a file named :file: ` fitImage.its ` inside
173171core-secdev-k3 source:
174172
175173.. code-block :: dts
@@ -212,8 +210,8 @@ core-secdev-k3 source:
212210 };
213211 };
214212
215- Sign the kernel and dtb with `` secure-binary-image.sh ` ` and create the
216- `` fitImage ` ` by using mkimage:
213+ Sign the kernel and dtb with :file: ` secure-binary-image.sh ` and create the
214+ :file: ` fitImage ` by using mkimage:
217215
218216.. code-block :: console
219217
@@ -226,20 +224,20 @@ Sign the kernel and dtb with ``secure-binary-image.sh`` and create the
226224Non-Yocto Users:
227225****************
228226
229- Following are the steps to build `` tiboot3.bin ``, `` tifalcon.bin ` ` and the
230- `` fitImage ` ` required for falcon mode:
227+ Following are the steps to build :file: ` tiboot3.bin `, :file: ` tifalcon.bin ` and the
228+ :file: ` fitImage ` required for falcon mode:
231229
232230#. For :ref: `ATF build <foundational-components-atf >`, use the following
233231 arguments to update the ATF's jump address for the kernel and the
234232 device-tree: ``PRELOADED_BL33_BASE=0x82000000 K3_HW_CONFIG_BASE=0x88000000 ``.
235233
236234#. For :ref: `R5 U-Boot build <Build-U-Boot-label >`, use the
237- `` k3_r5_falcon.config ` ` fragment to enable flacon support at the R5 SPL
235+ :file: ` k3_r5_falcon.config ` fragment to enable flacon support at the R5 SPL
238236 stage.
239237
240238#. Refer to the :ref: `fitImage creation step
241239 <u-boot_falcon_mode_fitImage_creation>` above for preparing a bootable
242- `` fitImage ` ` with an appropriate kernel and DTB.
240+ :file: ` fitImage ` with an appropriate kernel and DTB.
243241
244242#. Copy the files generated to correct path on SD/eMMC as in the table below:
245243
@@ -252,26 +250,26 @@ Following are the steps to build ``tiboot3.bin``, ``tifalcon.bin`` and the
252250 - Partition
253251 - Description
254252
255- * - `` tiboot3.bin ` `
256- - `` /tiboot3.bin ` `
253+ * - :file: ` tiboot3.bin `
254+ - :file: ` /tiboot3.bin `
257255 - boot (fat)
258256 - R5 SPL with falcon support
259257
260- * - `` tifalcon.bin ` `
261- - `` /boot/tifalcon.bin ` `
258+ * - :file: ` tifalcon.bin `
259+ - :file: ` /boot/tifalcon.bin `
262260 - rootfs (ext4)
263261 - tispl binary without SPL for the A core and DTB
264262
265- * - `` fitImage ` `
266- - `` /boot/fitImage ` `
263+ * - :file: ` fitImage `
264+ - :file: ` /boot/fitImage `
267265 - rootfs (ext4)
268266 - kernel and dtb fitImage with pre-signed binaries
269267
270268.. note ::
271269
272- The `` tifalcon.bin ` ` binary is generated by default for all falcon
270+ The :file: ` tifalcon.bin ` binary is generated by default for all falcon
273271 supported platforms at the A-Core U-Boot build step and can be found
274- alongside the existing `` tispl.bin ` ` file in U-Boot build's output directory.
272+ alongside the existing :file: ` tispl.bin ` file in U-Boot build's output directory.
275273
276274**********************
277275Boot time comparisons:
0 commit comments