![]() |
xilnvm
Vitis Drivers API Documentation
|
This file contains function declarations of eFuse APIs.
MODIFICATION HISTORY:
Ver Who Date Changes
----- ---- ---------- -------------------------------------------------------
3.0 kal 07/12/2022 Initial release
3.2 har 02/21/2023 Added support for writing ROM Rsvd bits
kpt 07/26/2023 Removed XNvm_EfuseReadCacheRange
vss 12/31/2023 Added support for Program the eFuse protection bits only onceMacros | |
EFUSE masks | |
| #define | XNVM_EFUSE_PROTECTION_BIT_SECURITY_CONTROL_MASK |
| < Protection bit masks of various eFuses More... | |
| #define | XNVM_EFUSE_PROTECTION_BIT_SECURITY_MISC_0_MASK |
| #define | XNVM_EFUSE_PROTECTION_BIT_PPK_0_HASH_MASK |
| #define | XNVM_EFUSE_PROTECTION_BIT_META_HEADER_IV_MASK |
| #define | XNVM_EFUSE_PROTECTION_BIT_ME_ID_CODE_MASK |
| #define | XNVM_EFUSE_PROTECTION_BIT_PUF_CHASH_MASK ((u32)1U << XNVM_EFUSE_ROW_0_PUF_CHASH_PROT_COL_NUM) |
| #define | XNVM_EFUSE_PROTECTION_BIT_SECURITY_MISC_1_MASK ((u32)1U << XNVM_EFUSE_ROW_0_SEC_MISC1_PROT_COL_NUM) |
Functions | |
| int | XNvm_EfuseWriteAesKey (u32 EnvDisFlag, XNvm_AesKeyType KeyType, XNvm_AesKey *EfuseKey) |
| This function is used to take care of prerequisites to program below eFuses AES key User key 0 User key 1. More... | |
| int | XNvm_EfuseWritePpkHash (u32 EnvDisFlag, XNvm_PpkType PpkType, XNvm_PpkHash *EfuseHash) |
| This function is used to to take care of prerequisitis to program below eFuses PPK0_HASH PPK1_HASH PPK2_HASH. More... | |
| int | XNvm_EfuseWriteIv (u32 EnvDisFlag, XNvm_IvType IvType, XNvm_Iv *EfuseIv) |
| This function is used to to take care of prerequisitis to program below IV eFuses XNVM_EFUSE_ERR_WRITE_META_HEADER_IV XNVM_EFUSE_ERR_WRITE_BLK_OBFUS_IV XNVM_EFUSE_ERR_WRITE_PLM_IV XNVM_EFUSE_ERR_WRITE_DATA_PARTITION_IV. More... | |
| int | XNvm_EfuseCacheLoadNPrgmProtectionBits (void) |
| This function reloads the cache of eFUSE so that can be directly read from cache and programs required protections eFuses. More... | |
| int | XNvm_EfuseWriteGlitchConfigBits (u32 EnvDisFlag, u32 GlitchConfig) |
| This function is used to program Glitch Configuration given by the user. More... | |
| int | XNvm_EfuseWriteDecOnly (u32 EnvDisFlag) |
| This function is used to program below DEC_ONLY fuses. More... | |
| int | XNvm_EfuseWriteRevocationID (u32 EnvDisFlag, u32 RevokeIdNum) |
| This function writes Revocation eFuses. More... | |
| int | XNvm_EfuseWriteOffChipRevokeID (u32 EnvDisFlag, u32 OffchipIdNum) |
| This function programs OffChip Revoke eFuses. More... | |
| int | XNvm_EfuseWriteMiscCtrlBits (u32 EnvDisFlag, u32 MiscCtrlBits) |
| This function programs MiscCtrl eFuses. More... | |
| int | XNvm_EfuseWriteSecCtrlBits (u32 EnvDisFlag, u32 SecCtrlBits) |
| This function programs SecCtrl eFuses. More... | |
| int | XNvm_EfuseWriteMisc1Bits (u32 EnvDisFlag, u32 Misc1Bits) |
| This function programs Misc1Ctrl eFuses. More... | |
| int | XNvm_EfuseWriteBootEnvCtrlBits (u32 EnvDisFlag, u32 BootEnvCtrlBits) |
| This function programs BootEnvCtrl eFuses. More... | |
| int | XNvm_EfuseWriteFipsInfo (u32 EnvDisFlag, u32 FipsMode, u32 FipsVersion) |
| This function is used to to take care of prerequisitis to program FIPS mode and FIPS version eFuses. More... | |
| int | XNvm_EfuseWriteUds (u32 EnvDisFlag, XNvm_Uds *EfuseUds) |
| This function programs UDS eFuses. More... | |
| int | XNvm_EfuseWriteDmeUserKey (u32 EnvDisFlag, XNvm_DmeKeyType KeyType, XNvm_DmeKey *EfuseKey) |
| This function programs DME userkey eFuses. More... | |
| int | XNvm_EfuseWriteDmeRevoke (u32 EnvDisFlag, XNvm_DmeRevoke RevokeNum) |
| This function programs DME Revoke eFuses. More... | |
| int | XNvm_EfuseWriteDisableInplacePlmUpdate (u32 EnvDisFlag) |
| This function programs PLM_UPDATE eFuse. More... | |
| int | XNvm_EfuseWriteBootModeDisable (u32 EnvDisFlag, u32 BootModeMask) |
| This function programs BootModeDisable eFuses. More... | |
| int | XNvm_EfuseWriteDmeMode (u32 EnvDisFlag, u32 DmeMode) |
| This function programs DmeMode eFuses. More... | |
| int | XNvm_EfuseWritePuf (const XNvm_EfusePufHdAddr *PufHelperData) |
| This function programs PUF ctrl and PUF helper data, Chash and Aux. More... | |
| int | XNvm_EfuseWriteCrc (u32 EnvDisFlag, u32 Crc) |
| This function programs EFUSE_CRC_SALT eFuses. More... | |
| int | XNvm_EfuseWriteRomRsvdBits (u32 EnvDisFlag, u32 RomRsvdBits) |
| This function programs ROM Rsvd Bits eFuses. More... | |
| int | XNvm_EfuseWritePufSecCtrl (u32 EnvDisFlag, u32 PufCtrlBits) |
| This function programs Puf control bits specified by user. More... | |
| #define XNVM_EFUSE_PROTECTION_BIT_SECURITY_CONTROL_MASK |
< Protection bit masks of various eFuses