1 /** 2 * SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 #pragma once 7 8 #ifdef __cplusplus 9 extern "C" { 10 #endif 11 12 #define EFUSE_WRITE_OP_CODE 0x5a5a 13 #define EFUSE_READ_OP_CODE 0x5aa5 14 15 /* Write disable bits */ 16 #define EFUSE_WR_DIS_RD_DIS (1<<0) /*< disable writing read disable reg */ 17 #define EFUSE_WR_DIS_WR_DIS (1<<1) /*< disable writing write disable reg */ 18 #define EFUSE_WR_DIS_FLASH_CRYPT_CNT (1<<2) 19 #define EFUSE_WR_DIS_MAC_SPI_CONFIG_HD (1<<3) /*< disable writing MAC & SPI config hd efuses */ 20 #define EFUSE_WR_DIS_XPD_SDIO (1<<5) /*< disable writing SDIO config efuses */ 21 #define EFUSE_WR_DIS_SPI_PAD_CONFIG (1<<6) /*< disable writing SPI_PAD_CONFIG efuses */ 22 #define EFUSE_WR_DIS_BLK1 (1<<7) /*< disable writing BLK1 efuses */ 23 #define EFUSE_WR_DIS_BLK2 (1<<8) /*< disable writing BLK2 efuses */ 24 #define EFUSE_WR_DIS_BLK3 (1<<9) /*< disable writing BLK3 efuses */ 25 #define EFUSE_WR_DIS_FLASH_CRYPT_CODING_SCHEME (1<<10) /*< disable writing FLASH_CRYPT_CONFIG and CODING_SCHEME efuses */ 26 #define EFUSE_WR_DIS_ABS_DONE_0 (1<<12) /*< disable writing ABS_DONE_0 efuse */ 27 #define EFUSE_WR_DIS_ABS_DONE_1 (1<<13) /*< disable writing ABS_DONE_1 efuse */ 28 #define EFUSE_WR_DIS_JTAG_DISABLE (1<<14) /*< disable writing JTAG_DISABLE efuse */ 29 #define EFUSE_WR_DIS_CONSOLE_DL_DISABLE (1<<15) /*< disable writing CONSOLE_DEBUG_DISABLE, DISABLE_DL_ENCRYPT, DISABLE_DL_DECRYPT and DISABLE_DL_CACHE efuses */ 30 31 /* Read disable bits for efuse blocks 1-3 */ 32 #define EFUSE_RD_DIS_BLK1 (1<<16) 33 #define EFUSE_RD_DIS_BLK2 (1<<17) 34 #define EFUSE_RD_DIS_BLK3 (1<<18) 35 36 #define EFUSE_RD_CHIP_VER_PKG_ESP32D0WDQ6 0 37 #define EFUSE_RD_CHIP_VER_PKG_ESP32D0WDQ5 1 38 #define EFUSE_RD_CHIP_VER_PKG_ESP32D2WDQ5 2 39 #define EFUSE_RD_CHIP_VER_PKG_ESP32PICOD2 4 /* Deprecated: this chip was never mass produced */ 40 #define EFUSE_RD_CHIP_VER_PKG_ESP32U4WDH 4 41 #define EFUSE_RD_CHIP_VER_PKG_ESP32PICOD4 5 42 #define EFUSE_RD_CHIP_VER_PKG_ESP32PICOV302 6 43 #define EFUSE_RD_CHIP_VER_PKG_ESP32D0WDR2V3 7 44 45 #define EFUSE_CODING_SCHEME_VAL_NONE 0x0 46 #define EFUSE_CODING_SCHEME_VAL_34 0x1 47 #define EFUSE_CODING_SCHEME_VAL_REPEAT 0x2 48 49 #ifdef __cplusplus 50 } 51 #endif 52