1 /*
2  * SPDX-FileCopyrightText: 2017-2024 Espressif Systems (Shanghai) CO LTD
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #include "sdkconfig.h"
8 #include "esp_efuse.h"
9 #include <assert.h>
10 #include "esp_efuse_table.h"
11 
12 // md5_digest_table 1dc5045e8a74c32825696ca314128499
13 // This file was generated from the file esp_efuse_table.csv. DO NOT CHANGE THIS FILE MANUALLY.
14 // If you want to change some fields, you need to change esp_efuse_table.csv file
15 // then run `efuse_common_table` or `efuse_custom_table` command it will generate this file.
16 // To show efuse_table run the command 'show_efuse_table'.
17 
18 static const esp_efuse_desc_t WR_DIS[] = {
19     {EFUSE_BLK0, 0, 32}, 	 // [] Disable programming of individual eFuses,
20 };
21 
22 static const esp_efuse_desc_t WR_DIS_RD_DIS[] = {
23     {EFUSE_BLK0, 0, 1}, 	 // [] wr_dis of RD_DIS,
24 };
25 
26 static const esp_efuse_desc_t WR_DIS_DIS_ICACHE[] = {
27     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of DIS_ICACHE,
28 };
29 
30 static const esp_efuse_desc_t WR_DIS_DIS_USB_JTAG[] = {
31     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of DIS_USB_JTAG,
32 };
33 
34 static const esp_efuse_desc_t WR_DIS_POWERGLITCH_EN[] = {
35     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of POWERGLITCH_EN,
36 };
37 
38 static const esp_efuse_desc_t WR_DIS_DIS_FORCE_DOWNLOAD[] = {
39     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of DIS_FORCE_DOWNLOAD,
40 };
41 
42 static const esp_efuse_desc_t WR_DIS_SPI_DOWNLOAD_MSPI_DIS[] = {
43     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of SPI_DOWNLOAD_MSPI_DIS,
44 };
45 
46 static const esp_efuse_desc_t WR_DIS_DIS_TWAI[] = {
47     {EFUSE_BLK0, 2, 1}, 	 // [WR_DIS.DIS_CAN] wr_dis of DIS_TWAI,
48 };
49 
50 static const esp_efuse_desc_t WR_DIS_JTAG_SEL_ENABLE[] = {
51     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of JTAG_SEL_ENABLE,
52 };
53 
54 static const esp_efuse_desc_t WR_DIS_DIS_PAD_JTAG[] = {
55     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of DIS_PAD_JTAG,
56 };
57 
58 static const esp_efuse_desc_t WR_DIS_DIS_DOWNLOAD_MANUAL_ENCRYPT[] = {
59     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of DIS_DOWNLOAD_MANUAL_ENCRYPT,
60 };
61 
62 static const esp_efuse_desc_t WR_DIS_POWERGLITCH_EN1[] = {
63     {EFUSE_BLK0, 2, 1}, 	 // [] wr_dis of POWERGLITCH_EN1,
64 };
65 
66 static const esp_efuse_desc_t WR_DIS_WDT_DELAY_SEL[] = {
67     {EFUSE_BLK0, 3, 1}, 	 // [] wr_dis of WDT_DELAY_SEL,
68 };
69 
70 static const esp_efuse_desc_t WR_DIS_SPI_BOOT_CRYPT_CNT[] = {
71     {EFUSE_BLK0, 4, 1}, 	 // [] wr_dis of SPI_BOOT_CRYPT_CNT,
72 };
73 
74 static const esp_efuse_desc_t WR_DIS_SECURE_BOOT_KEY_REVOKE0[] = {
75     {EFUSE_BLK0, 5, 1}, 	 // [] wr_dis of SECURE_BOOT_KEY_REVOKE0,
76 };
77 
78 static const esp_efuse_desc_t WR_DIS_SECURE_BOOT_KEY_REVOKE1[] = {
79     {EFUSE_BLK0, 6, 1}, 	 // [] wr_dis of SECURE_BOOT_KEY_REVOKE1,
80 };
81 
82 static const esp_efuse_desc_t WR_DIS_SECURE_BOOT_KEY_REVOKE2[] = {
83     {EFUSE_BLK0, 7, 1}, 	 // [] wr_dis of SECURE_BOOT_KEY_REVOKE2,
84 };
85 
86 static const esp_efuse_desc_t WR_DIS_KEY_PURPOSE_0[] = {
87     {EFUSE_BLK0, 8, 1}, 	 // [WR_DIS.KEY0_PURPOSE] wr_dis of KEY_PURPOSE_0,
88 };
89 
90 static const esp_efuse_desc_t WR_DIS_KEY_PURPOSE_1[] = {
91     {EFUSE_BLK0, 9, 1}, 	 // [WR_DIS.KEY1_PURPOSE] wr_dis of KEY_PURPOSE_1,
92 };
93 
94 static const esp_efuse_desc_t WR_DIS_KEY_PURPOSE_2[] = {
95     {EFUSE_BLK0, 10, 1}, 	 // [WR_DIS.KEY2_PURPOSE] wr_dis of KEY_PURPOSE_2,
96 };
97 
98 static const esp_efuse_desc_t WR_DIS_KEY_PURPOSE_3[] = {
99     {EFUSE_BLK0, 11, 1}, 	 // [WR_DIS.KEY3_PURPOSE] wr_dis of KEY_PURPOSE_3,
100 };
101 
102 static const esp_efuse_desc_t WR_DIS_KEY_PURPOSE_4[] = {
103     {EFUSE_BLK0, 12, 1}, 	 // [WR_DIS.KEY4_PURPOSE] wr_dis of KEY_PURPOSE_4,
104 };
105 
106 static const esp_efuse_desc_t WR_DIS_KEY_PURPOSE_5[] = {
107     {EFUSE_BLK0, 13, 1}, 	 // [WR_DIS.KEY5_PURPOSE] wr_dis of KEY_PURPOSE_5,
108 };
109 
110 static const esp_efuse_desc_t WR_DIS_XTS_DPA_PSEUDO_LEVEL[] = {
111     {EFUSE_BLK0, 14, 1}, 	 // [] wr_dis of XTS_DPA_PSEUDO_LEVEL,
112 };
113 
114 static const esp_efuse_desc_t WR_DIS_SEC_DPA_LEVEL[] = {
115     {EFUSE_BLK0, 14, 1}, 	 // [] wr_dis of SEC_DPA_LEVEL,
116 };
117 
118 static const esp_efuse_desc_t WR_DIS_CRYPT_DPA_ENABLE[] = {
119     {EFUSE_BLK0, 14, 1}, 	 // [] wr_dis of CRYPT_DPA_ENABLE,
120 };
121 
122 static const esp_efuse_desc_t WR_DIS_SECURE_BOOT_EN[] = {
123     {EFUSE_BLK0, 15, 1}, 	 // [] wr_dis of SECURE_BOOT_EN,
124 };
125 
126 static const esp_efuse_desc_t WR_DIS_SECURE_BOOT_AGGRESSIVE_REVOKE[] = {
127     {EFUSE_BLK0, 16, 1}, 	 // [] wr_dis of SECURE_BOOT_AGGRESSIVE_REVOKE,
128 };
129 
130 static const esp_efuse_desc_t WR_DIS_ECDSA_CURVE_MODE[] = {
131     {EFUSE_BLK0, 17, 1}, 	 // [] wr_dis of ECDSA_CURVE_MODE,
132 };
133 
134 static const esp_efuse_desc_t WR_DIS_ECC_FORCE_CONST_TIME[] = {
135     {EFUSE_BLK0, 17, 1}, 	 // [] wr_dis of ECC_FORCE_CONST_TIME,
136 };
137 
138 static const esp_efuse_desc_t WR_DIS_FLASH_TPUW[] = {
139     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of FLASH_TPUW,
140 };
141 
142 static const esp_efuse_desc_t WR_DIS_DIS_DOWNLOAD_MODE[] = {
143     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of DIS_DOWNLOAD_MODE,
144 };
145 
146 static const esp_efuse_desc_t WR_DIS_DIS_DIRECT_BOOT[] = {
147     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of DIS_DIRECT_BOOT,
148 };
149 
150 static const esp_efuse_desc_t WR_DIS_DIS_USB_SERIAL_JTAG_ROM_PRINT[] = {
151     {EFUSE_BLK0, 18, 1}, 	 // [WR_DIS.DIS_USB_PRINT] wr_dis of DIS_USB_SERIAL_JTAG_ROM_PRINT,
152 };
153 
154 static const esp_efuse_desc_t WR_DIS_DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE[] = {
155     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE,
156 };
157 
158 static const esp_efuse_desc_t WR_DIS_ENABLE_SECURITY_DOWNLOAD[] = {
159     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of ENABLE_SECURITY_DOWNLOAD,
160 };
161 
162 static const esp_efuse_desc_t WR_DIS_UART_PRINT_CONTROL[] = {
163     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of UART_PRINT_CONTROL,
164 };
165 
166 static const esp_efuse_desc_t WR_DIS_FORCE_SEND_RESUME[] = {
167     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of FORCE_SEND_RESUME,
168 };
169 
170 static const esp_efuse_desc_t WR_DIS_SECURE_VERSION[] = {
171     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of SECURE_VERSION,
172 };
173 
174 static const esp_efuse_desc_t WR_DIS_SECURE_BOOT_DISABLE_FAST_WAKE[] = {
175     {EFUSE_BLK0, 18, 1}, 	 // [] wr_dis of SECURE_BOOT_DISABLE_FAST_WAKE,
176 };
177 
178 static const esp_efuse_desc_t WR_DIS_HYS_EN_PAD0[] = {
179     {EFUSE_BLK0, 19, 1}, 	 // [] wr_dis of HYS_EN_PAD0,
180 };
181 
182 static const esp_efuse_desc_t WR_DIS_HYS_EN_PAD1[] = {
183     {EFUSE_BLK0, 19, 1}, 	 // [] wr_dis of HYS_EN_PAD1,
184 };
185 
186 static const esp_efuse_desc_t WR_DIS_BLK1[] = {
187     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of BLOCK1,
188 };
189 
190 static const esp_efuse_desc_t WR_DIS_MAC[] = {
191     {EFUSE_BLK0, 20, 1}, 	 // [WR_DIS.MAC_FACTORY] wr_dis of MAC,
192 };
193 
194 static const esp_efuse_desc_t WR_DIS_MAC_EXT[] = {
195     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of MAC_EXT,
196 };
197 
198 static const esp_efuse_desc_t WR_DIS_RXIQ_VERSION[] = {
199     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of RXIQ_VERSION,
200 };
201 
202 static const esp_efuse_desc_t WR_DIS_RXIQ_0[] = {
203     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of RXIQ_0,
204 };
205 
206 static const esp_efuse_desc_t WR_DIS_RXIQ_1[] = {
207     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of RXIQ_1,
208 };
209 
210 static const esp_efuse_desc_t WR_DIS_ACTIVE_HP_DBIAS[] = {
211     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of ACTIVE_HP_DBIAS,
212 };
213 
214 static const esp_efuse_desc_t WR_DIS_ACTIVE_LP_DBIAS[] = {
215     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of ACTIVE_LP_DBIAS,
216 };
217 
218 static const esp_efuse_desc_t WR_DIS_DSLP_DBIAS[] = {
219     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of DSLP_DBIAS,
220 };
221 
222 static const esp_efuse_desc_t WR_DIS_DBIAS_VOL_GAP[] = {
223     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of DBIAS_VOL_GAP,
224 };
225 
226 static const esp_efuse_desc_t WR_DIS_WAFER_VERSION_MINOR[] = {
227     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of WAFER_VERSION_MINOR,
228 };
229 
230 static const esp_efuse_desc_t WR_DIS_WAFER_VERSION_MAJOR[] = {
231     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of WAFER_VERSION_MAJOR,
232 };
233 
234 static const esp_efuse_desc_t WR_DIS_DISABLE_WAFER_VERSION_MAJOR[] = {
235     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of DISABLE_WAFER_VERSION_MAJOR,
236 };
237 
238 static const esp_efuse_desc_t WR_DIS_FLASH_CAP[] = {
239     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of FLASH_CAP,
240 };
241 
242 static const esp_efuse_desc_t WR_DIS_FLASH_TEMP[] = {
243     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of FLASH_TEMP,
244 };
245 
246 static const esp_efuse_desc_t WR_DIS_FLASH_VENDOR[] = {
247     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of FLASH_VENDOR,
248 };
249 
250 static const esp_efuse_desc_t WR_DIS_PKG_VERSION[] = {
251     {EFUSE_BLK0, 20, 1}, 	 // [] wr_dis of PKG_VERSION,
252 };
253 
254 static const esp_efuse_desc_t WR_DIS_SYS_DATA_PART1[] = {
255     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of BLOCK2,
256 };
257 
258 static const esp_efuse_desc_t WR_DIS_OPTIONAL_UNIQUE_ID[] = {
259     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of OPTIONAL_UNIQUE_ID,
260 };
261 
262 static const esp_efuse_desc_t WR_DIS_BLK_VERSION_MINOR[] = {
263     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of BLK_VERSION_MINOR,
264 };
265 
266 static const esp_efuse_desc_t WR_DIS_BLK_VERSION_MAJOR[] = {
267     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of BLK_VERSION_MAJOR,
268 };
269 
270 static const esp_efuse_desc_t WR_DIS_DISABLE_BLK_VERSION_MAJOR[] = {
271     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of DISABLE_BLK_VERSION_MAJOR,
272 };
273 
274 static const esp_efuse_desc_t WR_DIS_TEMP_CALIB[] = {
275     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of TEMP_CALIB,
276 };
277 
278 static const esp_efuse_desc_t WR_DIS_ADC1_AVE_INITCODE_ATTEN0[] = {
279     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_AVE_INITCODE_ATTEN0,
280 };
281 
282 static const esp_efuse_desc_t WR_DIS_ADC1_AVE_INITCODE_ATTEN1[] = {
283     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_AVE_INITCODE_ATTEN1,
284 };
285 
286 static const esp_efuse_desc_t WR_DIS_ADC1_AVE_INITCODE_ATTEN2[] = {
287     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_AVE_INITCODE_ATTEN2,
288 };
289 
290 static const esp_efuse_desc_t WR_DIS_ADC1_AVE_INITCODE_ATTEN3[] = {
291     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_AVE_INITCODE_ATTEN3,
292 };
293 
294 static const esp_efuse_desc_t WR_DIS_ADC1_HI_DOUT_ATTEN0[] = {
295     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_HI_DOUT_ATTEN0,
296 };
297 
298 static const esp_efuse_desc_t WR_DIS_ADC1_HI_DOUT_ATTEN1[] = {
299     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_HI_DOUT_ATTEN1,
300 };
301 
302 static const esp_efuse_desc_t WR_DIS_ADC1_HI_DOUT_ATTEN2[] = {
303     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_HI_DOUT_ATTEN2,
304 };
305 
306 static const esp_efuse_desc_t WR_DIS_ADC1_HI_DOUT_ATTEN3[] = {
307     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_HI_DOUT_ATTEN3,
308 };
309 
310 static const esp_efuse_desc_t WR_DIS_ADC1_CH0_ATTEN0_INITCODE_DIFF[] = {
311     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_CH0_ATTEN0_INITCODE_DIFF,
312 };
313 
314 static const esp_efuse_desc_t WR_DIS_ADC1_CH1_ATTEN0_INITCODE_DIFF[] = {
315     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_CH1_ATTEN0_INITCODE_DIFF,
316 };
317 
318 static const esp_efuse_desc_t WR_DIS_ADC1_CH2_ATTEN0_INITCODE_DIFF[] = {
319     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_CH2_ATTEN0_INITCODE_DIFF,
320 };
321 
322 static const esp_efuse_desc_t WR_DIS_ADC1_CH3_ATTEN0_INITCODE_DIFF[] = {
323     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_CH3_ATTEN0_INITCODE_DIFF,
324 };
325 
326 static const esp_efuse_desc_t WR_DIS_ADC1_CH4_ATTEN0_INITCODE_DIFF[] = {
327     {EFUSE_BLK0, 21, 1}, 	 // [] wr_dis of ADC1_CH4_ATTEN0_INITCODE_DIFF,
328 };
329 
330 static const esp_efuse_desc_t WR_DIS_BLOCK_USR_DATA[] = {
331     {EFUSE_BLK0, 22, 1}, 	 // [WR_DIS.USER_DATA] wr_dis of BLOCK_USR_DATA,
332 };
333 
334 static const esp_efuse_desc_t WR_DIS_CUSTOM_MAC[] = {
335     {EFUSE_BLK0, 22, 1}, 	 // [WR_DIS.MAC_CUSTOM WR_DIS.USER_DATA_MAC_CUSTOM] wr_dis of CUSTOM_MAC,
336 };
337 
338 static const esp_efuse_desc_t WR_DIS_BLOCK_KEY0[] = {
339     {EFUSE_BLK0, 23, 1}, 	 // [WR_DIS.KEY0] wr_dis of BLOCK_KEY0,
340 };
341 
342 static const esp_efuse_desc_t WR_DIS_BLOCK_KEY1[] = {
343     {EFUSE_BLK0, 24, 1}, 	 // [WR_DIS.KEY1] wr_dis of BLOCK_KEY1,
344 };
345 
346 static const esp_efuse_desc_t WR_DIS_BLOCK_KEY2[] = {
347     {EFUSE_BLK0, 25, 1}, 	 // [WR_DIS.KEY2] wr_dis of BLOCK_KEY2,
348 };
349 
350 static const esp_efuse_desc_t WR_DIS_BLOCK_KEY3[] = {
351     {EFUSE_BLK0, 26, 1}, 	 // [WR_DIS.KEY3] wr_dis of BLOCK_KEY3,
352 };
353 
354 static const esp_efuse_desc_t WR_DIS_BLOCK_KEY4[] = {
355     {EFUSE_BLK0, 27, 1}, 	 // [WR_DIS.KEY4] wr_dis of BLOCK_KEY4,
356 };
357 
358 static const esp_efuse_desc_t WR_DIS_BLOCK_KEY5[] = {
359     {EFUSE_BLK0, 28, 1}, 	 // [WR_DIS.KEY5] wr_dis of BLOCK_KEY5,
360 };
361 
362 static const esp_efuse_desc_t WR_DIS_BLOCK_SYS_DATA2[] = {
363     {EFUSE_BLK0, 29, 1}, 	 // [WR_DIS.SYS_DATA_PART2] wr_dis of BLOCK_SYS_DATA2,
364 };
365 
366 static const esp_efuse_desc_t WR_DIS_USB_EXCHG_PINS[] = {
367     {EFUSE_BLK0, 30, 1}, 	 // [] wr_dis of USB_EXCHG_PINS,
368 };
369 
370 static const esp_efuse_desc_t WR_DIS_VDD_SPI_AS_GPIO[] = {
371     {EFUSE_BLK0, 30, 1}, 	 // [] wr_dis of VDD_SPI_AS_GPIO,
372 };
373 
374 static const esp_efuse_desc_t WR_DIS_SOFT_DIS_JTAG[] = {
375     {EFUSE_BLK0, 31, 1}, 	 // [] wr_dis of SOFT_DIS_JTAG,
376 };
377 
378 static const esp_efuse_desc_t RD_DIS[] = {
379     {EFUSE_BLK0, 32, 7}, 	 // [] Disable reading from BlOCK4-10,
380 };
381 
382 static const esp_efuse_desc_t RD_DIS_BLOCK_KEY0[] = {
383     {EFUSE_BLK0, 32, 1}, 	 // [RD_DIS.KEY0] rd_dis of BLOCK_KEY0,
384 };
385 
386 static const esp_efuse_desc_t RD_DIS_BLOCK_KEY1[] = {
387     {EFUSE_BLK0, 33, 1}, 	 // [RD_DIS.KEY1] rd_dis of BLOCK_KEY1,
388 };
389 
390 static const esp_efuse_desc_t RD_DIS_BLOCK_KEY2[] = {
391     {EFUSE_BLK0, 34, 1}, 	 // [RD_DIS.KEY2] rd_dis of BLOCK_KEY2,
392 };
393 
394 static const esp_efuse_desc_t RD_DIS_BLOCK_KEY3[] = {
395     {EFUSE_BLK0, 35, 1}, 	 // [RD_DIS.KEY3] rd_dis of BLOCK_KEY3,
396 };
397 
398 static const esp_efuse_desc_t RD_DIS_BLOCK_KEY4[] = {
399     {EFUSE_BLK0, 36, 1}, 	 // [RD_DIS.KEY4] rd_dis of BLOCK_KEY4,
400 };
401 
402 static const esp_efuse_desc_t RD_DIS_BLOCK_KEY5[] = {
403     {EFUSE_BLK0, 37, 1}, 	 // [RD_DIS.KEY5] rd_dis of BLOCK_KEY5,
404 };
405 
406 static const esp_efuse_desc_t RD_DIS_BLOCK_SYS_DATA2[] = {
407     {EFUSE_BLK0, 38, 1}, 	 // [RD_DIS.SYS_DATA_PART2] rd_dis of BLOCK_SYS_DATA2,
408 };
409 
410 static const esp_efuse_desc_t DIS_ICACHE[] = {
411     {EFUSE_BLK0, 40, 1}, 	 // [] Represents whether icache is disabled or enabled. 1: disabled. 0: enabled,
412 };
413 
414 static const esp_efuse_desc_t DIS_USB_JTAG[] = {
415     {EFUSE_BLK0, 41, 1}, 	 // [] Represents whether the function of usb switch to jtag is disabled or enabled. 1: disabled. 0: enabled,
416 };
417 
418 static const esp_efuse_desc_t POWERGLITCH_EN[] = {
419     {EFUSE_BLK0, 42, 1}, 	 // [] Represents whether power glitch function is enabled. 1: enabled. 0: disabled,
420 };
421 
422 static const esp_efuse_desc_t DIS_FORCE_DOWNLOAD[] = {
423     {EFUSE_BLK0, 44, 1}, 	 // [] Represents whether the function that forces chip into download mode is disabled or enabled. 1: disabled. 0: enabled,
424 };
425 
426 static const esp_efuse_desc_t SPI_DOWNLOAD_MSPI_DIS[] = {
427     {EFUSE_BLK0, 45, 1}, 	 // [] Represents whether SPI0 controller during boot_mode_download is disabled or enabled. 1: disabled. 0: enabled,
428 };
429 
430 static const esp_efuse_desc_t DIS_TWAI[] = {
431     {EFUSE_BLK0, 46, 1}, 	 // [DIS_CAN] Represents whether TWAI function is disabled or enabled. 1: disabled. 0: enabled,
432 };
433 
434 static const esp_efuse_desc_t JTAG_SEL_ENABLE[] = {
435     {EFUSE_BLK0, 47, 1}, 	 // [] Set this bit to enable selection between usb_to_jtag and pad_to_jtag through strapping gpio25 when both EFUSE_DIS_PAD_JTAG and EFUSE_DIS_USB_JTAG are equal to 0,
436 };
437 
438 static const esp_efuse_desc_t SOFT_DIS_JTAG[] = {
439     {EFUSE_BLK0, 48, 3}, 	 // [] Represents whether JTAG is disabled in soft way. Odd number: disabled. Even number: enabled,
440 };
441 
442 static const esp_efuse_desc_t DIS_PAD_JTAG[] = {
443     {EFUSE_BLK0, 51, 1}, 	 // [] Represents whether JTAG is disabled in the hard way(permanently). 1: disabled. 0: enabled,
444 };
445 
446 static const esp_efuse_desc_t DIS_DOWNLOAD_MANUAL_ENCRYPT[] = {
447     {EFUSE_BLK0, 52, 1}, 	 // [] Represents whether flash encrypt function is disabled or enabled(except in SPI boot mode). 1: disabled. 0: enabled,
448 };
449 
450 static const esp_efuse_desc_t USB_EXCHG_PINS[] = {
451     {EFUSE_BLK0, 57, 1}, 	 // [] Represents whether the D+ and D- pins is exchanged. 1: exchanged. 0: not exchanged,
452 };
453 
454 static const esp_efuse_desc_t VDD_SPI_AS_GPIO[] = {
455     {EFUSE_BLK0, 58, 1}, 	 // [] Represents whether vdd spi pin is functioned as gpio. 1: functioned. 0: not functioned,
456 };
457 
458 static const esp_efuse_desc_t ECDSA_CURVE_MODE[] = {
459     {EFUSE_BLK0, 59, 2}, 	 // [] Configures the curve of ECDSA calculation: 0: only enable P256. 1: only enable P192. 2: both enable P256 and P192. 3: only enable P256,
460 };
461 
462 static const esp_efuse_desc_t ECC_FORCE_CONST_TIME[] = {
463     {EFUSE_BLK0, 61, 1}, 	 // [] Set this bit to permanently turn on ECC const-time mode,
464 };
465 
466 static const esp_efuse_desc_t XTS_DPA_PSEUDO_LEVEL[] = {
467     {EFUSE_BLK0, 62, 2}, 	 // [] Set this bit to control the xts pseudo-round anti-dpa attack function: 0: controlled by register. 1-3: the higher the value is; the more pseudo-rounds are inserted to the xts-aes calculation,
468 };
469 
470 static const esp_efuse_desc_t WDT_DELAY_SEL[] = {
471     {EFUSE_BLK0, 80, 2}, 	 // [] Represents whether RTC watchdog timeout threshold is selected at startup. 1: selected. 0: not selected,
472 };
473 
474 static const esp_efuse_desc_t SPI_BOOT_CRYPT_CNT[] = {
475     {EFUSE_BLK0, 82, 3}, 	 // [] Enables flash encryption when 1 or 3 bits are set and disables otherwise {0: "Disable"; 1: "Enable"; 3: "Disable"; 7: "Enable"},
476 };
477 
478 static const esp_efuse_desc_t SECURE_BOOT_KEY_REVOKE0[] = {
479     {EFUSE_BLK0, 85, 1}, 	 // [] Revoke 1st secure boot key,
480 };
481 
482 static const esp_efuse_desc_t SECURE_BOOT_KEY_REVOKE1[] = {
483     {EFUSE_BLK0, 86, 1}, 	 // [] Revoke 2nd secure boot key,
484 };
485 
486 static const esp_efuse_desc_t SECURE_BOOT_KEY_REVOKE2[] = {
487     {EFUSE_BLK0, 87, 1}, 	 // [] Revoke 3rd secure boot key,
488 };
489 
490 static const esp_efuse_desc_t KEY_PURPOSE_0[] = {
491     {EFUSE_BLK0, 88, 4}, 	 // [KEY0_PURPOSE] Represents the purpose of Key0,
492 };
493 
494 static const esp_efuse_desc_t KEY_PURPOSE_1[] = {
495     {EFUSE_BLK0, 92, 4}, 	 // [KEY1_PURPOSE] Represents the purpose of Key1,
496 };
497 
498 static const esp_efuse_desc_t KEY_PURPOSE_2[] = {
499     {EFUSE_BLK0, 96, 4}, 	 // [KEY2_PURPOSE] Represents the purpose of Key2,
500 };
501 
502 static const esp_efuse_desc_t KEY_PURPOSE_3[] = {
503     {EFUSE_BLK0, 100, 4}, 	 // [KEY3_PURPOSE] Represents the purpose of Key3,
504 };
505 
506 static const esp_efuse_desc_t KEY_PURPOSE_4[] = {
507     {EFUSE_BLK0, 104, 4}, 	 // [KEY4_PURPOSE] Represents the purpose of Key4,
508 };
509 
510 static const esp_efuse_desc_t KEY_PURPOSE_5[] = {
511     {EFUSE_BLK0, 108, 4}, 	 // [KEY5_PURPOSE] Represents the purpose of Key5,
512 };
513 
514 static const esp_efuse_desc_t SEC_DPA_LEVEL[] = {
515     {EFUSE_BLK0, 112, 2}, 	 // [] Represents the spa secure level by configuring the clock random divide mode,
516 };
517 
518 static const esp_efuse_desc_t CRYPT_DPA_ENABLE[] = {
519     {EFUSE_BLK0, 115, 1}, 	 // [] Represents whether anti-dpa attack is enabled. 1:enabled. 0: disabled,
520 };
521 
522 static const esp_efuse_desc_t SECURE_BOOT_EN[] = {
523     {EFUSE_BLK0, 116, 1}, 	 // [] Represents whether secure boot is enabled or disabled. 1: enabled. 0: disabled,
524 };
525 
526 static const esp_efuse_desc_t SECURE_BOOT_AGGRESSIVE_REVOKE[] = {
527     {EFUSE_BLK0, 117, 1}, 	 // [] Represents whether revoking aggressive secure boot is enabled or disabled. 1: enabled. 0: disabled,
528 };
529 
530 static const esp_efuse_desc_t POWERGLITCH_EN1[] = {
531     {EFUSE_BLK0, 118, 5}, 	 // [] Set these bits to enable power glitch function when chip power on,
532 };
533 
534 static const esp_efuse_desc_t FLASH_TPUW[] = {
535     {EFUSE_BLK0, 124, 4}, 	 // [] Represents the flash waiting time after power-up; in unit of ms. When the value less than 15; the waiting time is the programmed value. Otherwise; the waiting time is 2 times the programmed value,
536 };
537 
538 static const esp_efuse_desc_t DIS_DOWNLOAD_MODE[] = {
539     {EFUSE_BLK0, 128, 1}, 	 // [] Represents whether Download mode is disabled or enabled. 1: disabled. 0: enabled,
540 };
541 
542 static const esp_efuse_desc_t DIS_DIRECT_BOOT[] = {
543     {EFUSE_BLK0, 129, 1}, 	 // [] Represents whether direct boot mode is disabled or enabled. 1: disabled. 0: enabled,
544 };
545 
546 static const esp_efuse_desc_t DIS_USB_SERIAL_JTAG_ROM_PRINT[] = {
547     {EFUSE_BLK0, 130, 1}, 	 // [DIS_USB_PRINT] Set this bit to disable USB-Serial-JTAG print during rom boot,
548 };
549 
550 static const esp_efuse_desc_t DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE[] = {
551     {EFUSE_BLK0, 132, 1}, 	 // [] Represents whether the USB-Serial-JTAG download function is disabled or enabled. 1: disabled. 0: enabled,
552 };
553 
554 static const esp_efuse_desc_t ENABLE_SECURITY_DOWNLOAD[] = {
555     {EFUSE_BLK0, 133, 1}, 	 // [] Represents whether security download is enabled or disabled. 1: enabled. 0: disabled,
556 };
557 
558 static const esp_efuse_desc_t UART_PRINT_CONTROL[] = {
559     {EFUSE_BLK0, 134, 2}, 	 // [] Set the default UARTboot message output mode {0: "Enable"; 1: "Enable when GPIO8 is low at reset"; 2: "Enable when GPIO8 is high at reset"; 3: "Disable"},
560 };
561 
562 static const esp_efuse_desc_t FORCE_SEND_RESUME[] = {
563     {EFUSE_BLK0, 136, 1}, 	 // [] Represents whether ROM code is forced to send a resume command during SPI boot. 1: forced. 0:not forced,
564 };
565 
566 static const esp_efuse_desc_t SECURE_VERSION[] = {
567     {EFUSE_BLK0, 137, 16}, 	 // [] Represents the version used by ESP-IDF anti-rollback feature,
568 };
569 
570 static const esp_efuse_desc_t SECURE_BOOT_DISABLE_FAST_WAKE[] = {
571     {EFUSE_BLK0, 153, 1}, 	 // [] Represents whether FAST VERIFY ON WAKE is disabled or enabled when Secure Boot is enabled. 1: disabled. 0: enabled,
572 };
573 
574 static const esp_efuse_desc_t HYS_EN_PAD0[] = {
575     {EFUSE_BLK0, 154, 6}, 	 // [] Set bits to enable hysteresis function of PAD0~5,
576 };
577 
578 static const esp_efuse_desc_t HYS_EN_PAD1[] = {
579     {EFUSE_BLK0, 160, 22}, 	 // [] Set bits to enable hysteresis function of PAD6~27,
580 };
581 
582 static const esp_efuse_desc_t MAC[] = {
583     {EFUSE_BLK1, 40, 8}, 	 // [MAC_FACTORY] MAC address,
584     {EFUSE_BLK1, 32, 8}, 	 // [MAC_FACTORY] MAC address,
585     {EFUSE_BLK1, 24, 8}, 	 // [MAC_FACTORY] MAC address,
586     {EFUSE_BLK1, 16, 8}, 	 // [MAC_FACTORY] MAC address,
587     {EFUSE_BLK1, 8, 8}, 	 // [MAC_FACTORY] MAC address,
588     {EFUSE_BLK1, 0, 8}, 	 // [MAC_FACTORY] MAC address,
589 };
590 
591 static const esp_efuse_desc_t MAC_EXT[] = {
592     {EFUSE_BLK1, 56, 8}, 	 // [] Stores the extended bits of MAC address,
593     {EFUSE_BLK1, 48, 8}, 	 // [] Stores the extended bits of MAC address,
594 };
595 
596 static const esp_efuse_desc_t RXIQ_VERSION[] = {
597     {EFUSE_BLK1, 64, 3}, 	 // [] Stores RF Calibration data. RXIQ version,
598 };
599 
600 static const esp_efuse_desc_t RXIQ_0[] = {
601     {EFUSE_BLK1, 67, 7}, 	 // [] Stores RF Calibration data. RXIQ data 0,
602 };
603 
604 static const esp_efuse_desc_t RXIQ_1[] = {
605     {EFUSE_BLK1, 74, 7}, 	 // [] Stores RF Calibration data. RXIQ data 1,
606 };
607 
608 static const esp_efuse_desc_t ACTIVE_HP_DBIAS[] = {
609     {EFUSE_BLK1, 81, 5}, 	 // [] Stores the PMU active hp dbias,
610 };
611 
612 static const esp_efuse_desc_t ACTIVE_LP_DBIAS[] = {
613     {EFUSE_BLK1, 86, 5}, 	 // [] Stores the PMU active lp dbias,
614 };
615 
616 static const esp_efuse_desc_t DSLP_DBIAS[] = {
617     {EFUSE_BLK1, 91, 4}, 	 // [] Stores the PMU sleep dbias,
618 };
619 
620 static const esp_efuse_desc_t DBIAS_VOL_GAP[] = {
621     {EFUSE_BLK1, 95, 5}, 	 // [] Stores the low 1 bit of dbias_vol_gap,
622 };
623 
624 static const esp_efuse_desc_t WAFER_VERSION_MINOR[] = {
625     {EFUSE_BLK1, 114, 3}, 	 // [] Stores the wafer version minor,
626 };
627 
628 static const esp_efuse_desc_t WAFER_VERSION_MAJOR[] = {
629     {EFUSE_BLK1, 117, 2}, 	 // [] Stores the wafer version major,
630 };
631 
632 static const esp_efuse_desc_t DISABLE_WAFER_VERSION_MAJOR[] = {
633     {EFUSE_BLK1, 119, 1}, 	 // [] Disables check of wafer version major,
634 };
635 
636 static const esp_efuse_desc_t FLASH_CAP[] = {
637     {EFUSE_BLK1, 120, 3}, 	 // [] Stores the flash cap,
638 };
639 
640 static const esp_efuse_desc_t FLASH_TEMP[] = {
641     {EFUSE_BLK1, 123, 2}, 	 // [] Stores the flash temp,
642 };
643 
644 static const esp_efuse_desc_t FLASH_VENDOR[] = {
645     {EFUSE_BLK1, 125, 3}, 	 // [] Stores the flash vendor,
646 };
647 
648 static const esp_efuse_desc_t PKG_VERSION[] = {
649     {EFUSE_BLK1, 128, 3}, 	 // [] Package version,
650 };
651 
652 static const esp_efuse_desc_t OPTIONAL_UNIQUE_ID[] = {
653     {EFUSE_BLK2, 0, 128}, 	 // [] Optional unique 128-bit ID,
654 };
655 
656 static const esp_efuse_desc_t BLK_VERSION_MINOR[] = {
657     {EFUSE_BLK2, 130, 3}, 	 // [] BLK_VERSION_MINOR of BLOCK2. 1: RF Calibration data in BLOCK1,
658 };
659 
660 static const esp_efuse_desc_t BLK_VERSION_MAJOR[] = {
661     {EFUSE_BLK2, 133, 2}, 	 // [] BLK_VERSION_MAJOR of BLOCK2,
662 };
663 
664 static const esp_efuse_desc_t DISABLE_BLK_VERSION_MAJOR[] = {
665     {EFUSE_BLK2, 135, 1}, 	 // [] Disables check of blk version major,
666 };
667 
668 static const esp_efuse_desc_t TEMP_CALIB[] = {
669     {EFUSE_BLK2, 136, 9}, 	 // [] Temperature calibration data,
670 };
671 
672 static const esp_efuse_desc_t ADC1_AVE_INITCODE_ATTEN0[] = {
673     {EFUSE_BLK2, 145, 10}, 	 // [] ADC1 calibration data,
674 };
675 
676 static const esp_efuse_desc_t ADC1_AVE_INITCODE_ATTEN1[] = {
677     {EFUSE_BLK2, 155, 10}, 	 // [] ADC1 calibration data,
678 };
679 
680 static const esp_efuse_desc_t ADC1_AVE_INITCODE_ATTEN2[] = {
681     {EFUSE_BLK2, 165, 10}, 	 // [] ADC1 calibration data,
682 };
683 
684 static const esp_efuse_desc_t ADC1_AVE_INITCODE_ATTEN3[] = {
685     {EFUSE_BLK2, 175, 10}, 	 // [] ADC1 calibration data,
686 };
687 
688 static const esp_efuse_desc_t ADC1_HI_DOUT_ATTEN0[] = {
689     {EFUSE_BLK2, 185, 10}, 	 // [] ADC1 calibration data,
690 };
691 
692 static const esp_efuse_desc_t ADC1_HI_DOUT_ATTEN1[] = {
693     {EFUSE_BLK2, 195, 10}, 	 // [] ADC1 calibration data,
694 };
695 
696 static const esp_efuse_desc_t ADC1_HI_DOUT_ATTEN2[] = {
697     {EFUSE_BLK2, 205, 10}, 	 // [] ADC1 calibration data,
698 };
699 
700 static const esp_efuse_desc_t ADC1_HI_DOUT_ATTEN3[] = {
701     {EFUSE_BLK2, 215, 10}, 	 // [] ADC1 calibration data,
702 };
703 
704 static const esp_efuse_desc_t ADC1_CH0_ATTEN0_INITCODE_DIFF[] = {
705     {EFUSE_BLK2, 225, 4}, 	 // [] ADC1 calibration data,
706 };
707 
708 static const esp_efuse_desc_t ADC1_CH1_ATTEN0_INITCODE_DIFF[] = {
709     {EFUSE_BLK2, 229, 4}, 	 // [] ADC1 calibration data,
710 };
711 
712 static const esp_efuse_desc_t ADC1_CH2_ATTEN0_INITCODE_DIFF[] = {
713     {EFUSE_BLK2, 233, 4}, 	 // [] ADC1 calibration data,
714 };
715 
716 static const esp_efuse_desc_t ADC1_CH3_ATTEN0_INITCODE_DIFF[] = {
717     {EFUSE_BLK2, 237, 4}, 	 // [] ADC1 calibration data,
718 };
719 
720 static const esp_efuse_desc_t ADC1_CH4_ATTEN0_INITCODE_DIFF[] = {
721     {EFUSE_BLK2, 241, 4}, 	 // [] ADC1 calibration data,
722 };
723 
724 static const esp_efuse_desc_t USER_DATA[] = {
725     {EFUSE_BLK3, 0, 256}, 	 // [BLOCK_USR_DATA] User data,
726 };
727 
728 static const esp_efuse_desc_t USER_DATA_MAC_CUSTOM[] = {
729     {EFUSE_BLK3, 200, 48}, 	 // [MAC_CUSTOM CUSTOM_MAC] Custom MAC,
730 };
731 
732 static const esp_efuse_desc_t KEY0[] = {
733     {EFUSE_BLK4, 0, 256}, 	 // [BLOCK_KEY0] Key0 or user data,
734 };
735 
736 static const esp_efuse_desc_t KEY1[] = {
737     {EFUSE_BLK5, 0, 256}, 	 // [BLOCK_KEY1] Key1 or user data,
738 };
739 
740 static const esp_efuse_desc_t KEY2[] = {
741     {EFUSE_BLK6, 0, 256}, 	 // [BLOCK_KEY2] Key2 or user data,
742 };
743 
744 static const esp_efuse_desc_t KEY3[] = {
745     {EFUSE_BLK7, 0, 256}, 	 // [BLOCK_KEY3] Key3 or user data,
746 };
747 
748 static const esp_efuse_desc_t KEY4[] = {
749     {EFUSE_BLK8, 0, 256}, 	 // [BLOCK_KEY4] Key4 or user data,
750 };
751 
752 static const esp_efuse_desc_t KEY5[] = {
753     {EFUSE_BLK9, 0, 256}, 	 // [BLOCK_KEY5] Key5 or user data,
754 };
755 
756 static const esp_efuse_desc_t SYS_DATA_PART2[] = {
757     {EFUSE_BLK10, 0, 256}, 	 // [BLOCK_SYS_DATA2] System data part 2 (reserved),
758 };
759 
760 
761 
762 
763 
764 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS[] = {
765     &WR_DIS[0],    		// [] Disable programming of individual eFuses
766     NULL
767 };
768 
769 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_RD_DIS[] = {
770     &WR_DIS_RD_DIS[0],    		// [] wr_dis of RD_DIS
771     NULL
772 };
773 
774 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_ICACHE[] = {
775     &WR_DIS_DIS_ICACHE[0],    		// [] wr_dis of DIS_ICACHE
776     NULL
777 };
778 
779 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_USB_JTAG[] = {
780     &WR_DIS_DIS_USB_JTAG[0],    		// [] wr_dis of DIS_USB_JTAG
781     NULL
782 };
783 
784 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_POWERGLITCH_EN[] = {
785     &WR_DIS_POWERGLITCH_EN[0],    		// [] wr_dis of POWERGLITCH_EN
786     NULL
787 };
788 
789 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_FORCE_DOWNLOAD[] = {
790     &WR_DIS_DIS_FORCE_DOWNLOAD[0],    		// [] wr_dis of DIS_FORCE_DOWNLOAD
791     NULL
792 };
793 
794 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SPI_DOWNLOAD_MSPI_DIS[] = {
795     &WR_DIS_SPI_DOWNLOAD_MSPI_DIS[0],    		// [] wr_dis of SPI_DOWNLOAD_MSPI_DIS
796     NULL
797 };
798 
799 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_TWAI[] = {
800     &WR_DIS_DIS_TWAI[0],    		// [WR_DIS.DIS_CAN] wr_dis of DIS_TWAI
801     NULL
802 };
803 
804 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_JTAG_SEL_ENABLE[] = {
805     &WR_DIS_JTAG_SEL_ENABLE[0],    		// [] wr_dis of JTAG_SEL_ENABLE
806     NULL
807 };
808 
809 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_PAD_JTAG[] = {
810     &WR_DIS_DIS_PAD_JTAG[0],    		// [] wr_dis of DIS_PAD_JTAG
811     NULL
812 };
813 
814 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_DOWNLOAD_MANUAL_ENCRYPT[] = {
815     &WR_DIS_DIS_DOWNLOAD_MANUAL_ENCRYPT[0],    		// [] wr_dis of DIS_DOWNLOAD_MANUAL_ENCRYPT
816     NULL
817 };
818 
819 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_POWERGLITCH_EN1[] = {
820     &WR_DIS_POWERGLITCH_EN1[0],    		// [] wr_dis of POWERGLITCH_EN1
821     NULL
822 };
823 
824 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_WDT_DELAY_SEL[] = {
825     &WR_DIS_WDT_DELAY_SEL[0],    		// [] wr_dis of WDT_DELAY_SEL
826     NULL
827 };
828 
829 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SPI_BOOT_CRYPT_CNT[] = {
830     &WR_DIS_SPI_BOOT_CRYPT_CNT[0],    		// [] wr_dis of SPI_BOOT_CRYPT_CNT
831     NULL
832 };
833 
834 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SECURE_BOOT_KEY_REVOKE0[] = {
835     &WR_DIS_SECURE_BOOT_KEY_REVOKE0[0],    		// [] wr_dis of SECURE_BOOT_KEY_REVOKE0
836     NULL
837 };
838 
839 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SECURE_BOOT_KEY_REVOKE1[] = {
840     &WR_DIS_SECURE_BOOT_KEY_REVOKE1[0],    		// [] wr_dis of SECURE_BOOT_KEY_REVOKE1
841     NULL
842 };
843 
844 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SECURE_BOOT_KEY_REVOKE2[] = {
845     &WR_DIS_SECURE_BOOT_KEY_REVOKE2[0],    		// [] wr_dis of SECURE_BOOT_KEY_REVOKE2
846     NULL
847 };
848 
849 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_KEY_PURPOSE_0[] = {
850     &WR_DIS_KEY_PURPOSE_0[0],    		// [WR_DIS.KEY0_PURPOSE] wr_dis of KEY_PURPOSE_0
851     NULL
852 };
853 
854 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_KEY_PURPOSE_1[] = {
855     &WR_DIS_KEY_PURPOSE_1[0],    		// [WR_DIS.KEY1_PURPOSE] wr_dis of KEY_PURPOSE_1
856     NULL
857 };
858 
859 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_KEY_PURPOSE_2[] = {
860     &WR_DIS_KEY_PURPOSE_2[0],    		// [WR_DIS.KEY2_PURPOSE] wr_dis of KEY_PURPOSE_2
861     NULL
862 };
863 
864 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_KEY_PURPOSE_3[] = {
865     &WR_DIS_KEY_PURPOSE_3[0],    		// [WR_DIS.KEY3_PURPOSE] wr_dis of KEY_PURPOSE_3
866     NULL
867 };
868 
869 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_KEY_PURPOSE_4[] = {
870     &WR_DIS_KEY_PURPOSE_4[0],    		// [WR_DIS.KEY4_PURPOSE] wr_dis of KEY_PURPOSE_4
871     NULL
872 };
873 
874 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_KEY_PURPOSE_5[] = {
875     &WR_DIS_KEY_PURPOSE_5[0],    		// [WR_DIS.KEY5_PURPOSE] wr_dis of KEY_PURPOSE_5
876     NULL
877 };
878 
879 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_XTS_DPA_PSEUDO_LEVEL[] = {
880     &WR_DIS_XTS_DPA_PSEUDO_LEVEL[0],    		// [] wr_dis of XTS_DPA_PSEUDO_LEVEL
881     NULL
882 };
883 
884 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SEC_DPA_LEVEL[] = {
885     &WR_DIS_SEC_DPA_LEVEL[0],    		// [] wr_dis of SEC_DPA_LEVEL
886     NULL
887 };
888 
889 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_CRYPT_DPA_ENABLE[] = {
890     &WR_DIS_CRYPT_DPA_ENABLE[0],    		// [] wr_dis of CRYPT_DPA_ENABLE
891     NULL
892 };
893 
894 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SECURE_BOOT_EN[] = {
895     &WR_DIS_SECURE_BOOT_EN[0],    		// [] wr_dis of SECURE_BOOT_EN
896     NULL
897 };
898 
899 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SECURE_BOOT_AGGRESSIVE_REVOKE[] = {
900     &WR_DIS_SECURE_BOOT_AGGRESSIVE_REVOKE[0],    		// [] wr_dis of SECURE_BOOT_AGGRESSIVE_REVOKE
901     NULL
902 };
903 
904 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ECDSA_CURVE_MODE[] = {
905     &WR_DIS_ECDSA_CURVE_MODE[0],    		// [] wr_dis of ECDSA_CURVE_MODE
906     NULL
907 };
908 
909 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ECC_FORCE_CONST_TIME[] = {
910     &WR_DIS_ECC_FORCE_CONST_TIME[0],    		// [] wr_dis of ECC_FORCE_CONST_TIME
911     NULL
912 };
913 
914 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_FLASH_TPUW[] = {
915     &WR_DIS_FLASH_TPUW[0],    		// [] wr_dis of FLASH_TPUW
916     NULL
917 };
918 
919 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_DOWNLOAD_MODE[] = {
920     &WR_DIS_DIS_DOWNLOAD_MODE[0],    		// [] wr_dis of DIS_DOWNLOAD_MODE
921     NULL
922 };
923 
924 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_DIRECT_BOOT[] = {
925     &WR_DIS_DIS_DIRECT_BOOT[0],    		// [] wr_dis of DIS_DIRECT_BOOT
926     NULL
927 };
928 
929 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_USB_SERIAL_JTAG_ROM_PRINT[] = {
930     &WR_DIS_DIS_USB_SERIAL_JTAG_ROM_PRINT[0],    		// [WR_DIS.DIS_USB_PRINT] wr_dis of DIS_USB_SERIAL_JTAG_ROM_PRINT
931     NULL
932 };
933 
934 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE[] = {
935     &WR_DIS_DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE[0],    		// [] wr_dis of DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE
936     NULL
937 };
938 
939 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ENABLE_SECURITY_DOWNLOAD[] = {
940     &WR_DIS_ENABLE_SECURITY_DOWNLOAD[0],    		// [] wr_dis of ENABLE_SECURITY_DOWNLOAD
941     NULL
942 };
943 
944 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_UART_PRINT_CONTROL[] = {
945     &WR_DIS_UART_PRINT_CONTROL[0],    		// [] wr_dis of UART_PRINT_CONTROL
946     NULL
947 };
948 
949 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_FORCE_SEND_RESUME[] = {
950     &WR_DIS_FORCE_SEND_RESUME[0],    		// [] wr_dis of FORCE_SEND_RESUME
951     NULL
952 };
953 
954 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SECURE_VERSION[] = {
955     &WR_DIS_SECURE_VERSION[0],    		// [] wr_dis of SECURE_VERSION
956     NULL
957 };
958 
959 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SECURE_BOOT_DISABLE_FAST_WAKE[] = {
960     &WR_DIS_SECURE_BOOT_DISABLE_FAST_WAKE[0],    		// [] wr_dis of SECURE_BOOT_DISABLE_FAST_WAKE
961     NULL
962 };
963 
964 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_HYS_EN_PAD0[] = {
965     &WR_DIS_HYS_EN_PAD0[0],    		// [] wr_dis of HYS_EN_PAD0
966     NULL
967 };
968 
969 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_HYS_EN_PAD1[] = {
970     &WR_DIS_HYS_EN_PAD1[0],    		// [] wr_dis of HYS_EN_PAD1
971     NULL
972 };
973 
974 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLK1[] = {
975     &WR_DIS_BLK1[0],    		// [] wr_dis of BLOCK1
976     NULL
977 };
978 
979 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_MAC[] = {
980     &WR_DIS_MAC[0],    		// [WR_DIS.MAC_FACTORY] wr_dis of MAC
981     NULL
982 };
983 
984 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_MAC_EXT[] = {
985     &WR_DIS_MAC_EXT[0],    		// [] wr_dis of MAC_EXT
986     NULL
987 };
988 
989 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_RXIQ_VERSION[] = {
990     &WR_DIS_RXIQ_VERSION[0],    		// [] wr_dis of RXIQ_VERSION
991     NULL
992 };
993 
994 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_RXIQ_0[] = {
995     &WR_DIS_RXIQ_0[0],    		// [] wr_dis of RXIQ_0
996     NULL
997 };
998 
999 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_RXIQ_1[] = {
1000     &WR_DIS_RXIQ_1[0],    		// [] wr_dis of RXIQ_1
1001     NULL
1002 };
1003 
1004 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ACTIVE_HP_DBIAS[] = {
1005     &WR_DIS_ACTIVE_HP_DBIAS[0],    		// [] wr_dis of ACTIVE_HP_DBIAS
1006     NULL
1007 };
1008 
1009 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ACTIVE_LP_DBIAS[] = {
1010     &WR_DIS_ACTIVE_LP_DBIAS[0],    		// [] wr_dis of ACTIVE_LP_DBIAS
1011     NULL
1012 };
1013 
1014 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DSLP_DBIAS[] = {
1015     &WR_DIS_DSLP_DBIAS[0],    		// [] wr_dis of DSLP_DBIAS
1016     NULL
1017 };
1018 
1019 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DBIAS_VOL_GAP[] = {
1020     &WR_DIS_DBIAS_VOL_GAP[0],    		// [] wr_dis of DBIAS_VOL_GAP
1021     NULL
1022 };
1023 
1024 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_WAFER_VERSION_MINOR[] = {
1025     &WR_DIS_WAFER_VERSION_MINOR[0],    		// [] wr_dis of WAFER_VERSION_MINOR
1026     NULL
1027 };
1028 
1029 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_WAFER_VERSION_MAJOR[] = {
1030     &WR_DIS_WAFER_VERSION_MAJOR[0],    		// [] wr_dis of WAFER_VERSION_MAJOR
1031     NULL
1032 };
1033 
1034 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DISABLE_WAFER_VERSION_MAJOR[] = {
1035     &WR_DIS_DISABLE_WAFER_VERSION_MAJOR[0],    		// [] wr_dis of DISABLE_WAFER_VERSION_MAJOR
1036     NULL
1037 };
1038 
1039 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_FLASH_CAP[] = {
1040     &WR_DIS_FLASH_CAP[0],    		// [] wr_dis of FLASH_CAP
1041     NULL
1042 };
1043 
1044 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_FLASH_TEMP[] = {
1045     &WR_DIS_FLASH_TEMP[0],    		// [] wr_dis of FLASH_TEMP
1046     NULL
1047 };
1048 
1049 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_FLASH_VENDOR[] = {
1050     &WR_DIS_FLASH_VENDOR[0],    		// [] wr_dis of FLASH_VENDOR
1051     NULL
1052 };
1053 
1054 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_PKG_VERSION[] = {
1055     &WR_DIS_PKG_VERSION[0],    		// [] wr_dis of PKG_VERSION
1056     NULL
1057 };
1058 
1059 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SYS_DATA_PART1[] = {
1060     &WR_DIS_SYS_DATA_PART1[0],    		// [] wr_dis of BLOCK2
1061     NULL
1062 };
1063 
1064 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_OPTIONAL_UNIQUE_ID[] = {
1065     &WR_DIS_OPTIONAL_UNIQUE_ID[0],    		// [] wr_dis of OPTIONAL_UNIQUE_ID
1066     NULL
1067 };
1068 
1069 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLK_VERSION_MINOR[] = {
1070     &WR_DIS_BLK_VERSION_MINOR[0],    		// [] wr_dis of BLK_VERSION_MINOR
1071     NULL
1072 };
1073 
1074 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLK_VERSION_MAJOR[] = {
1075     &WR_DIS_BLK_VERSION_MAJOR[0],    		// [] wr_dis of BLK_VERSION_MAJOR
1076     NULL
1077 };
1078 
1079 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_DISABLE_BLK_VERSION_MAJOR[] = {
1080     &WR_DIS_DISABLE_BLK_VERSION_MAJOR[0],    		// [] wr_dis of DISABLE_BLK_VERSION_MAJOR
1081     NULL
1082 };
1083 
1084 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_TEMP_CALIB[] = {
1085     &WR_DIS_TEMP_CALIB[0],    		// [] wr_dis of TEMP_CALIB
1086     NULL
1087 };
1088 
1089 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_AVE_INITCODE_ATTEN0[] = {
1090     &WR_DIS_ADC1_AVE_INITCODE_ATTEN0[0],    		// [] wr_dis of ADC1_AVE_INITCODE_ATTEN0
1091     NULL
1092 };
1093 
1094 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_AVE_INITCODE_ATTEN1[] = {
1095     &WR_DIS_ADC1_AVE_INITCODE_ATTEN1[0],    		// [] wr_dis of ADC1_AVE_INITCODE_ATTEN1
1096     NULL
1097 };
1098 
1099 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_AVE_INITCODE_ATTEN2[] = {
1100     &WR_DIS_ADC1_AVE_INITCODE_ATTEN2[0],    		// [] wr_dis of ADC1_AVE_INITCODE_ATTEN2
1101     NULL
1102 };
1103 
1104 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_AVE_INITCODE_ATTEN3[] = {
1105     &WR_DIS_ADC1_AVE_INITCODE_ATTEN3[0],    		// [] wr_dis of ADC1_AVE_INITCODE_ATTEN3
1106     NULL
1107 };
1108 
1109 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_HI_DOUT_ATTEN0[] = {
1110     &WR_DIS_ADC1_HI_DOUT_ATTEN0[0],    		// [] wr_dis of ADC1_HI_DOUT_ATTEN0
1111     NULL
1112 };
1113 
1114 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_HI_DOUT_ATTEN1[] = {
1115     &WR_DIS_ADC1_HI_DOUT_ATTEN1[0],    		// [] wr_dis of ADC1_HI_DOUT_ATTEN1
1116     NULL
1117 };
1118 
1119 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_HI_DOUT_ATTEN2[] = {
1120     &WR_DIS_ADC1_HI_DOUT_ATTEN2[0],    		// [] wr_dis of ADC1_HI_DOUT_ATTEN2
1121     NULL
1122 };
1123 
1124 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_HI_DOUT_ATTEN3[] = {
1125     &WR_DIS_ADC1_HI_DOUT_ATTEN3[0],    		// [] wr_dis of ADC1_HI_DOUT_ATTEN3
1126     NULL
1127 };
1128 
1129 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_CH0_ATTEN0_INITCODE_DIFF[] = {
1130     &WR_DIS_ADC1_CH0_ATTEN0_INITCODE_DIFF[0],    		// [] wr_dis of ADC1_CH0_ATTEN0_INITCODE_DIFF
1131     NULL
1132 };
1133 
1134 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_CH1_ATTEN0_INITCODE_DIFF[] = {
1135     &WR_DIS_ADC1_CH1_ATTEN0_INITCODE_DIFF[0],    		// [] wr_dis of ADC1_CH1_ATTEN0_INITCODE_DIFF
1136     NULL
1137 };
1138 
1139 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_CH2_ATTEN0_INITCODE_DIFF[] = {
1140     &WR_DIS_ADC1_CH2_ATTEN0_INITCODE_DIFF[0],    		// [] wr_dis of ADC1_CH2_ATTEN0_INITCODE_DIFF
1141     NULL
1142 };
1143 
1144 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_CH3_ATTEN0_INITCODE_DIFF[] = {
1145     &WR_DIS_ADC1_CH3_ATTEN0_INITCODE_DIFF[0],    		// [] wr_dis of ADC1_CH3_ATTEN0_INITCODE_DIFF
1146     NULL
1147 };
1148 
1149 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_ADC1_CH4_ATTEN0_INITCODE_DIFF[] = {
1150     &WR_DIS_ADC1_CH4_ATTEN0_INITCODE_DIFF[0],    		// [] wr_dis of ADC1_CH4_ATTEN0_INITCODE_DIFF
1151     NULL
1152 };
1153 
1154 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_USR_DATA[] = {
1155     &WR_DIS_BLOCK_USR_DATA[0],    		// [WR_DIS.USER_DATA] wr_dis of BLOCK_USR_DATA
1156     NULL
1157 };
1158 
1159 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_CUSTOM_MAC[] = {
1160     &WR_DIS_CUSTOM_MAC[0],    		// [WR_DIS.MAC_CUSTOM WR_DIS.USER_DATA_MAC_CUSTOM] wr_dis of CUSTOM_MAC
1161     NULL
1162 };
1163 
1164 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_KEY0[] = {
1165     &WR_DIS_BLOCK_KEY0[0],    		// [WR_DIS.KEY0] wr_dis of BLOCK_KEY0
1166     NULL
1167 };
1168 
1169 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_KEY1[] = {
1170     &WR_DIS_BLOCK_KEY1[0],    		// [WR_DIS.KEY1] wr_dis of BLOCK_KEY1
1171     NULL
1172 };
1173 
1174 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_KEY2[] = {
1175     &WR_DIS_BLOCK_KEY2[0],    		// [WR_DIS.KEY2] wr_dis of BLOCK_KEY2
1176     NULL
1177 };
1178 
1179 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_KEY3[] = {
1180     &WR_DIS_BLOCK_KEY3[0],    		// [WR_DIS.KEY3] wr_dis of BLOCK_KEY3
1181     NULL
1182 };
1183 
1184 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_KEY4[] = {
1185     &WR_DIS_BLOCK_KEY4[0],    		// [WR_DIS.KEY4] wr_dis of BLOCK_KEY4
1186     NULL
1187 };
1188 
1189 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_KEY5[] = {
1190     &WR_DIS_BLOCK_KEY5[0],    		// [WR_DIS.KEY5] wr_dis of BLOCK_KEY5
1191     NULL
1192 };
1193 
1194 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_BLOCK_SYS_DATA2[] = {
1195     &WR_DIS_BLOCK_SYS_DATA2[0],    		// [WR_DIS.SYS_DATA_PART2] wr_dis of BLOCK_SYS_DATA2
1196     NULL
1197 };
1198 
1199 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_USB_EXCHG_PINS[] = {
1200     &WR_DIS_USB_EXCHG_PINS[0],    		// [] wr_dis of USB_EXCHG_PINS
1201     NULL
1202 };
1203 
1204 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_VDD_SPI_AS_GPIO[] = {
1205     &WR_DIS_VDD_SPI_AS_GPIO[0],    		// [] wr_dis of VDD_SPI_AS_GPIO
1206     NULL
1207 };
1208 
1209 const esp_efuse_desc_t* ESP_EFUSE_WR_DIS_SOFT_DIS_JTAG[] = {
1210     &WR_DIS_SOFT_DIS_JTAG[0],    		// [] wr_dis of SOFT_DIS_JTAG
1211     NULL
1212 };
1213 
1214 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS[] = {
1215     &RD_DIS[0],    		// [] Disable reading from BlOCK4-10
1216     NULL
1217 };
1218 
1219 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS_BLOCK_KEY0[] = {
1220     &RD_DIS_BLOCK_KEY0[0],    		// [RD_DIS.KEY0] rd_dis of BLOCK_KEY0
1221     NULL
1222 };
1223 
1224 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS_BLOCK_KEY1[] = {
1225     &RD_DIS_BLOCK_KEY1[0],    		// [RD_DIS.KEY1] rd_dis of BLOCK_KEY1
1226     NULL
1227 };
1228 
1229 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS_BLOCK_KEY2[] = {
1230     &RD_DIS_BLOCK_KEY2[0],    		// [RD_DIS.KEY2] rd_dis of BLOCK_KEY2
1231     NULL
1232 };
1233 
1234 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS_BLOCK_KEY3[] = {
1235     &RD_DIS_BLOCK_KEY3[0],    		// [RD_DIS.KEY3] rd_dis of BLOCK_KEY3
1236     NULL
1237 };
1238 
1239 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS_BLOCK_KEY4[] = {
1240     &RD_DIS_BLOCK_KEY4[0],    		// [RD_DIS.KEY4] rd_dis of BLOCK_KEY4
1241     NULL
1242 };
1243 
1244 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS_BLOCK_KEY5[] = {
1245     &RD_DIS_BLOCK_KEY5[0],    		// [RD_DIS.KEY5] rd_dis of BLOCK_KEY5
1246     NULL
1247 };
1248 
1249 const esp_efuse_desc_t* ESP_EFUSE_RD_DIS_BLOCK_SYS_DATA2[] = {
1250     &RD_DIS_BLOCK_SYS_DATA2[0],    		// [RD_DIS.SYS_DATA_PART2] rd_dis of BLOCK_SYS_DATA2
1251     NULL
1252 };
1253 
1254 const esp_efuse_desc_t* ESP_EFUSE_DIS_ICACHE[] = {
1255     &DIS_ICACHE[0],    		// [] Represents whether icache is disabled or enabled. 1: disabled. 0: enabled
1256     NULL
1257 };
1258 
1259 const esp_efuse_desc_t* ESP_EFUSE_DIS_USB_JTAG[] = {
1260     &DIS_USB_JTAG[0],    		// [] Represents whether the function of usb switch to jtag is disabled or enabled. 1: disabled. 0: enabled
1261     NULL
1262 };
1263 
1264 const esp_efuse_desc_t* ESP_EFUSE_POWERGLITCH_EN[] = {
1265     &POWERGLITCH_EN[0],    		// [] Represents whether power glitch function is enabled. 1: enabled. 0: disabled
1266     NULL
1267 };
1268 
1269 const esp_efuse_desc_t* ESP_EFUSE_DIS_FORCE_DOWNLOAD[] = {
1270     &DIS_FORCE_DOWNLOAD[0],    		// [] Represents whether the function that forces chip into download mode is disabled or enabled. 1: disabled. 0: enabled
1271     NULL
1272 };
1273 
1274 const esp_efuse_desc_t* ESP_EFUSE_SPI_DOWNLOAD_MSPI_DIS[] = {
1275     &SPI_DOWNLOAD_MSPI_DIS[0],    		// [] Represents whether SPI0 controller during boot_mode_download is disabled or enabled. 1: disabled. 0: enabled
1276     NULL
1277 };
1278 
1279 const esp_efuse_desc_t* ESP_EFUSE_DIS_TWAI[] = {
1280     &DIS_TWAI[0],    		// [DIS_CAN] Represents whether TWAI function is disabled or enabled. 1: disabled. 0: enabled
1281     NULL
1282 };
1283 
1284 const esp_efuse_desc_t* ESP_EFUSE_JTAG_SEL_ENABLE[] = {
1285     &JTAG_SEL_ENABLE[0],    		// [] Set this bit to enable selection between usb_to_jtag and pad_to_jtag through strapping gpio25 when both EFUSE_DIS_PAD_JTAG and EFUSE_DIS_USB_JTAG are equal to 0
1286     NULL
1287 };
1288 
1289 const esp_efuse_desc_t* ESP_EFUSE_SOFT_DIS_JTAG[] = {
1290     &SOFT_DIS_JTAG[0],    		// [] Represents whether JTAG is disabled in soft way. Odd number: disabled. Even number: enabled
1291     NULL
1292 };
1293 
1294 const esp_efuse_desc_t* ESP_EFUSE_DIS_PAD_JTAG[] = {
1295     &DIS_PAD_JTAG[0],    		// [] Represents whether JTAG is disabled in the hard way(permanently). 1: disabled. 0: enabled
1296     NULL
1297 };
1298 
1299 const esp_efuse_desc_t* ESP_EFUSE_DIS_DOWNLOAD_MANUAL_ENCRYPT[] = {
1300     &DIS_DOWNLOAD_MANUAL_ENCRYPT[0],    		// [] Represents whether flash encrypt function is disabled or enabled(except in SPI boot mode). 1: disabled. 0: enabled
1301     NULL
1302 };
1303 
1304 const esp_efuse_desc_t* ESP_EFUSE_USB_EXCHG_PINS[] = {
1305     &USB_EXCHG_PINS[0],    		// [] Represents whether the D+ and D- pins is exchanged. 1: exchanged. 0: not exchanged
1306     NULL
1307 };
1308 
1309 const esp_efuse_desc_t* ESP_EFUSE_VDD_SPI_AS_GPIO[] = {
1310     &VDD_SPI_AS_GPIO[0],    		// [] Represents whether vdd spi pin is functioned as gpio. 1: functioned. 0: not functioned
1311     NULL
1312 };
1313 
1314 const esp_efuse_desc_t* ESP_EFUSE_ECDSA_CURVE_MODE[] = {
1315     &ECDSA_CURVE_MODE[0],    		// [] Configures the curve of ECDSA calculation: 0: only enable P256. 1: only enable P192. 2: both enable P256 and P192. 3: only enable P256
1316     NULL
1317 };
1318 
1319 const esp_efuse_desc_t* ESP_EFUSE_ECC_FORCE_CONST_TIME[] = {
1320     &ECC_FORCE_CONST_TIME[0],    		// [] Set this bit to permanently turn on ECC const-time mode
1321     NULL
1322 };
1323 
1324 const esp_efuse_desc_t* ESP_EFUSE_XTS_DPA_PSEUDO_LEVEL[] = {
1325     &XTS_DPA_PSEUDO_LEVEL[0],    		// [] Set this bit to control the xts pseudo-round anti-dpa attack function: 0: controlled by register. 1-3: the higher the value is; the more pseudo-rounds are inserted to the xts-aes calculation
1326     NULL
1327 };
1328 
1329 const esp_efuse_desc_t* ESP_EFUSE_WDT_DELAY_SEL[] = {
1330     &WDT_DELAY_SEL[0],    		// [] Represents whether RTC watchdog timeout threshold is selected at startup. 1: selected. 0: not selected
1331     NULL
1332 };
1333 
1334 const esp_efuse_desc_t* ESP_EFUSE_SPI_BOOT_CRYPT_CNT[] = {
1335     &SPI_BOOT_CRYPT_CNT[0],    		// [] Enables flash encryption when 1 or 3 bits are set and disables otherwise {0: "Disable"; 1: "Enable"; 3: "Disable"; 7: "Enable"}
1336     NULL
1337 };
1338 
1339 const esp_efuse_desc_t* ESP_EFUSE_SECURE_BOOT_KEY_REVOKE0[] = {
1340     &SECURE_BOOT_KEY_REVOKE0[0],    		// [] Revoke 1st secure boot key
1341     NULL
1342 };
1343 
1344 const esp_efuse_desc_t* ESP_EFUSE_SECURE_BOOT_KEY_REVOKE1[] = {
1345     &SECURE_BOOT_KEY_REVOKE1[0],    		// [] Revoke 2nd secure boot key
1346     NULL
1347 };
1348 
1349 const esp_efuse_desc_t* ESP_EFUSE_SECURE_BOOT_KEY_REVOKE2[] = {
1350     &SECURE_BOOT_KEY_REVOKE2[0],    		// [] Revoke 3rd secure boot key
1351     NULL
1352 };
1353 
1354 const esp_efuse_desc_t* ESP_EFUSE_KEY_PURPOSE_0[] = {
1355     &KEY_PURPOSE_0[0],    		// [KEY0_PURPOSE] Represents the purpose of Key0
1356     NULL
1357 };
1358 
1359 const esp_efuse_desc_t* ESP_EFUSE_KEY_PURPOSE_1[] = {
1360     &KEY_PURPOSE_1[0],    		// [KEY1_PURPOSE] Represents the purpose of Key1
1361     NULL
1362 };
1363 
1364 const esp_efuse_desc_t* ESP_EFUSE_KEY_PURPOSE_2[] = {
1365     &KEY_PURPOSE_2[0],    		// [KEY2_PURPOSE] Represents the purpose of Key2
1366     NULL
1367 };
1368 
1369 const esp_efuse_desc_t* ESP_EFUSE_KEY_PURPOSE_3[] = {
1370     &KEY_PURPOSE_3[0],    		// [KEY3_PURPOSE] Represents the purpose of Key3
1371     NULL
1372 };
1373 
1374 const esp_efuse_desc_t* ESP_EFUSE_KEY_PURPOSE_4[] = {
1375     &KEY_PURPOSE_4[0],    		// [KEY4_PURPOSE] Represents the purpose of Key4
1376     NULL
1377 };
1378 
1379 const esp_efuse_desc_t* ESP_EFUSE_KEY_PURPOSE_5[] = {
1380     &KEY_PURPOSE_5[0],    		// [KEY5_PURPOSE] Represents the purpose of Key5
1381     NULL
1382 };
1383 
1384 const esp_efuse_desc_t* ESP_EFUSE_SEC_DPA_LEVEL[] = {
1385     &SEC_DPA_LEVEL[0],    		// [] Represents the spa secure level by configuring the clock random divide mode
1386     NULL
1387 };
1388 
1389 const esp_efuse_desc_t* ESP_EFUSE_CRYPT_DPA_ENABLE[] = {
1390     &CRYPT_DPA_ENABLE[0],    		// [] Represents whether anti-dpa attack is enabled. 1:enabled. 0: disabled
1391     NULL
1392 };
1393 
1394 const esp_efuse_desc_t* ESP_EFUSE_SECURE_BOOT_EN[] = {
1395     &SECURE_BOOT_EN[0],    		// [] Represents whether secure boot is enabled or disabled. 1: enabled. 0: disabled
1396     NULL
1397 };
1398 
1399 const esp_efuse_desc_t* ESP_EFUSE_SECURE_BOOT_AGGRESSIVE_REVOKE[] = {
1400     &SECURE_BOOT_AGGRESSIVE_REVOKE[0],    		// [] Represents whether revoking aggressive secure boot is enabled or disabled. 1: enabled. 0: disabled
1401     NULL
1402 };
1403 
1404 const esp_efuse_desc_t* ESP_EFUSE_POWERGLITCH_EN1[] = {
1405     &POWERGLITCH_EN1[0],    		// [] Set these bits to enable power glitch function when chip power on
1406     NULL
1407 };
1408 
1409 const esp_efuse_desc_t* ESP_EFUSE_FLASH_TPUW[] = {
1410     &FLASH_TPUW[0],    		// [] Represents the flash waiting time after power-up; in unit of ms. When the value less than 15; the waiting time is the programmed value. Otherwise; the waiting time is 2 times the programmed value
1411     NULL
1412 };
1413 
1414 const esp_efuse_desc_t* ESP_EFUSE_DIS_DOWNLOAD_MODE[] = {
1415     &DIS_DOWNLOAD_MODE[0],    		// [] Represents whether Download mode is disabled or enabled. 1: disabled. 0: enabled
1416     NULL
1417 };
1418 
1419 const esp_efuse_desc_t* ESP_EFUSE_DIS_DIRECT_BOOT[] = {
1420     &DIS_DIRECT_BOOT[0],    		// [] Represents whether direct boot mode is disabled or enabled. 1: disabled. 0: enabled
1421     NULL
1422 };
1423 
1424 const esp_efuse_desc_t* ESP_EFUSE_DIS_USB_SERIAL_JTAG_ROM_PRINT[] = {
1425     &DIS_USB_SERIAL_JTAG_ROM_PRINT[0],    		// [DIS_USB_PRINT] Set this bit to disable USB-Serial-JTAG print during rom boot
1426     NULL
1427 };
1428 
1429 const esp_efuse_desc_t* ESP_EFUSE_DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE[] = {
1430     &DIS_USB_SERIAL_JTAG_DOWNLOAD_MODE[0],    		// [] Represents whether the USB-Serial-JTAG download function is disabled or enabled. 1: disabled. 0: enabled
1431     NULL
1432 };
1433 
1434 const esp_efuse_desc_t* ESP_EFUSE_ENABLE_SECURITY_DOWNLOAD[] = {
1435     &ENABLE_SECURITY_DOWNLOAD[0],    		// [] Represents whether security download is enabled or disabled. 1: enabled. 0: disabled
1436     NULL
1437 };
1438 
1439 const esp_efuse_desc_t* ESP_EFUSE_UART_PRINT_CONTROL[] = {
1440     &UART_PRINT_CONTROL[0],    		// [] Set the default UARTboot message output mode {0: "Enable"; 1: "Enable when GPIO8 is low at reset"; 2: "Enable when GPIO8 is high at reset"; 3: "Disable"}
1441     NULL
1442 };
1443 
1444 const esp_efuse_desc_t* ESP_EFUSE_FORCE_SEND_RESUME[] = {
1445     &FORCE_SEND_RESUME[0],    		// [] Represents whether ROM code is forced to send a resume command during SPI boot. 1: forced. 0:not forced
1446     NULL
1447 };
1448 
1449 const esp_efuse_desc_t* ESP_EFUSE_SECURE_VERSION[] = {
1450     &SECURE_VERSION[0],    		// [] Represents the version used by ESP-IDF anti-rollback feature
1451     NULL
1452 };
1453 
1454 const esp_efuse_desc_t* ESP_EFUSE_SECURE_BOOT_DISABLE_FAST_WAKE[] = {
1455     &SECURE_BOOT_DISABLE_FAST_WAKE[0],    		// [] Represents whether FAST VERIFY ON WAKE is disabled or enabled when Secure Boot is enabled. 1: disabled. 0: enabled
1456     NULL
1457 };
1458 
1459 const esp_efuse_desc_t* ESP_EFUSE_HYS_EN_PAD0[] = {
1460     &HYS_EN_PAD0[0],    		// [] Set bits to enable hysteresis function of PAD0~5
1461     NULL
1462 };
1463 
1464 const esp_efuse_desc_t* ESP_EFUSE_HYS_EN_PAD1[] = {
1465     &HYS_EN_PAD1[0],    		// [] Set bits to enable hysteresis function of PAD6~27
1466     NULL
1467 };
1468 
1469 const esp_efuse_desc_t* ESP_EFUSE_MAC[] = {
1470     &MAC[0],    		// [MAC_FACTORY] MAC address
1471     &MAC[1],    		// [MAC_FACTORY] MAC address
1472     &MAC[2],    		// [MAC_FACTORY] MAC address
1473     &MAC[3],    		// [MAC_FACTORY] MAC address
1474     &MAC[4],    		// [MAC_FACTORY] MAC address
1475     &MAC[5],    		// [MAC_FACTORY] MAC address
1476     NULL
1477 };
1478 
1479 const esp_efuse_desc_t* ESP_EFUSE_MAC_EXT[] = {
1480     &MAC_EXT[0],    		// [] Stores the extended bits of MAC address
1481     &MAC_EXT[1],    		// [] Stores the extended bits of MAC address
1482     NULL
1483 };
1484 
1485 const esp_efuse_desc_t* ESP_EFUSE_RXIQ_VERSION[] = {
1486     &RXIQ_VERSION[0],    		// [] Stores RF Calibration data. RXIQ version
1487     NULL
1488 };
1489 
1490 const esp_efuse_desc_t* ESP_EFUSE_RXIQ_0[] = {
1491     &RXIQ_0[0],    		// [] Stores RF Calibration data. RXIQ data 0
1492     NULL
1493 };
1494 
1495 const esp_efuse_desc_t* ESP_EFUSE_RXIQ_1[] = {
1496     &RXIQ_1[0],    		// [] Stores RF Calibration data. RXIQ data 1
1497     NULL
1498 };
1499 
1500 const esp_efuse_desc_t* ESP_EFUSE_ACTIVE_HP_DBIAS[] = {
1501     &ACTIVE_HP_DBIAS[0],    		// [] Stores the PMU active hp dbias
1502     NULL
1503 };
1504 
1505 const esp_efuse_desc_t* ESP_EFUSE_ACTIVE_LP_DBIAS[] = {
1506     &ACTIVE_LP_DBIAS[0],    		// [] Stores the PMU active lp dbias
1507     NULL
1508 };
1509 
1510 const esp_efuse_desc_t* ESP_EFUSE_DSLP_DBIAS[] = {
1511     &DSLP_DBIAS[0],    		// [] Stores the PMU sleep dbias
1512     NULL
1513 };
1514 
1515 const esp_efuse_desc_t* ESP_EFUSE_DBIAS_VOL_GAP[] = {
1516     &DBIAS_VOL_GAP[0],    		// [] Stores the low 1 bit of dbias_vol_gap
1517     NULL
1518 };
1519 
1520 const esp_efuse_desc_t* ESP_EFUSE_WAFER_VERSION_MINOR[] = {
1521     &WAFER_VERSION_MINOR[0],    		// [] Stores the wafer version minor
1522     NULL
1523 };
1524 
1525 const esp_efuse_desc_t* ESP_EFUSE_WAFER_VERSION_MAJOR[] = {
1526     &WAFER_VERSION_MAJOR[0],    		// [] Stores the wafer version major
1527     NULL
1528 };
1529 
1530 const esp_efuse_desc_t* ESP_EFUSE_DISABLE_WAFER_VERSION_MAJOR[] = {
1531     &DISABLE_WAFER_VERSION_MAJOR[0],    		// [] Disables check of wafer version major
1532     NULL
1533 };
1534 
1535 const esp_efuse_desc_t* ESP_EFUSE_FLASH_CAP[] = {
1536     &FLASH_CAP[0],    		// [] Stores the flash cap
1537     NULL
1538 };
1539 
1540 const esp_efuse_desc_t* ESP_EFUSE_FLASH_TEMP[] = {
1541     &FLASH_TEMP[0],    		// [] Stores the flash temp
1542     NULL
1543 };
1544 
1545 const esp_efuse_desc_t* ESP_EFUSE_FLASH_VENDOR[] = {
1546     &FLASH_VENDOR[0],    		// [] Stores the flash vendor
1547     NULL
1548 };
1549 
1550 const esp_efuse_desc_t* ESP_EFUSE_PKG_VERSION[] = {
1551     &PKG_VERSION[0],    		// [] Package version
1552     NULL
1553 };
1554 
1555 const esp_efuse_desc_t* ESP_EFUSE_OPTIONAL_UNIQUE_ID[] = {
1556     &OPTIONAL_UNIQUE_ID[0],    		// [] Optional unique 128-bit ID
1557     NULL
1558 };
1559 
1560 const esp_efuse_desc_t* ESP_EFUSE_BLK_VERSION_MINOR[] = {
1561     &BLK_VERSION_MINOR[0],    		// [] BLK_VERSION_MINOR of BLOCK2. 1: RF Calibration data in BLOCK1
1562     NULL
1563 };
1564 
1565 const esp_efuse_desc_t* ESP_EFUSE_BLK_VERSION_MAJOR[] = {
1566     &BLK_VERSION_MAJOR[0],    		// [] BLK_VERSION_MAJOR of BLOCK2
1567     NULL
1568 };
1569 
1570 const esp_efuse_desc_t* ESP_EFUSE_DISABLE_BLK_VERSION_MAJOR[] = {
1571     &DISABLE_BLK_VERSION_MAJOR[0],    		// [] Disables check of blk version major
1572     NULL
1573 };
1574 
1575 const esp_efuse_desc_t* ESP_EFUSE_TEMP_CALIB[] = {
1576     &TEMP_CALIB[0],    		// [] Temperature calibration data
1577     NULL
1578 };
1579 
1580 const esp_efuse_desc_t* ESP_EFUSE_ADC1_AVE_INITCODE_ATTEN0[] = {
1581     &ADC1_AVE_INITCODE_ATTEN0[0],    		// [] ADC1 calibration data
1582     NULL
1583 };
1584 
1585 const esp_efuse_desc_t* ESP_EFUSE_ADC1_AVE_INITCODE_ATTEN1[] = {
1586     &ADC1_AVE_INITCODE_ATTEN1[0],    		// [] ADC1 calibration data
1587     NULL
1588 };
1589 
1590 const esp_efuse_desc_t* ESP_EFUSE_ADC1_AVE_INITCODE_ATTEN2[] = {
1591     &ADC1_AVE_INITCODE_ATTEN2[0],    		// [] ADC1 calibration data
1592     NULL
1593 };
1594 
1595 const esp_efuse_desc_t* ESP_EFUSE_ADC1_AVE_INITCODE_ATTEN3[] = {
1596     &ADC1_AVE_INITCODE_ATTEN3[0],    		// [] ADC1 calibration data
1597     NULL
1598 };
1599 
1600 const esp_efuse_desc_t* ESP_EFUSE_ADC1_HI_DOUT_ATTEN0[] = {
1601     &ADC1_HI_DOUT_ATTEN0[0],    		// [] ADC1 calibration data
1602     NULL
1603 };
1604 
1605 const esp_efuse_desc_t* ESP_EFUSE_ADC1_HI_DOUT_ATTEN1[] = {
1606     &ADC1_HI_DOUT_ATTEN1[0],    		// [] ADC1 calibration data
1607     NULL
1608 };
1609 
1610 const esp_efuse_desc_t* ESP_EFUSE_ADC1_HI_DOUT_ATTEN2[] = {
1611     &ADC1_HI_DOUT_ATTEN2[0],    		// [] ADC1 calibration data
1612     NULL
1613 };
1614 
1615 const esp_efuse_desc_t* ESP_EFUSE_ADC1_HI_DOUT_ATTEN3[] = {
1616     &ADC1_HI_DOUT_ATTEN3[0],    		// [] ADC1 calibration data
1617     NULL
1618 };
1619 
1620 const esp_efuse_desc_t* ESP_EFUSE_ADC1_CH0_ATTEN0_INITCODE_DIFF[] = {
1621     &ADC1_CH0_ATTEN0_INITCODE_DIFF[0],    		// [] ADC1 calibration data
1622     NULL
1623 };
1624 
1625 const esp_efuse_desc_t* ESP_EFUSE_ADC1_CH1_ATTEN0_INITCODE_DIFF[] = {
1626     &ADC1_CH1_ATTEN0_INITCODE_DIFF[0],    		// [] ADC1 calibration data
1627     NULL
1628 };
1629 
1630 const esp_efuse_desc_t* ESP_EFUSE_ADC1_CH2_ATTEN0_INITCODE_DIFF[] = {
1631     &ADC1_CH2_ATTEN0_INITCODE_DIFF[0],    		// [] ADC1 calibration data
1632     NULL
1633 };
1634 
1635 const esp_efuse_desc_t* ESP_EFUSE_ADC1_CH3_ATTEN0_INITCODE_DIFF[] = {
1636     &ADC1_CH3_ATTEN0_INITCODE_DIFF[0],    		// [] ADC1 calibration data
1637     NULL
1638 };
1639 
1640 const esp_efuse_desc_t* ESP_EFUSE_ADC1_CH4_ATTEN0_INITCODE_DIFF[] = {
1641     &ADC1_CH4_ATTEN0_INITCODE_DIFF[0],    		// [] ADC1 calibration data
1642     NULL
1643 };
1644 
1645 const esp_efuse_desc_t* ESP_EFUSE_USER_DATA[] = {
1646     &USER_DATA[0],    		// [BLOCK_USR_DATA] User data
1647     NULL
1648 };
1649 
1650 const esp_efuse_desc_t* ESP_EFUSE_USER_DATA_MAC_CUSTOM[] = {
1651     &USER_DATA_MAC_CUSTOM[0],    		// [MAC_CUSTOM CUSTOM_MAC] Custom MAC
1652     NULL
1653 };
1654 
1655 const esp_efuse_desc_t* ESP_EFUSE_KEY0[] = {
1656     &KEY0[0],    		// [BLOCK_KEY0] Key0 or user data
1657     NULL
1658 };
1659 
1660 const esp_efuse_desc_t* ESP_EFUSE_KEY1[] = {
1661     &KEY1[0],    		// [BLOCK_KEY1] Key1 or user data
1662     NULL
1663 };
1664 
1665 const esp_efuse_desc_t* ESP_EFUSE_KEY2[] = {
1666     &KEY2[0],    		// [BLOCK_KEY2] Key2 or user data
1667     NULL
1668 };
1669 
1670 const esp_efuse_desc_t* ESP_EFUSE_KEY3[] = {
1671     &KEY3[0],    		// [BLOCK_KEY3] Key3 or user data
1672     NULL
1673 };
1674 
1675 const esp_efuse_desc_t* ESP_EFUSE_KEY4[] = {
1676     &KEY4[0],    		// [BLOCK_KEY4] Key4 or user data
1677     NULL
1678 };
1679 
1680 const esp_efuse_desc_t* ESP_EFUSE_KEY5[] = {
1681     &KEY5[0],    		// [BLOCK_KEY5] Key5 or user data
1682     NULL
1683 };
1684 
1685 const esp_efuse_desc_t* ESP_EFUSE_SYS_DATA_PART2[] = {
1686     &SYS_DATA_PART2[0],    		// [BLOCK_SYS_DATA2] System data part 2 (reserved)
1687     NULL
1688 };
1689