csi_efuse_api.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /*
  2. * Copyright (C) 2019-2020 Alibaba Group Holding Limited
  3. */
  4. #ifndef __CSI_EFUSE_API_H__
  5. #define __CSI_EFUSE_API_H__
  6. #include <stdint.h>
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. typedef enum {
  11. SECURE_BOOT_DIS = 0x5a5a5a5a,
  12. SECURE_BOOT_EN = ~(SECURE_BOOT_DIS),
  13. } sboot_st_t;
  14. typedef enum {
  15. IMAGE_ENCRYPT_DIS = 0x5a5a5a5a,
  16. IMAGE_ENCRYPT_EN = ~(IMAGE_ENCRYPT_DIS),
  17. } img_encrypt_st_t;
  18. int csi_efuse_api_int(void);
  19. void csi_efuse_api_uninit(void);
  20. int csi_efuse_get_secure_boot_st(sboot_st_t *sboot_st);
  21. int csi_efuse_get_digest_signature_scheme(uint32_t *digest_scheme, uint32_t *signature_scheme);
  22. int csi_efuse_get_bl2_encrypt_st(img_encrypt_st_t *encrypt_st);
  23. int csi_efuse_set_bl2_encrypt_st(img_encrypt_st_t encrypt_st);
  24. int csi_efuse_get_bl3_encrypt_st(img_encrypt_st_t *encrypt_st);
  25. int csi_efuse_set_bl3_encrypt_st(img_encrypt_st_t encrypt_st);
  26. int csi_efuse_get_bl1_version(uint32_t *version);
  27. int csi_efuse_set_bl1_version(uint32_t version);
  28. int csi_efuse_get_bl2_version(uint32_t *version);
  29. int csi_efuse_set_bl2_version(uint32_t version);
  30. int csi_efuse_read_raw(uint32_t addr, void *data, uint32_t cnt);
  31. int csi_efuse_write_raw(uint32_t addr, const void *data, uint32_t cnt);
  32. #ifdef __cplusplus
  33. }
  34. #endif
  35. #endif /* __CSI_EFUSE_API_H__ */