esp_efuse.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /*
  2. * SPDX-FileCopyrightText: 2019-2021 Espressif Systems (Shanghai) CO LTD
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. #pragma once
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. /**
  11. * @brief Type of eFuse blocks for ESP32
  12. */
  13. typedef enum {
  14. EFUSE_BLK0 = 0, /**< Number of eFuse block. Reserved. */
  15. EFUSE_BLK1 = 1, /**< Number of eFuse block. Used for Flash Encryption. If not using that Flash Encryption feature, they can be used for another purpose. */
  16. EFUSE_BLK_KEY0 = 1, /**< Number of eFuse block. Used for Flash Encryption. If not using that Flash Encryption feature, they can be used for another purpose. */
  17. EFUSE_BLK_ENCRYPT_FLASH = 1, /**< Number of eFuse block. Used for Flash Encryption. If not using that Flash Encryption feature, they can be used for another purpose. */
  18. EFUSE_BLK2 = 2, /**< Number of eFuse block. Used for Secure Boot. If not using that Secure Boot feature, they can be used for another purpose. */
  19. EFUSE_BLK_KEY1 = 2, /**< Number of eFuse block. Used for Secure Boot. If not using that Secure Boot feature, they can be used for another purpose. */
  20. EFUSE_BLK_SECURE_BOOT = 2, /**< Number of eFuse block. Used for Secure Boot. If not using that Secure Boot feature, they can be used for another purpose. */
  21. EFUSE_BLK3 = 3, /**< Number of eFuse block. Uses for the purpose of the user. */
  22. EFUSE_BLK_KEY2 = 3, /**< Number of eFuse block. Uses for the purpose of the user. */
  23. EFUSE_BLK_KEY_MAX = 4,
  24. EFUSE_BLK_MAX = 4,
  25. } esp_efuse_block_t;
  26. /**
  27. * @brief Type of coding scheme
  28. */
  29. typedef enum {
  30. EFUSE_CODING_SCHEME_NONE = 0, /**< None */
  31. EFUSE_CODING_SCHEME_3_4 = 1, /**< 3/4 coding */
  32. EFUSE_CODING_SCHEME_REPEAT = 2, /**< Repeat coding */
  33. } esp_efuse_coding_scheme_t;
  34. #ifdef __cplusplus
  35. }
  36. #endif