13.3.1 eFuse Programming Sequence

For eFuse programming operations, the eFuse controller will program 1-bit or 8 bits together at a time.

  1. Write EFUSE_CON.PGM_MODE = 0.
  2. Write EFUSE_CON.EN_LD = 0, and EFUSE_CON.EN_LD_ALL = 0.
  3. Write EFUSE_CON.EN_OTP_LDO = 1. This enables the PMU OTP LDO output to 1.5V.
  4. Write the EFUSE_RWDATA register with the offset address of eFuse and the data to be written.
    1. For single bit write operation: write eFuse offset address on EFUSE_RWDATA.ADDR[11:0] and data on EFUSE_RWDATA.DATA[0].
    2. For 8-bit write operation: write eFuse offset address on EFUSE_RWDATA.ADDR[11:3] and data on EFUSE_RWDATA.DATA[7:0].

      The above options are controlled by EFUSE_CON. PGM_1BIT register bit as in Step 5.2.

  5. All the below steps to be done in a single step:
    1. Set EFUSE_CON.PGM_MODE register bit.

    2. Set EFUSE_CON. PGM_1BIT register bit for 1-bit write operation. Clear the bit for 8-bit write operation.

    3. Set EFUSE_CON.EN_PGM register bit.

  6. The eFuse controller clears the EFUSE_CON.EN_PGM register bit when the eFuse programming is complete.
  7. Repeat the steps 4 to 5 until all the values are programmed.
  8. Write EFUSE_CON.EN_OTP_LDO = 0 to switch off PMU OTP LDO.
Note: Lifecycle counter and anti-rollback programming values to be programed in 1- bit operation mode.