1#[cfg(docsrs)]
5macro_rules! println {
6 ($($any:tt)*) => {};
7}
8#[derive(Clone, Copy, PartialEq, Eq, Hash)]
9#[cfg_attr(docsrs, doc(cfg(feature = "build-script")))]
10pub enum Chip {
11 Esp32,
12 Esp32c2,
13 Esp32c3,
14 Esp32c6,
15 Esp32h2,
16 Esp32s2,
17 Esp32s3,
18}
19impl core::str::FromStr for Chip {
20 type Err = ();
21 fn from_str(s: &str) -> Result<Self, Self::Err> {
22 match s {
23 "esp32" => Ok(Self::Esp32),
24 "esp32c2" => Ok(Self::Esp32c2),
25 "esp32c3" => Ok(Self::Esp32c3),
26 "esp32c6" => Ok(Self::Esp32c6),
27 "esp32h2" => Ok(Self::Esp32h2),
28 "esp32s2" => Ok(Self::Esp32s2),
29 "esp32s3" => Ok(Self::Esp32s3),
30 _ => Err(()),
31 }
32 }
33}
34impl Chip {
35 pub fn from_cargo_feature() -> Result<Self, &'static str> {
39 let all_chips = [
40 ("CARGO_FEATURE_ESP32", Self::Esp32),
41 ("CARGO_FEATURE_ESP32C2", Self::Esp32c2),
42 ("CARGO_FEATURE_ESP32C3", Self::Esp32c3),
43 ("CARGO_FEATURE_ESP32C6", Self::Esp32c6),
44 ("CARGO_FEATURE_ESP32H2", Self::Esp32h2),
45 ("CARGO_FEATURE_ESP32S2", Self::Esp32s2),
46 ("CARGO_FEATURE_ESP32S3", Self::Esp32s3),
47 ];
48 let mut chip = None;
49 for (env, c) in all_chips {
50 if std::env::var(env).is_ok() {
51 if chip.is_some() {
52 return Err(
53 "Expected exactly one of the following features to be enabled: esp32, esp32c2, esp32c3, esp32c6, esp32h2, esp32s2, esp32s3",
54 );
55 }
56 chip = Some(c);
57 }
58 }
59 match chip {
60 Some(chip) => Ok(chip),
61 None => Err(
62 "Expected exactly one of the following features to be enabled: esp32, esp32c2, esp32c3, esp32c6, esp32h2, esp32s2, esp32s3",
63 ),
64 }
65 }
66 pub fn is_xtensa(self) -> bool {
68 self.config().architecture == "xtensa"
69 }
70 pub fn target(self) -> &'static str {
72 self.config().target
73 }
74 pub fn name(self) -> &'static str {
82 match self {
83 Self::Esp32 => "esp32",
84 Self::Esp32c2 => "esp32c2",
85 Self::Esp32c3 => "esp32c3",
86 Self::Esp32c6 => "esp32c6",
87 Self::Esp32h2 => "esp32h2",
88 Self::Esp32s2 => "esp32s2",
89 Self::Esp32s3 => "esp32s3",
90 }
91 }
92 pub fn contains(self, symbol: &str) -> bool {
102 self.all_symbols().contains(&symbol)
103 }
104 pub fn define_cfgs(self) {
106 self.config().define_cfgs()
107 }
108 pub fn all_symbols(&self) -> &'static [&'static str] {
116 self.config().symbols
117 }
118 pub fn iter() -> impl Iterator<Item = Chip> {
126 [
127 Self::Esp32,
128 Self::Esp32c2,
129 Self::Esp32c3,
130 Self::Esp32c6,
131 Self::Esp32h2,
132 Self::Esp32s2,
133 Self::Esp32s3,
134 ]
135 .into_iter()
136 }
137 fn config(self) -> Config {
138 match self {
139 Self::Esp32 => Config {
140 architecture: "xtensa",
141 target: "xtensa-esp32-none-elf",
142 symbols: &[
143 "esp32",
144 "xtensa",
145 "multi_core",
146 "soc_has_aes",
147 "soc_has_apb_ctrl",
148 "soc_has_bb",
149 "soc_has_dport",
150 "soc_has_system",
151 "soc_has_efuse",
152 "soc_has_emac_dma",
153 "soc_has_emac_ext",
154 "soc_has_emac_mac",
155 "soc_has_flash_encryption",
156 "soc_has_frc_timer",
157 "soc_has_gpio",
158 "soc_has_gpio_sd",
159 "soc_has_hinf",
160 "soc_has_i2c0",
161 "soc_has_i2c1",
162 "soc_has_i2s0",
163 "soc_has_i2s1",
164 "soc_has_io_mux",
165 "soc_has_ledc",
166 "soc_has_mcpwm0",
167 "soc_has_mcpwm1",
168 "soc_has_nrx",
169 "soc_has_pcnt",
170 "soc_has_rmt",
171 "soc_has_rng",
172 "soc_has_rsa",
173 "soc_has_lpwr",
174 "soc_has_rtc_i2c",
175 "soc_has_rtc_io",
176 "soc_has_sdhost",
177 "soc_has_sens",
178 "soc_has_sha",
179 "soc_has_slc",
180 "soc_has_slchost",
181 "soc_has_spi0",
182 "soc_has_spi1",
183 "soc_has_spi2",
184 "soc_has_spi3",
185 "soc_has_timg0",
186 "soc_has_timg1",
187 "soc_has_twai0",
188 "soc_has_uart0",
189 "soc_has_uart1",
190 "soc_has_uart2",
191 "soc_has_uhci0",
192 "soc_has_uhci1",
193 "soc_has_wifi",
194 "soc_has_dma_spi2",
195 "soc_has_dma_spi3",
196 "soc_has_dma_i2s0",
197 "soc_has_dma_i2s1",
198 "soc_has_adc1",
199 "soc_has_adc2",
200 "soc_has_bt",
201 "soc_has_cpu_ctrl",
202 "soc_has_dac1",
203 "soc_has_dac2",
204 "soc_has_psram",
205 "soc_has_sw_interrupt",
206 "soc_has_touch",
207 "pdma",
208 "phy",
209 "psram",
210 "touch",
211 "rom_crc_le",
212 "rom_crc_be",
213 "rom_md5_bsd",
214 "pm_support_ext0_wakeup",
215 "pm_support_ext1_wakeup",
216 "pm_support_touch_sensor_wakeup",
217 "ulp_supported",
218 "adc",
219 "aes",
220 "dac",
221 "dma",
222 "gpio",
223 "i2c_master",
224 "i2s",
225 "interrupts",
226 "io_mux",
227 "rgb_display",
228 "ledc",
229 "mcpwm",
230 "pcnt",
231 "psram",
232 "rmt",
233 "rng",
234 "rsa",
235 "sd_host",
236 "sd_slave",
237 "sleep",
238 "sha",
239 "spi_master",
240 "spi_slave",
241 "temp_sensor",
242 "timergroup",
243 "touch",
244 "twai",
245 "uart",
246 "ulp_fsm",
247 "wifi",
248 "bt",
249 "adc_adc1",
250 "adc_adc2",
251 "dac_dac1",
252 "dac_dac2",
253 "i2c_master_i2c0",
254 "i2c_master_i2c1",
255 "spi_master_spi2",
256 "spi_master_spi3",
257 "spi_slave_spi2",
258 "spi_slave_spi3",
259 "timergroup_timg0",
260 "timergroup_timg1",
261 "uart_uart0",
262 "uart_uart1",
263 "uart_uart2",
264 "gpio_has_bank_1",
265 "gpio_gpio_function=\"2\"",
266 "gpio_constant_0_input=\"48\"",
267 "gpio_constant_1_input=\"56\"",
268 "gpio_remap_iomux_pin_registers",
269 "gpio_func_in_sel_offset=\"0\"",
270 "gpio_input_signal_max=\"206\"",
271 "gpio_output_signal_max=\"256\"",
272 "i2c_master_separate_filter_config_registers",
273 "i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
274 "i2c_master_max_bus_timeout=\"1048575\"",
275 "i2c_master_ll_intr_mask=\"262143\"",
276 "i2c_master_fifo_size=\"32\"",
277 "interrupts_status_registers=\"3\"",
278 "rmt_ram_start=\"1073047552\"",
279 "rmt_channel_ram_size=\"64\"",
280 "timergroup_timg_has_timer1",
281 "has_dram_region",
282 ],
283 cfgs: &[
284 "cargo:rustc-cfg=esp32",
285 "cargo:rustc-cfg=xtensa",
286 "cargo:rustc-cfg=multi_core",
287 "cargo:rustc-cfg=soc_has_aes",
288 "cargo:rustc-cfg=soc_has_apb_ctrl",
289 "cargo:rustc-cfg=soc_has_bb",
290 "cargo:rustc-cfg=soc_has_dport",
291 "cargo:rustc-cfg=soc_has_system",
292 "cargo:rustc-cfg=soc_has_efuse",
293 "cargo:rustc-cfg=soc_has_emac_dma",
294 "cargo:rustc-cfg=soc_has_emac_ext",
295 "cargo:rustc-cfg=soc_has_emac_mac",
296 "cargo:rustc-cfg=soc_has_flash_encryption",
297 "cargo:rustc-cfg=soc_has_frc_timer",
298 "cargo:rustc-cfg=soc_has_gpio",
299 "cargo:rustc-cfg=soc_has_gpio_sd",
300 "cargo:rustc-cfg=soc_has_hinf",
301 "cargo:rustc-cfg=soc_has_i2c0",
302 "cargo:rustc-cfg=soc_has_i2c1",
303 "cargo:rustc-cfg=soc_has_i2s0",
304 "cargo:rustc-cfg=soc_has_i2s1",
305 "cargo:rustc-cfg=soc_has_io_mux",
306 "cargo:rustc-cfg=soc_has_ledc",
307 "cargo:rustc-cfg=soc_has_mcpwm0",
308 "cargo:rustc-cfg=soc_has_mcpwm1",
309 "cargo:rustc-cfg=soc_has_nrx",
310 "cargo:rustc-cfg=soc_has_pcnt",
311 "cargo:rustc-cfg=soc_has_rmt",
312 "cargo:rustc-cfg=soc_has_rng",
313 "cargo:rustc-cfg=soc_has_rsa",
314 "cargo:rustc-cfg=soc_has_lpwr",
315 "cargo:rustc-cfg=soc_has_rtc_i2c",
316 "cargo:rustc-cfg=soc_has_rtc_io",
317 "cargo:rustc-cfg=soc_has_sdhost",
318 "cargo:rustc-cfg=soc_has_sens",
319 "cargo:rustc-cfg=soc_has_sha",
320 "cargo:rustc-cfg=soc_has_slc",
321 "cargo:rustc-cfg=soc_has_slchost",
322 "cargo:rustc-cfg=soc_has_spi0",
323 "cargo:rustc-cfg=soc_has_spi1",
324 "cargo:rustc-cfg=soc_has_spi2",
325 "cargo:rustc-cfg=soc_has_spi3",
326 "cargo:rustc-cfg=soc_has_timg0",
327 "cargo:rustc-cfg=soc_has_timg1",
328 "cargo:rustc-cfg=soc_has_twai0",
329 "cargo:rustc-cfg=soc_has_uart0",
330 "cargo:rustc-cfg=soc_has_uart1",
331 "cargo:rustc-cfg=soc_has_uart2",
332 "cargo:rustc-cfg=soc_has_uhci0",
333 "cargo:rustc-cfg=soc_has_uhci1",
334 "cargo:rustc-cfg=soc_has_wifi",
335 "cargo:rustc-cfg=soc_has_dma_spi2",
336 "cargo:rustc-cfg=soc_has_dma_spi3",
337 "cargo:rustc-cfg=soc_has_dma_i2s0",
338 "cargo:rustc-cfg=soc_has_dma_i2s1",
339 "cargo:rustc-cfg=soc_has_adc1",
340 "cargo:rustc-cfg=soc_has_adc2",
341 "cargo:rustc-cfg=soc_has_bt",
342 "cargo:rustc-cfg=soc_has_cpu_ctrl",
343 "cargo:rustc-cfg=soc_has_dac1",
344 "cargo:rustc-cfg=soc_has_dac2",
345 "cargo:rustc-cfg=soc_has_psram",
346 "cargo:rustc-cfg=soc_has_sw_interrupt",
347 "cargo:rustc-cfg=soc_has_touch",
348 "cargo:rustc-cfg=pdma",
349 "cargo:rustc-cfg=phy",
350 "cargo:rustc-cfg=psram",
351 "cargo:rustc-cfg=touch",
352 "cargo:rustc-cfg=rom_crc_le",
353 "cargo:rustc-cfg=rom_crc_be",
354 "cargo:rustc-cfg=rom_md5_bsd",
355 "cargo:rustc-cfg=pm_support_ext0_wakeup",
356 "cargo:rustc-cfg=pm_support_ext1_wakeup",
357 "cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
358 "cargo:rustc-cfg=ulp_supported",
359 "cargo:rustc-cfg=adc",
360 "cargo:rustc-cfg=aes",
361 "cargo:rustc-cfg=dac",
362 "cargo:rustc-cfg=dma",
363 "cargo:rustc-cfg=gpio",
364 "cargo:rustc-cfg=i2c_master",
365 "cargo:rustc-cfg=i2s",
366 "cargo:rustc-cfg=interrupts",
367 "cargo:rustc-cfg=io_mux",
368 "cargo:rustc-cfg=rgb_display",
369 "cargo:rustc-cfg=ledc",
370 "cargo:rustc-cfg=mcpwm",
371 "cargo:rustc-cfg=pcnt",
372 "cargo:rustc-cfg=psram",
373 "cargo:rustc-cfg=rmt",
374 "cargo:rustc-cfg=rng",
375 "cargo:rustc-cfg=rsa",
376 "cargo:rustc-cfg=sd_host",
377 "cargo:rustc-cfg=sd_slave",
378 "cargo:rustc-cfg=sleep",
379 "cargo:rustc-cfg=sha",
380 "cargo:rustc-cfg=spi_master",
381 "cargo:rustc-cfg=spi_slave",
382 "cargo:rustc-cfg=temp_sensor",
383 "cargo:rustc-cfg=timergroup",
384 "cargo:rustc-cfg=touch",
385 "cargo:rustc-cfg=twai",
386 "cargo:rustc-cfg=uart",
387 "cargo:rustc-cfg=ulp_fsm",
388 "cargo:rustc-cfg=wifi",
389 "cargo:rustc-cfg=bt",
390 "cargo:rustc-cfg=adc_adc1",
391 "cargo:rustc-cfg=adc_adc2",
392 "cargo:rustc-cfg=dac_dac1",
393 "cargo:rustc-cfg=dac_dac2",
394 "cargo:rustc-cfg=i2c_master_i2c0",
395 "cargo:rustc-cfg=i2c_master_i2c1",
396 "cargo:rustc-cfg=spi_master_spi2",
397 "cargo:rustc-cfg=spi_master_spi3",
398 "cargo:rustc-cfg=spi_slave_spi2",
399 "cargo:rustc-cfg=spi_slave_spi3",
400 "cargo:rustc-cfg=timergroup_timg0",
401 "cargo:rustc-cfg=timergroup_timg1",
402 "cargo:rustc-cfg=uart_uart0",
403 "cargo:rustc-cfg=uart_uart1",
404 "cargo:rustc-cfg=uart_uart2",
405 "cargo:rustc-cfg=gpio_has_bank_1",
406 "cargo:rustc-cfg=gpio_gpio_function=\"2\"",
407 "cargo:rustc-cfg=gpio_constant_0_input=\"48\"",
408 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
409 "cargo:rustc-cfg=gpio_remap_iomux_pin_registers",
410 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
411 "cargo:rustc-cfg=gpio_input_signal_max=\"206\"",
412 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
413 "cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
414 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
415 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"1048575\"",
416 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
417 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
418 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
419 "cargo:rustc-cfg=rmt_ram_start=\"1073047552\"",
420 "cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
421 "cargo:rustc-cfg=timergroup_timg_has_timer1",
422 "cargo:rustc-cfg=has_dram_region",
423 ],
424 },
425 Self::Esp32c2 => Config {
426 architecture: "riscv",
427 target: "riscv32imc-unknown-none-elf",
428 symbols: &[
429 "esp32c2",
430 "riscv",
431 "single_core",
432 "soc_has_apb_ctrl",
433 "soc_has_apb_saradc",
434 "soc_has_bb",
435 "soc_has_assist_debug",
436 "soc_has_dma",
437 "soc_has_ecc",
438 "soc_has_efuse",
439 "soc_has_extmem",
440 "soc_has_gpio",
441 "soc_has_i2c_ana_mst",
442 "soc_has_i2c0",
443 "soc_has_interrupt_core0",
444 "soc_has_io_mux",
445 "soc_has_ledc",
446 "soc_has_rng",
447 "soc_has_lpwr",
448 "soc_has_modem_clkrst",
449 "soc_has_sensitive",
450 "soc_has_sha",
451 "soc_has_spi0",
452 "soc_has_spi1",
453 "soc_has_spi2",
454 "soc_has_system",
455 "soc_has_systimer",
456 "soc_has_timg0",
457 "soc_has_uart0",
458 "soc_has_uart1",
459 "soc_has_xts_aes",
460 "soc_has_dma_ch0",
461 "soc_has_adc1",
462 "soc_has_bt",
463 "soc_has_sw_interrupt",
464 "soc_has_wifi",
465 "soc_has_mem2mem1",
466 "soc_has_mem2mem2",
467 "soc_has_mem2mem3",
468 "soc_has_mem2mem4",
469 "soc_has_mem2mem5",
470 "soc_has_mem2mem6",
471 "soc_has_mem2mem7",
472 "soc_has_mem2mem8",
473 "gdma",
474 "phy",
475 "rom_crc_le",
476 "rom_crc_be",
477 "rom_md5_mbedtls",
478 "pm_support_wifi_wakeup",
479 "pm_support_bt_wakeup",
480 "uart_support_wakeup_int",
481 "gpio_support_deepsleep_wakeup",
482 "adc",
483 "assist_debug",
484 "dma",
485 "ecc",
486 "gpio",
487 "i2c_master",
488 "interrupts",
489 "io_mux",
490 "ledc",
491 "rng",
492 "sleep",
493 "sha",
494 "spi_master",
495 "spi_slave",
496 "systimer",
497 "temp_sensor",
498 "timergroup",
499 "uart",
500 "wifi",
501 "bt",
502 "adc_adc1",
503 "i2c_master_i2c0",
504 "spi_master_spi2",
505 "spi_slave_spi2",
506 "timergroup_timg0",
507 "uart_uart0",
508 "uart_uart1",
509 "assist_debug_has_sp_monitor",
510 "gpio_gpio_function=\"1\"",
511 "gpio_constant_0_input=\"31\"",
512 "gpio_constant_1_input=\"30\"",
513 "gpio_func_in_sel_offset=\"0\"",
514 "gpio_input_signal_max=\"100\"",
515 "gpio_output_signal_max=\"128\"",
516 "i2c_master_has_fsm_timeouts",
517 "i2c_master_has_hw_bus_clear",
518 "i2c_master_has_bus_timeout_enable",
519 "i2c_master_has_conf_update",
520 "i2c_master_has_arbitration_en",
521 "i2c_master_has_tx_fifo_watermark",
522 "i2c_master_bus_timeout_is_exponential",
523 "i2c_master_max_bus_timeout=\"31\"",
524 "i2c_master_ll_intr_mask=\"262143\"",
525 "i2c_master_fifo_size=\"16\"",
526 "interrupts_status_registers=\"2\"",
527 "has_dram_region",
528 ],
529 cfgs: &[
530 "cargo:rustc-cfg=esp32c2",
531 "cargo:rustc-cfg=riscv",
532 "cargo:rustc-cfg=single_core",
533 "cargo:rustc-cfg=soc_has_apb_ctrl",
534 "cargo:rustc-cfg=soc_has_apb_saradc",
535 "cargo:rustc-cfg=soc_has_bb",
536 "cargo:rustc-cfg=soc_has_assist_debug",
537 "cargo:rustc-cfg=soc_has_dma",
538 "cargo:rustc-cfg=soc_has_ecc",
539 "cargo:rustc-cfg=soc_has_efuse",
540 "cargo:rustc-cfg=soc_has_extmem",
541 "cargo:rustc-cfg=soc_has_gpio",
542 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
543 "cargo:rustc-cfg=soc_has_i2c0",
544 "cargo:rustc-cfg=soc_has_interrupt_core0",
545 "cargo:rustc-cfg=soc_has_io_mux",
546 "cargo:rustc-cfg=soc_has_ledc",
547 "cargo:rustc-cfg=soc_has_rng",
548 "cargo:rustc-cfg=soc_has_lpwr",
549 "cargo:rustc-cfg=soc_has_modem_clkrst",
550 "cargo:rustc-cfg=soc_has_sensitive",
551 "cargo:rustc-cfg=soc_has_sha",
552 "cargo:rustc-cfg=soc_has_spi0",
553 "cargo:rustc-cfg=soc_has_spi1",
554 "cargo:rustc-cfg=soc_has_spi2",
555 "cargo:rustc-cfg=soc_has_system",
556 "cargo:rustc-cfg=soc_has_systimer",
557 "cargo:rustc-cfg=soc_has_timg0",
558 "cargo:rustc-cfg=soc_has_uart0",
559 "cargo:rustc-cfg=soc_has_uart1",
560 "cargo:rustc-cfg=soc_has_xts_aes",
561 "cargo:rustc-cfg=soc_has_dma_ch0",
562 "cargo:rustc-cfg=soc_has_adc1",
563 "cargo:rustc-cfg=soc_has_bt",
564 "cargo:rustc-cfg=soc_has_sw_interrupt",
565 "cargo:rustc-cfg=soc_has_wifi",
566 "cargo:rustc-cfg=soc_has_mem2mem1",
567 "cargo:rustc-cfg=soc_has_mem2mem2",
568 "cargo:rustc-cfg=soc_has_mem2mem3",
569 "cargo:rustc-cfg=soc_has_mem2mem4",
570 "cargo:rustc-cfg=soc_has_mem2mem5",
571 "cargo:rustc-cfg=soc_has_mem2mem6",
572 "cargo:rustc-cfg=soc_has_mem2mem7",
573 "cargo:rustc-cfg=soc_has_mem2mem8",
574 "cargo:rustc-cfg=gdma",
575 "cargo:rustc-cfg=phy",
576 "cargo:rustc-cfg=rom_crc_le",
577 "cargo:rustc-cfg=rom_crc_be",
578 "cargo:rustc-cfg=rom_md5_mbedtls",
579 "cargo:rustc-cfg=pm_support_wifi_wakeup",
580 "cargo:rustc-cfg=pm_support_bt_wakeup",
581 "cargo:rustc-cfg=uart_support_wakeup_int",
582 "cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
583 "cargo:rustc-cfg=adc",
584 "cargo:rustc-cfg=assist_debug",
585 "cargo:rustc-cfg=dma",
586 "cargo:rustc-cfg=ecc",
587 "cargo:rustc-cfg=gpio",
588 "cargo:rustc-cfg=i2c_master",
589 "cargo:rustc-cfg=interrupts",
590 "cargo:rustc-cfg=io_mux",
591 "cargo:rustc-cfg=ledc",
592 "cargo:rustc-cfg=rng",
593 "cargo:rustc-cfg=sleep",
594 "cargo:rustc-cfg=sha",
595 "cargo:rustc-cfg=spi_master",
596 "cargo:rustc-cfg=spi_slave",
597 "cargo:rustc-cfg=systimer",
598 "cargo:rustc-cfg=temp_sensor",
599 "cargo:rustc-cfg=timergroup",
600 "cargo:rustc-cfg=uart",
601 "cargo:rustc-cfg=wifi",
602 "cargo:rustc-cfg=bt",
603 "cargo:rustc-cfg=adc_adc1",
604 "cargo:rustc-cfg=i2c_master_i2c0",
605 "cargo:rustc-cfg=spi_master_spi2",
606 "cargo:rustc-cfg=spi_slave_spi2",
607 "cargo:rustc-cfg=timergroup_timg0",
608 "cargo:rustc-cfg=uart_uart0",
609 "cargo:rustc-cfg=uart_uart1",
610 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
611 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
612 "cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
613 "cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
614 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
615 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
616 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
617 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
618 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
619 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
620 "cargo:rustc-cfg=i2c_master_has_conf_update",
621 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
622 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
623 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
624 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
625 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
626 "cargo:rustc-cfg=i2c_master_fifo_size=\"16\"",
627 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
628 "cargo:rustc-cfg=has_dram_region",
629 ],
630 },
631 Self::Esp32c3 => Config {
632 architecture: "riscv",
633 target: "riscv32imc-unknown-none-elf",
634 symbols: &[
635 "esp32c3",
636 "riscv",
637 "single_core",
638 "soc_has_aes",
639 "soc_has_apb_ctrl",
640 "soc_has_apb_saradc",
641 "soc_has_assist_debug",
642 "soc_has_bb",
643 "soc_has_dma",
644 "soc_has_ds",
645 "soc_has_efuse",
646 "soc_has_extmem",
647 "soc_has_fe",
648 "soc_has_fe2",
649 "soc_has_gpio",
650 "soc_has_gpio_sd",
651 "soc_has_hmac",
652 "soc_has_i2c_ana_mst",
653 "soc_has_i2c0",
654 "soc_has_i2s0",
655 "soc_has_interrupt_core0",
656 "soc_has_io_mux",
657 "soc_has_ledc",
658 "soc_has_nrx",
659 "soc_has_rmt",
660 "soc_has_rng",
661 "soc_has_rsa",
662 "soc_has_lpwr",
663 "soc_has_sensitive",
664 "soc_has_sha",
665 "soc_has_spi0",
666 "soc_has_spi1",
667 "soc_has_spi2",
668 "soc_has_system",
669 "soc_has_systimer",
670 "soc_has_timg0",
671 "soc_has_timg1",
672 "soc_has_twai0",
673 "soc_has_uart0",
674 "soc_has_uart1",
675 "soc_has_uhci0",
676 "soc_has_uhci1",
677 "soc_has_usb_device",
678 "soc_has_xts_aes",
679 "soc_has_dma_ch0",
680 "soc_has_dma_ch1",
681 "soc_has_dma_ch2",
682 "soc_has_adc1",
683 "soc_has_adc2",
684 "soc_has_bt",
685 "soc_has_sw_interrupt",
686 "soc_has_tsens",
687 "soc_has_wifi",
688 "gdma",
689 "phy",
690 "rom_crc_le",
691 "rom_crc_be",
692 "rom_md5_bsd",
693 "pm_support_wifi_wakeup",
694 "pm_support_bt_wakeup",
695 "uart_support_wakeup_int",
696 "gpio_support_deepsleep_wakeup",
697 "adc",
698 "aes",
699 "assist_debug",
700 "dma",
701 "gpio",
702 "hmac",
703 "i2c_master",
704 "i2s",
705 "interrupts",
706 "io_mux",
707 "ledc",
708 "rmt",
709 "rng",
710 "rsa",
711 "sleep",
712 "sha",
713 "spi_master",
714 "spi_slave",
715 "systimer",
716 "temp_sensor",
717 "timergroup",
718 "twai",
719 "uart",
720 "usb_serial_jtag",
721 "wifi",
722 "bt",
723 "adc_adc1",
724 "adc_adc2",
725 "i2c_master_i2c0",
726 "spi_master_spi2",
727 "spi_slave_spi2",
728 "timergroup_timg0",
729 "timergroup_timg1",
730 "uart_uart0",
731 "uart_uart1",
732 "assist_debug_has_sp_monitor",
733 "assist_debug_has_region_monitor",
734 "gpio_gpio_function=\"1\"",
735 "gpio_constant_0_input=\"31\"",
736 "gpio_constant_1_input=\"30\"",
737 "gpio_func_in_sel_offset=\"0\"",
738 "gpio_input_signal_max=\"100\"",
739 "gpio_output_signal_max=\"128\"",
740 "i2c_master_has_fsm_timeouts",
741 "i2c_master_has_hw_bus_clear",
742 "i2c_master_has_bus_timeout_enable",
743 "i2c_master_has_conf_update",
744 "i2c_master_has_arbitration_en",
745 "i2c_master_has_tx_fifo_watermark",
746 "i2c_master_bus_timeout_is_exponential",
747 "i2c_master_max_bus_timeout=\"31\"",
748 "i2c_master_ll_intr_mask=\"262143\"",
749 "i2c_master_fifo_size=\"32\"",
750 "interrupts_status_registers=\"2\"",
751 "rmt_ram_start=\"1610703872\"",
752 "rmt_channel_ram_size=\"48\"",
753 "has_dram_region",
754 ],
755 cfgs: &[
756 "cargo:rustc-cfg=esp32c3",
757 "cargo:rustc-cfg=riscv",
758 "cargo:rustc-cfg=single_core",
759 "cargo:rustc-cfg=soc_has_aes",
760 "cargo:rustc-cfg=soc_has_apb_ctrl",
761 "cargo:rustc-cfg=soc_has_apb_saradc",
762 "cargo:rustc-cfg=soc_has_assist_debug",
763 "cargo:rustc-cfg=soc_has_bb",
764 "cargo:rustc-cfg=soc_has_dma",
765 "cargo:rustc-cfg=soc_has_ds",
766 "cargo:rustc-cfg=soc_has_efuse",
767 "cargo:rustc-cfg=soc_has_extmem",
768 "cargo:rustc-cfg=soc_has_fe",
769 "cargo:rustc-cfg=soc_has_fe2",
770 "cargo:rustc-cfg=soc_has_gpio",
771 "cargo:rustc-cfg=soc_has_gpio_sd",
772 "cargo:rustc-cfg=soc_has_hmac",
773 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
774 "cargo:rustc-cfg=soc_has_i2c0",
775 "cargo:rustc-cfg=soc_has_i2s0",
776 "cargo:rustc-cfg=soc_has_interrupt_core0",
777 "cargo:rustc-cfg=soc_has_io_mux",
778 "cargo:rustc-cfg=soc_has_ledc",
779 "cargo:rustc-cfg=soc_has_nrx",
780 "cargo:rustc-cfg=soc_has_rmt",
781 "cargo:rustc-cfg=soc_has_rng",
782 "cargo:rustc-cfg=soc_has_rsa",
783 "cargo:rustc-cfg=soc_has_lpwr",
784 "cargo:rustc-cfg=soc_has_sensitive",
785 "cargo:rustc-cfg=soc_has_sha",
786 "cargo:rustc-cfg=soc_has_spi0",
787 "cargo:rustc-cfg=soc_has_spi1",
788 "cargo:rustc-cfg=soc_has_spi2",
789 "cargo:rustc-cfg=soc_has_system",
790 "cargo:rustc-cfg=soc_has_systimer",
791 "cargo:rustc-cfg=soc_has_timg0",
792 "cargo:rustc-cfg=soc_has_timg1",
793 "cargo:rustc-cfg=soc_has_twai0",
794 "cargo:rustc-cfg=soc_has_uart0",
795 "cargo:rustc-cfg=soc_has_uart1",
796 "cargo:rustc-cfg=soc_has_uhci0",
797 "cargo:rustc-cfg=soc_has_uhci1",
798 "cargo:rustc-cfg=soc_has_usb_device",
799 "cargo:rustc-cfg=soc_has_xts_aes",
800 "cargo:rustc-cfg=soc_has_dma_ch0",
801 "cargo:rustc-cfg=soc_has_dma_ch1",
802 "cargo:rustc-cfg=soc_has_dma_ch2",
803 "cargo:rustc-cfg=soc_has_adc1",
804 "cargo:rustc-cfg=soc_has_adc2",
805 "cargo:rustc-cfg=soc_has_bt",
806 "cargo:rustc-cfg=soc_has_sw_interrupt",
807 "cargo:rustc-cfg=soc_has_tsens",
808 "cargo:rustc-cfg=soc_has_wifi",
809 "cargo:rustc-cfg=gdma",
810 "cargo:rustc-cfg=phy",
811 "cargo:rustc-cfg=rom_crc_le",
812 "cargo:rustc-cfg=rom_crc_be",
813 "cargo:rustc-cfg=rom_md5_bsd",
814 "cargo:rustc-cfg=pm_support_wifi_wakeup",
815 "cargo:rustc-cfg=pm_support_bt_wakeup",
816 "cargo:rustc-cfg=uart_support_wakeup_int",
817 "cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
818 "cargo:rustc-cfg=adc",
819 "cargo:rustc-cfg=aes",
820 "cargo:rustc-cfg=assist_debug",
821 "cargo:rustc-cfg=dma",
822 "cargo:rustc-cfg=gpio",
823 "cargo:rustc-cfg=hmac",
824 "cargo:rustc-cfg=i2c_master",
825 "cargo:rustc-cfg=i2s",
826 "cargo:rustc-cfg=interrupts",
827 "cargo:rustc-cfg=io_mux",
828 "cargo:rustc-cfg=ledc",
829 "cargo:rustc-cfg=rmt",
830 "cargo:rustc-cfg=rng",
831 "cargo:rustc-cfg=rsa",
832 "cargo:rustc-cfg=sleep",
833 "cargo:rustc-cfg=sha",
834 "cargo:rustc-cfg=spi_master",
835 "cargo:rustc-cfg=spi_slave",
836 "cargo:rustc-cfg=systimer",
837 "cargo:rustc-cfg=temp_sensor",
838 "cargo:rustc-cfg=timergroup",
839 "cargo:rustc-cfg=twai",
840 "cargo:rustc-cfg=uart",
841 "cargo:rustc-cfg=usb_serial_jtag",
842 "cargo:rustc-cfg=wifi",
843 "cargo:rustc-cfg=bt",
844 "cargo:rustc-cfg=adc_adc1",
845 "cargo:rustc-cfg=adc_adc2",
846 "cargo:rustc-cfg=i2c_master_i2c0",
847 "cargo:rustc-cfg=spi_master_spi2",
848 "cargo:rustc-cfg=spi_slave_spi2",
849 "cargo:rustc-cfg=timergroup_timg0",
850 "cargo:rustc-cfg=timergroup_timg1",
851 "cargo:rustc-cfg=uart_uart0",
852 "cargo:rustc-cfg=uart_uart1",
853 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
854 "cargo:rustc-cfg=assist_debug_has_region_monitor",
855 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
856 "cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
857 "cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
858 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
859 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
860 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
861 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
862 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
863 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
864 "cargo:rustc-cfg=i2c_master_has_conf_update",
865 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
866 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
867 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
868 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
869 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
870 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
871 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
872 "cargo:rustc-cfg=rmt_ram_start=\"1610703872\"",
873 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
874 "cargo:rustc-cfg=has_dram_region",
875 ],
876 },
877 Self::Esp32c6 => Config {
878 architecture: "riscv",
879 target: "riscv32imac-unknown-none-elf",
880 symbols: &[
881 "esp32c6",
882 "riscv",
883 "single_core",
884 "soc_has_aes",
885 "soc_has_apb_saradc",
886 "soc_has_assist_debug",
887 "soc_has_atomic",
888 "soc_has_dma",
889 "soc_has_ds",
890 "soc_has_ecc",
891 "soc_has_efuse",
892 "soc_has_extmem",
893 "soc_has_gpio",
894 "soc_has_gpio_sd",
895 "soc_has_hinf",
896 "soc_has_hmac",
897 "soc_has_hp_apm",
898 "soc_has_hp_sys",
899 "soc_has_i2c_ana_mst",
900 "soc_has_i2c0",
901 "soc_has_i2s0",
902 "soc_has_ieee802154",
903 "soc_has_interrupt_core0",
904 "soc_has_intpri",
905 "soc_has_io_mux",
906 "soc_has_ledc",
907 "soc_has_lp_ana",
908 "soc_has_lp_aon",
909 "soc_has_lp_apm",
910 "soc_has_lp_apm0",
911 "soc_has_lp_clkrst",
912 "soc_has_lp_i2c0",
913 "soc_has_lp_i2c_ana_mst",
914 "soc_has_lp_io",
915 "soc_has_lp_peri",
916 "soc_has_lp_tee",
917 "soc_has_lp_timer",
918 "soc_has_lp_uart",
919 "soc_has_lp_wdt",
920 "soc_has_lpwr",
921 "soc_has_mcpwm0",
922 "soc_has_mem_monitor",
923 "soc_has_modem_lpcon",
924 "soc_has_modem_syscon",
925 "soc_has_otp_debug",
926 "soc_has_parl_io",
927 "soc_has_pau",
928 "soc_has_pcnt",
929 "soc_has_pcr",
930 "soc_has_plic_mx",
931 "soc_has_pmu",
932 "soc_has_rmt",
933 "soc_has_rng",
934 "soc_has_rsa",
935 "soc_has_sha",
936 "soc_has_slchost",
937 "soc_has_etm",
938 "soc_has_spi0",
939 "soc_has_spi1",
940 "soc_has_spi2",
941 "soc_has_system",
942 "soc_has_systimer",
943 "soc_has_tee",
944 "soc_has_timg0",
945 "soc_has_timg1",
946 "soc_has_trace0",
947 "soc_has_twai0",
948 "soc_has_twai1",
949 "soc_has_uart0",
950 "soc_has_uart1",
951 "soc_has_uhci0",
952 "soc_has_usb_device",
953 "soc_has_dma_ch0",
954 "soc_has_dma_ch1",
955 "soc_has_dma_ch2",
956 "soc_has_adc1",
957 "soc_has_bt",
958 "soc_has_lp_core",
959 "soc_has_sw_interrupt",
960 "soc_has_tsens",
961 "soc_has_wifi",
962 "soc_has_mem2mem1",
963 "soc_has_mem2mem4",
964 "soc_has_mem2mem5",
965 "soc_has_mem2mem10",
966 "soc_has_mem2mem11",
967 "soc_has_mem2mem12",
968 "soc_has_mem2mem13",
969 "soc_has_mem2mem14",
970 "soc_has_mem2mem15",
971 "gdma",
972 "plic",
973 "phy",
974 "lp_core",
975 "rom_crc_le",
976 "rom_crc_be",
977 "rom_md5_bsd",
978 "pm_support_wifi_wakeup",
979 "pm_support_beacon_wakeup",
980 "pm_support_bt_wakeup",
981 "gpio_support_deepsleep_wakeup",
982 "uart_support_wakeup_int",
983 "pm_support_ext1_wakeup",
984 "adc",
985 "aes",
986 "assist_debug",
987 "dma",
988 "ecc",
989 "etm",
990 "gpio",
991 "hmac",
992 "i2c_master",
993 "i2s",
994 "interrupts",
995 "io_mux",
996 "ledc",
997 "mcpwm",
998 "parl_io",
999 "pcnt",
1000 "rmt",
1001 "rng",
1002 "rsa",
1003 "sd_slave",
1004 "sleep",
1005 "sha",
1006 "spi_master",
1007 "spi_slave",
1008 "systimer",
1009 "temp_sensor",
1010 "timergroup",
1011 "twai",
1012 "uart",
1013 "ulp_riscv",
1014 "usb_serial_jtag",
1015 "wifi",
1016 "bt",
1017 "ieee802154",
1018 "adc_adc1",
1019 "i2c_master_i2c0",
1020 "spi_master_spi2",
1021 "spi_slave_spi2",
1022 "timergroup_timg0",
1023 "timergroup_timg1",
1024 "uart_uart0",
1025 "uart_uart1",
1026 "assist_debug_has_sp_monitor",
1027 "assist_debug_has_region_monitor",
1028 "gpio_gpio_function=\"1\"",
1029 "gpio_constant_0_input=\"60\"",
1030 "gpio_constant_1_input=\"56\"",
1031 "gpio_func_in_sel_offset=\"0\"",
1032 "gpio_input_signal_max=\"124\"",
1033 "gpio_output_signal_max=\"128\"",
1034 "i2c_master_has_fsm_timeouts",
1035 "i2c_master_has_hw_bus_clear",
1036 "i2c_master_has_bus_timeout_enable",
1037 "i2c_master_can_estimate_nack_reason",
1038 "i2c_master_has_conf_update",
1039 "i2c_master_has_reliable_fsm_reset",
1040 "i2c_master_has_arbitration_en",
1041 "i2c_master_has_tx_fifo_watermark",
1042 "i2c_master_bus_timeout_is_exponential",
1043 "i2c_master_max_bus_timeout=\"31\"",
1044 "i2c_master_ll_intr_mask=\"262143\"",
1045 "i2c_master_fifo_size=\"32\"",
1046 "interrupts_status_registers=\"3\"",
1047 "rmt_ram_start=\"1610638336\"",
1048 "rmt_channel_ram_size=\"48\"",
1049 "wifi_has_wifi6",
1050 "has_dram_region",
1051 ],
1052 cfgs: &[
1053 "cargo:rustc-cfg=esp32c6",
1054 "cargo:rustc-cfg=riscv",
1055 "cargo:rustc-cfg=single_core",
1056 "cargo:rustc-cfg=soc_has_aes",
1057 "cargo:rustc-cfg=soc_has_apb_saradc",
1058 "cargo:rustc-cfg=soc_has_assist_debug",
1059 "cargo:rustc-cfg=soc_has_atomic",
1060 "cargo:rustc-cfg=soc_has_dma",
1061 "cargo:rustc-cfg=soc_has_ds",
1062 "cargo:rustc-cfg=soc_has_ecc",
1063 "cargo:rustc-cfg=soc_has_efuse",
1064 "cargo:rustc-cfg=soc_has_extmem",
1065 "cargo:rustc-cfg=soc_has_gpio",
1066 "cargo:rustc-cfg=soc_has_gpio_sd",
1067 "cargo:rustc-cfg=soc_has_hinf",
1068 "cargo:rustc-cfg=soc_has_hmac",
1069 "cargo:rustc-cfg=soc_has_hp_apm",
1070 "cargo:rustc-cfg=soc_has_hp_sys",
1071 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
1072 "cargo:rustc-cfg=soc_has_i2c0",
1073 "cargo:rustc-cfg=soc_has_i2s0",
1074 "cargo:rustc-cfg=soc_has_ieee802154",
1075 "cargo:rustc-cfg=soc_has_interrupt_core0",
1076 "cargo:rustc-cfg=soc_has_intpri",
1077 "cargo:rustc-cfg=soc_has_io_mux",
1078 "cargo:rustc-cfg=soc_has_ledc",
1079 "cargo:rustc-cfg=soc_has_lp_ana",
1080 "cargo:rustc-cfg=soc_has_lp_aon",
1081 "cargo:rustc-cfg=soc_has_lp_apm",
1082 "cargo:rustc-cfg=soc_has_lp_apm0",
1083 "cargo:rustc-cfg=soc_has_lp_clkrst",
1084 "cargo:rustc-cfg=soc_has_lp_i2c0",
1085 "cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
1086 "cargo:rustc-cfg=soc_has_lp_io",
1087 "cargo:rustc-cfg=soc_has_lp_peri",
1088 "cargo:rustc-cfg=soc_has_lp_tee",
1089 "cargo:rustc-cfg=soc_has_lp_timer",
1090 "cargo:rustc-cfg=soc_has_lp_uart",
1091 "cargo:rustc-cfg=soc_has_lp_wdt",
1092 "cargo:rustc-cfg=soc_has_lpwr",
1093 "cargo:rustc-cfg=soc_has_mcpwm0",
1094 "cargo:rustc-cfg=soc_has_mem_monitor",
1095 "cargo:rustc-cfg=soc_has_modem_lpcon",
1096 "cargo:rustc-cfg=soc_has_modem_syscon",
1097 "cargo:rustc-cfg=soc_has_otp_debug",
1098 "cargo:rustc-cfg=soc_has_parl_io",
1099 "cargo:rustc-cfg=soc_has_pau",
1100 "cargo:rustc-cfg=soc_has_pcnt",
1101 "cargo:rustc-cfg=soc_has_pcr",
1102 "cargo:rustc-cfg=soc_has_plic_mx",
1103 "cargo:rustc-cfg=soc_has_pmu",
1104 "cargo:rustc-cfg=soc_has_rmt",
1105 "cargo:rustc-cfg=soc_has_rng",
1106 "cargo:rustc-cfg=soc_has_rsa",
1107 "cargo:rustc-cfg=soc_has_sha",
1108 "cargo:rustc-cfg=soc_has_slchost",
1109 "cargo:rustc-cfg=soc_has_etm",
1110 "cargo:rustc-cfg=soc_has_spi0",
1111 "cargo:rustc-cfg=soc_has_spi1",
1112 "cargo:rustc-cfg=soc_has_spi2",
1113 "cargo:rustc-cfg=soc_has_system",
1114 "cargo:rustc-cfg=soc_has_systimer",
1115 "cargo:rustc-cfg=soc_has_tee",
1116 "cargo:rustc-cfg=soc_has_timg0",
1117 "cargo:rustc-cfg=soc_has_timg1",
1118 "cargo:rustc-cfg=soc_has_trace0",
1119 "cargo:rustc-cfg=soc_has_twai0",
1120 "cargo:rustc-cfg=soc_has_twai1",
1121 "cargo:rustc-cfg=soc_has_uart0",
1122 "cargo:rustc-cfg=soc_has_uart1",
1123 "cargo:rustc-cfg=soc_has_uhci0",
1124 "cargo:rustc-cfg=soc_has_usb_device",
1125 "cargo:rustc-cfg=soc_has_dma_ch0",
1126 "cargo:rustc-cfg=soc_has_dma_ch1",
1127 "cargo:rustc-cfg=soc_has_dma_ch2",
1128 "cargo:rustc-cfg=soc_has_adc1",
1129 "cargo:rustc-cfg=soc_has_bt",
1130 "cargo:rustc-cfg=soc_has_lp_core",
1131 "cargo:rustc-cfg=soc_has_sw_interrupt",
1132 "cargo:rustc-cfg=soc_has_tsens",
1133 "cargo:rustc-cfg=soc_has_wifi",
1134 "cargo:rustc-cfg=soc_has_mem2mem1",
1135 "cargo:rustc-cfg=soc_has_mem2mem4",
1136 "cargo:rustc-cfg=soc_has_mem2mem5",
1137 "cargo:rustc-cfg=soc_has_mem2mem10",
1138 "cargo:rustc-cfg=soc_has_mem2mem11",
1139 "cargo:rustc-cfg=soc_has_mem2mem12",
1140 "cargo:rustc-cfg=soc_has_mem2mem13",
1141 "cargo:rustc-cfg=soc_has_mem2mem14",
1142 "cargo:rustc-cfg=soc_has_mem2mem15",
1143 "cargo:rustc-cfg=gdma",
1144 "cargo:rustc-cfg=plic",
1145 "cargo:rustc-cfg=phy",
1146 "cargo:rustc-cfg=lp_core",
1147 "cargo:rustc-cfg=rom_crc_le",
1148 "cargo:rustc-cfg=rom_crc_be",
1149 "cargo:rustc-cfg=rom_md5_bsd",
1150 "cargo:rustc-cfg=pm_support_wifi_wakeup",
1151 "cargo:rustc-cfg=pm_support_beacon_wakeup",
1152 "cargo:rustc-cfg=pm_support_bt_wakeup",
1153 "cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
1154 "cargo:rustc-cfg=uart_support_wakeup_int",
1155 "cargo:rustc-cfg=pm_support_ext1_wakeup",
1156 "cargo:rustc-cfg=adc",
1157 "cargo:rustc-cfg=aes",
1158 "cargo:rustc-cfg=assist_debug",
1159 "cargo:rustc-cfg=dma",
1160 "cargo:rustc-cfg=ecc",
1161 "cargo:rustc-cfg=etm",
1162 "cargo:rustc-cfg=gpio",
1163 "cargo:rustc-cfg=hmac",
1164 "cargo:rustc-cfg=i2c_master",
1165 "cargo:rustc-cfg=i2s",
1166 "cargo:rustc-cfg=interrupts",
1167 "cargo:rustc-cfg=io_mux",
1168 "cargo:rustc-cfg=ledc",
1169 "cargo:rustc-cfg=mcpwm",
1170 "cargo:rustc-cfg=parl_io",
1171 "cargo:rustc-cfg=pcnt",
1172 "cargo:rustc-cfg=rmt",
1173 "cargo:rustc-cfg=rng",
1174 "cargo:rustc-cfg=rsa",
1175 "cargo:rustc-cfg=sd_slave",
1176 "cargo:rustc-cfg=sleep",
1177 "cargo:rustc-cfg=sha",
1178 "cargo:rustc-cfg=spi_master",
1179 "cargo:rustc-cfg=spi_slave",
1180 "cargo:rustc-cfg=systimer",
1181 "cargo:rustc-cfg=temp_sensor",
1182 "cargo:rustc-cfg=timergroup",
1183 "cargo:rustc-cfg=twai",
1184 "cargo:rustc-cfg=uart",
1185 "cargo:rustc-cfg=ulp_riscv",
1186 "cargo:rustc-cfg=usb_serial_jtag",
1187 "cargo:rustc-cfg=wifi",
1188 "cargo:rustc-cfg=bt",
1189 "cargo:rustc-cfg=ieee802154",
1190 "cargo:rustc-cfg=adc_adc1",
1191 "cargo:rustc-cfg=i2c_master_i2c0",
1192 "cargo:rustc-cfg=spi_master_spi2",
1193 "cargo:rustc-cfg=spi_slave_spi2",
1194 "cargo:rustc-cfg=timergroup_timg0",
1195 "cargo:rustc-cfg=timergroup_timg1",
1196 "cargo:rustc-cfg=uart_uart0",
1197 "cargo:rustc-cfg=uart_uart1",
1198 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
1199 "cargo:rustc-cfg=assist_debug_has_region_monitor",
1200 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
1201 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
1202 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
1203 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
1204 "cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
1205 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
1206 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
1207 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
1208 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
1209 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
1210 "cargo:rustc-cfg=i2c_master_has_conf_update",
1211 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
1212 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
1213 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
1214 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
1215 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
1216 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
1217 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
1218 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
1219 "cargo:rustc-cfg=rmt_ram_start=\"1610638336\"",
1220 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
1221 "cargo:rustc-cfg=wifi_has_wifi6",
1222 "cargo:rustc-cfg=has_dram_region",
1223 ],
1224 },
1225 Self::Esp32h2 => Config {
1226 architecture: "riscv",
1227 target: "riscv32imac-unknown-none-elf",
1228 symbols: &[
1229 "esp32h2",
1230 "riscv",
1231 "single_core",
1232 "soc_has_aes",
1233 "soc_has_apb_saradc",
1234 "soc_has_assist_debug",
1235 "soc_has_dma",
1236 "soc_has_ds",
1237 "soc_has_ecc",
1238 "soc_has_efuse",
1239 "soc_has_gpio",
1240 "soc_has_gpio_sd",
1241 "soc_has_hmac",
1242 "soc_has_hp_apm",
1243 "soc_has_hp_sys",
1244 "soc_has_i2c_ana_mst",
1245 "soc_has_i2c0",
1246 "soc_has_i2c1",
1247 "soc_has_i2s0",
1248 "soc_has_ieee802154",
1249 "soc_has_interrupt_core0",
1250 "soc_has_intpri",
1251 "soc_has_io_mux",
1252 "soc_has_ledc",
1253 "soc_has_lpwr",
1254 "soc_has_lp_ana",
1255 "soc_has_lp_aon",
1256 "soc_has_lp_apm",
1257 "soc_has_lp_apm0",
1258 "soc_has_lp_clkrst",
1259 "soc_has_lp_peri",
1260 "soc_has_lp_timer",
1261 "soc_has_lp_wdt",
1262 "soc_has_mcpwm0",
1263 "soc_has_mem_monitor",
1264 "soc_has_modem_lpcon",
1265 "soc_has_modem_syscon",
1266 "soc_has_otp_debug",
1267 "soc_has_parl_io",
1268 "soc_has_pau",
1269 "soc_has_pcnt",
1270 "soc_has_pcr",
1271 "soc_has_plic_mx",
1272 "soc_has_pmu",
1273 "soc_has_rmt",
1274 "soc_has_rng",
1275 "soc_has_rsa",
1276 "soc_has_sha",
1277 "soc_has_etm",
1278 "soc_has_spi0",
1279 "soc_has_spi1",
1280 "soc_has_spi2",
1281 "soc_has_system",
1282 "soc_has_systimer",
1283 "soc_has_tee",
1284 "soc_has_timg0",
1285 "soc_has_timg1",
1286 "soc_has_trace0",
1287 "soc_has_twai0",
1288 "soc_has_uart0",
1289 "soc_has_uart1",
1290 "soc_has_uhci0",
1291 "soc_has_usb_device",
1292 "soc_has_dma_ch0",
1293 "soc_has_dma_ch1",
1294 "soc_has_dma_ch2",
1295 "soc_has_adc1",
1296 "soc_has_bt",
1297 "soc_has_sw_interrupt",
1298 "soc_has_mem2mem1",
1299 "soc_has_mem2mem4",
1300 "soc_has_mem2mem5",
1301 "soc_has_mem2mem10",
1302 "soc_has_mem2mem11",
1303 "soc_has_mem2mem12",
1304 "soc_has_mem2mem13",
1305 "soc_has_mem2mem14",
1306 "soc_has_mem2mem15",
1307 "gdma",
1308 "plic",
1309 "phy",
1310 "rom_crc_le",
1311 "rom_crc_be",
1312 "rom_md5_bsd",
1313 "adc",
1314 "aes",
1315 "assist_debug",
1316 "dma",
1317 "ecc",
1318 "etm",
1319 "gpio",
1320 "hmac",
1321 "i2c_master",
1322 "i2s",
1323 "interrupts",
1324 "io_mux",
1325 "ledc",
1326 "mcpwm",
1327 "parl_io",
1328 "pcnt",
1329 "rmt",
1330 "rng",
1331 "rsa",
1332 "sleep",
1333 "sha",
1334 "spi_master",
1335 "spi_slave",
1336 "systimer",
1337 "temp_sensor",
1338 "timergroup",
1339 "twai",
1340 "uart",
1341 "usb_serial_jtag",
1342 "bt",
1343 "ieee802154",
1344 "adc_adc1",
1345 "i2c_master_i2c0",
1346 "i2c_master_i2c1",
1347 "spi_master_spi2",
1348 "spi_slave_spi2",
1349 "timergroup_timg0",
1350 "timergroup_timg1",
1351 "uart_uart0",
1352 "uart_uart1",
1353 "assist_debug_has_sp_monitor",
1354 "assist_debug_has_region_monitor",
1355 "gpio_gpio_function=\"1\"",
1356 "gpio_constant_0_input=\"60\"",
1357 "gpio_constant_1_input=\"56\"",
1358 "gpio_func_in_sel_offset=\"0\"",
1359 "gpio_input_signal_max=\"124\"",
1360 "gpio_output_signal_max=\"128\"",
1361 "i2c_master_has_fsm_timeouts",
1362 "i2c_master_has_hw_bus_clear",
1363 "i2c_master_has_bus_timeout_enable",
1364 "i2c_master_can_estimate_nack_reason",
1365 "i2c_master_has_conf_update",
1366 "i2c_master_has_reliable_fsm_reset",
1367 "i2c_master_has_arbitration_en",
1368 "i2c_master_has_tx_fifo_watermark",
1369 "i2c_master_bus_timeout_is_exponential",
1370 "i2c_master_max_bus_timeout=\"31\"",
1371 "i2c_master_ll_intr_mask=\"262143\"",
1372 "i2c_master_fifo_size=\"32\"",
1373 "interrupts_status_registers=\"2\"",
1374 "rmt_ram_start=\"1610642432\"",
1375 "rmt_channel_ram_size=\"48\"",
1376 "has_dram_region",
1377 ],
1378 cfgs: &[
1379 "cargo:rustc-cfg=esp32h2",
1380 "cargo:rustc-cfg=riscv",
1381 "cargo:rustc-cfg=single_core",
1382 "cargo:rustc-cfg=soc_has_aes",
1383 "cargo:rustc-cfg=soc_has_apb_saradc",
1384 "cargo:rustc-cfg=soc_has_assist_debug",
1385 "cargo:rustc-cfg=soc_has_dma",
1386 "cargo:rustc-cfg=soc_has_ds",
1387 "cargo:rustc-cfg=soc_has_ecc",
1388 "cargo:rustc-cfg=soc_has_efuse",
1389 "cargo:rustc-cfg=soc_has_gpio",
1390 "cargo:rustc-cfg=soc_has_gpio_sd",
1391 "cargo:rustc-cfg=soc_has_hmac",
1392 "cargo:rustc-cfg=soc_has_hp_apm",
1393 "cargo:rustc-cfg=soc_has_hp_sys",
1394 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
1395 "cargo:rustc-cfg=soc_has_i2c0",
1396 "cargo:rustc-cfg=soc_has_i2c1",
1397 "cargo:rustc-cfg=soc_has_i2s0",
1398 "cargo:rustc-cfg=soc_has_ieee802154",
1399 "cargo:rustc-cfg=soc_has_interrupt_core0",
1400 "cargo:rustc-cfg=soc_has_intpri",
1401 "cargo:rustc-cfg=soc_has_io_mux",
1402 "cargo:rustc-cfg=soc_has_ledc",
1403 "cargo:rustc-cfg=soc_has_lpwr",
1404 "cargo:rustc-cfg=soc_has_lp_ana",
1405 "cargo:rustc-cfg=soc_has_lp_aon",
1406 "cargo:rustc-cfg=soc_has_lp_apm",
1407 "cargo:rustc-cfg=soc_has_lp_apm0",
1408 "cargo:rustc-cfg=soc_has_lp_clkrst",
1409 "cargo:rustc-cfg=soc_has_lp_peri",
1410 "cargo:rustc-cfg=soc_has_lp_timer",
1411 "cargo:rustc-cfg=soc_has_lp_wdt",
1412 "cargo:rustc-cfg=soc_has_mcpwm0",
1413 "cargo:rustc-cfg=soc_has_mem_monitor",
1414 "cargo:rustc-cfg=soc_has_modem_lpcon",
1415 "cargo:rustc-cfg=soc_has_modem_syscon",
1416 "cargo:rustc-cfg=soc_has_otp_debug",
1417 "cargo:rustc-cfg=soc_has_parl_io",
1418 "cargo:rustc-cfg=soc_has_pau",
1419 "cargo:rustc-cfg=soc_has_pcnt",
1420 "cargo:rustc-cfg=soc_has_pcr",
1421 "cargo:rustc-cfg=soc_has_plic_mx",
1422 "cargo:rustc-cfg=soc_has_pmu",
1423 "cargo:rustc-cfg=soc_has_rmt",
1424 "cargo:rustc-cfg=soc_has_rng",
1425 "cargo:rustc-cfg=soc_has_rsa",
1426 "cargo:rustc-cfg=soc_has_sha",
1427 "cargo:rustc-cfg=soc_has_etm",
1428 "cargo:rustc-cfg=soc_has_spi0",
1429 "cargo:rustc-cfg=soc_has_spi1",
1430 "cargo:rustc-cfg=soc_has_spi2",
1431 "cargo:rustc-cfg=soc_has_system",
1432 "cargo:rustc-cfg=soc_has_systimer",
1433 "cargo:rustc-cfg=soc_has_tee",
1434 "cargo:rustc-cfg=soc_has_timg0",
1435 "cargo:rustc-cfg=soc_has_timg1",
1436 "cargo:rustc-cfg=soc_has_trace0",
1437 "cargo:rustc-cfg=soc_has_twai0",
1438 "cargo:rustc-cfg=soc_has_uart0",
1439 "cargo:rustc-cfg=soc_has_uart1",
1440 "cargo:rustc-cfg=soc_has_uhci0",
1441 "cargo:rustc-cfg=soc_has_usb_device",
1442 "cargo:rustc-cfg=soc_has_dma_ch0",
1443 "cargo:rustc-cfg=soc_has_dma_ch1",
1444 "cargo:rustc-cfg=soc_has_dma_ch2",
1445 "cargo:rustc-cfg=soc_has_adc1",
1446 "cargo:rustc-cfg=soc_has_bt",
1447 "cargo:rustc-cfg=soc_has_sw_interrupt",
1448 "cargo:rustc-cfg=soc_has_mem2mem1",
1449 "cargo:rustc-cfg=soc_has_mem2mem4",
1450 "cargo:rustc-cfg=soc_has_mem2mem5",
1451 "cargo:rustc-cfg=soc_has_mem2mem10",
1452 "cargo:rustc-cfg=soc_has_mem2mem11",
1453 "cargo:rustc-cfg=soc_has_mem2mem12",
1454 "cargo:rustc-cfg=soc_has_mem2mem13",
1455 "cargo:rustc-cfg=soc_has_mem2mem14",
1456 "cargo:rustc-cfg=soc_has_mem2mem15",
1457 "cargo:rustc-cfg=gdma",
1458 "cargo:rustc-cfg=plic",
1459 "cargo:rustc-cfg=phy",
1460 "cargo:rustc-cfg=rom_crc_le",
1461 "cargo:rustc-cfg=rom_crc_be",
1462 "cargo:rustc-cfg=rom_md5_bsd",
1463 "cargo:rustc-cfg=adc",
1464 "cargo:rustc-cfg=aes",
1465 "cargo:rustc-cfg=assist_debug",
1466 "cargo:rustc-cfg=dma",
1467 "cargo:rustc-cfg=ecc",
1468 "cargo:rustc-cfg=etm",
1469 "cargo:rustc-cfg=gpio",
1470 "cargo:rustc-cfg=hmac",
1471 "cargo:rustc-cfg=i2c_master",
1472 "cargo:rustc-cfg=i2s",
1473 "cargo:rustc-cfg=interrupts",
1474 "cargo:rustc-cfg=io_mux",
1475 "cargo:rustc-cfg=ledc",
1476 "cargo:rustc-cfg=mcpwm",
1477 "cargo:rustc-cfg=parl_io",
1478 "cargo:rustc-cfg=pcnt",
1479 "cargo:rustc-cfg=rmt",
1480 "cargo:rustc-cfg=rng",
1481 "cargo:rustc-cfg=rsa",
1482 "cargo:rustc-cfg=sleep",
1483 "cargo:rustc-cfg=sha",
1484 "cargo:rustc-cfg=spi_master",
1485 "cargo:rustc-cfg=spi_slave",
1486 "cargo:rustc-cfg=systimer",
1487 "cargo:rustc-cfg=temp_sensor",
1488 "cargo:rustc-cfg=timergroup",
1489 "cargo:rustc-cfg=twai",
1490 "cargo:rustc-cfg=uart",
1491 "cargo:rustc-cfg=usb_serial_jtag",
1492 "cargo:rustc-cfg=bt",
1493 "cargo:rustc-cfg=ieee802154",
1494 "cargo:rustc-cfg=adc_adc1",
1495 "cargo:rustc-cfg=i2c_master_i2c0",
1496 "cargo:rustc-cfg=i2c_master_i2c1",
1497 "cargo:rustc-cfg=spi_master_spi2",
1498 "cargo:rustc-cfg=spi_slave_spi2",
1499 "cargo:rustc-cfg=timergroup_timg0",
1500 "cargo:rustc-cfg=timergroup_timg1",
1501 "cargo:rustc-cfg=uart_uart0",
1502 "cargo:rustc-cfg=uart_uart1",
1503 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
1504 "cargo:rustc-cfg=assist_debug_has_region_monitor",
1505 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
1506 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
1507 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
1508 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
1509 "cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
1510 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
1511 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
1512 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
1513 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
1514 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
1515 "cargo:rustc-cfg=i2c_master_has_conf_update",
1516 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
1517 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
1518 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
1519 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
1520 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
1521 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
1522 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
1523 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
1524 "cargo:rustc-cfg=rmt_ram_start=\"1610642432\"",
1525 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
1526 "cargo:rustc-cfg=has_dram_region",
1527 ],
1528 },
1529 Self::Esp32s2 => Config {
1530 architecture: "xtensa",
1531 target: "xtensa-esp32s2-none-elf",
1532 symbols: &[
1533 "esp32s2",
1534 "xtensa",
1535 "single_core",
1536 "soc_has_aes",
1537 "soc_has_apb_saradc",
1538 "soc_has_dedicated_gpio",
1539 "soc_has_ds",
1540 "soc_has_efuse",
1541 "soc_has_extmem",
1542 "soc_has_fe",
1543 "soc_has_fe2",
1544 "soc_has_gpio",
1545 "soc_has_gpio_sd",
1546 "soc_has_hmac",
1547 "soc_has_i2c_ana_mst",
1548 "soc_has_i2c0",
1549 "soc_has_i2c1",
1550 "soc_has_i2s0",
1551 "soc_has_interrupt_core0",
1552 "soc_has_io_mux",
1553 "soc_has_ledc",
1554 "soc_has_nrx",
1555 "soc_has_pcnt",
1556 "soc_has_pms",
1557 "soc_has_rmt",
1558 "soc_has_rng",
1559 "soc_has_rsa",
1560 "soc_has_lpwr",
1561 "soc_has_rtc_i2c",
1562 "soc_has_rtc_io",
1563 "soc_has_sens",
1564 "soc_has_sha",
1565 "soc_has_spi0",
1566 "soc_has_spi1",
1567 "soc_has_spi2",
1568 "soc_has_spi3",
1569 "soc_has_syscon",
1570 "soc_has_system",
1571 "soc_has_systimer",
1572 "soc_has_timg0",
1573 "soc_has_timg1",
1574 "soc_has_twai0",
1575 "soc_has_uart0",
1576 "soc_has_uart1",
1577 "soc_has_uhci0",
1578 "soc_has_usb0",
1579 "soc_has_usb_wrap",
1580 "soc_has_xts_aes",
1581 "soc_has_wifi",
1582 "soc_has_dma_spi2",
1583 "soc_has_dma_spi3",
1584 "soc_has_dma_i2s0",
1585 "soc_has_dma_crypto",
1586 "soc_has_dma_copy",
1587 "soc_has_adc1",
1588 "soc_has_adc2",
1589 "soc_has_dac1",
1590 "soc_has_dac2",
1591 "soc_has_psram",
1592 "soc_has_sw_interrupt",
1593 "soc_has_ulp_riscv_core",
1594 "pdma",
1595 "phy",
1596 "psram",
1597 "psram_dma",
1598 "ulp_riscv_core",
1599 "soc_has_copy_dma",
1600 "soc_has_crypto_dma",
1601 "rom_crc_le",
1602 "rom_md5_bsd",
1603 "pm_support_ext0_wakeup",
1604 "pm_support_ext1_wakeup",
1605 "pm_support_touch_sensor_wakeup",
1606 "pm_support_wifi_wakeup",
1607 "uart_support_wakeup_int",
1608 "ulp_supported",
1609 "riscv_coproc_supported",
1610 "adc",
1611 "aes",
1612 "dac",
1613 "dma",
1614 "gpio",
1615 "hmac",
1616 "i2c_master",
1617 "i2s",
1618 "interrupts",
1619 "io_mux",
1620 "ledc",
1621 "pcnt",
1622 "psram",
1623 "rmt",
1624 "rng",
1625 "rsa",
1626 "sleep",
1627 "sha",
1628 "spi_master",
1629 "spi_slave",
1630 "systimer",
1631 "temp_sensor",
1632 "timergroup",
1633 "twai",
1634 "uart",
1635 "ulp_fsm",
1636 "ulp_riscv",
1637 "usb_otg",
1638 "wifi",
1639 "adc_adc1",
1640 "adc_adc2",
1641 "dac_dac1",
1642 "dac_dac2",
1643 "i2c_master_i2c0",
1644 "i2c_master_i2c1",
1645 "spi_master_spi2",
1646 "spi_master_spi3",
1647 "spi_slave_spi2",
1648 "spi_slave_spi3",
1649 "timergroup_timg0",
1650 "timergroup_timg1",
1651 "uart_uart0",
1652 "uart_uart1",
1653 "gpio_has_bank_1",
1654 "gpio_gpio_function=\"1\"",
1655 "gpio_constant_0_input=\"60\"",
1656 "gpio_constant_1_input=\"56\"",
1657 "gpio_func_in_sel_offset=\"0\"",
1658 "gpio_input_signal_max=\"242\"",
1659 "gpio_output_signal_max=\"256\"",
1660 "i2c_master_has_bus_timeout_enable",
1661 "i2c_master_separate_filter_config_registers",
1662 "i2c_master_has_arbitration_en",
1663 "i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
1664 "i2c_master_max_bus_timeout=\"16777215\"",
1665 "i2c_master_ll_intr_mask=\"131071\"",
1666 "i2c_master_fifo_size=\"32\"",
1667 "interrupts_status_registers=\"3\"",
1668 "rmt_ram_start=\"1061250048\"",
1669 "rmt_channel_ram_size=\"64\"",
1670 "spi_master_has_octal",
1671 "timergroup_timg_has_timer1",
1672 "has_dram_region",
1673 ],
1674 cfgs: &[
1675 "cargo:rustc-cfg=esp32s2",
1676 "cargo:rustc-cfg=xtensa",
1677 "cargo:rustc-cfg=single_core",
1678 "cargo:rustc-cfg=soc_has_aes",
1679 "cargo:rustc-cfg=soc_has_apb_saradc",
1680 "cargo:rustc-cfg=soc_has_dedicated_gpio",
1681 "cargo:rustc-cfg=soc_has_ds",
1682 "cargo:rustc-cfg=soc_has_efuse",
1683 "cargo:rustc-cfg=soc_has_extmem",
1684 "cargo:rustc-cfg=soc_has_fe",
1685 "cargo:rustc-cfg=soc_has_fe2",
1686 "cargo:rustc-cfg=soc_has_gpio",
1687 "cargo:rustc-cfg=soc_has_gpio_sd",
1688 "cargo:rustc-cfg=soc_has_hmac",
1689 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
1690 "cargo:rustc-cfg=soc_has_i2c0",
1691 "cargo:rustc-cfg=soc_has_i2c1",
1692 "cargo:rustc-cfg=soc_has_i2s0",
1693 "cargo:rustc-cfg=soc_has_interrupt_core0",
1694 "cargo:rustc-cfg=soc_has_io_mux",
1695 "cargo:rustc-cfg=soc_has_ledc",
1696 "cargo:rustc-cfg=soc_has_nrx",
1697 "cargo:rustc-cfg=soc_has_pcnt",
1698 "cargo:rustc-cfg=soc_has_pms",
1699 "cargo:rustc-cfg=soc_has_rmt",
1700 "cargo:rustc-cfg=soc_has_rng",
1701 "cargo:rustc-cfg=soc_has_rsa",
1702 "cargo:rustc-cfg=soc_has_lpwr",
1703 "cargo:rustc-cfg=soc_has_rtc_i2c",
1704 "cargo:rustc-cfg=soc_has_rtc_io",
1705 "cargo:rustc-cfg=soc_has_sens",
1706 "cargo:rustc-cfg=soc_has_sha",
1707 "cargo:rustc-cfg=soc_has_spi0",
1708 "cargo:rustc-cfg=soc_has_spi1",
1709 "cargo:rustc-cfg=soc_has_spi2",
1710 "cargo:rustc-cfg=soc_has_spi3",
1711 "cargo:rustc-cfg=soc_has_syscon",
1712 "cargo:rustc-cfg=soc_has_system",
1713 "cargo:rustc-cfg=soc_has_systimer",
1714 "cargo:rustc-cfg=soc_has_timg0",
1715 "cargo:rustc-cfg=soc_has_timg1",
1716 "cargo:rustc-cfg=soc_has_twai0",
1717 "cargo:rustc-cfg=soc_has_uart0",
1718 "cargo:rustc-cfg=soc_has_uart1",
1719 "cargo:rustc-cfg=soc_has_uhci0",
1720 "cargo:rustc-cfg=soc_has_usb0",
1721 "cargo:rustc-cfg=soc_has_usb_wrap",
1722 "cargo:rustc-cfg=soc_has_xts_aes",
1723 "cargo:rustc-cfg=soc_has_wifi",
1724 "cargo:rustc-cfg=soc_has_dma_spi2",
1725 "cargo:rustc-cfg=soc_has_dma_spi3",
1726 "cargo:rustc-cfg=soc_has_dma_i2s0",
1727 "cargo:rustc-cfg=soc_has_dma_crypto",
1728 "cargo:rustc-cfg=soc_has_dma_copy",
1729 "cargo:rustc-cfg=soc_has_adc1",
1730 "cargo:rustc-cfg=soc_has_adc2",
1731 "cargo:rustc-cfg=soc_has_dac1",
1732 "cargo:rustc-cfg=soc_has_dac2",
1733 "cargo:rustc-cfg=soc_has_psram",
1734 "cargo:rustc-cfg=soc_has_sw_interrupt",
1735 "cargo:rustc-cfg=soc_has_ulp_riscv_core",
1736 "cargo:rustc-cfg=pdma",
1737 "cargo:rustc-cfg=phy",
1738 "cargo:rustc-cfg=psram",
1739 "cargo:rustc-cfg=psram_dma",
1740 "cargo:rustc-cfg=ulp_riscv_core",
1741 "cargo:rustc-cfg=soc_has_copy_dma",
1742 "cargo:rustc-cfg=soc_has_crypto_dma",
1743 "cargo:rustc-cfg=rom_crc_le",
1744 "cargo:rustc-cfg=rom_md5_bsd",
1745 "cargo:rustc-cfg=pm_support_ext0_wakeup",
1746 "cargo:rustc-cfg=pm_support_ext1_wakeup",
1747 "cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
1748 "cargo:rustc-cfg=pm_support_wifi_wakeup",
1749 "cargo:rustc-cfg=uart_support_wakeup_int",
1750 "cargo:rustc-cfg=ulp_supported",
1751 "cargo:rustc-cfg=riscv_coproc_supported",
1752 "cargo:rustc-cfg=adc",
1753 "cargo:rustc-cfg=aes",
1754 "cargo:rustc-cfg=dac",
1755 "cargo:rustc-cfg=dma",
1756 "cargo:rustc-cfg=gpio",
1757 "cargo:rustc-cfg=hmac",
1758 "cargo:rustc-cfg=i2c_master",
1759 "cargo:rustc-cfg=i2s",
1760 "cargo:rustc-cfg=interrupts",
1761 "cargo:rustc-cfg=io_mux",
1762 "cargo:rustc-cfg=ledc",
1763 "cargo:rustc-cfg=pcnt",
1764 "cargo:rustc-cfg=psram",
1765 "cargo:rustc-cfg=rmt",
1766 "cargo:rustc-cfg=rng",
1767 "cargo:rustc-cfg=rsa",
1768 "cargo:rustc-cfg=sleep",
1769 "cargo:rustc-cfg=sha",
1770 "cargo:rustc-cfg=spi_master",
1771 "cargo:rustc-cfg=spi_slave",
1772 "cargo:rustc-cfg=systimer",
1773 "cargo:rustc-cfg=temp_sensor",
1774 "cargo:rustc-cfg=timergroup",
1775 "cargo:rustc-cfg=twai",
1776 "cargo:rustc-cfg=uart",
1777 "cargo:rustc-cfg=ulp_fsm",
1778 "cargo:rustc-cfg=ulp_riscv",
1779 "cargo:rustc-cfg=usb_otg",
1780 "cargo:rustc-cfg=wifi",
1781 "cargo:rustc-cfg=adc_adc1",
1782 "cargo:rustc-cfg=adc_adc2",
1783 "cargo:rustc-cfg=dac_dac1",
1784 "cargo:rustc-cfg=dac_dac2",
1785 "cargo:rustc-cfg=i2c_master_i2c0",
1786 "cargo:rustc-cfg=i2c_master_i2c1",
1787 "cargo:rustc-cfg=spi_master_spi2",
1788 "cargo:rustc-cfg=spi_master_spi3",
1789 "cargo:rustc-cfg=spi_slave_spi2",
1790 "cargo:rustc-cfg=spi_slave_spi3",
1791 "cargo:rustc-cfg=timergroup_timg0",
1792 "cargo:rustc-cfg=timergroup_timg1",
1793 "cargo:rustc-cfg=uart_uart0",
1794 "cargo:rustc-cfg=uart_uart1",
1795 "cargo:rustc-cfg=gpio_has_bank_1",
1796 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
1797 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
1798 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
1799 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
1800 "cargo:rustc-cfg=gpio_input_signal_max=\"242\"",
1801 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
1802 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
1803 "cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
1804 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
1805 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
1806 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"16777215\"",
1807 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"131071\"",
1808 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
1809 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
1810 "cargo:rustc-cfg=rmt_ram_start=\"1061250048\"",
1811 "cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
1812 "cargo:rustc-cfg=spi_master_has_octal",
1813 "cargo:rustc-cfg=timergroup_timg_has_timer1",
1814 "cargo:rustc-cfg=has_dram_region",
1815 ],
1816 },
1817 Self::Esp32s3 => Config {
1818 architecture: "xtensa",
1819 target: "xtensa-esp32s3-none-elf",
1820 symbols: &[
1821 "esp32s3",
1822 "xtensa",
1823 "multi_core",
1824 "soc_has_aes",
1825 "soc_has_apb_ctrl",
1826 "soc_has_apb_saradc",
1827 "soc_has_assist_debug",
1828 "soc_has_dma",
1829 "soc_has_ds",
1830 "soc_has_efuse",
1831 "soc_has_extmem",
1832 "soc_has_gpio",
1833 "soc_has_gpio_sd",
1834 "soc_has_hmac",
1835 "soc_has_i2c0",
1836 "soc_has_i2c1",
1837 "soc_has_i2s0",
1838 "soc_has_i2s1",
1839 "soc_has_interrupt_core0",
1840 "soc_has_interrupt_core1",
1841 "soc_has_io_mux",
1842 "soc_has_lcd_cam",
1843 "soc_has_ledc",
1844 "soc_has_lpwr",
1845 "soc_has_mcpwm0",
1846 "soc_has_mcpwm1",
1847 "soc_has_pcnt",
1848 "soc_has_peri_backup",
1849 "soc_has_rmt",
1850 "soc_has_rng",
1851 "soc_has_rsa",
1852 "soc_has_rtc_cntl",
1853 "soc_has_rtc_i2c",
1854 "soc_has_rtc_io",
1855 "soc_has_sdhost",
1856 "soc_has_sens",
1857 "soc_has_sensitive",
1858 "soc_has_sha",
1859 "soc_has_spi0",
1860 "soc_has_spi1",
1861 "soc_has_spi2",
1862 "soc_has_spi3",
1863 "soc_has_system",
1864 "soc_has_systimer",
1865 "soc_has_timg0",
1866 "soc_has_timg1",
1867 "soc_has_twai0",
1868 "soc_has_uart0",
1869 "soc_has_uart1",
1870 "soc_has_uart2",
1871 "soc_has_uhci0",
1872 "soc_has_uhci1",
1873 "soc_has_usb0",
1874 "soc_has_usb_device",
1875 "soc_has_usb_wrap",
1876 "soc_has_wcl",
1877 "soc_has_xts_aes",
1878 "soc_has_dma_ch0",
1879 "soc_has_dma_ch1",
1880 "soc_has_dma_ch2",
1881 "soc_has_dma_ch3",
1882 "soc_has_dma_ch4",
1883 "soc_has_adc1",
1884 "soc_has_adc2",
1885 "soc_has_bt",
1886 "soc_has_cpu_ctrl",
1887 "soc_has_psram",
1888 "soc_has_sw_interrupt",
1889 "soc_has_ulp_riscv_core",
1890 "soc_has_wifi",
1891 "gdma",
1892 "phy",
1893 "psram",
1894 "psram_dma",
1895 "octal_psram",
1896 "ulp_riscv_core",
1897 "rom_crc_le",
1898 "rom_crc_be",
1899 "rom_md5_bsd",
1900 "pm_support_ext0_wakeup",
1901 "pm_support_ext1_wakeup",
1902 "pm_support_touch_sensor_wakeup",
1903 "pm_support_wifi_wakeup",
1904 "pm_support_bt_wakeup",
1905 "uart_support_wakeup_int",
1906 "ulp_supported",
1907 "riscv_coproc_supported",
1908 "adc",
1909 "aes",
1910 "assist_debug",
1911 "dma",
1912 "gpio",
1913 "hmac",
1914 "i2c_master",
1915 "i2s",
1916 "interrupts",
1917 "io_mux",
1918 "camera",
1919 "rgb_display",
1920 "ledc",
1921 "mcpwm",
1922 "pcnt",
1923 "psram",
1924 "rmt",
1925 "rng",
1926 "rsa",
1927 "sd_host",
1928 "sleep",
1929 "sha",
1930 "spi_master",
1931 "spi_slave",
1932 "systimer",
1933 "temp_sensor",
1934 "timergroup",
1935 "twai",
1936 "uart",
1937 "ulp_fsm",
1938 "ulp_riscv",
1939 "usb_otg",
1940 "usb_serial_jtag",
1941 "wifi",
1942 "bt",
1943 "adc_adc1",
1944 "adc_adc2",
1945 "i2c_master_i2c0",
1946 "i2c_master_i2c1",
1947 "spi_master_spi2",
1948 "spi_master_spi3",
1949 "spi_slave_spi2",
1950 "spi_slave_spi3",
1951 "timergroup_timg0",
1952 "timergroup_timg1",
1953 "uart_uart0",
1954 "uart_uart1",
1955 "uart_uart2",
1956 "assist_debug_has_region_monitor",
1957 "gpio_has_bank_1",
1958 "gpio_gpio_function=\"1\"",
1959 "gpio_constant_0_input=\"60\"",
1960 "gpio_constant_1_input=\"56\"",
1961 "gpio_func_in_sel_offset=\"0\"",
1962 "gpio_input_signal_max=\"255\"",
1963 "gpio_output_signal_max=\"256\"",
1964 "i2c_master_has_fsm_timeouts",
1965 "i2c_master_has_hw_bus_clear",
1966 "i2c_master_has_bus_timeout_enable",
1967 "i2c_master_can_estimate_nack_reason",
1968 "i2c_master_has_conf_update",
1969 "i2c_master_has_arbitration_en",
1970 "i2c_master_has_tx_fifo_watermark",
1971 "i2c_master_bus_timeout_is_exponential",
1972 "i2c_master_max_bus_timeout=\"31\"",
1973 "i2c_master_ll_intr_mask=\"262143\"",
1974 "i2c_master_fifo_size=\"32\"",
1975 "interrupts_status_registers=\"4\"",
1976 "rmt_ram_start=\"1610704896\"",
1977 "rmt_channel_ram_size=\"48\"",
1978 "spi_master_has_octal",
1979 "timergroup_timg_has_timer1",
1980 "has_dram_region",
1981 ],
1982 cfgs: &[
1983 "cargo:rustc-cfg=esp32s3",
1984 "cargo:rustc-cfg=xtensa",
1985 "cargo:rustc-cfg=multi_core",
1986 "cargo:rustc-cfg=soc_has_aes",
1987 "cargo:rustc-cfg=soc_has_apb_ctrl",
1988 "cargo:rustc-cfg=soc_has_apb_saradc",
1989 "cargo:rustc-cfg=soc_has_assist_debug",
1990 "cargo:rustc-cfg=soc_has_dma",
1991 "cargo:rustc-cfg=soc_has_ds",
1992 "cargo:rustc-cfg=soc_has_efuse",
1993 "cargo:rustc-cfg=soc_has_extmem",
1994 "cargo:rustc-cfg=soc_has_gpio",
1995 "cargo:rustc-cfg=soc_has_gpio_sd",
1996 "cargo:rustc-cfg=soc_has_hmac",
1997 "cargo:rustc-cfg=soc_has_i2c0",
1998 "cargo:rustc-cfg=soc_has_i2c1",
1999 "cargo:rustc-cfg=soc_has_i2s0",
2000 "cargo:rustc-cfg=soc_has_i2s1",
2001 "cargo:rustc-cfg=soc_has_interrupt_core0",
2002 "cargo:rustc-cfg=soc_has_interrupt_core1",
2003 "cargo:rustc-cfg=soc_has_io_mux",
2004 "cargo:rustc-cfg=soc_has_lcd_cam",
2005 "cargo:rustc-cfg=soc_has_ledc",
2006 "cargo:rustc-cfg=soc_has_lpwr",
2007 "cargo:rustc-cfg=soc_has_mcpwm0",
2008 "cargo:rustc-cfg=soc_has_mcpwm1",
2009 "cargo:rustc-cfg=soc_has_pcnt",
2010 "cargo:rustc-cfg=soc_has_peri_backup",
2011 "cargo:rustc-cfg=soc_has_rmt",
2012 "cargo:rustc-cfg=soc_has_rng",
2013 "cargo:rustc-cfg=soc_has_rsa",
2014 "cargo:rustc-cfg=soc_has_rtc_cntl",
2015 "cargo:rustc-cfg=soc_has_rtc_i2c",
2016 "cargo:rustc-cfg=soc_has_rtc_io",
2017 "cargo:rustc-cfg=soc_has_sdhost",
2018 "cargo:rustc-cfg=soc_has_sens",
2019 "cargo:rustc-cfg=soc_has_sensitive",
2020 "cargo:rustc-cfg=soc_has_sha",
2021 "cargo:rustc-cfg=soc_has_spi0",
2022 "cargo:rustc-cfg=soc_has_spi1",
2023 "cargo:rustc-cfg=soc_has_spi2",
2024 "cargo:rustc-cfg=soc_has_spi3",
2025 "cargo:rustc-cfg=soc_has_system",
2026 "cargo:rustc-cfg=soc_has_systimer",
2027 "cargo:rustc-cfg=soc_has_timg0",
2028 "cargo:rustc-cfg=soc_has_timg1",
2029 "cargo:rustc-cfg=soc_has_twai0",
2030 "cargo:rustc-cfg=soc_has_uart0",
2031 "cargo:rustc-cfg=soc_has_uart1",
2032 "cargo:rustc-cfg=soc_has_uart2",
2033 "cargo:rustc-cfg=soc_has_uhci0",
2034 "cargo:rustc-cfg=soc_has_uhci1",
2035 "cargo:rustc-cfg=soc_has_usb0",
2036 "cargo:rustc-cfg=soc_has_usb_device",
2037 "cargo:rustc-cfg=soc_has_usb_wrap",
2038 "cargo:rustc-cfg=soc_has_wcl",
2039 "cargo:rustc-cfg=soc_has_xts_aes",
2040 "cargo:rustc-cfg=soc_has_dma_ch0",
2041 "cargo:rustc-cfg=soc_has_dma_ch1",
2042 "cargo:rustc-cfg=soc_has_dma_ch2",
2043 "cargo:rustc-cfg=soc_has_dma_ch3",
2044 "cargo:rustc-cfg=soc_has_dma_ch4",
2045 "cargo:rustc-cfg=soc_has_adc1",
2046 "cargo:rustc-cfg=soc_has_adc2",
2047 "cargo:rustc-cfg=soc_has_bt",
2048 "cargo:rustc-cfg=soc_has_cpu_ctrl",
2049 "cargo:rustc-cfg=soc_has_psram",
2050 "cargo:rustc-cfg=soc_has_sw_interrupt",
2051 "cargo:rustc-cfg=soc_has_ulp_riscv_core",
2052 "cargo:rustc-cfg=soc_has_wifi",
2053 "cargo:rustc-cfg=gdma",
2054 "cargo:rustc-cfg=phy",
2055 "cargo:rustc-cfg=psram",
2056 "cargo:rustc-cfg=psram_dma",
2057 "cargo:rustc-cfg=octal_psram",
2058 "cargo:rustc-cfg=ulp_riscv_core",
2059 "cargo:rustc-cfg=rom_crc_le",
2060 "cargo:rustc-cfg=rom_crc_be",
2061 "cargo:rustc-cfg=rom_md5_bsd",
2062 "cargo:rustc-cfg=pm_support_ext0_wakeup",
2063 "cargo:rustc-cfg=pm_support_ext1_wakeup",
2064 "cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
2065 "cargo:rustc-cfg=pm_support_wifi_wakeup",
2066 "cargo:rustc-cfg=pm_support_bt_wakeup",
2067 "cargo:rustc-cfg=uart_support_wakeup_int",
2068 "cargo:rustc-cfg=ulp_supported",
2069 "cargo:rustc-cfg=riscv_coproc_supported",
2070 "cargo:rustc-cfg=adc",
2071 "cargo:rustc-cfg=aes",
2072 "cargo:rustc-cfg=assist_debug",
2073 "cargo:rustc-cfg=dma",
2074 "cargo:rustc-cfg=gpio",
2075 "cargo:rustc-cfg=hmac",
2076 "cargo:rustc-cfg=i2c_master",
2077 "cargo:rustc-cfg=i2s",
2078 "cargo:rustc-cfg=interrupts",
2079 "cargo:rustc-cfg=io_mux",
2080 "cargo:rustc-cfg=camera",
2081 "cargo:rustc-cfg=rgb_display",
2082 "cargo:rustc-cfg=ledc",
2083 "cargo:rustc-cfg=mcpwm",
2084 "cargo:rustc-cfg=pcnt",
2085 "cargo:rustc-cfg=psram",
2086 "cargo:rustc-cfg=rmt",
2087 "cargo:rustc-cfg=rng",
2088 "cargo:rustc-cfg=rsa",
2089 "cargo:rustc-cfg=sd_host",
2090 "cargo:rustc-cfg=sleep",
2091 "cargo:rustc-cfg=sha",
2092 "cargo:rustc-cfg=spi_master",
2093 "cargo:rustc-cfg=spi_slave",
2094 "cargo:rustc-cfg=systimer",
2095 "cargo:rustc-cfg=temp_sensor",
2096 "cargo:rustc-cfg=timergroup",
2097 "cargo:rustc-cfg=twai",
2098 "cargo:rustc-cfg=uart",
2099 "cargo:rustc-cfg=ulp_fsm",
2100 "cargo:rustc-cfg=ulp_riscv",
2101 "cargo:rustc-cfg=usb_otg",
2102 "cargo:rustc-cfg=usb_serial_jtag",
2103 "cargo:rustc-cfg=wifi",
2104 "cargo:rustc-cfg=bt",
2105 "cargo:rustc-cfg=adc_adc1",
2106 "cargo:rustc-cfg=adc_adc2",
2107 "cargo:rustc-cfg=i2c_master_i2c0",
2108 "cargo:rustc-cfg=i2c_master_i2c1",
2109 "cargo:rustc-cfg=spi_master_spi2",
2110 "cargo:rustc-cfg=spi_master_spi3",
2111 "cargo:rustc-cfg=spi_slave_spi2",
2112 "cargo:rustc-cfg=spi_slave_spi3",
2113 "cargo:rustc-cfg=timergroup_timg0",
2114 "cargo:rustc-cfg=timergroup_timg1",
2115 "cargo:rustc-cfg=uart_uart0",
2116 "cargo:rustc-cfg=uart_uart1",
2117 "cargo:rustc-cfg=uart_uart2",
2118 "cargo:rustc-cfg=assist_debug_has_region_monitor",
2119 "cargo:rustc-cfg=gpio_has_bank_1",
2120 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
2121 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
2122 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
2123 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
2124 "cargo:rustc-cfg=gpio_input_signal_max=\"255\"",
2125 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
2126 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
2127 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
2128 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
2129 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
2130 "cargo:rustc-cfg=i2c_master_has_conf_update",
2131 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
2132 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
2133 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
2134 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
2135 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
2136 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
2137 "cargo:rustc-cfg=interrupts_status_registers=\"4\"",
2138 "cargo:rustc-cfg=rmt_ram_start=\"1610704896\"",
2139 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
2140 "cargo:rustc-cfg=spi_master_has_octal",
2141 "cargo:rustc-cfg=timergroup_timg_has_timer1",
2142 "cargo:rustc-cfg=has_dram_region",
2143 ],
2144 },
2145 }
2146 }
2147}
2148struct Config {
2149 architecture: &'static str,
2150 target: &'static str,
2151 symbols: &'static [&'static str],
2152 cfgs: &'static [&'static str],
2153}
2154impl Config {
2155 fn define_cfgs(&self) {
2156 println!("cargo:rustc-check-cfg=cfg(not_really_docsrs)");
2157 println!("cargo:rustc-check-cfg=cfg(esp32)");
2158 println!("cargo:rustc-check-cfg=cfg(xtensa)");
2159 println!("cargo:rustc-check-cfg=cfg(multi_core)");
2160 println!("cargo:rustc-check-cfg=cfg(soc_has_aes)");
2161 println!("cargo:rustc-check-cfg=cfg(soc_has_apb_ctrl)");
2162 println!("cargo:rustc-check-cfg=cfg(soc_has_bb)");
2163 println!("cargo:rustc-check-cfg=cfg(soc_has_dport)");
2164 println!("cargo:rustc-check-cfg=cfg(soc_has_system)");
2165 println!("cargo:rustc-check-cfg=cfg(soc_has_efuse)");
2166 println!("cargo:rustc-check-cfg=cfg(soc_has_emac_dma)");
2167 println!("cargo:rustc-check-cfg=cfg(soc_has_emac_ext)");
2168 println!("cargo:rustc-check-cfg=cfg(soc_has_emac_mac)");
2169 println!("cargo:rustc-check-cfg=cfg(soc_has_flash_encryption)");
2170 println!("cargo:rustc-check-cfg=cfg(soc_has_frc_timer)");
2171 println!("cargo:rustc-check-cfg=cfg(soc_has_gpio)");
2172 println!("cargo:rustc-check-cfg=cfg(soc_has_gpio_sd)");
2173 println!("cargo:rustc-check-cfg=cfg(soc_has_hinf)");
2174 println!("cargo:rustc-check-cfg=cfg(soc_has_i2c0)");
2175 println!("cargo:rustc-check-cfg=cfg(soc_has_i2c1)");
2176 println!("cargo:rustc-check-cfg=cfg(soc_has_i2s0)");
2177 println!("cargo:rustc-check-cfg=cfg(soc_has_i2s1)");
2178 println!("cargo:rustc-check-cfg=cfg(soc_has_io_mux)");
2179 println!("cargo:rustc-check-cfg=cfg(soc_has_ledc)");
2180 println!("cargo:rustc-check-cfg=cfg(soc_has_mcpwm0)");
2181 println!("cargo:rustc-check-cfg=cfg(soc_has_mcpwm1)");
2182 println!("cargo:rustc-check-cfg=cfg(soc_has_nrx)");
2183 println!("cargo:rustc-check-cfg=cfg(soc_has_pcnt)");
2184 println!("cargo:rustc-check-cfg=cfg(soc_has_rmt)");
2185 println!("cargo:rustc-check-cfg=cfg(soc_has_rng)");
2186 println!("cargo:rustc-check-cfg=cfg(soc_has_rsa)");
2187 println!("cargo:rustc-check-cfg=cfg(soc_has_lpwr)");
2188 println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_i2c)");
2189 println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_io)");
2190 println!("cargo:rustc-check-cfg=cfg(soc_has_sdhost)");
2191 println!("cargo:rustc-check-cfg=cfg(soc_has_sens)");
2192 println!("cargo:rustc-check-cfg=cfg(soc_has_sha)");
2193 println!("cargo:rustc-check-cfg=cfg(soc_has_slc)");
2194 println!("cargo:rustc-check-cfg=cfg(soc_has_slchost)");
2195 println!("cargo:rustc-check-cfg=cfg(soc_has_spi0)");
2196 println!("cargo:rustc-check-cfg=cfg(soc_has_spi1)");
2197 println!("cargo:rustc-check-cfg=cfg(soc_has_spi2)");
2198 println!("cargo:rustc-check-cfg=cfg(soc_has_spi3)");
2199 println!("cargo:rustc-check-cfg=cfg(soc_has_timg0)");
2200 println!("cargo:rustc-check-cfg=cfg(soc_has_timg1)");
2201 println!("cargo:rustc-check-cfg=cfg(soc_has_twai0)");
2202 println!("cargo:rustc-check-cfg=cfg(soc_has_uart0)");
2203 println!("cargo:rustc-check-cfg=cfg(soc_has_uart1)");
2204 println!("cargo:rustc-check-cfg=cfg(soc_has_uart2)");
2205 println!("cargo:rustc-check-cfg=cfg(soc_has_uhci0)");
2206 println!("cargo:rustc-check-cfg=cfg(soc_has_uhci1)");
2207 println!("cargo:rustc-check-cfg=cfg(soc_has_wifi)");
2208 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_spi2)");
2209 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_spi3)");
2210 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_i2s0)");
2211 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_i2s1)");
2212 println!("cargo:rustc-check-cfg=cfg(soc_has_adc1)");
2213 println!("cargo:rustc-check-cfg=cfg(soc_has_adc2)");
2214 println!("cargo:rustc-check-cfg=cfg(soc_has_bt)");
2215 println!("cargo:rustc-check-cfg=cfg(soc_has_cpu_ctrl)");
2216 println!("cargo:rustc-check-cfg=cfg(soc_has_dac1)");
2217 println!("cargo:rustc-check-cfg=cfg(soc_has_dac2)");
2218 println!("cargo:rustc-check-cfg=cfg(soc_has_psram)");
2219 println!("cargo:rustc-check-cfg=cfg(soc_has_sw_interrupt)");
2220 println!("cargo:rustc-check-cfg=cfg(soc_has_touch)");
2221 println!("cargo:rustc-check-cfg=cfg(pdma)");
2222 println!("cargo:rustc-check-cfg=cfg(phy)");
2223 println!("cargo:rustc-check-cfg=cfg(psram)");
2224 println!("cargo:rustc-check-cfg=cfg(touch)");
2225 println!("cargo:rustc-check-cfg=cfg(rom_crc_le)");
2226 println!("cargo:rustc-check-cfg=cfg(rom_crc_be)");
2227 println!("cargo:rustc-check-cfg=cfg(rom_md5_bsd)");
2228 println!("cargo:rustc-check-cfg=cfg(pm_support_ext0_wakeup)");
2229 println!("cargo:rustc-check-cfg=cfg(pm_support_ext1_wakeup)");
2230 println!("cargo:rustc-check-cfg=cfg(pm_support_touch_sensor_wakeup)");
2231 println!("cargo:rustc-check-cfg=cfg(ulp_supported)");
2232 println!("cargo:rustc-check-cfg=cfg(adc)");
2233 println!("cargo:rustc-check-cfg=cfg(aes)");
2234 println!("cargo:rustc-check-cfg=cfg(dac)");
2235 println!("cargo:rustc-check-cfg=cfg(dma)");
2236 println!("cargo:rustc-check-cfg=cfg(gpio)");
2237 println!("cargo:rustc-check-cfg=cfg(i2c_master)");
2238 println!("cargo:rustc-check-cfg=cfg(i2s)");
2239 println!("cargo:rustc-check-cfg=cfg(interrupts)");
2240 println!("cargo:rustc-check-cfg=cfg(io_mux)");
2241 println!("cargo:rustc-check-cfg=cfg(rgb_display)");
2242 println!("cargo:rustc-check-cfg=cfg(ledc)");
2243 println!("cargo:rustc-check-cfg=cfg(mcpwm)");
2244 println!("cargo:rustc-check-cfg=cfg(pcnt)");
2245 println!("cargo:rustc-check-cfg=cfg(rmt)");
2246 println!("cargo:rustc-check-cfg=cfg(rng)");
2247 println!("cargo:rustc-check-cfg=cfg(rsa)");
2248 println!("cargo:rustc-check-cfg=cfg(sd_host)");
2249 println!("cargo:rustc-check-cfg=cfg(sd_slave)");
2250 println!("cargo:rustc-check-cfg=cfg(sleep)");
2251 println!("cargo:rustc-check-cfg=cfg(sha)");
2252 println!("cargo:rustc-check-cfg=cfg(spi_master)");
2253 println!("cargo:rustc-check-cfg=cfg(spi_slave)");
2254 println!("cargo:rustc-check-cfg=cfg(temp_sensor)");
2255 println!("cargo:rustc-check-cfg=cfg(timergroup)");
2256 println!("cargo:rustc-check-cfg=cfg(twai)");
2257 println!("cargo:rustc-check-cfg=cfg(uart)");
2258 println!("cargo:rustc-check-cfg=cfg(ulp_fsm)");
2259 println!("cargo:rustc-check-cfg=cfg(wifi)");
2260 println!("cargo:rustc-check-cfg=cfg(bt)");
2261 println!("cargo:rustc-check-cfg=cfg(adc_adc1)");
2262 println!("cargo:rustc-check-cfg=cfg(adc_adc2)");
2263 println!("cargo:rustc-check-cfg=cfg(dac_dac1)");
2264 println!("cargo:rustc-check-cfg=cfg(dac_dac2)");
2265 println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c0)");
2266 println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c1)");
2267 println!("cargo:rustc-check-cfg=cfg(spi_master_spi2)");
2268 println!("cargo:rustc-check-cfg=cfg(spi_master_spi3)");
2269 println!("cargo:rustc-check-cfg=cfg(spi_slave_spi2)");
2270 println!("cargo:rustc-check-cfg=cfg(spi_slave_spi3)");
2271 println!("cargo:rustc-check-cfg=cfg(timergroup_timg0)");
2272 println!("cargo:rustc-check-cfg=cfg(timergroup_timg1)");
2273 println!("cargo:rustc-check-cfg=cfg(uart_uart0)");
2274 println!("cargo:rustc-check-cfg=cfg(uart_uart1)");
2275 println!("cargo:rustc-check-cfg=cfg(uart_uart2)");
2276 println!("cargo:rustc-check-cfg=cfg(gpio_has_bank_1)");
2277 println!("cargo:rustc-check-cfg=cfg(gpio_remap_iomux_pin_registers)");
2278 println!("cargo:rustc-check-cfg=cfg(i2c_master_separate_filter_config_registers)");
2279 println!("cargo:rustc-check-cfg=cfg(timergroup_timg_has_timer1)");
2280 println!("cargo:rustc-check-cfg=cfg(esp32c2)");
2281 println!("cargo:rustc-check-cfg=cfg(riscv)");
2282 println!("cargo:rustc-check-cfg=cfg(single_core)");
2283 println!("cargo:rustc-check-cfg=cfg(soc_has_apb_saradc)");
2284 println!("cargo:rustc-check-cfg=cfg(soc_has_assist_debug)");
2285 println!("cargo:rustc-check-cfg=cfg(soc_has_dma)");
2286 println!("cargo:rustc-check-cfg=cfg(soc_has_ecc)");
2287 println!("cargo:rustc-check-cfg=cfg(soc_has_extmem)");
2288 println!("cargo:rustc-check-cfg=cfg(soc_has_i2c_ana_mst)");
2289 println!("cargo:rustc-check-cfg=cfg(soc_has_interrupt_core0)");
2290 println!("cargo:rustc-check-cfg=cfg(soc_has_modem_clkrst)");
2291 println!("cargo:rustc-check-cfg=cfg(soc_has_sensitive)");
2292 println!("cargo:rustc-check-cfg=cfg(soc_has_systimer)");
2293 println!("cargo:rustc-check-cfg=cfg(soc_has_xts_aes)");
2294 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch0)");
2295 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem1)");
2296 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem2)");
2297 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem3)");
2298 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem4)");
2299 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem5)");
2300 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem6)");
2301 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem7)");
2302 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem8)");
2303 println!("cargo:rustc-check-cfg=cfg(gdma)");
2304 println!("cargo:rustc-check-cfg=cfg(rom_md5_mbedtls)");
2305 println!("cargo:rustc-check-cfg=cfg(pm_support_wifi_wakeup)");
2306 println!("cargo:rustc-check-cfg=cfg(pm_support_bt_wakeup)");
2307 println!("cargo:rustc-check-cfg=cfg(uart_support_wakeup_int)");
2308 println!("cargo:rustc-check-cfg=cfg(gpio_support_deepsleep_wakeup)");
2309 println!("cargo:rustc-check-cfg=cfg(assist_debug)");
2310 println!("cargo:rustc-check-cfg=cfg(ecc)");
2311 println!("cargo:rustc-check-cfg=cfg(systimer)");
2312 println!("cargo:rustc-check-cfg=cfg(assist_debug_has_sp_monitor)");
2313 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_fsm_timeouts)");
2314 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_hw_bus_clear)");
2315 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_bus_timeout_enable)");
2316 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_conf_update)");
2317 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_arbitration_en)");
2318 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_tx_fifo_watermark)");
2319 println!("cargo:rustc-check-cfg=cfg(i2c_master_bus_timeout_is_exponential)");
2320 println!("cargo:rustc-check-cfg=cfg(esp32c3)");
2321 println!("cargo:rustc-check-cfg=cfg(soc_has_ds)");
2322 println!("cargo:rustc-check-cfg=cfg(soc_has_fe)");
2323 println!("cargo:rustc-check-cfg=cfg(soc_has_fe2)");
2324 println!("cargo:rustc-check-cfg=cfg(soc_has_hmac)");
2325 println!("cargo:rustc-check-cfg=cfg(soc_has_usb_device)");
2326 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch1)");
2327 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch2)");
2328 println!("cargo:rustc-check-cfg=cfg(soc_has_tsens)");
2329 println!("cargo:rustc-check-cfg=cfg(hmac)");
2330 println!("cargo:rustc-check-cfg=cfg(usb_serial_jtag)");
2331 println!("cargo:rustc-check-cfg=cfg(assist_debug_has_region_monitor)");
2332 println!("cargo:rustc-check-cfg=cfg(esp32c6)");
2333 println!("cargo:rustc-check-cfg=cfg(soc_has_atomic)");
2334 println!("cargo:rustc-check-cfg=cfg(soc_has_hp_apm)");
2335 println!("cargo:rustc-check-cfg=cfg(soc_has_hp_sys)");
2336 println!("cargo:rustc-check-cfg=cfg(soc_has_ieee802154)");
2337 println!("cargo:rustc-check-cfg=cfg(soc_has_intpri)");
2338 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_ana)");
2339 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_aon)");
2340 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_apm)");
2341 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_apm0)");
2342 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_clkrst)");
2343 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_i2c0)");
2344 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_i2c_ana_mst)");
2345 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_io)");
2346 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_peri)");
2347 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_tee)");
2348 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_timer)");
2349 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_uart)");
2350 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_wdt)");
2351 println!("cargo:rustc-check-cfg=cfg(soc_has_mem_monitor)");
2352 println!("cargo:rustc-check-cfg=cfg(soc_has_modem_lpcon)");
2353 println!("cargo:rustc-check-cfg=cfg(soc_has_modem_syscon)");
2354 println!("cargo:rustc-check-cfg=cfg(soc_has_otp_debug)");
2355 println!("cargo:rustc-check-cfg=cfg(soc_has_parl_io)");
2356 println!("cargo:rustc-check-cfg=cfg(soc_has_pau)");
2357 println!("cargo:rustc-check-cfg=cfg(soc_has_pcr)");
2358 println!("cargo:rustc-check-cfg=cfg(soc_has_plic_mx)");
2359 println!("cargo:rustc-check-cfg=cfg(soc_has_pmu)");
2360 println!("cargo:rustc-check-cfg=cfg(soc_has_etm)");
2361 println!("cargo:rustc-check-cfg=cfg(soc_has_tee)");
2362 println!("cargo:rustc-check-cfg=cfg(soc_has_trace0)");
2363 println!("cargo:rustc-check-cfg=cfg(soc_has_twai1)");
2364 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_core)");
2365 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem10)");
2366 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem11)");
2367 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem12)");
2368 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem13)");
2369 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem14)");
2370 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem15)");
2371 println!("cargo:rustc-check-cfg=cfg(plic)");
2372 println!("cargo:rustc-check-cfg=cfg(lp_core)");
2373 println!("cargo:rustc-check-cfg=cfg(pm_support_beacon_wakeup)");
2374 println!("cargo:rustc-check-cfg=cfg(etm)");
2375 println!("cargo:rustc-check-cfg=cfg(parl_io)");
2376 println!("cargo:rustc-check-cfg=cfg(ulp_riscv)");
2377 println!("cargo:rustc-check-cfg=cfg(ieee802154)");
2378 println!("cargo:rustc-check-cfg=cfg(i2c_master_can_estimate_nack_reason)");
2379 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_reliable_fsm_reset)");
2380 println!("cargo:rustc-check-cfg=cfg(wifi_has_wifi6)");
2381 println!("cargo:rustc-check-cfg=cfg(esp32h2)");
2382 println!("cargo:rustc-check-cfg=cfg(esp32s2)");
2383 println!("cargo:rustc-check-cfg=cfg(soc_has_dedicated_gpio)");
2384 println!("cargo:rustc-check-cfg=cfg(soc_has_pms)");
2385 println!("cargo:rustc-check-cfg=cfg(soc_has_syscon)");
2386 println!("cargo:rustc-check-cfg=cfg(soc_has_usb0)");
2387 println!("cargo:rustc-check-cfg=cfg(soc_has_usb_wrap)");
2388 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_crypto)");
2389 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_copy)");
2390 println!("cargo:rustc-check-cfg=cfg(soc_has_ulp_riscv_core)");
2391 println!("cargo:rustc-check-cfg=cfg(psram_dma)");
2392 println!("cargo:rustc-check-cfg=cfg(ulp_riscv_core)");
2393 println!("cargo:rustc-check-cfg=cfg(soc_has_copy_dma)");
2394 println!("cargo:rustc-check-cfg=cfg(soc_has_crypto_dma)");
2395 println!("cargo:rustc-check-cfg=cfg(riscv_coproc_supported)");
2396 println!("cargo:rustc-check-cfg=cfg(usb_otg)");
2397 println!("cargo:rustc-check-cfg=cfg(spi_master_has_octal)");
2398 println!("cargo:rustc-check-cfg=cfg(esp32s3)");
2399 println!("cargo:rustc-check-cfg=cfg(soc_has_interrupt_core1)");
2400 println!("cargo:rustc-check-cfg=cfg(soc_has_lcd_cam)");
2401 println!("cargo:rustc-check-cfg=cfg(soc_has_peri_backup)");
2402 println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_cntl)");
2403 println!("cargo:rustc-check-cfg=cfg(soc_has_wcl)");
2404 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch3)");
2405 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch4)");
2406 println!("cargo:rustc-check-cfg=cfg(octal_psram)");
2407 println!("cargo:rustc-check-cfg=cfg(camera)");
2408 println!("cargo:rustc-check-cfg=cfg(gpio_gpio_function, values(\"2\",\"1\"))");
2409 println!("cargo:rustc-check-cfg=cfg(gpio_constant_0_input, values(\"48\",\"31\",\"60\"))");
2410 println!("cargo:rustc-check-cfg=cfg(gpio_constant_1_input, values(\"56\",\"30\"))");
2411 println!("cargo:rustc-check-cfg=cfg(gpio_func_in_sel_offset, values(\"0\"))");
2412 println!(
2413 "cargo:rustc-check-cfg=cfg(gpio_input_signal_max, values(\"206\",\"100\",\"124\",\"242\",\"255\"))"
2414 );
2415 println!("cargo:rustc-check-cfg=cfg(gpio_output_signal_max, values(\"256\",\"128\"))");
2416 println!(
2417 "cargo:rustc-check-cfg=cfg(i2c_master_i2c0_data_register_ahb_address, values(\"1610690588\"))"
2418 );
2419 println!(
2420 "cargo:rustc-check-cfg=cfg(i2c_master_max_bus_timeout, values(\"1048575\",\"31\",\"16777215\"))"
2421 );
2422 println!(
2423 "cargo:rustc-check-cfg=cfg(i2c_master_ll_intr_mask, values(\"262143\",\"131071\"))"
2424 );
2425 println!("cargo:rustc-check-cfg=cfg(i2c_master_fifo_size, values(\"32\",\"16\"))");
2426 println!(
2427 "cargo:rustc-check-cfg=cfg(interrupts_status_registers, values(\"3\",\"2\",\"4\"))"
2428 );
2429 println!(
2430 "cargo:rustc-check-cfg=cfg(rmt_ram_start, values(\"1073047552\",\"1610703872\",\"1610638336\",\"1610642432\",\"1061250048\",\"1610704896\"))"
2431 );
2432 println!("cargo:rustc-check-cfg=cfg(rmt_channel_ram_size, values(\"64\",\"48\"))");
2433 for cfg in self.cfgs {
2434 println!("{cfg}");
2435 }
2436 }
2437}