lib/sw_services/xilnvm/examples/xilnvm_efuse_versal_client_example.c
static int XilNvm_EfuseShowPpkHash(XNvm_PpkType PpkType)
{
	int Status = XST_FAILURE;
	XNvm_PpkHash *EfusePpk = (XNvm_PpkHash *)CacheAlignedArr;
	u32 ReadPpk[XNVM_EFUSE_PPK_HASH_LEN_IN_WORDS] = {0U};
	s8 Row;

	Xil_DCacheInvalidateRange((UINTPTR)&CacheAlignedArr,
			sizeof(CacheAlignedArr));

	Status = XNvm_EfuseReadPpkHash((UINTPTR)EfusePpk, PpkType);
	if (Status != XST_SUCCESS) {
		goto END;
	}
	else {
		Xil_DCacheInvalidateRange((UINTPTR)&CacheAlignedArr,
				sizeof(CacheAlignedArr));
		xil_printf("\n\rPPK%d:", PpkType);
		XilNvm_FormatData((u8 *)EfusePpk->Hash, (u8 *)ReadPpk,
				XNVM_EFUSE_PPK_HASH_LEN_IN_BYTES);
		for (Row = (XNVM_EFUSE_PPK_HASH_LEN_IN_WORDS - 1U);
				Row >= 0; Row--) {
			xil_printf("%08x", ReadPpk[Row]);
		}
	}
	Status = XST_SUCCESS;

END:
	return Status;
}
/****************************************************************************/
/**
 * This function reads Ppk Hash eFuses data and displays.
 *
 * @param	PpkType		PpkType PPK0/PPK1/PPK2
 *
 * @return
 *	- XST_SUCCESS - If the read request is successful.
 *	- Error code - On failure.
 *
 ******************************************************************************/
This function reads Ppk Hash eFuses data and displays.

@return
- XST_SUCCESS - If the read request is successful.
- Error code - On failure.
This function reads Ppk Hash eFuses data and displays . @return - XST_SUCCESS - If the read request is successful . - Error code - On failure .
static int XilNvm_EfuseShowPpkHash(XNvm_PpkType PpkType)
{
	int Status = XST_FAILURE;
	XNvm_PpkHash *EfusePpk = (XNvm_PpkHash *)CacheAlignedArr;
	u32 ReadPpk[XNVM_EFUSE_PPK_HASH_LEN_IN_WORDS] = {0U};
	s8 Row;
	Xil_DCacheInvalidateRange((UINTPTR)&CacheAlignedArr,
			sizeof(CacheAlignedArr));
	Status = XNvm_EfuseReadPpkHash((UINTPTR)EfusePpk, PpkType);
	if (Status != XST_SUCCESS) {
		goto END;
	}
	else {
		Xil_DCacheInvalidateRange((UINTPTR)&CacheAlignedArr,
				sizeof(CacheAlignedArr));
		xil_printf("\n\rPPK%d:", PpkType);
		XilNvm_FormatData((u8 *)EfusePpk->Hash, (u8 *)ReadPpk,
				XNVM_EFUSE_PPK_HASH_LEN_IN_BYTES);
		for (Row = (XNVM_EFUSE_PPK_HASH_LEN_IN_WORDS - 1U);
				Row >= 0; Row--) {
			xil_printf("%08x", ReadPpk[Row]);
		}
	}
	Status = XST_SUCCESS;
END:
	return Status;
}
static int XilNvm_EfuseShowPpkHash ( XNvm_PpkType PpkType ) { int Status = XST_FAILURE ; XNvm_PpkHash * EfusePpk = ( XNvm_PpkHash * ) CacheAlignedArr ; u32 ReadPpk [ XNVM_EFUSE_PPK_HASH_LEN_IN_WORDS ] = { 0U } ; s8 Row ; Xil_DCacheInvalidateRange ( ( UINTPTR ) & CacheAlignedArr , sizeof ( CacheAlignedArr ) ) ; Status = XNvm_EfuseReadPpkHash ( ( UINTPTR ) EfusePpk , PpkType ) ; if ( Status != XST_SUCCESS ) { goto END ; } else { Xil_DCacheInvalidateRange ( ( UINTPTR ) & CacheAlignedArr , sizeof ( CacheAlignedArr ) ) ; xil_printf ( " \n \r " , PpkType ) ; XilNvm_FormatData ( ( u8 * ) EfusePpk -> Hash , ( u8 * ) ReadPpk , XNVM_EFUSE_PPK_HASH_LEN_IN_BYTES ) ; for ( Row = ( XNVM_EFUSE_PPK_HASH_LEN_IN_WORDS - 1U ) ; Row >= 0 ; Row -- ) { xil_printf ( " " , ReadPpk [ Row ] ) ; } } Status = XST_SUCCESS ; END : return Status ; }
This function reads Ppk Hash eFuses data and displays.
This function reads Ppk Hash eFuses data and displays .