Files
SDK_SG200x_V2/u-boot-2021.10/include/cvitek/cvi_efuse.h
carbon 0545e9dc6d init version 2024-05-07
commit d1edce71135cc6d98c0a4b5729774542b676e769
Author: sophgo-forum-service <forum_service@sophgo.com>
Date:   Fri Mar 15 16:07:33 2024 +0800

    [fix] recommend using ssh method to clone repo.
    [fix] fix sensor driver repo branch name.
2024-05-07 19:36:36 +08:00

59 lines
1.4 KiB
C

#ifndef _CVI_EFUSE_H
#define _CVI_EFUSE_H 1
#ifndef CVI_U8
#define CVI_U8 uint8_t
#endif
#ifndef CVI_U32
#define CVI_U32 uint32_t
#endif
#ifndef CVI_S8
#define CVI_S8 int8_t
#endif
#ifndef CVI_S32
#define CVI_S32 int32_t
#endif
#ifndef CVI_SUCCESS
#define CVI_SUCCESS 0
#endif
#ifndef CVI_FAILURE
#define CVI_FAILURE (-1)
#endif
#define CVI_ERR_EFUSE_INVALID_AREA -0x0001
#define CVI_ERR_EFUSE_INVALID_PARA -0x0002
enum CVI_EFUSE_AREA_E {
CVI_EFUSE_AREA_USER,
CVI_EFUSE_AREA_DEVICE_ID,
CVI_EFUSE_AREA_HASH0_PUBLIC,
CVI_EFUSE_AREA_LOADER_EK,
CVI_EFUSE_AREA_DEVICE_EK,
CVI_EFUSE_AREA_LAST
};
enum CVI_EFUSE_LOCK_E {
CVI_EFUSE_LOCK_HASH0_PUBLIC = CVI_EFUSE_AREA_LAST + 1,
CVI_EFUSE_LOCK_LOADER_EK,
CVI_EFUSE_LOCK_DEVICE_EK,
CVI_EFUSE_LOCK_LAST
};
enum CVI_EFUSE_OTHERS_E {
CVI_EFUSE_SECUREBOOT = CVI_EFUSE_LOCK_LAST + 1,
CVI_EFUSE_OTHERS
};
CVI_S32 CVI_EFUSE_GetSize(enum CVI_EFUSE_AREA_E area, CVI_U32 *size);
CVI_S32 CVI_EFUSE_Read(enum CVI_EFUSE_AREA_E area, CVI_U8 *buf, CVI_U32 buf_size);
CVI_S32 CVI_EFUSE_Write(enum CVI_EFUSE_AREA_E area, const CVI_U8 *buf, CVI_U32 buf_size);
CVI_S32 CVI_EFUSE_EnableSecureBoot(uint32_t sel);
CVI_S32 CVI_EFUSE_IsSecureBootEnabled(void);
CVI_S32 CVI_EFUSE_Lock(enum CVI_EFUSE_LOCK_E lock);
CVI_S32 CVI_EFUSE_IsLocked(enum CVI_EFUSE_LOCK_E lock);
CVI_S32 CVI_EFUSE_LockWrite(enum CVI_EFUSE_LOCK_E lock);
CVI_S32 CVI_EFUSE_IsWriteLocked(enum CVI_EFUSE_LOCK_E lock);
#endif /* _CVI_EFUSE_H */