From a0e47843c35a0eba9242488f7557712bc652d0ff Mon Sep 17 00:00:00 2001 From: T Pratham Date: Thu, 23 Apr 2026 20:56:04 +0530 Subject: [PATCH 1/3] feat(security): Add Secure Boot documentation for AM62LX SoC Secure boot page is missing AM62L specific documentation. Due to very large difference with other SoCs in the boot flow, this contains many differences in documentation as well. This commit adds any AM62L specific information in the Secure Boot section, and adds it to its TOC. Signed-off-by: T Pratham --- configs/AM62LX/AM62LX_linux_toc.txt | 1 + source/images/AM62L_BF.png | Bin 0 -> 165901 bytes source/images/AM62L_KF.png | Bin 0 -> 73041 bytes .../System_Security/Security_overview.rst | 68 +++--- .../Foundational_Components_Secure_Boot.rst | 226 +++++++++++++----- 5 files changed, 206 insertions(+), 89 deletions(-) create mode 100644 source/images/AM62L_BF.png create mode 100644 source/images/AM62L_KF.png diff --git a/configs/AM62LX/AM62LX_linux_toc.txt b/configs/AM62LX/AM62LX_linux_toc.txt index 86ec9e1d8..9b979e20b 100644 --- a/configs/AM62LX/AM62LX_linux_toc.txt +++ b/configs/AM62LX/AM62LX_linux_toc.txt @@ -86,6 +86,7 @@ linux/Foundational_Components/System_Security/Security_overview linux/Foundational_Components/System_Security/Auth_boot linux/Foundational_Components/System_Security/Memory_Firewalls linux/Foundational_Components/System_Security/Filesystem_Encryption +linux/Foundational_Components_Secure_Boot linux/Foundational_Components_Kernel_Users_Guide linux/Foundational_Components_Kernel_LTP-DDT_Validation diff --git a/source/images/AM62L_BF.png b/source/images/AM62L_BF.png new file mode 100644 index 0000000000000000000000000000000000000000..3e9ff7c0f2030031b7431c947ebe16518990dc1e GIT binary patch literal 165901 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

$rn9NJf?$8)~?@y)J~UIr6?eN3LaQZ{ep}9 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�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 literal 0 HcmV?d00001 diff --git a/source/images/AM62L_KF.png b/source/images/AM62L_KF.png new file mode 100644 index 0000000000000000000000000000000000000000..d834a2ea419449fb2611f38ced5cdde6c8dc7ca7 GIT binary patch literal 73041 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∨;Z7XMH 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 z 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 literal 0 HcmV?d00001 diff --git a/source/linux/Foundational_Components/System_Security/Security_overview.rst b/source/linux/Foundational_Components/System_Security/Security_overview.rst index 22ee4936b..39c70e415 100644 --- a/source/linux/Foundational_Components/System_Security/Security_overview.rst +++ b/source/linux/Foundational_Components/System_Security/Security_overview.rst @@ -8,19 +8,19 @@ Device Security Security Overview ================= -The |__PART_FAMILY_DEVICE_NAMES__| SoC offers a comprehensive set of -security features that protect embedded Linux applications. This guide -offers a starting point to understand and implement these capabilities +The |__PART_FAMILY_DEVICE_NAMES__| SoC offers a comprehensive set of +security features that protect embedded Linux applications. This guide +offers a starting point to understand and implement these capabilities as part of product development, with the following advantages: -* **Hardware-backed security** - Leverages built-in security hardware +* **Hardware-backed security** - Leverages built-in security hardware for robust protection * **Defense in-depth** - Implements security at many levels including hardware, firmware, software to protect against wide range of attacks * **Industry standards compliance** - Incorporates security measures such as secure boot, TrustZone, and crypto acceleration that can help meet requirements in standards such as IEC 62443 and NIST guidelines -* **Flexible implementation** - Allows security features that can be +* **Flexible implementation** - Allows security features that can be tailored to specific application needs ================ @@ -31,7 +31,7 @@ Below is an overview of the security framework's main domains: .. figure:: ./images/security_framework.png -These security domains create a chain of trust protecting the +These security domains create a chain of trust protecting the |__PART_FAMILY_DEVICE_NAMES__| SoC from boot through runtime and storage, ensuring system integrity and data confidentiality. @@ -43,31 +43,35 @@ The following table lists some of the key Security Features: .. ifconfig:: CONFIG_part_variant in ('AM62LX') - +-------------------------+-----------------------------------------------------------+--------------------------------------+ - | **Security Feature** | **Description** | **Links** | - +=========================+===========================================================+======================================+ - | **Authenticated Boot** | Verifies each boot component to ensure only authorized | :ref:`auth_boot_guide` | - | | code executes on the device | | - +-------------------------+-----------------------------------------------------------+--------------------------------------+ - | **Crypto Acceleration** | Hardware driver support for cryptographic algorithms and | :ref:`crypto-accelerator` | - | **and TRNG** | hardware entropy based secure random number generation | | - +-------------------------+-----------------------------------------------------------+--------------------------------------+ - | **Key Management** | Tools for secure key provisioning | :ref:`key-writer-lite-label` | - +-------------------------+-----------------------------------------------------------+--------------------------------------+ - | **Secure Storage** | Protection mechanisms for sensitive data | :ref:`secure-storage-with-rpmb` | - +-------------------------+-----------------------------------------------------------+--------------------------------------+ - | **Trusted Execution** | Implementation of secure monitor (EL3) firmware that | :ref:`foundational-components-atf` | - | | manages the secure boot process and TrustZone transitions | | - + +-----------------------------------------------------------+--------------------------------------+ - | | Trusted Execution Environment that enables isolated | :ref:`foundational-components-optee` | - | | execution of security-sensitive applications and services | | - +-------------------------+-----------------------------------------------------------+--------------------------------------+ - | **Memory Firewalls** | Prevents unauthorized access through hardware-enforced | :ref:`memory-firewalls` | - | | security boundaries | | - +-------------------------+-----------------------------------------------------------+--------------------------------------+ - |**fTPM based** | Yocto reference implemenation of filesystem encryption | :ref:`filesystem-encryption` | - |**Filesystem Encryption**| using LUKS2 with TPM-sealed keys | | - +-------------------------+-----------------------------------------------------------+--------------------------------------+ + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + | **Security Feature** | **Description** | **Links** | + +=========================+===========================================================+=========================================+ + | **Secure Boot** | Verifies and decrypts each boot stage, establishing a | :ref:`foundational-secure-boot` | + | | hardware-backed chain of trust from ROM to Linux using | | + | | customer-programmable keys | | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + | **Authenticated Boot** | Verifies each boot component to ensure only authorized | :ref:`auth_boot_guide` | + | | code executes on the device | | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + | **Crypto Acceleration** | Hardware driver support for cryptographic algorithms and | :ref:`crypto-accelerator` | + | **and TRNG** | hardware entropy based secure random number generation | | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + | **Key Management** | Tools for secure key provisioning | :ref:`key-writer-lite-label` | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + | **Secure Storage** | Protection mechanisms for sensitive data | :ref:`secure-storage-with-rpmb` | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + | **Trusted Execution** | Implementation of secure monitor (EL3) firmware that | :ref:`foundational-components-atf` | + | | manages the secure boot process and TrustZone transitions | | + + +-----------------------------------------------------------+-----------------------------------------+ + | | Trusted Execution Environment that enables isolated | :ref:`foundational-components-optee` | + | | execution of security-sensitive applications and services | | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + | **Memory Firewalls** | Prevents unauthorized access through hardware-enforced | :ref:`memory-firewalls` | + | | security boundaries | | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ + |**fTPM based** | Yocto reference implemenation of filesystem encryption | :ref:`filesystem-encryption` | + |**Filesystem Encryption**| using LUKS2 with TPM-sealed keys | | + +-------------------------+-----------------------------------------------------------+-----------------------------------------+ .. ifconfig:: CONFIG_part_variant in ('AM62X', 'AM62PX', 'AM62AX') @@ -120,6 +124,6 @@ The following table lists some of the key Security Features: | | execution of security-sensitive applications and services | | +-------------------------+-----------------------------------------------------------+--------------------------------------+ | **Memory Firewalls** | Prevents unauthorized access through hardware-enforced | :ref:`memory-firewalls` | - | | security boundaries | | + | | security boundaries | | +-------------------------+-----------------------------------------------------------+--------------------------------------+ diff --git a/source/linux/Foundational_Components_Secure_Boot.rst b/source/linux/Foundational_Components_Secure_Boot.rst index 347c2bb86..3074298e0 100644 --- a/source/linux/Foundational_Components_Secure_Boot.rst +++ b/source/linux/Foundational_Components_Secure_Boot.rst @@ -32,13 +32,28 @@ The following is an example list where Chain-of-Trust should be maintained. - Disable kernel debug options - Disable/remove userspace debug tools, devmem disable, etc.. -We offer methods for U-Boot's Secondary Program Loader (SPL) to securely verify the U-Boot -proper. U-Boot calls Texas Instrument Foundational Security (TIFS) through Texas Instruments System Controller Interface (TISCI) -to do this. For more information about using TISCI methods see the -`TISCI User Guide `__. U-Boot proper then securely verifies and decrypts the kernel, Device Tree Blobs (DTB), and initramfs. +.. ifconfig:: CONFIG_part_variant in ('AM62LX') -.. Image:: /images/K3_KF.png - :scale: 70% + The U-Boot's Secondary Program Loader (SPL) securely verifies the U-Boot + proper. U-Boot uses its verified boot framework to do this. U-Boot proper + then securely verifies and decrypts the kernel, Device Tree Blobs (DTB), + and initramfs. + + .. Image:: /images/AM62L_KF.png + :scale: 70% + +.. ifconfig:: CONFIG_part_variant not in ('AM62LX') + + We offer methods for U-Boot's Secondary Program Loader (SPL) to securely + verify the U-Boot proper. U-Boot calls Texas Instrument Foundational + Security (TIFS) through Texas Instruments System Controller Interface + (TISCI) to do this. For more information about using TISCI methods see the + `TISCI User Guide `__. + U-Boot proper then securely verifies and decrypts the kernel, Device Tree + Blobs (DTB), and initramfs. + + .. Image:: /images/K3_KF.png + :scale: 70% Secure boot has layers. Some layers are trusted more than others. Secure ROM has the highest trust and Runtime Execution Environment (REE) non-trustzone user-space applications have the least. If a @@ -46,78 +61,154 @@ lower trust entity must load a higher trust code, an even higher trust entity must verify it and not allow access by the lower trust entity after that point. Some such trust inversions are as follows: -- R5 U-Boot loading ATF/OP-TEE -- R5 Public Boot ROM loading TIFS -- Linux loading Trusted applications(TA) +.. ifconfig:: CONFIG_part_variant in ('AM62LX') + + - A53 Public Boot ROM loading TF-A/OP-TEE + - A53 Public Boot ROM loading TIFS + - Linux loading Trusted applications (TA) + +.. ifconfig:: CONFIG_part_variant not in ('AM62LX') + + - R5 U-Boot loading TF-A/OP-TEE + - R5 Public Boot ROM loading TIFS + - Linux loading Trusted applications (TA) These are called out in the sequence as shown in the following image and their method of ensuring trust is explained. Secure Boot Flow -------------------- -.. Image:: /images/K3_BF.jpg - :scale: 70% +.. ifconfig:: CONFIG_part_variant in ('AM62LX') + + .. Image:: /images/AM62L_BF.png + :scale: 70% + +.. ifconfig:: CONFIG_part_variant not in ('AM62LX') + + .. Image:: /images/K3_BF.jpg + :scale: 70% .. rubric:: ROM -On device startup, execution begins with the ROM bootloader (Secure ROM) running on the DSMC/TIFS core. After initial device security -setup the Secure ROM starts the Public ROM running on the R5 core. The Public Boot ROM handles loading the first stage image `tiboot3.bin` from a -peripheral as selected by the BOOTMODE pins. This image is placed into on chip SRAM as external memory interfaces such as DDR are not yet enabled. -The exact location is device dependent. More details can be found in the device "Technical Reference Manual". +.. ifconfig:: CONFIG_part_variant not in ('AM62LX') + + On device startup, execution begins with the ROM bootloader (Secure ROM) + running on the DSMC/TIFS core. After initial device security setup the + Secure ROM starts the Public ROM running on the R5 core. The Public Boot ROM + handles loading the first stage image :file:`tiboot3.bin` from a peripheral + as selected by the BOOTMODE pins. This image is placed into on chip SRAM as + external memory interfaces such as DDR are not yet enabled. The exact + location is device dependent. More details can be found in the device + "Technical Reference Manual". + + .. ifconfig:: CONFIG_part_variant in ('AM64X') + + The contents of this first stage image are authenticated and decrypted by + the Secure ROM. Contents include: -.. ifconfig:: CONFIG_part_variant in ('AM64x') + * DMSC firmware: `Texas Instruments Foundational Security (TIFS)` + Device/Power Manager: After authentication/decryption, DMSC firmware replaces the Secure ROM as the authenticator entity executing on the DMSC core. + * R5 SPL: The R5 SPL bootloader is executed on the R5 core. - The contents of this first stage image are authenticated and decrypted by the Secure ROM. Contents include: + .. ifconfig:: CONFIG_part_variant not in ('AM64X') - * DMSC firmware: `Texas Instruments Foundational Security (TIFS)` + Device/Power Manager: After authentication/decryption, DMSC firmware replaces the Secure ROM as the authenticator entity executing on the DMSC core. - * R5 SPL: The R5 SPL bootloader is executed on the R5 core. + The contents of this first stage image are authenticated and decrypted by + the Secure ROM. Contents include: -.. ifconfig:: CONFIG_part_variant not in ('AM64X') + * `Texas Instruments Foundational Security (TIFS)` firmware: After authentication/decryption, TIFS firmware replaces the Secure ROM as the authenticator entity executing on the TIFS core. + * R5 SPL: The R5 SPL bootloader is executed on the R5 core. + +.. ifconfig:: CONFIG_part_variant in ('AM62LX') + + On device startup, execution begins with the ROM bootloader (Secure ROM) + running on SMS M4 core. After initial device security setup, the Secure ROM + starts the Public ROM running on the A53 core. The Public ROM handles + loading the first stage image :file:`tiboot3.bin` from a peripheral as + selected by the BOOTMODE pins. This image is placed into on-chip SRAM as + external memory interfaces such as DDR are not yet enabled. The exact + location is device dependent. More details can be found in the device + "Technical Reference Manual". The contents of this first stage image are authenticated and decrypted by the Secure ROM. Contents include: - * `Texas Instruments Foundational Security (TIFS)` firmware: After authentication/decryption, TIFS firmware replaces the Secure ROM as the authenticator entity executing on the TIFS core. - * R5 SPL`: The R5 SPL bootloader is executed on the R5 core. + * `Texas Instruments Foundational Security (TIFS)` firmware: After authentication/decryption, TIFS firmware replaces the Secure ROM as the authenticator entity executing on the M4 core in the 2nd phase of the boot. + * BL-1: The pre-bootloader executed on the A53 core, initializes the console and DDR for the 2nd phase of the boot. -.. rubric:: R5 SPL +.. ifconfig:: CONFIG_part_variant not in ('AM62LX') -R5 SPL loads the second boot stage FIT image `tispl.bin` from the peripheral as selected by the BOOTMODE pins. From this FIT image, TF-A, OPTEE, A53 SPL, -and SPL DTB are extracted and authenticated and/or decrypted by TIFS. If authentication passed, the R5 SPL starts the ARM64 core. TF-A, OPTEE, and A53 SPL -will begin execution on the ARM64 core. R5 SPL also configures DDR and the console so the user can see the first prints as seen below: + .. rubric:: R5 SPL -R5 SPL's output will be similar to this: -Notice the "Authentication passed" lines as TF-A, OPTEE, A53 SPL, and SPL DTB are authenticated. + R5 SPL loads the second boot stage FIT image `tispl.bin` from the + peripheral as selected by the BOOTMODE pins. From this FIT image, TF-A, + OPTEE, A53 SPL, and SPL DTB are extracted and authenticated and/or decrypted + by TIFS. If authentication passed, the R5 SPL starts the ARM64 core. TF-A, + OPTEE, and A53 SPL will begin execution on the ARM64 core. R5 SPL also + configures DDR and the console so the user can see the first prints as seen + below: -.. code-block:: console + R5 SPL's output will be similar to this: + Notice the "Authentication passed" lines as TF-A, OPTEE, A53 SPL, and SPL DTB are authenticated. + + .. code-block:: console - U-Boot SPL 2021.01-dirty (May 13 2022 - 15:05:11 -0500) - SYSFW ABI: 3.1 (firmware rev 0x0008 '8.4.0-3-gd5cb1+ (Jolly Jellyfis') - SPL initial stack usage: 13392 bytes - Trying to boot from MMC2 - Authentication passed - Authentication passed - Authentication passed - Authentication passed - Starting ATF on ARM64 core... + U-Boot SPL 2021.01-dirty (May 13 2022 - 15:05:11 -0500) + SYSFW ABI: 3.1 (firmware rev 0x0008 '8.4.0-3-gd5cb1+ (Jolly Jellyfis') + SPL initial stack usage: 13392 bytes + Trying to boot from MMC2 + Authentication passed + Authentication passed + Authentication passed + Authentication passed + Starting ATF on ARM64 core... -.. ifconfig:: CONFIG_part_variant in ('AM62x') + .. ifconfig:: CONFIG_part_variant in ('AM62x') - After R5 SPL, the device/power manager firmware continues running on the R5 core. + After R5 SPL, the device/power manager firmware continues running on the R5 core. .. rubric:: A53 SPL -A53 SPL then loads the U-Boot proper FIT image `U-boot.img` from the peripheral as selected by the BOOTMODE pins. From this FIT image, the U-boot bootloader -and DTB are extracted before passing execution to u-boot proper. +.. ifconfig:: CONFIG_part_variant not in ('AM62LX') -A53 SPL's output will be similar to this: (notice the "Authentication passed" lines as U-Boot and the DTB are authenticated). + A53 SPL then loads the U-Boot proper FIT image :file:`u-boot.img` from the + peripheral as selected by the BOOTMODE pins. From this FIT image, the U-Boot + bootloader and DTB are extracted before passing execution to U-Boot proper. -.. code-block:: console + A53 SPL's output will be similar to this: (notice the "Authentication passed" lines as U-Boot and the DTB are authenticated). + + .. code-block:: console + + U-Boot SPL 2021.01-g2de57d278b (May 16 2022 - 14:28:40 +0000) + SYSFW ABI: 3.1 (firmware rev 0x0008 '8.4.0-3-gd5cb1+ (Jolly Jellyfis') + Trying to boot from MMC2 + Authentication passed + Authentication passed + +.. ifconfig:: CONFIG_part_variant in ('AM62LX') + + Public ROM loads the second boot stage image :file:`tispl.bin` from the + peripheral as selected by the BOOTMODE pins. From this image, TF-A, OP-TEE, + A53 SPL (U-Boot SPL) and SPL DTB are extracted and authenticated and/or + decrypted by the Secure ROM. If authenticated, the Secure ROM resets the A53 + core. TF-A, OP-TEE and U-Boot SPL begin execution on the A53 core. + + U-Boot SPL then loads the U-Boot proper FIT image :file:`u-boot.img` from + the peripheral as selected by the BOOTMODE pins. The U-Boot SPL verifies the + signed FIT image independently, without using TIFS. From this FIT image, the + U-Boot bootloader and DTB are extracted before passing execution to U-Boot + proper. + + U-Boot SPL's output will be similar to this: (notice the "Checking hash(es)" + lines as U-Boot and DTB are authenticated). + + .. code-block:: console - U-Boot SPL 2021.01-g2de57d278b (May 16 2022 - 14:28:40 +0000) - SYSFW ABI: 3.1 (firmware rev 0x0008 '8.4.0-3-gd5cb1+ (Jolly Jellyfis') - Trying to boot from MMC2 - Authentication passed - Authentication passed + U-Boot SPL 2026.01-ti-gee3048ee0822 (Apr 09 2026 - 00:09:07 +0000) + SPL initial stack usage: 1936 bytes + Trying to boot from DFU + ######DOWNLOAD ... OK + Ctrl+C to exit ... + ## Checking hash(es) for config conf-0 ... sha512,rsa4096:custMpk+ OK + ## Checking hash(es) for Image uboot ... sha512+ OK + ## Checking hash(es) for Image fdt-0 ... sha512+ OK .. rubric:: U-Boot @@ -194,17 +285,38 @@ HS Boot Flow Tools U-boot: - The ti-u-boot source is a project used to create tiboot3.bin, tispl.bin, and u-boot.img. To create tiboot3.bin for K3 family devices, u-boot builds R5 SPL and - binman packages it in a `tiboot3.bin` image. To build A53 SPL, binman takes ATF (bl31.bin), OPTEE (bl32.bin), A53 SPL, and A53 DTBs and packages - them in a `tispl.bin` image. U-Boot can then use the openssl library to sign each component as specified in k3--binman.dtsi. + .. ifconfig:: CONFIG_part_variant not in ('AM62LX') - .. code-block:: console + The ti-u-boot source is a project used to create tiboot3.bin, tispl.bin, and u-boot.img. To create tiboot3.bin for K3 family devices, u-boot builds R5 SPL and + binman packages it in a `tiboot3.bin` image. To build A53 SPL, binman takes TF-A (bl31.bin), OPTEE (bl32.bin), A53 SPL, and A53 DTBs and packages + them in a `tispl.bin` image. U-Boot can then use the openssl library to sign each component as specified in k3--binman.dtsi. - $ git clone https://git.ti.com/git/ti-u-boot/ti-u-boot.git + .. code-block:: console - Example use: - $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- am64x_evm_a53_defconfig - $ make CROSS_COMPILE=aarch64-none-linux-gnu- ATF=bl31.bin TEE=tee-pager_v2.bin BINMAN_INDIRS=/board-support/prebuilt-images + $ git clone https://git.ti.com/git/ti-u-boot/ti-u-boot.git + + $ # Example use: + $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- am64x_evm_a53_defconfig + $ make CROSS_COMPILE=aarch64-none-linux-gnu- BL31=bl31.bin TEE=tee-pager_v2.bin BINMAN_INDIRS=/board-support/prebuilt-images + + .. ifconfig:: CONFIG_part_variant in ('AM62LX') + + The ti-u-boot source is a project used to create :file:`tiboot3.bin`, + :file:`tispl.bin`, and :file:`u-boot.img`. To create :file:`tiboot3.bin` + for K3 family devices, U-Boot builds BL-1 and binman packages it in a + :file:`tiboot3.bin` image. To build A53 SPL, binman takes TF-A + (:file:`bl31.bin`), OPTEE (:file:`bl32.bin`), A53 SPL, and A53 DTBs and + packages them in a :file:`tispl.bin` image. U-Boot can then use the + openssl library to sign each component as specified in + :file:`k3-am62l3-evm-binman.dtsi`. + + .. code-block:: console + + $ git clone https://git.ti.com/git/ti-u-boot/ti-u-boot.git + + $ # Example use: + $ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- am62lx_evm_defconfig + $ make CROSS_COMPILE=aarch64-none-linux-gnu- BL1=bl1.bin BL31=bl31.bin TEE=tee-pager_v2.bin BINMAN_INDIRS=/board-support/prebuilt-images Linux: From dce2a4fd0945b792b343c62a1d71cba2cf7caeb7 Mon Sep 17 00:00:00 2001 From: T Pratham Date: Thu, 23 Apr 2026 21:13:22 +0530 Subject: [PATCH 2/3] fix(security): Formatting cleanup to Secure Boot page Changes the indentation to 3 spaces, adds :file: and :code: directive to appropriate places, and wrap long lines to 80 characters. While here, also update the name "U-Boot" to have a consistent case everywhere, and update ATF to TF-A. Signed-off-by: T Pratham --- .../Foundational_Components_Secure_Boot.rst | 223 ++++++++++-------- 1 file changed, 125 insertions(+), 98 deletions(-) diff --git a/source/linux/Foundational_Components_Secure_Boot.rst b/source/linux/Foundational_Components_Secure_Boot.rst index 3074298e0..991394f8d 100644 --- a/source/linux/Foundational_Components_Secure_Boot.rst +++ b/source/linux/Foundational_Components_Secure_Boot.rst @@ -15,7 +15,7 @@ pass authentication for Public Boot ROM to continue boot. It is then the respons each next stage is itself authenticated. One weak link and all lower trust levels could be compromised. .. Note:: - Example: Forgetting to disable u-boot console or environment loading means a non-secured linux can be loaded. The U-Boot console (or command + Example: Forgetting to disable U-Boot console or environment loading means a non-secured linux can be loaded. The U-Boot console (or command line interface (CLI)) and environment are powerful features that make it great for creating a customized boot process. However, leaving either or them enabled in a production system allows non-secured software to be loaded and the Chain-of-Trust to be broken. @@ -24,7 +24,7 @@ The following is an example list where Chain-of-Trust should be maintained. - Remove U-Boot uEnv.txt loading support. - Disable environment loading (the default built-in environment must be compiled to be the one you want). - Environment must not fallback to other boot modes. -- Place firewalls in board-config to match the location of loaded artifacts (ATF/OP-TEE). +- Place firewalls in board-config to match the location of loaded artifacts (TF-A/OP-TEE). - Update debug sections of initial image cert. - Enable DM-verity/DM-crypt. - Set root password or disable root account. @@ -55,11 +55,12 @@ The following is an example list where Chain-of-Trust should be maintained. .. Image:: /images/K3_KF.png :scale: 70% -Secure boot has layers. Some layers are trusted more than others. Secure ROM has the highest trust and Runtime Execution -Environment (REE) non-trustzone user-space applications have the least. If a -lower trust entity must load a higher trust code, an even higher trust entity -must verify it and not allow access by the lower trust entity after that -point. Some such trust inversions are as follows: +Secure boot has layers. Some layers are trusted more than others. Secure ROM +has the highest trust and Runtime Execution Environment (REE) non-trustzone +user-space applications have the least. If a lower trust entity must load a +higher trust code, an even higher trust entity must verify it and not allow +access by the lower trust entity after that point. Some such trust inversions +are as follows: .. ifconfig:: CONFIG_part_variant in ('AM62LX') @@ -73,7 +74,8 @@ point. Some such trust inversions are as follows: - R5 Public Boot ROM loading TIFS - Linux loading Trusted applications (TA) -These are called out in the sequence as shown in the following image and their method of ensuring trust is explained. +These are called out in the sequence as shown in the following image and +their method of ensuring trust is explained. Secure Boot Flow -------------------- @@ -128,7 +130,8 @@ Secure Boot Flow location is device dependent. More details can be found in the device "Technical Reference Manual". - The contents of this first stage image are authenticated and decrypted by the Secure ROM. Contents include: + The contents of this first stage image are authenticated and decrypted by + the Secure ROM. Contents include: * `Texas Instruments Foundational Security (TIFS)` firmware: After authentication/decryption, TIFS firmware replaces the Secure ROM as the authenticator entity executing on the M4 core in the 2nd phase of the boot. * BL-1: The pre-bootloader executed on the A53 core, initializes the console and DDR for the 2nd phase of the boot. @@ -212,84 +215,98 @@ Secure Boot Flow .. rubric:: U-Boot -The boot flow continues as it does on a non-secure device, until loading the next FIT image named `fitImage`. This FIT image includes the Linux kernel, DTB, and -other required boot artifacts. U-boot verifies the signed images on boot independently, without using TIFS. U-boot extracts each component from the FIT image and verifies its signature. Once u-boot verifies all components, it starts Linux. For more information, see: `U-Boot FIT Signature Documentation `__ +The boot flow continues as it does on a non-secure device, until loading the +next FIT image named :file:`fitImage`. This FIT image includes the Linux +kernel, DTB, and other required boot artifacts. U-Boot verifies the signed +images on boot independently, without using TIFS. U-Boot extracts each +component from the FIT image and verifies its signature. Once U-Boot verifies +all components, it starts Linux. For more information, see: +`U-Boot FIT Signature Documentation `__ -U-boot's output will be similar to this: +U-Boot's output will be similar to this: .. code-block:: console - U-Boot 2021.01-g2de57d278b (May 16 2022 - 14:28:40 +0000) - - SoC: AM64X SR1.0 - Model: Texas Instruments AM642 EVM - Board: AM64-GPEVM rev A - DRAM: 2 GiB - NAND: 0 MiB - MMC: mmc@fa10000: 0, mmc@fa00000: 1 - Loading Environment from FAT... *** Warning - bad CRC, using default environment - - In: serial@2800000 - Out: serial@2800000 - Err: serial@2800000 - Net: eth0: ethernet@8000000port@1 - Hit any key to stop autoboot: 0 - switch to partitions #0, OK - mmc1 is current device - SD/MMC found on device 1 - Failed to load 'boot.scr' - 1011 bytes read in 2 ms (493.2 KiB/s) - Loaded env from uEnv.txt - Importing environment from mmc1 ... - Running uenvcmd ... - 7862647 bytes read in 328 ms (22.9 MiB/s) - ## Loading kernel from FIT Image at 90000000 ... - Using 'k3-am642-evm.dtb' configuration - Trying 'kernel@1' kernel subimage - Description: Linux kernel - Type: Kernel Image - Compression: gzip compressed - Data Start: 0x900000f8 - Data Size: 7743643 Bytes = 7.4 MiB - Architecture: AArch64 - OS: Linux - Load Address: 0x80080000 - Entry Point: 0x80080000 - Verifying Hash Integrity ... OK - ## Loading fdt from FIT Image at 90000000 ... - Using 'k3-am642-evm.dtb' configuration - Trying 'k3-am642-evm.dtb' fdt subimage - Description: Flattened Device Tree blob - Type: Flat Device Tree - Compression: uncompressed - Data Start: 0x90762a54 - Data Size: 56436 Bytes = 55.1 KiB - Architecture: AArch64 - Load Address: 0x83000000 - Verifying Hash Integrity ... OK - Loading fdt from 0x90762a54 to 0x83000000 - Booting using the fdt blob at 0x83000000 - Uncompressing Kernel Image - Loading Device Tree to 000000008ffef000, end 000000008ffff602 ... OK + U-Boot 2021.01-g2de57d278b (May 16 2022 - 14:28:40 +0000) + + SoC: AM64X SR1.0 + Model: Texas Instruments AM642 EVM + Board: AM64-GPEVM rev A + DRAM: 2 GiB + NAND: 0 MiB + MMC: mmc@fa10000: 0, mmc@fa00000: 1 + Loading Environment from FAT... *** Warning - bad CRC, using default environment + + In: serial@2800000 + Out: serial@2800000 + Err: serial@2800000 + Net: eth0: ethernet@8000000port@1 + Hit any key to stop autoboot: 0 + switch to partitions #0, OK + mmc1 is current device + SD/MMC found on device 1 + Failed to load 'boot.scr' + 1011 bytes read in 2 ms (493.2 KiB/s) + Loaded env from uEnv.txt + Importing environment from mmc1 ... + Running uenvcmd ... + 7862647 bytes read in 328 ms (22.9 MiB/s) + ## Loading kernel from FIT Image at 90000000 ... + Using 'k3-am642-evm.dtb' configuration + Trying 'kernel@1' kernel subimage + Description: Linux kernel + Type: Kernel Image + Compression: gzip compressed + Data Start: 0x900000f8 + Data Size: 7743643 Bytes = 7.4 MiB + Architecture: AArch64 + OS: Linux + Load Address: 0x80080000 + Entry Point: 0x80080000 + Verifying Hash Integrity ... OK + ## Loading fdt from FIT Image at 90000000 ... + Using 'k3-am642-evm.dtb' configuration + Trying 'k3-am642-evm.dtb' fdt subimage + Description: Flattened Device Tree blob + Type: Flat Device Tree + Compression: uncompressed + Data Start: 0x90762a54 + Data Size: 56436 Bytes = 55.1 KiB + Architecture: AArch64 + Load Address: 0x83000000 + Verifying Hash Integrity ... OK + Loading fdt from 0x90762a54 to 0x83000000 + Booting using the fdt blob at 0x83000000 + Uncompressing Kernel Image + Loading Device Tree to 000000008ffef000, end 000000008ffff602 ... OK .. rubric:: Linux -If initramfs is included, we can trust our initial modules and tasks, but we cannot trust anything beyond this as the root file-system may have been -modified. To allow trusted use of files outside of our initramfs we use dm-verity. With this we can authenticate a block device as we read from it. As -any changes to this block-device will cause the authentication to fail, we cannot put any user-modifiable configurations or user installed programs -here. Only important, read-only, files should be placed on this partition, such as static kernel and operating system files and configurations. All -other files must be placed in a non-verifiable read-write user partition. +If initramfs is included, we can trust our initial modules and tasks, but we +cannot trust anything beyond this as the root file-system may have been +modified. To allow trusted use of files outside of our initramfs we use +dm-verity. With this we can authenticate a block device as we read from it. As +any changes to this block-device will cause the authentication to fail, we +cannot put any user-modifiable configurations or user installed programs here. +Only important, read-only, files should be placed on this partition, such as +static kernel and operating system files and configurations. All other files +must be placed in a non-verifiable read/write user partition. HS Boot Flow Tools ------------------- -U-boot: +U-Boot: .. ifconfig:: CONFIG_part_variant not in ('AM62LX') - The ti-u-boot source is a project used to create tiboot3.bin, tispl.bin, and u-boot.img. To create tiboot3.bin for K3 family devices, u-boot builds R5 SPL and - binman packages it in a `tiboot3.bin` image. To build A53 SPL, binman takes TF-A (bl31.bin), OPTEE (bl32.bin), A53 SPL, and A53 DTBs and packages - them in a `tispl.bin` image. U-Boot can then use the openssl library to sign each component as specified in k3--binman.dtsi. + The ti-u-boot source is a project used to create :file:`tiboot3.bin`, + :file:`tispl.bin`, and :file:`u-boot.img`. To create :file:`tiboot3.bin` + for K3 family devices, U-Boot builds R5 SPL and binman packages it in a + :file:`tiboot3.bin` image. To build A53 SPL, binman takes TF-A + (:file:`bl31.bin`), OPTEE (:file:`bl32.bin`), A53 SPL, and A53 DTBs and + packages them in a :file:`tispl.bin` image. U-Boot can then use the + openssl library to sign each component as specified in + :file:`k3--binman.dtsi`. .. code-block:: console @@ -320,47 +337,57 @@ U-boot: Linux: - The ti-linux source is a TI project used to build Linux kernel, DTB, and other boot artifacts. Some of these components could be included in a verifiable image - `fitImage`. For HS devices, only the fitImage will be allowed to boot once `fitImage` has been authenticated. + The ti-linux source is a TI project used to build Linux kernel, DTB, and + other boot artifacts. Some of these components could be included in a + verifiable image :file:`fitImage`. For HS devices, only the fitImage will be + allowed to boot once :file:`fitImage` has been authenticated. - .. code-block:: console + .. code-block:: console - $ git clone https://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git + $ git clone https://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git - Example use: - $ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- defconfig ti_arm64_prune.config - $ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- menuconfig - $ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- + $ #Example use: + $ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- defconfig ti_arm64_prune.config + $ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- menuconfig + $ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- -ATF: +TF-A: - The ATF source (now called TF-A) is used to build `bl31.bin` that gets packaged into `tispl.bin`. For HS devices, this binary needs to be signed. + The TF-A source (formerly called ATF) is used to build :file:`bl31.bin` that + gets packaged into :file:`tispl.bin`. For HS devices, this binary needs to + be signed. - .. code-block:: console + .. code-block:: console - $ git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git + $ git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git - Example use: - $ make ARCH=aarch64 CROSS_COMPILE=aarch64-none-linux-gnu- PLAT=k3 TARGET_BOARD=lite SPD=opteed + $ # Example use: + $ make ARCH=aarch64 CROSS_COMPILE=aarch64-none-linux-gnu- PLAT=k3 TARGET_BOARD=lite SPD=opteed OPTEE: - The OPTEE source is used to build `bl32.bin/tee-pager_v2.bin` that gets packaged into `tispl.bin`. For HS devices, this binary needs to be signed. + The OPTEE source is used to build :file:`bl32.bin/tee-pager_v2.bin` that + gets packaged into :file:`tispl.bin`. For HS devices, this binary needs to + be signed. - .. code-block:: console + .. code-block:: console - $ git clone https://github.com/OP-TEE/optee_os.git + $ git clone https://github.com/OP-TEE/optee_os.git - Example use: - $ make CROSS_COMPILE64=aarch64-linux-gnu- PLATFORM=k3- CFG_ARM64_core=y + $ # Example use: + $ make CROSS_COMPILE64=aarch64-linux-gnu- PLATFORM=k3- CFG_ARM64_core=y Ti-linux-firmware: - The ti-linux-firmware is a TI repository where all firmware releases are stored. Firmwares for a device family can also be found in the pre-built SDK - under :file:`/board-support/prebuilt-images/`. Binman expects to find the device firmware with the following appended to u-boot build command: - BINMAN_INDIRS=/board-support/prebuilt-images, and expects to find a ti-sysfw directory in this path. + The ti-linux-firmware is a TI repository where all firmware releases are + stored. Firmwares for a device family can also be found in the pre-built SDK + under :file:`/board-support/prebuilt-images/`. Binman + expects to find the device firmware with the following appended to U-Boot + build command: + :code:`BINMAN_INDIRS=/board-support/prebuilt-images`, and + expects to find a ti-sysfw directory in this path. - .. code-block:: console + .. code-block:: console - $ Date: Wed, 22 Apr 2026 18:31:36 +0530 Subject: [PATCH 3/3] feat(linux): Add secure boot using U-Boot verified boot for AM62LX Add a new page in the U-Boot user guide documenting secure boot enablement using U-Boot's verified boot framework in AM62LX. For AM62LX, u-boot.img signing and verification has been moved to leverage the mechanisms provided in U-Boot from using HSM core in other K3 devices. This page aims to address this change in AM62LX. Signed-off-by: T Pratham --- configs/AM62LX/AM62LX_linux_toc.txt | 1 + .../System_Security/Security_overview.rst | 3 + .../U-Boot/UG-Secure-Boot.rst | 141 ++++++++++++++++++ .../U-Boot/Users-Guide.rst | 1 + .../Foundational_Components_Secure_Boot.rst | 6 +- 5 files changed, 149 insertions(+), 3 deletions(-) create mode 100644 source/linux/Foundational_Components/U-Boot/UG-Secure-Boot.rst diff --git a/configs/AM62LX/AM62LX_linux_toc.txt b/configs/AM62LX/AM62LX_linux_toc.txt index 9b979e20b..8cf6195f7 100644 --- a/configs/AM62LX/AM62LX_linux_toc.txt +++ b/configs/AM62LX/AM62LX_linux_toc.txt @@ -37,6 +37,7 @@ linux/Foundational_Components/U-Boot/UG-Memory-K3 linux/Foundational_Components/U-Boot/UG-UMS linux/Foundational_Components/U-Boot/UG-QSPI linux/Foundational_Components/U-Boot/UG-UART +linux/Foundational_Components/U-Boot/UG-Secure-Boot linux/Foundational_Components/U-Boot/UG-Key-Writer-Lite linux/Foundational_Components/U-Boot/UG-Programming-OTPs diff --git a/source/linux/Foundational_Components/System_Security/Security_overview.rst b/source/linux/Foundational_Components/System_Security/Security_overview.rst index 39c70e415..1d1135d2b 100644 --- a/source/linux/Foundational_Components/System_Security/Security_overview.rst +++ b/source/linux/Foundational_Components/System_Security/Security_overview.rst @@ -49,6 +49,9 @@ The following table lists some of the key Security Features: | **Secure Boot** | Verifies and decrypts each boot stage, establishing a | :ref:`foundational-secure-boot` | | | hardware-backed chain of trust from ROM to Linux using | | | | customer-programmable keys | | + + +-----------------------------------------------------------+-----------------------------------------+ + | | Authenticates U-Boot using open-source Verified Boot | :ref:`u-boot-secure-boot-verified-boot` | + | | framework | | +-------------------------+-----------------------------------------------------------+-----------------------------------------+ | **Authenticated Boot** | Verifies each boot component to ensure only authorized | :ref:`auth_boot_guide` | | | code executes on the device | | diff --git a/source/linux/Foundational_Components/U-Boot/UG-Secure-Boot.rst b/source/linux/Foundational_Components/U-Boot/UG-Secure-Boot.rst new file mode 100644 index 000000000..c05e63cbd --- /dev/null +++ b/source/linux/Foundational_Components/U-Boot/UG-Secure-Boot.rst @@ -0,0 +1,141 @@ +.. _u-boot-secure-boot-verified-boot: + +################################################ +Secure boot using U-Boot verified boot framework +################################################ + +The complete Secure Boot documentation is available at: +:ref:`foundational-secure-boot`. This page specifically covers the +authentication and verification of U-Boot image using `U-Boot Verified Boot`_. + +On most other K3 devices, signing and verification of all boot binaries takes +place in the Hardware Security Module (HSM). Thereafter, U-Boot hands off the +secure chain of trust to the Linux kernel :file:`fitImage`. + +On AM62Lx, we have transitioned to use the native U-Boot secure boot framework +for a part of this chain of trust. The U-Boot documentation covers more theory +on this at +`U-Boot Verified Boot `_ +and `U-Boot FIT Signature Verification `__. +The thing to note is, we are applying the same concepts to U-Boot Flattened +Image Tree (FIT) as the kernel FIT examples in the preceding links. + +The HSM still handles the verification of :file:`tiboot3.bin` and +:file:`tispl.bin`. However, we hand off the chain of trust to U-Boot just after +this. The :file:`u-boot.img` is a signed FIT image. The U-Boot Secondary +Program Loader (SPL) binary embeds the public key derived from the private key +used to sign the U-Boot FIT. The U-Boot SPL uses this to verify the +authenticity of the loaded U-Boot binary. + +************** +The FIT source +************** + +The U-Boot FIT configuration node contains a signature sub-node. + +.. code-block:: dts + + conf-0 { + description = "k3-am62lx-evm"; + firmware = "uboot"; + loadables = "uboot"; + fdt = "fdt-0"; + + signature { + algo = "sha512,rsa4096"; + key-name-hint = "custMpk"; + sign-images = "firmware", "loadables", "fdt"; + }; + }; + +It specifies the key name and algorithm to use for signing, and the images +to sign. + +The public key is similarly embedded into U-Boot SPL by using a binman property +called :code:`u-boot-spl-pubkey-dtb`. This handles the heavy lifting of calling +the appropriate :code:`mkimage` commands and packing the public key in the SPL +Device Tree Blob (DTB) correctly. + +.. code-block:: dts + + tispl.bin { + + ... + + spl: section { + u-boot-spl-nodtb { + }; + + u-boot-spl-pubkey-dtb { + algo = "sha512,rsa4096"; + required = "conf"; + key-name-hint = "custMpk"; + }; + }; + }; + +The :code:`key-name-hint` property in both these nodes searches for the +:file:`custMpk.key` private key and :file:`custMpk.crt` public key certificate +in the directories defined in the :code:`BINMAN_INDIRS` variable. The default +TI dummy keys reside in :file:`arch/arm/mach-k3/keys/`, and binman copies them +at the start of the build into the build directory: + +.. code-block:: dts + + custMpk-crt { + filename = "custMpk.crt"; + + custmpk_crt: blob-ext { + filename = "arch/arm/mach-k3/keys/custMpk.crt"; + }; + }; + + custMpk-key { + filename = "custMpk.key"; + + custmpk_key: blob-ext { + filename = "arch/arm/mach-k3/keys/custMpk.key"; + }; + }; + +******************** +Runtime verification +******************** + +At runtime during device boot, U-Boot SPL loads the :file:`u-boot.img` and then +verifies the FIT signature by using the public key it has in its DTB. If the +verification passes, boot continues. Otherwise, it aborts the boot. + +*********************** +Changing the dummy keys +*********************** + +The SDKs use the TI dummy key for signing the U-Boot FIT image. But you might +want to use your own key for testing and production. For this, replace the +:file:`arch/arm/mach-k3/keys/custMpk.key` and +:file:`arch/arm/mach-k3/keys/custMpk.crt` with your own key and crt files. The +filenames need to be the same. + +It is also possible to use your own keys located at a different location. You +need to change the complete path in the :code:`filename` property above in +:code:`custMpk-crt` and :code:`custMpk-key` in +:file:`arch/arm/dts/k3-am62l3-evm-binman.dtsi` to your .crt and .key files. + +After either of the above changes, the U-Boot needs to be built again to get +the signed binaries with the updated keys. Refer to :ref:`top-level-makefile`. + +.. note:: + + Generating a new set of keys: + + .. code-block:: console + + $ mkdir keys + $ cd keys + $ # Generate an RSA private key: + $ openssl genpkey -algorithm RSA -out custMpk.key \ + -pkeyopt rsa_keygen_bits:4096 -pkeyopt rsa_keygen_pubexp:65537 + $ # Build your cert template (Enter necessary details in the prompts that follow): + $ openssl req -new -key custMpk.key -out cert.csr + $ # Self-sign the certificate + $ openssl x509 -req -days 3650 -in cert.csr -signkey custMpk.key -out custMpk.crt diff --git a/source/linux/Foundational_Components/U-Boot/Users-Guide.rst b/source/linux/Foundational_Components/U-Boot/Users-Guide.rst index 09bbc3ff0..9a59e8741 100644 --- a/source/linux/Foundational_Components/U-Boot/Users-Guide.rst +++ b/source/linux/Foundational_Components/U-Boot/Users-Guide.rst @@ -31,6 +31,7 @@ User's Guide UG-AVS UG-Thermal UG-Splash-Screen + UG-Secure-Boot UG-Key-Writer-Lite UG-Programming-OTPs UG-Falcon-Mode diff --git a/source/linux/Foundational_Components_Secure_Boot.rst b/source/linux/Foundational_Components_Secure_Boot.rst index 991394f8d..f07692435 100644 --- a/source/linux/Foundational_Components_Secure_Boot.rst +++ b/source/linux/Foundational_Components_Secure_Boot.rst @@ -35,9 +35,9 @@ The following is an example list where Chain-of-Trust should be maintained. .. ifconfig:: CONFIG_part_variant in ('AM62LX') The U-Boot's Secondary Program Loader (SPL) securely verifies the U-Boot - proper. U-Boot uses its verified boot framework to do this. U-Boot proper - then securely verifies and decrypts the kernel, Device Tree Blobs (DTB), - and initramfs. + proper. U-Boot uses its verified boot framework to do this + (See: :ref:`u-boot-secure-boot-verified-boot`). U-Boot proper then securely + verifies and decrypts the kernel, Device Tree Blobs (DTB), and initramfs. .. Image:: /images/AM62L_KF.png :scale: 70%