1 /* 2 * Copyright (c) 2001-2019, Arm Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef _PROD_UTIL_H 8 #define _PROD_UTIL_H 9 10 #include <stdint.h> 11 #include "cc_production_asset.h" 12 13 #ifdef __cplusplus 14 extern "C" 15 { 16 #endif 17 18 #define PROD_MIN(a , b ) ( ( (a) < (b) ) ? (a) : (b) ) 19 20 uint32_t CC_PROD_PkgVerify(CCProdAssetPkg_t *pPkgAsset, 21 const uint8_t *pAssetId, uint32_t assetIdSize, 22 const uint8_t *pLabel, uint32_t labelSize, 23 uint8_t *pContext, uint32_t contextSize, 24 CCPlainAsset_t pPlainAsset, 25 unsigned long workspaceAddr, 26 uint32_t workspaceSize); 27 28 uint32_t CC_PROD_BitListFromNum(uint32_t *pWordBuff, 29 uint32_t wordBuffSize, 30 uint32_t numVal); 31 32 uint32_t CC_PROD_GetZeroCount(uint32_t *pBuff, 33 uint32_t buffWordSize, 34 uint32_t *pZeroCount); 35 36 37 uint32_t CCProd_Init(void); 38 39 void CCPROD_Fini(void); 40 41 42 #ifdef __cplusplus 43 } 44 #endif 45 #endif //_PROD_UTIL_H 46 47