1 #ifndef __CA_PRIVATE__ 2 #define __CA_PRIVATE__ 3 4 #include "halCA.h" 5 6 typedef enum { 7 E_CA_RESOURCE, 8 } eCAResourceId; 9 10 11 typedef struct _CA_RESOURCE_PRIVATE 12 { 13 14 } CA_RESOURCE_PRIVATE; 15 16 typedef struct _CA_INSTANT_PRIVATE 17 { 18 19 } CA_INSTANT_PRIVATE; 20 21 22 MS_BOOL _MDrv_CA_Init(void); 23 MS_BOOL _MDrv_CA_OTP_EnableSecureBoot(void); 24 MS_BOOL _MDrv_CA_OTP_IsSecureBootEnabled(void); 25 MS_BOOL _MDrv_CA_OTP_SetBlockLock(MS_U32 u32Start, MS_U32 u32End, CA_LOCK_TYPE eLockType); 26 MS_BOOL _MDrv_CA_OTP_GetBlockLock(MS_U32 *pu32Start, MS_U32 *pu32End, CA_LOCK_TYPE *peLockType); 27 MS_BOOL _MDrv_CA_OTP_IsBlank(MS_U32 addr); 28 MS_U32 _MDrv_CA_OTP_Read(MS_U32 addr); 29 MS_BOOL _MDrv_CA_OTP_Write(MS_U32 addr, MS_U32 value); 30 MS_BOOL _MDrv_CA_Locked(CA_OTP_LOCK eLock); 31 MS_BOOL _MDrv_CA_OTP_Lock(CA_OTP_LOCK eLock); 32 MS_BOOL _MDrv_CA_OTP_SetRSAextID(MS_U32 u32Value); 33 MS_U32 _MDrv_CA_OTP_GetRSAextID(void); 34 MS_BOOL _MDrv_CA_OTP_SetHASH1_REF_VER(MS_U32 u32HASH1_REF_VER); 35 MS_BOOL _MDrv_CA_OTP_GetHASH1_REF_VER(MS_U32 *pu32HASH1_REF_VER); 36 MS_BOOL _MDrv_CA_OTP_SetHASH_REF_VER(MS_U32 u32HASH0_REF_VER, MS_U32 u32HASH2_REF_VER); 37 MS_BOOL _MDrv_CA_OTP_GetHASH_REF_VER(MS_U32 *pu32HASH0_REF_VER, MS_U32 *pu32HASH2_REF_VER); 38 MS_BOOL _MDrv_CA_OTP_SetDebugPortMode(CA_DEBUG_PORT eDebugPort, CA_DEBUG_PORT_MODE eMode); 39 MS_BOOL _MDrv_CA_OTP_GetDebugPortMode(CA_DEBUG_PORT eDebugPort, CA_DEBUG_PORT_MODE *eMode); 40 MS_BOOL _MDrv_CA_OTP_SetDeviceId(const MS_U8 *pu8Did, MS_U32 u32Size); 41 MS_BOOL _MDrv_CA_OTP_GetDeviceId(MS_U8 *pu8Did, MS_U32 u32Size); 42 MS_U32 _MDrv_CA_MaxDeviceIdSize(void); 43 MS_BOOL _MDrv_CA_OTP_EnableSecureCWMode(void); 44 MS_BOOL _MDrv_CA_OTP_IsSecureCWMode(void); 45 MS_U32 _MDrv_CA_Random(void); 46 MS_U32 _MDrv_CA_OTP_ReadCAVendor(void); 47 48 #endif // __CA_PRIVATE__ 49