![]() |
xilnvm
Vitis Drivers API Documentation
|
Macros | |
| #define | XNVM_SLR_INDEX_SHIFT (6U) |
| < Slr index shift constant More... | |
| #define | XNVM_SLR_INDEX_0 (0U) |
| SLR Index 0. More... | |
| #define | XNVM_SLR_INDEX_1 (1U) |
| SLR Index 1. More... | |
| #define | XNVM_SLR_INDEX_2 (2U) |
| SLR Index 2. More... | |
| #define | XNVM_SLR_INDEX_3 (3U) |
| SLR Index 3. More... | |
| #define | XNVM_WORD_LEN (4U) |
| Word length. More... | |
Functions | |
| int | XNvm_EfuseWrite (const XNvm_ClientInstance *InstancePtr, const u64 DataAddr) |
| This function sends IPI request to program eFuses with user provided data. More... | |
| int | XNvm_EfuseWriteIVs (const XNvm_ClientInstance *InstancePtr, const u64 IvAddr, const u32 EnvDisFlag) |
| This function sends IPI request to program IV eFuses with user provided data. More... | |
| int | XNvm_EfuseRevokePpk (const XNvm_ClientInstance *InstancePtr, const XNvm_PpkType PpkRevoke, const u32 EnvDisFlag) |
| This function sends IPI request to program PPK_INVLD eFuse requested by the user. More... | |
| int | XNvm_EfuseWriteRevocationId (const XNvm_ClientInstance *InstancePtr, const u32 RevokeId, const u32 EnvDisFlag) |
| This function sends IPI request to program revoke id eFuses requested by the user. More... | |
| int | XNvm_EfuseWriteUserFuses (const XNvm_ClientInstance *InstancePtr, const u64 UserFuseAddr, const u32 EnvDisFlag) |
| This function sends IPI request to program User eFuses requested by the user. More... | |
| int | XNvm_EfuseReadIv (const XNvm_ClientInstance *InstancePtr, const u64 IvAddr, const XNvm_IvType IvType) |
| This function sends IPI request to read IV eFuses requested by the user. More... | |
| int | XNvm_EfuseReadRevocationId (const XNvm_ClientInstance *InstancePtr, const u64 RevokeIdAddr, const XNvm_RevocationId RevokeIdNum) |
| This function sends IPI request to read Revocation ID eFuses requested by the user. More... | |
| int | XNvm_EfuseReadUserFuses (const XNvm_ClientInstance *InstancePtr, const u64 UserFuseAddr) |
| This function sends IPI request to read User eFuses requested by the user. More... | |
| int | XNvm_EfuseReadMiscCtrlBits (const XNvm_ClientInstance *InstancePtr, const u64 MiscCtrlBits) |
| This function sends IPI request to read MiscCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadSecCtrlBits (const XNvm_ClientInstance *InstancePtr, const u64 SecCtrlBits) |
| This function sends IPI request to read SecCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadSecMisc1Bits (const XNvm_ClientInstance *InstancePtr, const u64 SecMisc1Bits) |
| This function sends IPI request to read SecMisc1Bits requested by the user. More... | |
| int | XNvm_EfuseReadBootEnvCtrlBits (const XNvm_ClientInstance *InstancePtr, const u64 BootEnvCtrlBits) |
| This function sends IPI request to read BootEnvCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadPufSecCtrlBits (const XNvm_ClientInstance *InstancePtr, const u64 PufSecCtrlBits) |
| This function sends IPI request to read PufSecCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadOffchipRevokeId (const XNvm_ClientInstance *InstancePtr, const u64 OffChidIdAddr, const XNvm_OffchipId OffChipIdNum) |
| This function sends IPI request to read OffChip ID eFuses requested by the user. More... | |
| int | XNvm_EfuseReadPpkHash (const XNvm_ClientInstance *InstancePtr, const u64 PpkHashAddr, const XNvm_PpkType PpkHashType) |
| This function sends IPI request to read PpkHash requested by the user. More... | |
| int | XNvm_EfuseReadDecOnly (const XNvm_ClientInstance *InstancePtr, const u64 DecOnlyAddr) |
| This function sends IPI request to read DecEfuseOnly eFuses requested by the user. More... | |
| int | XNvm_EfuseReadDna (const XNvm_ClientInstance *InstancePtr, const u64 DnaAddr) |
| This function sends IPI request to read DNA eFuses requested by the user. More... | |
| int | XNvm_EfuseWritePuf (const XNvm_ClientInstance *InstancePtr, const u64 PufHdAddr) |
| This function sends IPI request to program Puf helper data requested by the user. More... | |
| int | XNvm_EfuseReadPuf (const XNvm_ClientInstance *InstancePtr, const u64 PufHdAddr) |
| This function sends IPI request to read Puf helper data requested by the user. More... | |
| int | XNvm_EfuseWrite (XNvm_ClientInstance *InstancePtr, const u64 DataAddr) |
| This function sends IPI request to program eFuses with user provided data. More... | |
| int | XNvm_EfuseWriteIVs (XNvm_ClientInstance *InstancePtr, const u64 IvAddr, const u32 EnvDisFlag) |
| This function sends IPI request to program IV as requested by the user. More... | |
| int | XNvm_EfuseWriteDiceUds (XNvm_ClientInstance *InstancePtr, const u64 UdsAddr, const u32 EnvDisFlag) |
| This function sends IPI request to program DICE UDS. More... | |
| int | XNvm_WriteDmePrivateKey (XNvm_ClientInstance *InstancePtr, u32 DmeKeyType, const u64 DmeKeyAddr, const u32 EnvDisFlag) |
| This function sends IPI request to program encrypted DME private key. More... | |
| int | XNvm_EfuseWriteDmeMode (XNvm_ClientInstance *InstancePtr, u32 DmeMode, const u32 EnvDisFlag) |
| This function sends IPI request to program DME mode requested by the user. More... | |
| int | XNvm_EfuseWriteSecCtrlBits (XNvm_ClientInstance *InstancePtr, u32 SecCtrlBits, const u32 EnvDisFlag) |
| This function sends IPI request to program Secure Control Bits requested by the user. More... | |
| int | XNvm_EfuseWritePufCtrlBits (XNvm_ClientInstance *InstancePtr, u32 PufCtrlBits, const u32 EnvDisFlag) |
| This function sends IPI request to program Puf Control Bits requested by the user. More... | |
| int | XNvm_EfuseWriteMiscCtrlBits (XNvm_ClientInstance *InstancePtr, u32 MiscCtrlBits, const u32 EnvDisFlag) |
| This function sends IPI request to program Misc Control Bits requested by the user. More... | |
| int | XNvm_EfuseWriteBootModeDis (XNvm_ClientInstance *InstancePtr, u32 BootModeDisBits, const u32 EnvDisFlag) |
| This function sends IPI request to program BootMode disable efuse bits requested by the user. More... | |
| int | XNvm_EfuseWriteSecMisc1Bits (XNvm_ClientInstance *InstancePtr, u32 SecMisc1Bits, const u32 EnvDisFlag) |
| This function sends IPI request to program Sec Misc 1 Bits requested by the user. More... | |
| int | XNvm_EfuseWriteBootEnvCtrlBits (XNvm_ClientInstance *InstancePtr, u32 BootEnvCtrlBits, const u32 EnvDisFlag) |
| This function sends IPI request to program Boot Env Ctrl Bits requested by the user. More... | |
| int | XNvm_EfuseWriteRomRsvdBits (XNvm_ClientInstance *InstancePtr, u32 RomRsvdBits, const u32 EnvDisFlag) |
| This function sends IPI request to program ROM Rsvd Bits requested by the user. More... | |
| int | XNvm_EfuseWriteGlitchConfigBits (XNvm_ClientInstance *InstancePtr, u32 GlitchCfgBits, const u32 EnvDisFlag) |
| This function sends IPI request to program Glitch Cfg Bits requested by the user. More... | |
| int | XNvm_EfuseWritePlmUpdate (XNvm_ClientInstance *InstancePtr, const u32 EnvDisFlag) |
| This function sends IPI request to program PLM update bit. More... | |
| int | XNvm_EfuseWriteDecOnly (XNvm_ClientInstance *InstancePtr, const u32 EnvDisFlag) |
| This function sends IPI request to program Dec Only eFuses. More... | |
| int | XNvm_EfuseWriteFipsInfo (XNvm_ClientInstance *InstancePtr, const u16 FipsMode, const u16 FipsVersion, const u32 EnvDisFlag) |
| This function sends IPI request to program FIPS info eFuses. More... | |
| int | XNvm_EfuseWriteRevocationId (XNvm_ClientInstance *InstancePtr, const u32 RevokeIdNum, const u32 EnvDisFlag) |
| This function sends IPI request to program Revocation Id eFuses. More... | |
| int | XNvm_EfuseWriteOffChipRevocationId (XNvm_ClientInstance *InstancePtr, const u32 OffChipRevokeIdNum, const u32 EnvDisFlag) |
| This function sends IPI request to program off chip Revocation Id eFuses. More... | |
| int | XNvm_EfuseWritePuf (XNvm_ClientInstance *InstancePtr, const u64 PufHdAddr) |
| This function sends IPI request to program Puf helper data requested by the user. More... | |
| int | XNvm_EfuseReadPuf (XNvm_ClientInstance *InstancePtr, u64 PufHdAddr) |
| This function sends IPI request to read Puf data from the eFUSE cache. More... | |
| int | XNvm_EfuseReadIv (XNvm_ClientInstance *InstancePtr, const u64 IvAddr, const XNvm_IvType IvType) |
| This function sends IPI request to read IV eFuses requested by the user. More... | |
| int | XNvm_EfuseReadRevocationId (XNvm_ClientInstance *InstancePtr, const u64 RevokeIdAddr, const XNvm_RevocationId RevokeIdNum) |
| This function sends IPI request to read Revocation ID eFuses requested by the user. More... | |
| int | XNvm_EfuseReadUserFuses (XNvm_ClientInstance *InstancePtr, u64 UserFuseAddr) |
| This function sends IPI request to read User eFuses requested by the user. More... | |
| int | XNvm_EfuseReadMiscCtrlBits (XNvm_ClientInstance *InstancePtr, const u64 MiscCtrlBits) |
| This function sends IPI request to read MiscCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadSecCtrlBits (XNvm_ClientInstance *InstancePtr, const u64 SecCtrlBits) |
| This function sends IPI request to read SecCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadSecMisc1Bits (XNvm_ClientInstance *InstancePtr, const u64 SecMisc1Bits) |
| This function sends IPI request to read SecMisc1Bits requested by the user. More... | |
| int | XNvm_EfuseReadBootEnvCtrlBits (XNvm_ClientInstance *InstancePtr, const u64 BootEnvCtrlBits) |
| This function sends IPI request to read BootEnvCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadPufSecCtrlBits (XNvm_ClientInstance *InstancePtr, const u64 PufSecCtrlBits) |
| This function sends IPI request to read PufSecCtrlBits requested by the user. More... | |
| int | XNvm_EfuseReadOffchipRevokeId (XNvm_ClientInstance *InstancePtr, const u64 OffChipIdAddr, const XNvm_OffchipId OffChipIdNum) |
| This function sends IPI request to read OffChip ID eFuses requested by the user. More... | |
| int | XNvm_EfuseReadPpkHash (XNvm_ClientInstance *InstancePtr, const u64 PpkHashAddr, const XNvm_PpkType PpkHashType) |
| This function sends IPI request to read PpkHash requested by the user. More... | |
| int | XNvm_EfuseReadDecOnly (XNvm_ClientInstance *InstancePtr, const u64 DecOnlyAddr) |
| This function sends IPI request to read DecEfuseOnly eFuses requested by the user. More... | |
| int | XNvm_EfuseReadDna (XNvm_ClientInstance *InstancePtr, const u64 DnaAddr) |
| This function sends IPI request to read DNA eFuses requested by the user. More... | |
| int | XNvm_EfuseReadBootModeDis (XNvm_ClientInstance *InstancePtr, const u64 BootModeDisAddr) |
| This function sends IPI request to read BootModeDisable eFuses requested by the user. More... | |
| int | XNvm_EfuseReadRomRsvdBits (XNvm_ClientInstance *InstancePtr, const u64 RomRsvdBits) |
| This function sends IPI request to read RomRsvdBits requested by the user. More... | |
| int | XNvm_EfuseReadDmeMode (XNvm_ClientInstance *InstancePtr, const u64 DmeModeAddr) |
| This function sends IPI request to read DME Mode eFuses requested by the user. More... | |
| int | XNvm_EfuseReadFipsInfoBits (XNvm_ClientInstance *InstancePtr, const u64 FipsInfoBits) |
| This function sends IPI request to read FIPS info bits requested by the user. More... | |
| #define XNVM_SLR_INDEX_0 (0U) |
SLR Index 0.
| #define XNVM_SLR_INDEX_1 (1U) |
SLR Index 1.
| #define XNVM_SLR_INDEX_2 (2U) |
SLR Index 2.
| #define XNVM_SLR_INDEX_3 (3U) |
SLR Index 3.
| #define XNVM_SLR_INDEX_SHIFT (6U) |
< Slr index shift constant
SlrIndexs constants
| #define XNVM_WORD_LEN (4U) |
Word length.
Referenced by XNvm_EfuseCheckZeros(), XNvm_EfuseReadBootEnvCtrlBits(), XNvm_EfuseReadBootModeDis(), XNvm_EfuseReadDecOnly(), XNvm_EfuseReadDmeMode(), XNvm_EfuseReadDna(), XNvm_EfuseReadFipsInfoBits(), XNvm_EfuseReadIv(), XNvm_EfuseReadMiscCtrlBits(), XNvm_EfuseReadOffchipRevokeId(), XNvm_EfuseReadPpkHash(), XNvm_EfuseReadPuf(), XNvm_EfuseReadPufSecCtrlBits(), XNvm_EfuseReadRevocationId(), XNvm_EfuseReadRomRsvdBits(), XNvm_EfuseReadSecCtrlBits(), XNvm_EfuseReadSecMisc1Bits(), XNvm_EfuseReadUserFuses(), XNvm_EfuseWriteBootEnvCtrlBits(), XNvm_EfuseWriteBootModeDis(), XNvm_EfuseWriteDecOnly(), XNvm_EfuseWriteDiceUds(), XNvm_EfuseWriteDmeMode(), XNvm_EfuseWriteFipsInfo(), XNvm_EfuseWriteGlitchConfigBits(), XNvm_EfuseWriteMiscCtrlBits(), XNvm_EfuseWriteOffChipRevocationId(), XNvm_EfuseWritePlmUpdate(), XNvm_EfuseWritePuf(), XNvm_EfuseWritePufCtrlBits(), XNvm_EfuseWriteRevocationId(), XNvm_EfuseWriteRomRsvdBits(), XNvm_EfuseWriteSecCtrlBits(), XNvm_EfuseWriteSecMisc1Bits(), and XNvm_WriteDmePrivateKey().
| int XNvm_EfuseReadBootEnvCtrlBits | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | BootEnvCtrlBits | ||
| ) |
This function sends IPI request to read BootEnvCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| BootEnvCtrlBits | Address of the output buffer to store the BootEnvCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send read boot env ctrl CDO to PLM to read Boot Environment control bits from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_BOOT_ENV_CTRL_BITS, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadBootEnvCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | BootEnvCtrlBits | ||
| ) |
This function sends IPI request to read BootEnvCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| BootEnvCtrlBits | Address of the output buffer to store the BootEnvCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, If input parameters are invalid.
Send EfuseReadBootEnvCtrlBits CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return the status of the IPI response
References XNVM_EFUSE_CACHE_BOOT_ENV_CTRL_SYSMON_TEMP_EN_MASK, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadBootModeDis | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | BootModeDisAddr | ||
| ) |
This function sends IPI request to read BootModeDisable eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| BootModeDisAddr | Address of the output buffer to store the BootModeDisable eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_READ_CACHE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadDecOnly | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | DecOnlyAddr | ||
| ) |
This function sends IPI request to read DecEfuseOnly eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| DecOnlyAddr | Address of the output buffer to store the DecEfuseOnly eFuses data |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Send read dec_only CDO to PLM to read decrypt eFuse only bits from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_DEC_EFUSE_ONLY, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadDecOnly | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | DecOnlyAddr | ||
| ) |
This function sends IPI request to read DecEfuseOnly eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| DecOnlyAddr | Address of the output buffer to store the DecEfuseOnly eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_READ_CACHE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadDmeMode | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | DmeModeAddr | ||
| ) |
This function sends IPI request to read DME Mode eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| DmeModeAddr | Address of the output buffer to store the DecEfuseOnly eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_READ_CACHE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadDna | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | DnaAddr | ||
| ) |
This function sends IPI request to read DNA eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| DnaAddr | Address of the output buffer to store the DNA eFuses data |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Send read dna CDO to PLM to read DNA bits from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_DNA, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadDna | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | DnaAddr | ||
| ) |
This function sends IPI request to read DNA eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| DnaAddr | Address of the output buffer to store the DNA eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_READ_CACHE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadFipsInfoBits | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | FipsInfoBits | ||
| ) |
This function sends IPI request to read FIPS info bits requested by the user.
| InstancePtr | Pointer to the client instance |
| FipsInfoBits | Address of the output buffer to store the RomRsvdBits eFuses data |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_READ_CACHE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_READ_CACHE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
References XNVM_EFUSE_CACHE_DME_FIPS_FIPS_MODE_MASK, XNVM_EFUSE_CACHE_IP_DISABLE_0_FIPS_VERSION_2_1_MASK, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadIv | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | IvAddr, | ||
| const XNvm_IvType | IvType | ||
| ) |
This function sends IPI request to read IV eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| IvAddr | Address of the output buffer to store the IV eFuse data |
| IvType | Type of the IV to read out |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid
Send Read IV CDO to PLM to read user specified IV from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_IV, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadIv | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | IvAddr, | ||
| const XNvm_IvType | IvType | ||
| ) |
This function sends IPI request to read IV eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| IvAddr | Address of the output buffer to store the IV eFuse data |
| IvType | Type of the IV to read out |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send XNvm_EfuseReadIv CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceed return error else return the status of the IPI response
References XNVM_EFUSE_CACHE_METAHEADER_IV_RANGE_0_OFFSET, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadMiscCtrlBits | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | MiscCtrlBits | ||
| ) |
This function sends IPI request to read MiscCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| MiscCtrlBits | Address of the output buffer to store the MiscCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send read misc_ctrl CDO to PLM to read miscellaneous control eFuses from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_MISC_CTRL_BITS, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadMiscCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | MiscCtrlBits | ||
| ) |
This function sends IPI request to read MiscCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| MiscCtrlBits | Address of the output buffer to store the MiscCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, If input parameters are invalid.
Send EfuseReadMiscCtrlBits CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return the status of the IPI response.
References XNVM_EFUSE_CACHE_MISC_CTRL_GD_HALT_BOOT_EN_1_0_MASK, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadOffchipRevokeId | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | OffChidIdAddr, | ||
| const XNvm_OffchipId | OffChipIdNum | ||
| ) |
This function sends IPI request to read OffChip ID eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| OffChidIdAddr | Address of the output buffer to store the OffChip ID eFuse data |
| OffChipIdNum | OffChip ID number to be read out |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Send read Offchip revoke CDO to PLM to read user specified Offchip revoke registers from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_OFFCHIP_REVOCATION_ID, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadOffchipRevokeId | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | OffChipIdAddr, | ||
| const XNvm_OffchipId | OffChipIdNum | ||
| ) |
This function sends IPI request to read OffChip ID eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| OffChipIdAddr | Address of the output buffer to store the OffChip ID eFuse data |
| OffChipIdNum | OffChip ID number to be read out |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send EfuseReadOffchipRevokeId CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return the status of the IPI response.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadPpkHash | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | PpkHashAddr, | ||
| const XNvm_PpkType | PpkHashType | ||
| ) |
This function sends IPI request to read PpkHash requested by the user.
| InstancePtr | Pointer to the client instance |
| PpkHashAddr | Address of the output buffer to store the PpkHashAddr eFuses data |
| PpkHashType | Type of the PpkHash to be read out |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send read ppk hash CDO to PLM to read user specified PPK from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_PPK_HASH, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadPpkHash | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | PpkHashAddr, | ||
| const XNvm_PpkType | PpkHashType | ||
| ) |
This function sends IPI request to read PpkHash requested by the user.
| InstancePtr | Pointer to the client instance |
| PpkHashAddr | Address of the output buffer to store the PpkHashAddr eFuses data |
| PpkHashType | Type of the PpkHash to be read out |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send EfuseReadPpkHash CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return the status of the IPI response.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadPuf | ( | XNvm_ClientInstance * | InstancePtr, |
| u64 | PufHdAddr | ||
| ) |
This function sends IPI request to read Puf data from the eFUSE cache.
| InstancePtr | Pointer to the client instance |
| PufHdAddr | Address of the XNvm_EfusePufHdAddr structure where the user provided helper data to be programmed |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Read Puf helper data.
Read Puf Chash.
Read Puf Aux data.
Read RO Swap.
Send XNvm_EfuseReadPuf CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return the status of the IPI response.
References XNvm_EfusePufHdAddr::Aux, XNvm_EfusePufHdAddr::Chash, XNvm_EfusePufHdAddr::EfuseSynData, XNvm_ProcessMailbox(), XNVM_PUF_FORMATTED_SYN_DATA_LEN_IN_WORDS, and XNVM_WORD_LEN.
| int XNvm_EfuseReadPuf | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | PufHdAddr | ||
| ) |
This function sends IPI request to read Puf helper data requested by the user.
| InstancePtr | Pointer to the client instance |
| PufHdAddr | Address of the output buffer to store the Puf helper data |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Send read puf CDO to PLM to read PUF helper data from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_PUF, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadPufSecCtrlBits | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | PufSecCtrlBits | ||
| ) |
This function sends IPI request to read PufSecCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| PufSecCtrlBits | Address of the output buffer to store the PufSecCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Send read puf ctrl CDO to PLM to read user specified Puf security control eFuses from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_PUF_SEC_CTRL_BITS, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadPufSecCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | PufSecCtrlBits | ||
| ) |
This function sends IPI request to read PufSecCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| PufSecCtrlBits | Address of the output buffer to store the PufSecCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send EfuseReadPufSecCtrlBits CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return the status of the IPI response.
References XNVM_EFUSE_CACHE_PUF_ECC_PUF_CTRL_REGEN_DIS_MASK, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadRevocationId | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | RevokeIdAddr, | ||
| const XNvm_RevocationId | RevokeIdNum | ||
| ) |
This function sends IPI request to read Revocation ID eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| RevokeIdAddr | Address of the output buffer to store the Revocation ID eFuse data |
| RevokeIdNum | Revocation ID to be read out |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send read revocation id CDO to PLM to read user specified Revocation ID from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_REVOCATION_ID, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadRevocationId | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | RevokeIdAddr, | ||
| const XNvm_RevocationId | RevokeIdNum | ||
| ) |
This function sends IPI request to read Revocation ID eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| RevokeIdAddr | Address of the output buffer to store the Revocation ID eFuse data |
| RevokeIdNum | Revocation ID to be read out |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send XNvm_EfuseReadRevocationId CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds return error else return the status of the IPI response.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadRomRsvdBits | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | RomRsvdBits | ||
| ) |
This function sends IPI request to read RomRsvdBits requested by the user.
| InstancePtr | Pointer to the client instance |
| RomRsvdBits | Address of the output buffer to store the RomRsvdBits eFuses data |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_READ_CACHE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
References XNVM_EFUSE_CACHE_ROM_RSVD_PLM_UPDATE_MASK, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadSecCtrlBits | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | SecCtrlBits | ||
| ) |
This function sends IPI request to read SecCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| SecCtrlBits | Address of the output buffer to store the SecCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send read sec_ctrl CDO to PLM to read security control eFuses from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_SEC_CTRL_BITS, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadSecCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | SecCtrlBits | ||
| ) |
This function sends IPI request to read SecCtrlBits requested by the user.
| InstancePtr | Pointer to the client instance |
| SecCtrlBits | Address of the output buffer to store the SecCtrlBits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send EfuseReadSecCtrlBits CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return the status of the IPI response.
References XNVM_EFUSE_CACHE_SECURITY_CONTROL_REG_INIT_DIS_1_0_MASK, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadSecMisc1Bits | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | SecMisc1Bits | ||
| ) |
This function sends IPI request to read SecMisc1Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| SecMisc1Bits | Address of the output buffer to store the SecMisc1Bits eFuses data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send read misc1 ctrl CDO to PLM to read security and miscellaneous 1 control from eFuse cache. Return XST_FAILURE, if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_SEC_MISC1_BITS, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadSecMisc1Bits | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | SecMisc1Bits | ||
| ) |
This function sends IPI request to read SecMisc1Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| SecMisc1Bits | Address of the output buffer to store the SecMisc1Bits eFuses data |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM, if input parameters are invalid.
Send EfuseReadSecMisc1Bits CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return status of the IPI response.
References XNVM_EFUSE_CACHE_SEC_MISC_1_LPD_MBIST_EN_2_0_MASK, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseReadUserFuses | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | UserFuseAddr | ||
| ) |
This function sends IPI request to read User eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| UserFuseAddr | Address of the output buffer to store the User eFuse data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send read use efuses CDO to PLM to read user specified user eFuses from eFuse cache. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_READ_USER_FUSES, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseReadUserFuses | ( | XNvm_ClientInstance * | InstancePtr, |
| u64 | UserFuseAddr | ||
| ) |
This function sends IPI request to read User eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| UserFuseAddr | Address of the output buffer to store the User eFuse data |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send XNvm_EfuseReadUserFuses CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds return error else return the status of the IPI response.
References XNvm_IsDmeModeEn(), XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseRevokePpk | ( | const XNvm_ClientInstance * | InstancePtr, |
| const XNvm_PpkType | PpkRevoke, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program PPK_INVLD eFuse requested by the user.
| InstancePtr | Pointer to the client instance |
| PpkRevoke | Type of PPK_INVLD to be revoked |
| EnvDisFlag | Flag that tells whether to enable/disable Environmental monitoring in XilNvm |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Link shared memory for IPI usage. If shared memory is not assigned return XST_FAILURE.
Zeroize the shared memory.
Sends CDO to PLM to write eFuses to revoke the user specified PPK. Return XST_FAILURE if IPI request not success
References XNVM_API_ID_EFUSE_WRITE, XNvm_DCacheFlushRange, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseWrite | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | DataAddr | ||
| ) |
This function sends IPI request to program eFuses with user provided data.
| InstancePtr | Pointer to the client instance |
| DataAddr | Address of the data structure where the eFUSE data to be programmed is stored |
Validate input parameters. Return XST_INVALID_PARAM, If input parameters are invalid.
Validate AES,UsrKey,PPK0,PPK1,PPK2,IVs write request. If validation is success, Send XNvm_EfuseWrite CDO over IPI to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return the error else return status of the IPI response.
Validates PPK hash and sends an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_PPK_HASH CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
Validates IV and sends an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_IV CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then error is returned otherwise it returns the status of the IPI response
References XNvm_EfuseWriteIVs(), and XNvm_ProcessMailbox().
| int XNvm_EfuseWrite | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | DataAddr | ||
| ) |
This function sends IPI request to program eFuses with user provided data.
| InstancePtr | Pointer to the client instance |
| DataAddr | Address of the data structure where the eFUSE data to be programmed is stored |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Sends EFUSE WRITE CDO to PLM through IPI. Return XST_FAILURE if IPI request of sending CDO not success.
References XNVM_API_ID_EFUSE_WRITE, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
Referenced by XNvm_EfuseRevokePpk(), XNvm_EfuseWriteIVs(), XNvm_EfuseWriteRevocationId(), and XNvm_EfuseWriteUserFuses().
| int XNvm_EfuseWriteBootEnvCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | BootEnvCtrlBits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Boot Env Ctrl Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| BootEnvCtrlBits | Value of BootEnvCtrl Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_BOOT_ENV_CTRL_BITS CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteBootModeDis | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | BootModeDisBits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program BootMode disable efuse bits requested by the user.
| InstancePtr | Pointer to the client instance |
| BootModeDisBits | Value of Boot mode disable Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_BOOT_MODE_DISABLE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteDecOnly | ( | XNvm_ClientInstance * | InstancePtr, |
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Dec Only eFuses.
| InstancePtr | Pointer to the client instance |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Validate input parameters. Return XST_INVALID_PARAM, If input parameters are invalid.
Send XNvm_EfuseWriteSecCtrl CDO over IPI to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteDiceUds | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | UdsAddr, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program DICE UDS.
| InstancePtr | Pointer to the client instance |
| UdsAddr | Address of the UDS to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. when set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_UDS CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteDmeMode | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | DmeMode, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program DME mode requested by the user.
| InstancePtr | Pointer to the client instance |
| DmeMode | Value of DME mode to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_DME_MODE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteFipsInfo | ( | XNvm_ClientInstance * | InstancePtr, |
| const u16 | FipsMode, | ||
| const u16 | FipsVersion, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program FIPS info eFuses.
| InstancePtr | Pointer to the client instance |
| FipsMode | FIPS mode which needs to be programmed |
| FipsVersion | FIPS version which needs to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send XNvm_EfuseWritePufCtrl CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteGlitchConfigBits | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | GlitchCfgBits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Glitch Cfg Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| GlitchCfgBits | Value of Glitch Cfg Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_GLITCH_CONFIG CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteIVs | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | IvAddr, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program IV as requested by the user.
| InstancePtr | Pointer to the client instance |
| IvAddr | Address of the IV to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. when set to true it will not check for voltage and temparature limits. |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Get shared memory allocated by the user using XMailbox_GetSharedMem API, to store data structure in the user memory. Perform validation on the size of the shared memory, if size is less than the total size return XST_FAILURE.
Fill the EfuseData structure with the IV address, Environmental disable flag.
Send XNvm_EfuseWriteIv CDO over IPI to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds.
References XNvm_ProcessMailbox().
| int XNvm_EfuseWriteIVs | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | IvAddr, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program IV eFuses with user provided data.
| InstancePtr | Pointer to the client instance |
| IvAddr | Address of the data structure where the eFUSE data to be programmed is stored |
| EnvDisFlag | Flag that tells weather to enable/disable Environmental monitoring in XilNvm |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Link Shared memory for IPI usage. If shared memory is not assigned return XST_FAILURE.
Zeroize the shared memory.
Sends EFUSE WRITE IV CDO to PLM through IPI request. Return XST_FAILURE if IPI request is failed
References XNVM_API_ID_EFUSE_WRITE, XNvm_DCacheFlushRange, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
Referenced by XNvm_EfuseWrite().
| int XNvm_EfuseWriteMiscCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | MiscCtrlBits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Misc Control Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| MiscCtrlBits | Value of Misc Control Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_MISC_CTRL_BITS CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteOffChipRevocationId | ( | XNvm_ClientInstance * | InstancePtr, |
| const u32 | OffChipRevokeIdNum, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program off chip Revocation Id eFuses.
| InstancePtr | Pointer to the client instance |
| OffChipRevokeIdNum | Off Chip Revocation ID number which needs to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send XNvm_EfuseWriteRomRsvd CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWritePlmUpdate | ( | XNvm_ClientInstance * | InstancePtr, |
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program PLM update bit.
| InstancePtr | Pointer to the client instance |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_PLM_UPDATE CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWritePuf | ( | XNvm_ClientInstance * | InstancePtr, |
| const u64 | PufHdAddr | ||
| ) |
This function sends IPI request to program Puf helper data requested by the user.
| InstancePtr | Pointer to the client instance |
| PufHdAddr | Address of the XNvm_EfusePufHdAddr structure where the user provided helper data to be programmed |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send XNvm_EfuseWritePuf CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds. If the timeout exceeds then return error else return status of the IPI response.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWritePuf | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | PufHdAddr | ||
| ) |
This function sends IPI request to program Puf helper data requested by the user.
| InstancePtr | Pointer to the client instance |
| PufHdAddr | Address of the XNvm_EfusePufHdAddr structure where the user provided helper data to be programmed |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Send write puf CDO to PLM to write PUF helper data to eFuses. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_WRITE_PUF, XNvm_DCacheFlushRange, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseWritePufCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | PufCtrlBits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Puf Control Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| PufCtrlBits | Value of Puf Control Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_PUF_CTRL_BITS CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds.
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteRevocationId | ( | XNvm_ClientInstance * | InstancePtr, |
| const u32 | RevokeIdNum, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Revocation Id eFuses.
| InstancePtr | Pointer to the client instance |
| RevokeIdNum | Revocation ID number which needs to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Validate input parameters. Return XST_INVALID_PARAM, if input parameters are invalid.
Send XNvm_EfuseWriteMiscCtrl CDO over IPI request to the PLM. Wait for IPI response from PLM with a default timeout of 300 seconds.
References XNVM_API_ID_EFUSE_WRITE_REVOCATION_ID, XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteRevocationId | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u32 | RevokeId, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program revoke id eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| RevokeId | RevokeId number to be revoked |
| EnvDisFlag | Flag that tells whether to enable/disable Environmental monitoring in XilNvm |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Link shared memory for IPI usage. If shared memory is not assigned return XST_FAILURE.
Zeroize the shared memory.
Send Revocation Id CDO to PLM to write to the user specified revocation eFuses. Return XST_FAILURE, if IPI request status is not success.
References XNVM_API_ID_EFUSE_WRITE, XNvm_DCacheFlushRange, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_EfuseWriteRomRsvdBits | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | RomRsvdBits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program ROM Rsvd Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| RomRsvdBits | Value of ROM Rsvd Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_ROM_RSVD CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteSecCtrlBits | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | SecCtrlBits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Secure Control Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| SecCtrlBits | Value of Secure Control Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_SEC_CTRL_BITS CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteSecMisc1Bits | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | SecMisc1Bits, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program Sec Misc 1 Bits requested by the user.
| InstancePtr | Pointer to the client instance |
| SecMisc1Bits | Value of Sec Misc 1 Bits to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. When set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid.
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_MISC1_CTRL_BITS CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.
| int XNvm_EfuseWriteUserFuses | ( | const XNvm_ClientInstance * | InstancePtr, |
| const u64 | UserFuseAddr, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program User eFuses requested by the user.
| InstancePtr | Pointer to the client instance |
| UserFuseAddr | Address of the XNvm_EfuseUserData structure where the user provided data to be programmed |
| EnvDisFlag | Flag that tells whether to enable/disable Environmental monitoring in XilNvm |
Validate input parameters. Return XST_INVALID_PARAM if input parameters are invalid.
Link shared memory for IPI usage. If shared memory is not assigned return XST_FAILURE.
Zeroize the shared memory.
Send eFUSE write CDO to PLM to write user specified user eFuses. Return XST_FAILURE if IPI request processing fails in PLM.
References XNVM_API_ID_EFUSE_WRITE, XNvm_DCacheFlushRange, XNvm_ProcessMailbox(), and XNVM_SLR_INDEX_SHIFT.
| int XNvm_WriteDmePrivateKey | ( | XNvm_ClientInstance * | InstancePtr, |
| u32 | DmeKeyType, | ||
| const u64 | DmeKeyAddr, | ||
| const u32 | EnvDisFlag | ||
| ) |
This function sends IPI request to program encrypted DME private key.
| InstancePtr | Pointer to the client instance |
| DmeKeyType | Type of DME Key which needs to be programmed |
| DmeKeyAddr | Address of the encrypted DME private key to be programmed |
| EnvDisFlag | Environmental monitoring flag set by the user. when set to true it will not check for voltage and temparature limits. |
Perform input parameter validation on InstancePtr. Return XST_INVALID_PARAM If input parameters are invalid
Send an IPI request to the PLM by using the XNVM_API_ID_EFUSE_WRITE_DME_KEY CDO command. Wait for IPI response from PLM with a default timeout of 300 seconds
References XNvm_ProcessMailbox(), and XNVM_WORD_LEN.