From cd3fdb2443d6ace53dccff2c19c01ce0c166ad1a Mon Sep 17 00:00:00 2001 From: Harsha Vardhan V M Date: Mon, 11 May 2026 19:39:27 +0530 Subject: [PATCH] feat(U-Boot): Add OTP Key Writer User Guide Add a KeyWriter guide describing the procedure to program customer keys into the eFuses using U-Boot's `fuse writebuff` command, enabling HS-FS to HS-SE device conversion. The guide covers: - Background on HS-FS and HS-SE device sub-types - The fuse_otp binary blob structure with a diagram illustrating the layout - Step-by-step key writer example flow - Post-programming note that eFuse changes require a full SoC power cycle to take effect Register the new page in the AM62LX Linux TOC and U-Boot Users Guide index. Signed-off-by: Harsha Vardhan V M --- configs/AM62LX/AM62LX_linux_toc.txt | 1 + ...fuse_writebuff_OTP_keywriter_structure.png | Bin 0 -> 27602 bytes .../U-Boot/UG-Key-Writer.rst | 148 ++++++++++++++++++ .../U-Boot/Users-Guide.rst | 1 + 4 files changed, 150 insertions(+) create mode 100644 source/images/Uboot_fuse_writebuff_OTP_keywriter_structure.png create mode 100644 source/linux/Foundational_Components/U-Boot/UG-Key-Writer.rst diff --git a/configs/AM62LX/AM62LX_linux_toc.txt b/configs/AM62LX/AM62LX_linux_toc.txt index 12590587b..9ef0f9670 100644 --- a/configs/AM62LX/AM62LX_linux_toc.txt +++ b/configs/AM62LX/AM62LX_linux_toc.txt @@ -39,6 +39,7 @@ 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-Key-Writer linux/Foundational_Components/U-Boot/UG-Programming-OTPs linux/Foundational_Components/U-Boot/Applications diff --git a/source/images/Uboot_fuse_writebuff_OTP_keywriter_structure.png b/source/images/Uboot_fuse_writebuff_OTP_keywriter_structure.png new file mode 100644 index 0000000000000000000000000000000000000000..c12ea37ed51665a76c182da57e4555a43a47bf7a GIT binary patch literal 27602 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 mw 0x82000000 0 0x3000 + +#. Load the binary blob from SD card into memory using + commands such as: + + .. code-block:: text + + => fatload mmc 1:1 0x82000000 key_writer_blob.bin + +#. Read the memory addr 0x82000000 to verify that you loaded the blob successfully. + + .. code-block:: text + + => md 0x82000000 + +#. Efuse modification requires a voltage to be applied on a specific pin (Vpp) during the programming. + To program the efuses, the Vpp pin on the System-on-Chip (SoC) must be powered at 1.8V. It is the + responsibility of the SoC user to design a suitable circuit that enables the Vpp pin to be powered. + + Texas Instruments (TI) EVMs feature an I2C-based IO expander, which has one of its IO pins + connected to the SoC's Vpp pin. The software required to control the power to the Vpp pin depends + on the specific circuit implementation. + + In the case of TI AM62L PROC181E1-1 EVMs, an I2C driver is necessary to send command packets to the IO expander, + which then toggles the IO pin connected to the Vpp pin, thereby controlling the power supply to the pin. + On TI EVM, turn on the Vpp pin using the following commands: + + .. rubric:: Select i2c bus 1, as chip 22 is connected to it, and probe the chip: + + .. code-block:: text + + => i2c dev 1 + => i2c probe 22 + + .. rubric:: To turn off Vpp: + + .. code-block:: text + + => i2c mw 0x22 0x04 0x00 + + .. rubric:: To configure Vpp (port 04) as output: + + .. code-block:: text + + => i2c mw 0x22 0xC 0xEF + + .. rubric:: To turn on Vpp: + + .. code-block:: text + + => i2c mw 0x22 0x04 0x10 + +#. Call fuse writebuff sub-system command with the address 0x82000000: + + .. code-block:: text + + => fuse writebuff -y 0x82000000 + +#. Turn off Vpp after programming is successful: + + .. code-block:: text + + => i2c mw 0x22 0x04 0x00 + +.. note:: + + Changes made to efuses, by programming them, take effect (such as becoming + visible in Memory-Mapped Registers (MMRs), device type change and so on) + after a complete System-on-Chip (SoC) power cycle. diff --git a/source/linux/Foundational_Components/U-Boot/Users-Guide.rst b/source/linux/Foundational_Components/U-Boot/Users-Guide.rst index 9a59e8741..f2e5cbb3f 100644 --- a/source/linux/Foundational_Components/U-Boot/Users-Guide.rst +++ b/source/linux/Foundational_Components/U-Boot/Users-Guide.rst @@ -33,5 +33,6 @@ User's Guide UG-Splash-Screen UG-Secure-Boot UG-Key-Writer-Lite + UG-Key-Writer UG-Programming-OTPs UG-Falcon-Mode