1use core::ops::Range;
5extern crate alloc;
6#[cfg(docsrs)]
7macro_rules! println {
8 ($($any:tt)*) => {};
9}
10#[doc(hidden)]
11#[macro_export]
12macro_rules! __assert_features_logic {
13 ($op:tt, $limit:expr, $msg:literal, $($feature:literal),+ $(,)?) => {
14 { let enabled : Vec < & str > = [$(if cfg!(feature = $feature) { Some($feature) }
15 else { None },)+].into_iter().flatten().collect(); assert!(enabled.len() $op
16 $limit, concat!($msg,
17 ": {}.\nCurrently enabled: {}. This might be caused by enabled default features.\n"),
18 [$($feature),+].join(", "), if enabled.is_empty() { "none".to_string() } else {
19 enabled.join(", ") }); }
20 };
21}
22#[macro_export]
23macro_rules! assert_unique_features {
24 ($($f:literal),+ $(,)?) => {
25 $crate::__assert_features_logic!(<=, 1,
26 "\nAt most one of the following features must be enabled", $($f),+);
27 };
28}
29#[macro_export]
30macro_rules! assert_unique_used_features {
31 ($($f:literal),+ $(,)?) => {
32 $crate::__assert_features_logic!(==, 1,
33 "\nExactly one of the following features must be enabled", $($f),+);
34 };
35}
36#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
37#[cfg_attr(docsrs, doc(cfg(feature = "build-script")))]
38pub enum Chip {
39 Esp32,
40 Esp32c2,
41 Esp32c3,
42 Esp32c5,
43 Esp32c6,
44 Esp32c61,
45 Esp32h2,
46 Esp32p4,
47 Esp32s2,
48 Esp32s3,
49 Esp32s31,
50}
51impl core::str::FromStr for Chip {
52 type Err = alloc::string::String;
53 fn from_str(s: &str) -> Result<Self, Self::Err> {
54 match s {
55 "esp32" => Ok(Self::Esp32),
56 "esp32c2" => Ok(Self::Esp32c2),
57 "esp32c3" => Ok(Self::Esp32c3),
58 "esp32c5" => Ok(Self::Esp32c5),
59 "esp32c6" => Ok(Self::Esp32c6),
60 "esp32c61" => Ok(Self::Esp32c61),
61 "esp32h2" => Ok(Self::Esp32h2),
62 "esp32p4" => Ok(Self::Esp32p4),
63 "esp32s2" => Ok(Self::Esp32s2),
64 "esp32s3" => Ok(Self::Esp32s3),
65 "esp32s31" => Ok(Self::Esp32s31),
66 _ => Err(alloc::format!(
67 "Unknown chip {s}. Possible options: esp32, esp32c2, esp32c3, esp32c5, esp32c6, \
68 esp32c61, esp32h2, esp32p4, esp32s2, esp32s3, esp32s31"
69 )),
70 }
71 }
72}
73impl Chip {
74 pub fn from_cargo_feature() -> Result<Self, &'static str> {
78 let all_chips = [
79 ("CARGO_FEATURE_ESP32", Self::Esp32),
80 ("CARGO_FEATURE_ESP32C2", Self::Esp32c2),
81 ("CARGO_FEATURE_ESP32C3", Self::Esp32c3),
82 ("CARGO_FEATURE_ESP32C5", Self::Esp32c5),
83 ("CARGO_FEATURE_ESP32C6", Self::Esp32c6),
84 ("CARGO_FEATURE_ESP32C61", Self::Esp32c61),
85 ("CARGO_FEATURE_ESP32H2", Self::Esp32h2),
86 ("CARGO_FEATURE_ESP32P4", Self::Esp32p4),
87 ("CARGO_FEATURE_ESP32S2", Self::Esp32s2),
88 ("CARGO_FEATURE_ESP32S3", Self::Esp32s3),
89 ("CARGO_FEATURE_ESP32S31", Self::Esp32s31),
90 ];
91 let mut chip = None;
92 for (env, c) in all_chips {
93 if std::env::var(env).is_ok() {
94 if chip.is_some() {
95 return Err(
96 "Expected exactly one of the following features to be enabled: esp32, \
97 esp32c2, esp32c3, esp32c5, esp32c6, esp32c61, esp32h2, esp32p4, esp32s2, \
98 esp32s3, esp32s31",
99 );
100 }
101 chip = Some(c);
102 }
103 }
104 match chip {
105 Some(chip) => Ok(chip),
106 None => Err(
107 "Expected exactly one of the following features to be enabled: esp32, esp32c2, \
108 esp32c3, esp32c5, esp32c6, esp32c61, esp32h2, esp32p4, esp32s2, esp32s3, esp32s31",
109 ),
110 }
111 }
112 pub fn is_xtensa(self) -> bool {
114 self.config().architecture == "xtensa"
115 }
116 pub fn target(self) -> &'static str {
118 self.config().target
119 }
120 pub fn name(self) -> &'static str {
128 match self {
129 Self::Esp32 => "esp32",
130 Self::Esp32c2 => "esp32c2",
131 Self::Esp32c3 => "esp32c3",
132 Self::Esp32c5 => "esp32c5",
133 Self::Esp32c6 => "esp32c6",
134 Self::Esp32c61 => "esp32c61",
135 Self::Esp32h2 => "esp32h2",
136 Self::Esp32p4 => "esp32p4",
137 Self::Esp32s2 => "esp32s2",
138 Self::Esp32s3 => "esp32s3",
139 Self::Esp32s31 => "esp32s31",
140 }
141 }
142 pub fn contains(self, symbol: &str) -> bool {
152 self.all_symbols().contains(&symbol)
153 }
154 pub fn define_cfgs(self) {
156 self.config().define_cfgs()
157 }
158 pub fn all_symbols(&self) -> &'static [&'static str] {
166 self.config().symbols
167 }
168 pub fn memory_layout(&self) -> &'static MemoryLayout {
170 self.config().memory_layout
171 }
172 pub fn pins(&self) -> &'static [PinInfo] {
174 self.config().pins
175 }
176 pub fn iter() -> impl Iterator<Item = Chip> {
184 [
185 Self::Esp32,
186 Self::Esp32c2,
187 Self::Esp32c3,
188 Self::Esp32c5,
189 Self::Esp32c6,
190 Self::Esp32c61,
191 Self::Esp32h2,
192 Self::Esp32p4,
193 Self::Esp32s2,
194 Self::Esp32s3,
195 Self::Esp32s31,
196 ]
197 .into_iter()
198 }
199 fn config(self) -> Config {
200 match self {
201 Self::Esp32 => Config {
202 architecture: "xtensa",
203 target: "xtensa-esp32-none-elf",
204 symbols: &[
205 "esp32",
206 "xtensa",
207 "multi_core",
208 "soc_has_aes",
209 "soc_has_apb_ctrl",
210 "soc_has_bb",
211 "soc_has_dport",
212 "soc_has_system",
213 "soc_has_efuse",
214 "soc_has_eth",
215 "soc_has_emac_dma",
216 "soc_has_emac_ext",
217 "soc_has_emac_mac",
218 "soc_has_flash_encryption",
219 "soc_has_frc_timer",
220 "soc_has_gpio",
221 "soc_has_gpio_sd",
222 "soc_has_hinf",
223 "soc_has_i2c0",
224 "soc_has_i2c1",
225 "soc_has_i2s0",
226 "soc_has_i2s1",
227 "soc_has_io_mux",
228 "soc_has_ledc",
229 "soc_has_mcpwm0",
230 "soc_has_mmu_table",
231 "soc_has_mcpwm1",
232 "soc_has_nrx",
233 "soc_has_pcnt",
234 "soc_has_rmt",
235 "soc_has_rng",
236 "soc_has_rsa",
237 "soc_has_lpwr",
238 "soc_has_rtc_timer",
239 "soc_has_lp_i2c0",
240 "soc_has_rtc_io",
241 "soc_has_sdhost",
242 "soc_has_sens",
243 "soc_has_sha",
244 "soc_has_slc",
245 "soc_has_slchost",
246 "soc_has_spi0",
247 "soc_has_spi1",
248 "soc_has_spi2",
249 "soc_has_spi3",
250 "soc_has_timg0",
251 "soc_has_timg1",
252 "soc_has_twai0",
253 "soc_has_uart0",
254 "soc_has_uart1",
255 "soc_has_uart2",
256 "soc_has_uhci0",
257 "soc_has_uhci1",
258 "soc_has_wifi",
259 "soc_has_adc1",
260 "soc_has_adc2",
261 "soc_has_bt",
262 "soc_has_cpu_ctrl",
263 "soc_has_dac1",
264 "soc_has_dac2",
265 "soc_has_flash",
266 "soc_has_psram",
267 "soc_has_touch",
268 "soc_has_from_cpu_intr0",
269 "soc_has_from_cpu_intr1",
270 "soc_has_from_cpu_intr2",
271 "soc_has_from_cpu_intr3",
272 "gpio_driver_supported",
273 "io_mux_driver_supported",
274 "lp_io_driver_supported",
275 "uart_driver_supported",
276 "i2c_master_driver_supported",
277 "spi_master_driver_supported",
278 "spi_slave_driver_supported",
279 "i2s_driver_supported",
280 "rmt_driver_supported",
281 "sdmmc_driver_supported",
282 "twai_driver_supported",
283 "bt_driver_supported",
284 "wifi_driver_supported",
285 "ethernet_driver_supported",
286 "phy_driver_supported",
287 "rgb_display_driver_supported",
288 "adc_driver_supported",
289 "dac_driver_supported",
290 "temp_sensor_driver_supported",
291 "touch_driver_supported",
292 "ledc_driver_supported",
293 "mcpwm_driver_supported",
294 "pcnt_driver_supported",
295 "lp_timer_driver_supported",
296 "sdm_driver_supported",
297 "timergroup_driver_supported",
298 "aes_driver_supported",
299 "rng_driver_supported",
300 "rsa_driver_supported",
301 "sha_driver_supported",
302 "sleep_driver_supported",
303 "dma_driver_supported",
304 "interrupts_driver_supported",
305 "mmu_driver_supported",
306 "psram_driver_supported",
307 "rom_driver_supported",
308 "soc_driver_supported",
309 "uart_uart0",
310 "uart_uart1",
311 "uart_uart2",
312 "i2c_master_i2c0",
313 "i2c_master_i2c1",
314 "spi_master_spi2",
315 "spi_master_spi3",
316 "spi_slave_spi2",
317 "spi_slave_spi3",
318 "i2s_i2s0",
319 "i2s_i2s1",
320 "adc_adc1",
321 "adc_adc2",
322 "dac_dac1",
323 "dac_dac2",
324 "timergroup_timg0",
325 "timergroup_timg1",
326 "gpio_version=\"1\"",
327 "gpio_gpio_function=\"2\"",
328 "gpio_constant_0_input=\"48\"",
329 "gpio_constant_1_input=\"56\"",
330 "gpio_remap_iomux_pin_registers",
331 "gpio_func_in_sel_offset=\"0\"",
332 "soc_has_xtal32k_pads",
333 "gpio_has_bank_1",
334 "gpio_input_signal_max=\"206\"",
335 "gpio_output_signal_max=\"256\"",
336 "lp_io_version=\"esp32\"",
337 "uart_ram_size=\"128\"",
338 "uart_version=\"1\"",
339 "i2c_master_version=\"1\"",
340 "i2c_master_separate_filter_config_registers",
341 "i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
342 "i2c_master_i2c0_data_register_ahb_address_is_set",
343 "i2c_master_max_bus_timeout=\"1048575\"",
344 "i2c_master_ll_intr_mask=\"262143\"",
345 "i2c_master_fifo_size=\"32\"",
346 "spi_master_version=\"1\"",
347 "spi_master_fifo_size=\"64\"",
348 "spi_master_bit_order_is_bool",
349 "i2s_version=\"1\"",
350 "i2s_version_is_set",
351 "i2s_default_clock_source=\"2\"",
352 "i2s_default_clock_source_is_set",
353 "i2s_mclk_divider_bit_width=\"6\"",
354 "i2s_mclk_divider_bit_width_is_set",
355 "i2s_max_ws_width=\"128\"",
356 "i2s_max_ws_width_is_set",
357 "i2s_supports_pdm_tx",
358 "i2s_supports_pdm_rx",
359 "i2s_supports_pcm2pdm",
360 "i2s_supports_pdm2pcm",
361 "rmt_ram_start=\"1073047552\"",
362 "rmt_channel_ram_size=\"64\"",
363 "rmt_has_per_channel_clock",
364 "sdmmc_has_iomux",
365 "bt_controller=\"btdm\"",
366 "wifi_mac_version=\"1\"",
367 "wifi_csi_supported",
368 "phy_combo_module",
369 "ledc_version=\"1\"",
370 "ledc_channel_count=\"8\"",
371 "soc_has_sdm_ch0",
372 "soc_has_sdm_ch1",
373 "soc_has_sdm_ch2",
374 "soc_has_sdm_ch3",
375 "soc_has_sdm_ch4",
376 "soc_has_sdm_ch5",
377 "soc_has_sdm_ch6",
378 "soc_has_sdm_ch7",
379 "timergroup_timg_has_timer1",
380 "timergroup_rc_fast_calibration_is_set",
381 "aes_endianness_configurable",
382 "rng_apb_cycle_wait_num=\"16\"",
383 "rng_trng_supported",
384 "rsa_version=\"1\"",
385 "rsa_size_increment=\"512\"",
386 "rsa_memory_size_bytes=\"512\"",
387 "sleep_light_sleep",
388 "sleep_deep_sleep",
389 "sleep_has_wakeup_source_ext0",
390 "sleep_has_wakeup_source_ext1",
391 "sleep_has_wakeup_source_gpio",
392 "sleep_has_wakeup_source_timer",
393 "sleep_has_wakeup_source_sdio",
394 "sleep_has_wakeup_source_wifi",
395 "sleep_has_wakeup_source_uart",
396 "sleep_has_wakeup_source_touch",
397 "sleep_has_wakeup_source_ulp",
398 "sleep_has_wakeup_source_bt",
399 "sleep_ext1_version=\"1\"",
400 "sleep_ext1_version_is_set",
401 "sleep_pin_wakeup_version=\"1\"",
402 "sleep_pin_wakeup_version_is_set",
403 "sleep_deep_sleep_needs_gpio_isolation",
404 "soc_has_dma_spi2",
405 "soc_has_dma_spi3",
406 "soc_has_dma_i2s0",
407 "soc_has_dma_i2s1",
408 "spi_master_supports_dma",
409 "spi_master_dma_engine=\"SPI_DMA\"",
410 "spi_slave_supports_dma",
411 "spi_slave_dma_engine=\"SPI_DMA\"",
412 "i2s_supports_dma",
413 "i2s_dma_engine=\"I2S_DMA\"",
414 "interrupts_status_registers=\"3\"",
415 "interrupt_controller=\"xtensa\"",
416 "mmu_page_size=\"65536\"",
417 "mmu_entry_num=\"256\"",
418 "psram_extmem_origin=\"1065353216\"",
419 "rom_has_crc_le",
420 "rom_has_crc_be",
421 "rom_has_md5_bsd",
422 "soc_multi_core_enabled",
423 "soc_cpu_mcause_mask=\"0\"",
424 "soc_has_clock_node_xtal_clk",
425 "soc_clock_node_xtal_clk_is_configurable",
426 "soc_has_clock_node_pll_clk",
427 "soc_clock_node_pll_clk_is_configurable",
428 "soc_has_clock_node_apll_clk",
429 "soc_clock_node_apll_clk_is_configurable",
430 "soc_has_clock_node_rc_fast_clk",
431 "soc_has_clock_node_pll_f160m_clk",
432 "soc_has_clock_node_cpu_pll_div_in",
433 "soc_clock_node_cpu_pll_div_in_is_configurable",
434 "soc_has_clock_node_cpu_pll_div",
435 "soc_clock_node_cpu_pll_div_is_configurable",
436 "soc_has_clock_node_syscon_pre_div_in",
437 "soc_clock_node_syscon_pre_div_in_is_configurable",
438 "soc_has_clock_node_syscon_pre_div",
439 "soc_clock_node_syscon_pre_div_is_configurable",
440 "soc_has_clock_node_cpu_clk",
441 "soc_clock_node_cpu_clk_is_configurable",
442 "soc_has_clock_node_apb_clk_cpu_div2",
443 "soc_has_clock_node_apb_clk_80m",
444 "soc_has_clock_node_apb_clk",
445 "soc_clock_node_apb_clk_is_configurable",
446 "soc_has_clock_node_ref_tick_pll",
447 "soc_clock_node_ref_tick_pll_is_configurable",
448 "soc_has_clock_node_ref_tick_apll",
449 "soc_clock_node_ref_tick_apll_is_configurable",
450 "soc_has_clock_node_ref_tick_xtal",
451 "soc_clock_node_ref_tick_xtal_is_configurable",
452 "soc_has_clock_node_ref_tick_fosc",
453 "soc_clock_node_ref_tick_fosc_is_configurable",
454 "soc_has_clock_node_ref_tick",
455 "soc_clock_node_ref_tick_is_configurable",
456 "soc_has_clock_node_xtal32k_clk",
457 "soc_has_clock_node_rc_slow_clk",
458 "soc_has_clock_node_rc_fast_div_clk",
459 "soc_has_clock_node_xtal_div_clk",
460 "soc_has_clock_node_rtc_slow_clk",
461 "soc_clock_node_rtc_slow_clk_is_configurable",
462 "soc_has_clock_node_rtc_fast_clk",
463 "soc_clock_node_rtc_fast_clk_is_configurable",
464 "soc_has_clock_node_uart_mem_clk",
465 "soc_has_clock_node_timg_calibration_clock",
466 "soc_clock_node_timg_calibration_clock_is_configurable",
467 "soc_has_clock_node_mcpwm_function_clock",
468 "soc_has_clock_node_i2c_function_clock",
469 "soc_clock_node_i2c_function_clock_is_configurable",
470 "soc_has_clock_node_uart_function_clock",
471 "soc_clock_node_uart_function_clock_is_configurable",
472 "soc_has_clock_node_uart_mem_clock",
473 "soc_has_clock_node_uart_baud_rate_generator",
474 "soc_clock_node_uart_baud_rate_generator_is_configurable",
475 "soc_has_clock_node_sdm_function_clock",
476 "soc_has_clock_node_rmt_sclk",
477 "soc_clock_node_rmt_sclk_is_configurable",
478 "soc_has_clock_node_spi_function_clock",
479 "has_dram_region",
480 "has_dram2_uninit_region",
481 "has_irom_region",
482 "has_drom_region",
483 ],
484 cfgs: &[
485 "cargo:rustc-cfg=esp32",
486 "cargo:rustc-cfg=xtensa",
487 "cargo:rustc-cfg=multi_core",
488 "cargo:rustc-cfg=soc_has_aes",
489 "cargo:rustc-cfg=soc_has_apb_ctrl",
490 "cargo:rustc-cfg=soc_has_bb",
491 "cargo:rustc-cfg=soc_has_dport",
492 "cargo:rustc-cfg=soc_has_system",
493 "cargo:rustc-cfg=soc_has_efuse",
494 "cargo:rustc-cfg=soc_has_eth",
495 "cargo:rustc-cfg=soc_has_emac_dma",
496 "cargo:rustc-cfg=soc_has_emac_ext",
497 "cargo:rustc-cfg=soc_has_emac_mac",
498 "cargo:rustc-cfg=soc_has_flash_encryption",
499 "cargo:rustc-cfg=soc_has_frc_timer",
500 "cargo:rustc-cfg=soc_has_gpio",
501 "cargo:rustc-cfg=soc_has_gpio_sd",
502 "cargo:rustc-cfg=soc_has_hinf",
503 "cargo:rustc-cfg=soc_has_i2c0",
504 "cargo:rustc-cfg=soc_has_i2c1",
505 "cargo:rustc-cfg=soc_has_i2s0",
506 "cargo:rustc-cfg=soc_has_i2s1",
507 "cargo:rustc-cfg=soc_has_io_mux",
508 "cargo:rustc-cfg=soc_has_ledc",
509 "cargo:rustc-cfg=soc_has_mcpwm0",
510 "cargo:rustc-cfg=soc_has_mmu_table",
511 "cargo:rustc-cfg=soc_has_mcpwm1",
512 "cargo:rustc-cfg=soc_has_nrx",
513 "cargo:rustc-cfg=soc_has_pcnt",
514 "cargo:rustc-cfg=soc_has_rmt",
515 "cargo:rustc-cfg=soc_has_rng",
516 "cargo:rustc-cfg=soc_has_rsa",
517 "cargo:rustc-cfg=soc_has_lpwr",
518 "cargo:rustc-cfg=soc_has_rtc_timer",
519 "cargo:rustc-cfg=soc_has_lp_i2c0",
520 "cargo:rustc-cfg=soc_has_rtc_io",
521 "cargo:rustc-cfg=soc_has_sdhost",
522 "cargo:rustc-cfg=soc_has_sens",
523 "cargo:rustc-cfg=soc_has_sha",
524 "cargo:rustc-cfg=soc_has_slc",
525 "cargo:rustc-cfg=soc_has_slchost",
526 "cargo:rustc-cfg=soc_has_spi0",
527 "cargo:rustc-cfg=soc_has_spi1",
528 "cargo:rustc-cfg=soc_has_spi2",
529 "cargo:rustc-cfg=soc_has_spi3",
530 "cargo:rustc-cfg=soc_has_timg0",
531 "cargo:rustc-cfg=soc_has_timg1",
532 "cargo:rustc-cfg=soc_has_twai0",
533 "cargo:rustc-cfg=soc_has_uart0",
534 "cargo:rustc-cfg=soc_has_uart1",
535 "cargo:rustc-cfg=soc_has_uart2",
536 "cargo:rustc-cfg=soc_has_uhci0",
537 "cargo:rustc-cfg=soc_has_uhci1",
538 "cargo:rustc-cfg=soc_has_wifi",
539 "cargo:rustc-cfg=soc_has_adc1",
540 "cargo:rustc-cfg=soc_has_adc2",
541 "cargo:rustc-cfg=soc_has_bt",
542 "cargo:rustc-cfg=soc_has_cpu_ctrl",
543 "cargo:rustc-cfg=soc_has_dac1",
544 "cargo:rustc-cfg=soc_has_dac2",
545 "cargo:rustc-cfg=soc_has_flash",
546 "cargo:rustc-cfg=soc_has_psram",
547 "cargo:rustc-cfg=soc_has_touch",
548 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
549 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
550 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
551 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
552 "cargo:rustc-cfg=gpio_driver_supported",
553 "cargo:rustc-cfg=io_mux_driver_supported",
554 "cargo:rustc-cfg=lp_io_driver_supported",
555 "cargo:rustc-cfg=uart_driver_supported",
556 "cargo:rustc-cfg=i2c_master_driver_supported",
557 "cargo:rustc-cfg=spi_master_driver_supported",
558 "cargo:rustc-cfg=spi_slave_driver_supported",
559 "cargo:rustc-cfg=i2s_driver_supported",
560 "cargo:rustc-cfg=rmt_driver_supported",
561 "cargo:rustc-cfg=sdmmc_driver_supported",
562 "cargo:rustc-cfg=twai_driver_supported",
563 "cargo:rustc-cfg=bt_driver_supported",
564 "cargo:rustc-cfg=wifi_driver_supported",
565 "cargo:rustc-cfg=ethernet_driver_supported",
566 "cargo:rustc-cfg=phy_driver_supported",
567 "cargo:rustc-cfg=rgb_display_driver_supported",
568 "cargo:rustc-cfg=adc_driver_supported",
569 "cargo:rustc-cfg=dac_driver_supported",
570 "cargo:rustc-cfg=temp_sensor_driver_supported",
571 "cargo:rustc-cfg=touch_driver_supported",
572 "cargo:rustc-cfg=ledc_driver_supported",
573 "cargo:rustc-cfg=mcpwm_driver_supported",
574 "cargo:rustc-cfg=pcnt_driver_supported",
575 "cargo:rustc-cfg=lp_timer_driver_supported",
576 "cargo:rustc-cfg=sdm_driver_supported",
577 "cargo:rustc-cfg=timergroup_driver_supported",
578 "cargo:rustc-cfg=aes_driver_supported",
579 "cargo:rustc-cfg=rng_driver_supported",
580 "cargo:rustc-cfg=rsa_driver_supported",
581 "cargo:rustc-cfg=sha_driver_supported",
582 "cargo:rustc-cfg=sleep_driver_supported",
583 "cargo:rustc-cfg=dma_driver_supported",
584 "cargo:rustc-cfg=interrupts_driver_supported",
585 "cargo:rustc-cfg=mmu_driver_supported",
586 "cargo:rustc-cfg=psram_driver_supported",
587 "cargo:rustc-cfg=rom_driver_supported",
588 "cargo:rustc-cfg=soc_driver_supported",
589 "cargo:rustc-cfg=uart_uart0",
590 "cargo:rustc-cfg=uart_uart1",
591 "cargo:rustc-cfg=uart_uart2",
592 "cargo:rustc-cfg=i2c_master_i2c0",
593 "cargo:rustc-cfg=i2c_master_i2c1",
594 "cargo:rustc-cfg=spi_master_spi2",
595 "cargo:rustc-cfg=spi_master_spi3",
596 "cargo:rustc-cfg=spi_slave_spi2",
597 "cargo:rustc-cfg=spi_slave_spi3",
598 "cargo:rustc-cfg=i2s_i2s0",
599 "cargo:rustc-cfg=i2s_i2s1",
600 "cargo:rustc-cfg=adc_adc1",
601 "cargo:rustc-cfg=adc_adc2",
602 "cargo:rustc-cfg=dac_dac1",
603 "cargo:rustc-cfg=dac_dac2",
604 "cargo:rustc-cfg=timergroup_timg0",
605 "cargo:rustc-cfg=timergroup_timg1",
606 "cargo:rustc-cfg=gpio_version=\"1\"",
607 "cargo:rustc-cfg=gpio_gpio_function=\"2\"",
608 "cargo:rustc-cfg=gpio_constant_0_input=\"48\"",
609 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
610 "cargo:rustc-cfg=gpio_remap_iomux_pin_registers",
611 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
612 "cargo:rustc-cfg=soc_has_xtal32k_pads",
613 "cargo:rustc-cfg=gpio_has_bank_1",
614 "cargo:rustc-cfg=gpio_input_signal_max=\"206\"",
615 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
616 "cargo:rustc-cfg=lp_io_version=\"esp32\"",
617 "cargo:rustc-cfg=uart_ram_size=\"128\"",
618 "cargo:rustc-cfg=uart_version=\"1\"",
619 "cargo:rustc-cfg=i2c_master_version=\"1\"",
620 "cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
621 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
622 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address_is_set",
623 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"1048575\"",
624 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
625 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
626 "cargo:rustc-cfg=spi_master_version=\"1\"",
627 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
628 "cargo:rustc-cfg=spi_master_bit_order_is_bool",
629 "cargo:rustc-cfg=i2s_version=\"1\"",
630 "cargo:rustc-cfg=i2s_version_is_set",
631 "cargo:rustc-cfg=i2s_default_clock_source=\"2\"",
632 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
633 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"6\"",
634 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
635 "cargo:rustc-cfg=i2s_max_ws_width=\"128\"",
636 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
637 "cargo:rustc-cfg=i2s_supports_pdm_tx",
638 "cargo:rustc-cfg=i2s_supports_pdm_rx",
639 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
640 "cargo:rustc-cfg=i2s_supports_pdm2pcm",
641 "cargo:rustc-cfg=rmt_ram_start=\"1073047552\"",
642 "cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
643 "cargo:rustc-cfg=rmt_has_per_channel_clock",
644 "cargo:rustc-cfg=sdmmc_has_iomux",
645 "cargo:rustc-cfg=bt_controller=\"btdm\"",
646 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
647 "cargo:rustc-cfg=wifi_csi_supported",
648 "cargo:rustc-cfg=phy_combo_module",
649 "cargo:rustc-cfg=ledc_version=\"1\"",
650 "cargo:rustc-cfg=ledc_channel_count=\"8\"",
651 "cargo:rustc-cfg=soc_has_sdm_ch0",
652 "cargo:rustc-cfg=soc_has_sdm_ch1",
653 "cargo:rustc-cfg=soc_has_sdm_ch2",
654 "cargo:rustc-cfg=soc_has_sdm_ch3",
655 "cargo:rustc-cfg=soc_has_sdm_ch4",
656 "cargo:rustc-cfg=soc_has_sdm_ch5",
657 "cargo:rustc-cfg=soc_has_sdm_ch6",
658 "cargo:rustc-cfg=soc_has_sdm_ch7",
659 "cargo:rustc-cfg=timergroup_timg_has_timer1",
660 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
661 "cargo:rustc-cfg=aes_endianness_configurable",
662 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
663 "cargo:rustc-cfg=rng_trng_supported",
664 "cargo:rustc-cfg=rsa_version=\"1\"",
665 "cargo:rustc-cfg=rsa_size_increment=\"512\"",
666 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
667 "cargo:rustc-cfg=sleep_light_sleep",
668 "cargo:rustc-cfg=sleep_deep_sleep",
669 "cargo:rustc-cfg=sleep_has_wakeup_source_ext0",
670 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
671 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
672 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
673 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
674 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
675 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
676 "cargo:rustc-cfg=sleep_has_wakeup_source_touch",
677 "cargo:rustc-cfg=sleep_has_wakeup_source_ulp",
678 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
679 "cargo:rustc-cfg=sleep_ext1_version=\"1\"",
680 "cargo:rustc-cfg=sleep_ext1_version_is_set",
681 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"1\"",
682 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
683 "cargo:rustc-cfg=sleep_deep_sleep_needs_gpio_isolation",
684 "cargo:rustc-cfg=soc_has_dma_spi2",
685 "cargo:rustc-cfg=soc_has_dma_spi3",
686 "cargo:rustc-cfg=soc_has_dma_i2s0",
687 "cargo:rustc-cfg=soc_has_dma_i2s1",
688 "cargo:rustc-cfg=spi_master_supports_dma",
689 "cargo:rustc-cfg=spi_master_dma_engine=\"SPI_DMA\"",
690 "cargo:rustc-cfg=spi_slave_supports_dma",
691 "cargo:rustc-cfg=spi_slave_dma_engine=\"SPI_DMA\"",
692 "cargo:rustc-cfg=i2s_supports_dma",
693 "cargo:rustc-cfg=i2s_dma_engine=\"I2S_DMA\"",
694 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
695 "cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
696 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
697 "cargo:rustc-cfg=mmu_entry_num=\"256\"",
698 "cargo:rustc-cfg=psram_extmem_origin=\"1065353216\"",
699 "cargo:rustc-cfg=rom_has_crc_le",
700 "cargo:rustc-cfg=rom_has_crc_be",
701 "cargo:rustc-cfg=rom_has_md5_bsd",
702 "cargo:rustc-cfg=soc_multi_core_enabled",
703 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"0\"",
704 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
705 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
706 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
707 "cargo:rustc-cfg=soc_clock_node_pll_clk_is_configurable",
708 "cargo:rustc-cfg=soc_has_clock_node_apll_clk",
709 "cargo:rustc-cfg=soc_clock_node_apll_clk_is_configurable",
710 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
711 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m_clk",
712 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_in",
713 "cargo:rustc-cfg=soc_clock_node_cpu_pll_div_in_is_configurable",
714 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
715 "cargo:rustc-cfg=soc_clock_node_cpu_pll_div_is_configurable",
716 "cargo:rustc-cfg=soc_has_clock_node_syscon_pre_div_in",
717 "cargo:rustc-cfg=soc_clock_node_syscon_pre_div_in_is_configurable",
718 "cargo:rustc-cfg=soc_has_clock_node_syscon_pre_div",
719 "cargo:rustc-cfg=soc_clock_node_syscon_pre_div_is_configurable",
720 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
721 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
722 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_cpu_div2",
723 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_80m",
724 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
725 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
726 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_pll",
727 "cargo:rustc-cfg=soc_clock_node_ref_tick_pll_is_configurable",
728 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_apll",
729 "cargo:rustc-cfg=soc_clock_node_ref_tick_apll_is_configurable",
730 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_xtal",
731 "cargo:rustc-cfg=soc_clock_node_ref_tick_xtal_is_configurable",
732 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_fosc",
733 "cargo:rustc-cfg=soc_clock_node_ref_tick_fosc_is_configurable",
734 "cargo:rustc-cfg=soc_has_clock_node_ref_tick",
735 "cargo:rustc-cfg=soc_clock_node_ref_tick_is_configurable",
736 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
737 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
738 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
739 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
740 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
741 "cargo:rustc-cfg=soc_clock_node_rtc_slow_clk_is_configurable",
742 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
743 "cargo:rustc-cfg=soc_clock_node_rtc_fast_clk_is_configurable",
744 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
745 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
746 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
747 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
748 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
749 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
750 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
751 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
752 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
753 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
754 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
755 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
756 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
757 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
758 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
759 "cargo:rustc-cfg=has_dram_region",
760 "cargo:rustc-cfg=has_dram2_uninit_region",
761 "cargo:rustc-cfg=has_irom_region",
762 "cargo:rustc-cfg=has_drom_region",
763 ],
764 memory_layout: &MemoryLayout {
765 regions: &[
766 (
767 "dram",
768 MemoryRegion {
769 address_range: 0x3FFAE000..0x40000000,
770 },
771 ),
772 (
773 "dram2_uninit",
774 MemoryRegion {
775 address_range: 0x3FFE7E30..0x40000000,
776 },
777 ),
778 (
779 "irom",
780 MemoryRegion {
781 address_range: 0x400D0000..0x40400000,
782 },
783 ),
784 (
785 "drom",
786 MemoryRegion {
787 address_range: 0x3F400000..0x3F800000,
788 },
789 ),
790 ],
791 },
792 pins: &[
793 PinInfo {
794 pin: 0,
795 limitations: &["strapping"],
796 },
797 PinInfo {
798 pin: 1,
799 limitations: &["bootloader_uart"],
800 },
801 PinInfo {
802 pin: 2,
803 limitations: &["strapping"],
804 },
805 PinInfo {
806 pin: 3,
807 limitations: &["bootloader_uart"],
808 },
809 PinInfo {
810 pin: 4,
811 limitations: &[],
812 },
813 PinInfo {
814 pin: 5,
815 limitations: &["strapping"],
816 },
817 PinInfo {
818 pin: 6,
819 limitations: &["spi_flash", "spi_psram"],
820 },
821 PinInfo {
822 pin: 7,
823 limitations: &["spi_flash", "spi_psram"],
824 },
825 PinInfo {
826 pin: 8,
827 limitations: &["spi_flash", "spi_psram"],
828 },
829 PinInfo {
830 pin: 9,
831 limitations: &["spi_flash", "spi_psram"],
832 },
833 PinInfo {
834 pin: 10,
835 limitations: &["spi_flash", "spi_psram"],
836 },
837 PinInfo {
838 pin: 11,
839 limitations: &["spi_flash", "spi_psram"],
840 },
841 PinInfo {
842 pin: 12,
843 limitations: &["strapping", "jtag"],
844 },
845 PinInfo {
846 pin: 13,
847 limitations: &["jtag"],
848 },
849 PinInfo {
850 pin: 14,
851 limitations: &["jtag"],
852 },
853 PinInfo {
854 pin: 15,
855 limitations: &["strapping", "jtag"],
856 },
857 PinInfo {
858 pin: 16,
859 limitations: &["spi_flash", "spi_psram"],
860 },
861 PinInfo {
862 pin: 17,
863 limitations: &["spi_psram"],
864 },
865 PinInfo {
866 pin: 18,
867 limitations: &[],
868 },
869 PinInfo {
870 pin: 19,
871 limitations: &[],
872 },
873 PinInfo {
874 pin: 20,
875 limitations: &["esp32_pico_v3"],
876 },
877 PinInfo {
878 pin: 21,
879 limitations: &[],
880 },
881 PinInfo {
882 pin: 22,
883 limitations: &[],
884 },
885 PinInfo {
886 pin: 23,
887 limitations: &[],
888 },
889 PinInfo {
890 pin: 25,
891 limitations: &[],
892 },
893 PinInfo {
894 pin: 26,
895 limitations: &[],
896 },
897 PinInfo {
898 pin: 27,
899 limitations: &[],
900 },
901 PinInfo {
902 pin: 32,
903 limitations: &[],
904 },
905 PinInfo {
906 pin: 33,
907 limitations: &[],
908 },
909 PinInfo {
910 pin: 34,
911 limitations: &["input_only"],
912 },
913 PinInfo {
914 pin: 35,
915 limitations: &["input_only"],
916 },
917 PinInfo {
918 pin: 36,
919 limitations: &["input_only"],
920 },
921 PinInfo {
922 pin: 37,
923 limitations: &["input_only"],
924 },
925 PinInfo {
926 pin: 38,
927 limitations: &["input_only"],
928 },
929 PinInfo {
930 pin: 39,
931 limitations: &["input_only"],
932 },
933 ],
934 },
935 Self::Esp32c2 => Config {
936 architecture: "riscv",
937 target: "riscv32imc-unknown-none-elf",
938 symbols: &[
939 "esp32c2",
940 "riscv",
941 "single_core",
942 "soc_has_apb_ctrl",
943 "soc_has_apb_saradc",
944 "soc_has_bb",
945 "soc_has_assist_debug",
946 "soc_has_dma",
947 "soc_has_ecc",
948 "soc_has_efuse",
949 "soc_has_extmem",
950 "soc_has_mmu_table",
951 "soc_has_gpio",
952 "soc_has_i2c_ana_mst",
953 "soc_has_i2c0",
954 "soc_has_interrupt_core0",
955 "soc_has_io_mux",
956 "soc_has_ledc",
957 "soc_has_rng",
958 "soc_has_lpwr",
959 "soc_has_rtc_timer",
960 "soc_has_modem_clkrst",
961 "soc_has_sensitive",
962 "soc_has_sha",
963 "soc_has_spi0",
964 "soc_has_spi1",
965 "soc_has_spi2",
966 "soc_has_system",
967 "soc_has_systimer",
968 "soc_has_timg0",
969 "soc_has_uart0",
970 "soc_has_uart1",
971 "soc_has_xts_aes",
972 "soc_has_adc1",
973 "soc_has_bt",
974 "soc_has_flash",
975 "soc_has_gpio_dedicated",
976 "soc_has_wifi",
977 "soc_has_from_cpu_intr0",
978 "soc_has_from_cpu_intr1",
979 "soc_has_from_cpu_intr2",
980 "soc_has_from_cpu_intr3",
981 "gpio_driver_supported",
982 "dedicated_gpio_driver_supported",
983 "io_mux_driver_supported",
984 "lp_io_driver_supported",
985 "uart_driver_supported",
986 "i2c_master_driver_supported",
987 "spi_master_driver_supported",
988 "spi_slave_driver_supported",
989 "bt_driver_supported",
990 "wifi_driver_supported",
991 "phy_driver_supported",
992 "adc_driver_supported",
993 "temp_sensor_driver_supported",
994 "ledc_driver_supported",
995 "lp_timer_driver_supported",
996 "systimer_driver_supported",
997 "timergroup_driver_supported",
998 "ecc_driver_supported",
999 "rng_driver_supported",
1000 "sha_driver_supported",
1001 "sleep_driver_supported",
1002 "assist_debug_driver_supported",
1003 "dma_driver_supported",
1004 "interrupts_driver_supported",
1005 "mmu_driver_supported",
1006 "rom_driver_supported",
1007 "soc_driver_supported",
1008 "uart_uart0",
1009 "uart_uart1",
1010 "i2c_master_i2c0",
1011 "spi_master_spi2",
1012 "spi_slave_spi2",
1013 "adc_adc1",
1014 "timergroup_timg0",
1015 "gpio_version=\"2\"",
1016 "gpio_has_input_sync",
1017 "gpio_gpio_function=\"1\"",
1018 "gpio_constant_0_input=\"31\"",
1019 "gpio_constant_1_input=\"30\"",
1020 "gpio_func_in_sel_offset=\"0\"",
1021 "gpio_input_signal_max=\"100\"",
1022 "gpio_output_signal_max=\"128\"",
1023 "dedicated_gpio_version=\"riscv_v1\"",
1024 "lp_io_version=\"v3\"",
1025 "uart_ram_size=\"128\"",
1026 "uart_version=\"1\"",
1027 "uart_has_sclk_divider",
1028 "uart_has_sclk_enable",
1029 "i2c_master_version=\"3\"",
1030 "i2c_master_has_fsm_timeouts",
1031 "i2c_master_has_hw_bus_clear",
1032 "i2c_master_has_bus_timeout_enable",
1033 "i2c_master_has_conf_update",
1034 "i2c_master_has_arbitration_en",
1035 "i2c_master_has_tx_fifo_watermark",
1036 "i2c_master_bus_timeout_is_exponential",
1037 "i2c_master_has_pd_en",
1038 "i2c_master_max_bus_timeout=\"31\"",
1039 "i2c_master_ll_intr_mask=\"262143\"",
1040 "i2c_master_fifo_size=\"16\"",
1041 "spi_master_version=\"3\"",
1042 "spi_master_fifo_size=\"64\"",
1043 "spi_master_has_app_interrupts",
1044 "spi_master_has_dma_segmented_transfer",
1045 "bt_controller=\"npl\"",
1046 "wifi_mac_version=\"1\"",
1047 "phy_combo_module",
1048 "ledc_version=\"2\"",
1049 "ledc_channel_count=\"6\"",
1050 "timergroup_timg_has_divcnt_rst",
1051 "timergroup_rc_fast_calibration_is_set",
1052 "ecc_zero_extend_writes",
1053 "ecc_has_finite_field_division",
1054 "ecc_has_curve_p192",
1055 "ecc_has_curve_p256",
1056 "rng_apb_cycle_wait_num=\"16\"",
1057 "rng_trng_supported",
1058 "sleep_light_sleep",
1059 "sleep_deep_sleep",
1060 "sleep_has_wakeup_source_gpio",
1061 "sleep_has_wakeup_source_timer",
1062 "sleep_has_wakeup_source_sdio",
1063 "sleep_has_wakeup_source_wifi",
1064 "sleep_has_wakeup_source_uart",
1065 "sleep_has_wakeup_source_touch",
1066 "sleep_has_wakeup_source_ulp",
1067 "sleep_has_wakeup_source_bt",
1068 "sleep_pin_wakeup_version=\"2\"",
1069 "sleep_pin_wakeup_version_is_set",
1070 "sleep_deep_sleep_needs_gpio_isolation",
1071 "assist_debug_has_sp_monitor",
1072 "dma_gdma_version=\"1\"",
1073 "dma_gdma_version_is_set",
1074 "soc_has_dma_ch0",
1075 "dma_supports_mem2mem",
1076 "sha_supports_dma",
1077 "sha_dma_engine=\"AHB_GDMA\"",
1078 "spi_master_supports_dma",
1079 "spi_master_dma_engine=\"AHB_GDMA\"",
1080 "spi_slave_supports_dma",
1081 "spi_slave_dma_engine=\"AHB_GDMA\"",
1082 "dma_max_priority=\"9\"",
1083 "dma_max_priority_is_set",
1084 "interrupts_status_registers=\"2\"",
1085 "interrupt_controller=\"riscv_basic\"",
1086 "mmu_page_size=\"65536\"",
1087 "mmu_entry_num=\"64\"",
1088 "rom_has_crc_le",
1089 "rom_has_crc_be",
1090 "rom_has_md5_mbedtls",
1091 "soc_cpu_has_csr_pc",
1092 "soc_has_swd_watchdog",
1093 "soc_cpu_mcause_mask=\"31\"",
1094 "soc_has_clock_node_xtal_clk",
1095 "soc_clock_node_xtal_clk_is_configurable",
1096 "soc_has_clock_node_pll_clk",
1097 "soc_has_clock_node_rc_fast_clk",
1098 "soc_has_clock_node_osc_slow_clk",
1099 "soc_has_clock_node_rc_slow_clk",
1100 "soc_has_clock_node_rc_fast_div_clk",
1101 "soc_has_clock_node_system_pre_div_in",
1102 "soc_clock_node_system_pre_div_in_is_configurable",
1103 "soc_has_clock_node_system_pre_div",
1104 "soc_clock_node_system_pre_div_is_configurable",
1105 "soc_has_clock_node_cpu_pll_div",
1106 "soc_clock_node_cpu_pll_div_is_configurable",
1107 "soc_has_clock_node_cpu_clk",
1108 "soc_clock_node_cpu_clk_is_configurable",
1109 "soc_has_clock_node_pll_40m",
1110 "soc_has_clock_node_pll_60m",
1111 "soc_has_clock_node_pll_80m",
1112 "soc_has_clock_node_cpu_div2",
1113 "soc_has_clock_node_apb_clk",
1114 "soc_clock_node_apb_clk_is_configurable",
1115 "soc_has_clock_node_crypto_clk",
1116 "soc_clock_node_crypto_clk_is_configurable",
1117 "soc_has_clock_node_mspi_clk",
1118 "soc_clock_node_mspi_clk_is_configurable",
1119 "soc_has_clock_node_rc_fast_clk_div_n",
1120 "soc_clock_node_rc_fast_clk_div_n_is_configurable",
1121 "soc_has_clock_node_xtal_div_clk",
1122 "soc_has_clock_node_rtc_slow_clk",
1123 "soc_clock_node_rtc_slow_clk_is_configurable",
1124 "soc_has_clock_node_rtc_fast_clk",
1125 "soc_clock_node_rtc_fast_clk_is_configurable",
1126 "soc_has_clock_node_low_power_clk",
1127 "soc_clock_node_low_power_clk_is_configurable",
1128 "soc_has_clock_node_uart_mem_clk",
1129 "soc_has_clock_node_timg_calibration_clock",
1130 "soc_clock_node_timg_calibration_clock_is_configurable",
1131 "soc_has_clock_node_timg_function_clock",
1132 "soc_clock_node_timg_function_clock_is_configurable",
1133 "soc_has_clock_node_timg_wdt_clock",
1134 "soc_clock_node_timg_wdt_clock_is_configurable",
1135 "soc_has_clock_node_uart_function_clock",
1136 "soc_clock_node_uart_function_clock_is_configurable",
1137 "soc_has_clock_node_uart_mem_clock",
1138 "soc_has_clock_node_uart_baud_rate_generator",
1139 "soc_clock_node_uart_baud_rate_generator_is_configurable",
1140 "soc_has_clock_node_i2c_function_clock",
1141 "soc_clock_node_i2c_function_clock_is_configurable",
1142 "soc_has_clock_node_spi_function_clock",
1143 "soc_clock_node_spi_function_clock_is_configurable",
1144 "has_dram_region",
1145 "has_dram2_uninit_region",
1146 "has_irom_region",
1147 "has_drom_region",
1148 ],
1149 cfgs: &[
1150 "cargo:rustc-cfg=esp32c2",
1151 "cargo:rustc-cfg=riscv",
1152 "cargo:rustc-cfg=single_core",
1153 "cargo:rustc-cfg=soc_has_apb_ctrl",
1154 "cargo:rustc-cfg=soc_has_apb_saradc",
1155 "cargo:rustc-cfg=soc_has_bb",
1156 "cargo:rustc-cfg=soc_has_assist_debug",
1157 "cargo:rustc-cfg=soc_has_dma",
1158 "cargo:rustc-cfg=soc_has_ecc",
1159 "cargo:rustc-cfg=soc_has_efuse",
1160 "cargo:rustc-cfg=soc_has_extmem",
1161 "cargo:rustc-cfg=soc_has_mmu_table",
1162 "cargo:rustc-cfg=soc_has_gpio",
1163 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
1164 "cargo:rustc-cfg=soc_has_i2c0",
1165 "cargo:rustc-cfg=soc_has_interrupt_core0",
1166 "cargo:rustc-cfg=soc_has_io_mux",
1167 "cargo:rustc-cfg=soc_has_ledc",
1168 "cargo:rustc-cfg=soc_has_rng",
1169 "cargo:rustc-cfg=soc_has_lpwr",
1170 "cargo:rustc-cfg=soc_has_rtc_timer",
1171 "cargo:rustc-cfg=soc_has_modem_clkrst",
1172 "cargo:rustc-cfg=soc_has_sensitive",
1173 "cargo:rustc-cfg=soc_has_sha",
1174 "cargo:rustc-cfg=soc_has_spi0",
1175 "cargo:rustc-cfg=soc_has_spi1",
1176 "cargo:rustc-cfg=soc_has_spi2",
1177 "cargo:rustc-cfg=soc_has_system",
1178 "cargo:rustc-cfg=soc_has_systimer",
1179 "cargo:rustc-cfg=soc_has_timg0",
1180 "cargo:rustc-cfg=soc_has_uart0",
1181 "cargo:rustc-cfg=soc_has_uart1",
1182 "cargo:rustc-cfg=soc_has_xts_aes",
1183 "cargo:rustc-cfg=soc_has_adc1",
1184 "cargo:rustc-cfg=soc_has_bt",
1185 "cargo:rustc-cfg=soc_has_flash",
1186 "cargo:rustc-cfg=soc_has_gpio_dedicated",
1187 "cargo:rustc-cfg=soc_has_wifi",
1188 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
1189 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
1190 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
1191 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
1192 "cargo:rustc-cfg=gpio_driver_supported",
1193 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
1194 "cargo:rustc-cfg=io_mux_driver_supported",
1195 "cargo:rustc-cfg=lp_io_driver_supported",
1196 "cargo:rustc-cfg=uart_driver_supported",
1197 "cargo:rustc-cfg=i2c_master_driver_supported",
1198 "cargo:rustc-cfg=spi_master_driver_supported",
1199 "cargo:rustc-cfg=spi_slave_driver_supported",
1200 "cargo:rustc-cfg=bt_driver_supported",
1201 "cargo:rustc-cfg=wifi_driver_supported",
1202 "cargo:rustc-cfg=phy_driver_supported",
1203 "cargo:rustc-cfg=adc_driver_supported",
1204 "cargo:rustc-cfg=temp_sensor_driver_supported",
1205 "cargo:rustc-cfg=ledc_driver_supported",
1206 "cargo:rustc-cfg=lp_timer_driver_supported",
1207 "cargo:rustc-cfg=systimer_driver_supported",
1208 "cargo:rustc-cfg=timergroup_driver_supported",
1209 "cargo:rustc-cfg=ecc_driver_supported",
1210 "cargo:rustc-cfg=rng_driver_supported",
1211 "cargo:rustc-cfg=sha_driver_supported",
1212 "cargo:rustc-cfg=sleep_driver_supported",
1213 "cargo:rustc-cfg=assist_debug_driver_supported",
1214 "cargo:rustc-cfg=dma_driver_supported",
1215 "cargo:rustc-cfg=interrupts_driver_supported",
1216 "cargo:rustc-cfg=mmu_driver_supported",
1217 "cargo:rustc-cfg=rom_driver_supported",
1218 "cargo:rustc-cfg=soc_driver_supported",
1219 "cargo:rustc-cfg=uart_uart0",
1220 "cargo:rustc-cfg=uart_uart1",
1221 "cargo:rustc-cfg=i2c_master_i2c0",
1222 "cargo:rustc-cfg=spi_master_spi2",
1223 "cargo:rustc-cfg=spi_slave_spi2",
1224 "cargo:rustc-cfg=adc_adc1",
1225 "cargo:rustc-cfg=timergroup_timg0",
1226 "cargo:rustc-cfg=gpio_version=\"2\"",
1227 "cargo:rustc-cfg=gpio_has_input_sync",
1228 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
1229 "cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
1230 "cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
1231 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
1232 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
1233 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
1234 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v1\"",
1235 "cargo:rustc-cfg=lp_io_version=\"v3\"",
1236 "cargo:rustc-cfg=uart_ram_size=\"128\"",
1237 "cargo:rustc-cfg=uart_version=\"1\"",
1238 "cargo:rustc-cfg=uart_has_sclk_divider",
1239 "cargo:rustc-cfg=uart_has_sclk_enable",
1240 "cargo:rustc-cfg=i2c_master_version=\"3\"",
1241 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
1242 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
1243 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
1244 "cargo:rustc-cfg=i2c_master_has_conf_update",
1245 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
1246 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
1247 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
1248 "cargo:rustc-cfg=i2c_master_has_pd_en",
1249 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
1250 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
1251 "cargo:rustc-cfg=i2c_master_fifo_size=\"16\"",
1252 "cargo:rustc-cfg=spi_master_version=\"3\"",
1253 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
1254 "cargo:rustc-cfg=spi_master_has_app_interrupts",
1255 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
1256 "cargo:rustc-cfg=bt_controller=\"npl\"",
1257 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
1258 "cargo:rustc-cfg=phy_combo_module",
1259 "cargo:rustc-cfg=ledc_version=\"2\"",
1260 "cargo:rustc-cfg=ledc_channel_count=\"6\"",
1261 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
1262 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
1263 "cargo:rustc-cfg=ecc_zero_extend_writes",
1264 "cargo:rustc-cfg=ecc_has_finite_field_division",
1265 "cargo:rustc-cfg=ecc_has_curve_p192",
1266 "cargo:rustc-cfg=ecc_has_curve_p256",
1267 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
1268 "cargo:rustc-cfg=rng_trng_supported",
1269 "cargo:rustc-cfg=sleep_light_sleep",
1270 "cargo:rustc-cfg=sleep_deep_sleep",
1271 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
1272 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
1273 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
1274 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
1275 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
1276 "cargo:rustc-cfg=sleep_has_wakeup_source_touch",
1277 "cargo:rustc-cfg=sleep_has_wakeup_source_ulp",
1278 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
1279 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"2\"",
1280 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
1281 "cargo:rustc-cfg=sleep_deep_sleep_needs_gpio_isolation",
1282 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
1283 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
1284 "cargo:rustc-cfg=dma_gdma_version_is_set",
1285 "cargo:rustc-cfg=soc_has_dma_ch0",
1286 "cargo:rustc-cfg=dma_supports_mem2mem",
1287 "cargo:rustc-cfg=sha_supports_dma",
1288 "cargo:rustc-cfg=sha_dma_engine=\"AHB_GDMA\"",
1289 "cargo:rustc-cfg=spi_master_supports_dma",
1290 "cargo:rustc-cfg=spi_master_dma_engine=\"AHB_GDMA\"",
1291 "cargo:rustc-cfg=spi_slave_supports_dma",
1292 "cargo:rustc-cfg=spi_slave_dma_engine=\"AHB_GDMA\"",
1293 "cargo:rustc-cfg=dma_max_priority=\"9\"",
1294 "cargo:rustc-cfg=dma_max_priority_is_set",
1295 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
1296 "cargo:rustc-cfg=interrupt_controller=\"riscv_basic\"",
1297 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
1298 "cargo:rustc-cfg=mmu_entry_num=\"64\"",
1299 "cargo:rustc-cfg=rom_has_crc_le",
1300 "cargo:rustc-cfg=rom_has_crc_be",
1301 "cargo:rustc-cfg=rom_has_md5_mbedtls",
1302 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
1303 "cargo:rustc-cfg=soc_has_swd_watchdog",
1304 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"31\"",
1305 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
1306 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
1307 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
1308 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
1309 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
1310 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
1311 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
1312 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
1313 "cargo:rustc-cfg=soc_clock_node_system_pre_div_in_is_configurable",
1314 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
1315 "cargo:rustc-cfg=soc_clock_node_system_pre_div_is_configurable",
1316 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
1317 "cargo:rustc-cfg=soc_clock_node_cpu_pll_div_is_configurable",
1318 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
1319 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
1320 "cargo:rustc-cfg=soc_has_clock_node_pll_40m",
1321 "cargo:rustc-cfg=soc_has_clock_node_pll_60m",
1322 "cargo:rustc-cfg=soc_has_clock_node_pll_80m",
1323 "cargo:rustc-cfg=soc_has_clock_node_cpu_div2",
1324 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
1325 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
1326 "cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
1327 "cargo:rustc-cfg=soc_clock_node_crypto_clk_is_configurable",
1328 "cargo:rustc-cfg=soc_has_clock_node_mspi_clk",
1329 "cargo:rustc-cfg=soc_clock_node_mspi_clk_is_configurable",
1330 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
1331 "cargo:rustc-cfg=soc_clock_node_rc_fast_clk_div_n_is_configurable",
1332 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
1333 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
1334 "cargo:rustc-cfg=soc_clock_node_rtc_slow_clk_is_configurable",
1335 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
1336 "cargo:rustc-cfg=soc_clock_node_rtc_fast_clk_is_configurable",
1337 "cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
1338 "cargo:rustc-cfg=soc_clock_node_low_power_clk_is_configurable",
1339 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
1340 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
1341 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
1342 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
1343 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
1344 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
1345 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
1346 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
1347 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
1348 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
1349 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
1350 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
1351 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
1352 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
1353 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
1354 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
1355 "cargo:rustc-cfg=has_dram_region",
1356 "cargo:rustc-cfg=has_dram2_uninit_region",
1357 "cargo:rustc-cfg=has_irom_region",
1358 "cargo:rustc-cfg=has_drom_region",
1359 ],
1360 memory_layout: &MemoryLayout {
1361 regions: &[
1362 (
1363 "dram",
1364 MemoryRegion {
1365 address_range: 0x3FCA0000..0x3FCE0000,
1366 },
1367 ),
1368 (
1369 "dram2_uninit",
1370 MemoryRegion {
1371 address_range: 0x3FCCE800..0x3FCDEB70,
1372 },
1373 ),
1374 (
1375 "irom",
1376 MemoryRegion {
1377 address_range: 0x42000000..0x42400000,
1378 },
1379 ),
1380 (
1381 "drom",
1382 MemoryRegion {
1383 address_range: 0x3C000000..0x3C400000,
1384 },
1385 ),
1386 ],
1387 },
1388 pins: &[
1389 PinInfo {
1390 pin: 0,
1391 limitations: &[],
1392 },
1393 PinInfo {
1394 pin: 1,
1395 limitations: &[],
1396 },
1397 PinInfo {
1398 pin: 2,
1399 limitations: &[],
1400 },
1401 PinInfo {
1402 pin: 3,
1403 limitations: &[],
1404 },
1405 PinInfo {
1406 pin: 4,
1407 limitations: &["jtag"],
1408 },
1409 PinInfo {
1410 pin: 5,
1411 limitations: &["jtag"],
1412 },
1413 PinInfo {
1414 pin: 6,
1415 limitations: &["jtag"],
1416 },
1417 PinInfo {
1418 pin: 7,
1419 limitations: &["jtag"],
1420 },
1421 PinInfo {
1422 pin: 8,
1423 limitations: &["strapping"],
1424 },
1425 PinInfo {
1426 pin: 9,
1427 limitations: &["strapping"],
1428 },
1429 PinInfo {
1430 pin: 10,
1431 limitations: &[],
1432 },
1433 PinInfo {
1434 pin: 11,
1435 limitations: &["spi_flash"],
1436 },
1437 PinInfo {
1438 pin: 12,
1439 limitations: &["spi_flash"],
1440 },
1441 PinInfo {
1442 pin: 13,
1443 limitations: &["spi_flash"],
1444 },
1445 PinInfo {
1446 pin: 14,
1447 limitations: &["spi_flash"],
1448 },
1449 PinInfo {
1450 pin: 15,
1451 limitations: &["spi_flash"],
1452 },
1453 PinInfo {
1454 pin: 16,
1455 limitations: &["spi_flash"],
1456 },
1457 PinInfo {
1458 pin: 17,
1459 limitations: &["spi_flash"],
1460 },
1461 PinInfo {
1462 pin: 18,
1463 limitations: &[],
1464 },
1465 PinInfo {
1466 pin: 19,
1467 limitations: &["bootloader_uart"],
1468 },
1469 PinInfo {
1470 pin: 20,
1471 limitations: &["bootloader_uart"],
1472 },
1473 ],
1474 },
1475 Self::Esp32c3 => Config {
1476 architecture: "riscv",
1477 target: "riscv32imc-unknown-none-elf",
1478 symbols: &[
1479 "esp32c3",
1480 "riscv",
1481 "single_core",
1482 "soc_has_aes",
1483 "soc_has_apb_ctrl",
1484 "soc_has_apb_saradc",
1485 "soc_has_assist_debug",
1486 "soc_has_bb",
1487 "soc_has_dma",
1488 "soc_has_ds",
1489 "soc_has_efuse",
1490 "soc_has_extmem",
1491 "soc_has_mmu_table",
1492 "soc_has_fe",
1493 "soc_has_fe2",
1494 "soc_has_gpio",
1495 "soc_has_gpio_sd",
1496 "soc_has_hmac",
1497 "soc_has_i2c_ana_mst",
1498 "soc_has_i2c0",
1499 "soc_has_i2s0",
1500 "soc_has_interrupt_core0",
1501 "soc_has_io_mux",
1502 "soc_has_ledc",
1503 "soc_has_nrx",
1504 "soc_has_rmt",
1505 "soc_has_rng",
1506 "soc_has_rsa",
1507 "soc_has_lpwr",
1508 "soc_has_rtc_timer",
1509 "soc_has_sensitive",
1510 "soc_has_sha",
1511 "soc_has_spi0",
1512 "soc_has_spi1",
1513 "soc_has_spi2",
1514 "soc_has_system",
1515 "soc_has_systimer",
1516 "soc_has_timg0",
1517 "soc_has_timg1",
1518 "soc_has_twai0",
1519 "soc_has_uart0",
1520 "soc_has_uart1",
1521 "soc_has_uhci0",
1522 "soc_has_usb_device",
1523 "soc_has_xts_aes",
1524 "soc_has_adc1",
1525 "soc_has_adc2",
1526 "soc_has_bt",
1527 "soc_has_flash",
1528 "soc_has_gpio_dedicated",
1529 "soc_has_tsens",
1530 "soc_has_wifi",
1531 "soc_has_from_cpu_intr0",
1532 "soc_has_from_cpu_intr1",
1533 "soc_has_from_cpu_intr2",
1534 "soc_has_from_cpu_intr3",
1535 "gpio_driver_supported",
1536 "dedicated_gpio_driver_supported",
1537 "io_mux_driver_supported",
1538 "lp_io_driver_supported",
1539 "uart_driver_supported",
1540 "uhci_driver_supported",
1541 "i2c_master_driver_supported",
1542 "i2c_slave_driver_supported",
1543 "spi_master_driver_supported",
1544 "spi_slave_driver_supported",
1545 "i2s_driver_supported",
1546 "rmt_driver_supported",
1547 "twai_driver_supported",
1548 "usb_serial_jtag_driver_supported",
1549 "bt_driver_supported",
1550 "wifi_driver_supported",
1551 "phy_driver_supported",
1552 "adc_driver_supported",
1553 "temp_sensor_driver_supported",
1554 "ledc_driver_supported",
1555 "lp_timer_driver_supported",
1556 "sdm_driver_supported",
1557 "systimer_driver_supported",
1558 "timergroup_driver_supported",
1559 "aes_driver_supported",
1560 "hmac_driver_supported",
1561 "rng_driver_supported",
1562 "rsa_driver_supported",
1563 "sha_driver_supported",
1564 "sleep_driver_supported",
1565 "assist_debug_driver_supported",
1566 "dma_driver_supported",
1567 "interrupts_driver_supported",
1568 "mmu_driver_supported",
1569 "rom_driver_supported",
1570 "soc_driver_supported",
1571 "uart_uart0",
1572 "uart_uart1",
1573 "i2c_master_i2c0",
1574 "i2c_slave_i2c0",
1575 "spi_master_spi2",
1576 "spi_slave_spi2",
1577 "i2s_i2s0",
1578 "adc_adc1",
1579 "adc_adc2",
1580 "timergroup_timg0",
1581 "timergroup_timg1",
1582 "gpio_version=\"2\"",
1583 "gpio_has_input_sync",
1584 "gpio_gpio_function=\"1\"",
1585 "gpio_constant_0_input=\"31\"",
1586 "gpio_constant_1_input=\"30\"",
1587 "gpio_func_in_sel_offset=\"0\"",
1588 "gpio_input_signal_max=\"100\"",
1589 "gpio_output_signal_max=\"128\"",
1590 "dedicated_gpio_version=\"riscv_v1\"",
1591 "lp_io_version=\"v3\"",
1592 "uart_ram_size=\"128\"",
1593 "uart_version=\"1\"",
1594 "uart_has_sclk_divider",
1595 "uart_has_sclk_enable",
1596 "i2c_master_version=\"3\"",
1597 "i2c_master_has_fsm_timeouts",
1598 "i2c_master_has_hw_bus_clear",
1599 "i2c_master_has_bus_timeout_enable",
1600 "i2c_master_has_conf_update",
1601 "i2c_master_has_arbitration_en",
1602 "i2c_master_has_tx_fifo_watermark",
1603 "i2c_master_bus_timeout_is_exponential",
1604 "i2c_master_has_pd_en",
1605 "i2c_master_max_bus_timeout=\"31\"",
1606 "i2c_master_ll_intr_mask=\"262143\"",
1607 "i2c_master_fifo_size=\"32\"",
1608 "spi_master_version=\"3\"",
1609 "spi_master_fifo_size=\"64\"",
1610 "spi_master_bit_order_is_bool",
1611 "spi_master_has_app_interrupts",
1612 "spi_master_has_dma_segmented_transfer",
1613 "i2s_version=\"2\"",
1614 "i2s_version_is_set",
1615 "i2s_default_clock_source=\"2\"",
1616 "i2s_default_clock_source_is_set",
1617 "i2s_mclk_divider_bit_width=\"9\"",
1618 "i2s_mclk_divider_bit_width_is_set",
1619 "i2s_max_ws_width=\"128\"",
1620 "i2s_max_ws_width_is_set",
1621 "i2s_supports_pdm_tx",
1622 "i2s_supports_pdm_rx",
1623 "i2s_supports_pcm2pdm",
1624 "rmt_ram_start=\"1610703872\"",
1625 "rmt_channel_ram_size=\"48\"",
1626 "rmt_has_tx_immediate_stop",
1627 "rmt_has_tx_loop_count",
1628 "rmt_has_tx_carrier_data_only",
1629 "rmt_has_tx_sync",
1630 "rmt_has_rx_wrap",
1631 "rmt_has_rx_demodulation",
1632 "bt_controller=\"btdm\"",
1633 "wifi_mac_version=\"1\"",
1634 "wifi_csi_supported",
1635 "phy_combo_module",
1636 "phy_backed_up_digital_register_count=\"21\"",
1637 "phy_backed_up_digital_register_count_is_set",
1638 "ledc_version=\"2\"",
1639 "ledc_channel_count=\"6\"",
1640 "soc_has_sdm_ch0",
1641 "soc_has_sdm_ch1",
1642 "soc_has_sdm_ch2",
1643 "soc_has_sdm_ch3",
1644 "timergroup_timg_has_divcnt_rst",
1645 "timergroup_rc_fast_calibration_is_set",
1646 "aes_dma_mode_ecb",
1647 "aes_dma_mode_cbc",
1648 "aes_dma_mode_ofb",
1649 "aes_dma_mode_ctr",
1650 "aes_dma_mode_cfb8",
1651 "aes_dma_mode_cfb128",
1652 "aes_has_split_text_registers",
1653 "rng_apb_cycle_wait_num=\"16\"",
1654 "rng_trng_supported",
1655 "rsa_version=\"3\"",
1656 "rsa_size_increment=\"32\"",
1657 "rsa_memory_size_bytes=\"384\"",
1658 "sleep_light_sleep",
1659 "sleep_deep_sleep",
1660 "sleep_has_wakeup_source_gpio",
1661 "sleep_has_wakeup_source_timer",
1662 "sleep_has_wakeup_source_sdio",
1663 "sleep_has_wakeup_source_wifi",
1664 "sleep_has_wakeup_source_uart",
1665 "sleep_has_wakeup_source_touch",
1666 "sleep_has_wakeup_source_ulp",
1667 "sleep_has_wakeup_source_bt",
1668 "sleep_pin_wakeup_version=\"2\"",
1669 "sleep_pin_wakeup_version_is_set",
1670 "sleep_deep_sleep_needs_gpio_isolation",
1671 "assist_debug_has_sp_monitor",
1672 "assist_debug_has_region_monitor",
1673 "dma_mem2mem_requires_peripheral",
1674 "dma_gdma_version=\"1\"",
1675 "dma_gdma_version_is_set",
1676 "soc_has_dma_ch0",
1677 "soc_has_dma_ch1",
1678 "soc_has_dma_ch2",
1679 "dma_supports_mem2mem",
1680 "aes_supports_dma",
1681 "aes_dma_engine=\"AHB_GDMA\"",
1682 "sha_supports_dma",
1683 "sha_dma_engine=\"AHB_GDMA\"",
1684 "spi_master_supports_dma",
1685 "spi_master_dma_engine=\"AHB_GDMA\"",
1686 "spi_slave_supports_dma",
1687 "spi_slave_dma_engine=\"AHB_GDMA\"",
1688 "uhci_supports_dma",
1689 "uhci_dma_engine=\"AHB_GDMA\"",
1690 "i2s_supports_dma",
1691 "i2s_dma_engine=\"AHB_GDMA\"",
1692 "dma_max_priority=\"9\"",
1693 "dma_max_priority_is_set",
1694 "interrupts_status_registers=\"2\"",
1695 "interrupt_controller=\"riscv_basic\"",
1696 "mmu_page_size=\"65536\"",
1697 "mmu_entry_num=\"128\"",
1698 "rom_has_crc_le",
1699 "rom_has_crc_be",
1700 "rom_has_md5_bsd",
1701 "soc_cpu_has_csr_pc",
1702 "soc_has_swd_watchdog",
1703 "soc_cpu_mcause_mask=\"31\"",
1704 "soc_has_clock_node_xtal_clk",
1705 "soc_clock_node_xtal_clk_is_configurable",
1706 "soc_has_clock_node_pll_clk",
1707 "soc_clock_node_pll_clk_is_configurable",
1708 "soc_has_clock_node_rc_fast_clk",
1709 "soc_has_clock_node_xtal32k_clk",
1710 "soc_has_clock_node_rc_slow_clk",
1711 "soc_has_clock_node_rc_fast_div_clk",
1712 "soc_has_clock_node_system_pre_div_in",
1713 "soc_clock_node_system_pre_div_in_is_configurable",
1714 "soc_has_clock_node_system_pre_div",
1715 "soc_clock_node_system_pre_div_is_configurable",
1716 "soc_has_clock_node_cpu_pll_div_out",
1717 "soc_clock_node_cpu_pll_div_out_is_configurable",
1718 "soc_has_clock_node_cpu_clk",
1719 "soc_clock_node_cpu_clk_is_configurable",
1720 "soc_has_clock_node_pll_80m",
1721 "soc_has_clock_node_pll_160m",
1722 "soc_has_clock_node_apb_clk",
1723 "soc_clock_node_apb_clk_is_configurable",
1724 "soc_has_clock_node_crypto_clk",
1725 "soc_clock_node_crypto_clk_is_configurable",
1726 "soc_has_clock_node_rc_fast_clk_div_n",
1727 "soc_clock_node_rc_fast_clk_div_n_is_configurable",
1728 "soc_has_clock_node_xtal_div_clk",
1729 "soc_has_clock_node_rtc_slow_clk",
1730 "soc_clock_node_rtc_slow_clk_is_configurable",
1731 "soc_has_clock_node_rtc_fast_clk",
1732 "soc_clock_node_rtc_fast_clk_is_configurable",
1733 "soc_has_clock_node_low_power_clk",
1734 "soc_clock_node_low_power_clk_is_configurable",
1735 "soc_has_clock_node_uart_mem_clk",
1736 "soc_has_clock_node_timg_calibration_clock",
1737 "soc_clock_node_timg_calibration_clock_is_configurable",
1738 "soc_has_clock_node_timg_function_clock",
1739 "soc_clock_node_timg_function_clock_is_configurable",
1740 "soc_has_clock_node_timg_wdt_clock",
1741 "soc_clock_node_timg_wdt_clock_is_configurable",
1742 "soc_has_clock_node_sdm_function_clock",
1743 "soc_has_clock_node_rmt_sclk",
1744 "soc_clock_node_rmt_sclk_is_configurable",
1745 "soc_has_clock_node_uart_function_clock",
1746 "soc_clock_node_uart_function_clock_is_configurable",
1747 "soc_has_clock_node_uart_mem_clock",
1748 "soc_has_clock_node_uart_baud_rate_generator",
1749 "soc_clock_node_uart_baud_rate_generator_is_configurable",
1750 "soc_has_clock_node_i2c_function_clock",
1751 "soc_clock_node_i2c_function_clock_is_configurable",
1752 "soc_has_clock_node_spi_function_clock",
1753 "soc_clock_node_spi_function_clock_is_configurable",
1754 "has_dram_region",
1755 "has_dram2_uninit_region",
1756 "has_irom_region",
1757 "has_drom_region",
1758 ],
1759 cfgs: &[
1760 "cargo:rustc-cfg=esp32c3",
1761 "cargo:rustc-cfg=riscv",
1762 "cargo:rustc-cfg=single_core",
1763 "cargo:rustc-cfg=soc_has_aes",
1764 "cargo:rustc-cfg=soc_has_apb_ctrl",
1765 "cargo:rustc-cfg=soc_has_apb_saradc",
1766 "cargo:rustc-cfg=soc_has_assist_debug",
1767 "cargo:rustc-cfg=soc_has_bb",
1768 "cargo:rustc-cfg=soc_has_dma",
1769 "cargo:rustc-cfg=soc_has_ds",
1770 "cargo:rustc-cfg=soc_has_efuse",
1771 "cargo:rustc-cfg=soc_has_extmem",
1772 "cargo:rustc-cfg=soc_has_mmu_table",
1773 "cargo:rustc-cfg=soc_has_fe",
1774 "cargo:rustc-cfg=soc_has_fe2",
1775 "cargo:rustc-cfg=soc_has_gpio",
1776 "cargo:rustc-cfg=soc_has_gpio_sd",
1777 "cargo:rustc-cfg=soc_has_hmac",
1778 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
1779 "cargo:rustc-cfg=soc_has_i2c0",
1780 "cargo:rustc-cfg=soc_has_i2s0",
1781 "cargo:rustc-cfg=soc_has_interrupt_core0",
1782 "cargo:rustc-cfg=soc_has_io_mux",
1783 "cargo:rustc-cfg=soc_has_ledc",
1784 "cargo:rustc-cfg=soc_has_nrx",
1785 "cargo:rustc-cfg=soc_has_rmt",
1786 "cargo:rustc-cfg=soc_has_rng",
1787 "cargo:rustc-cfg=soc_has_rsa",
1788 "cargo:rustc-cfg=soc_has_lpwr",
1789 "cargo:rustc-cfg=soc_has_rtc_timer",
1790 "cargo:rustc-cfg=soc_has_sensitive",
1791 "cargo:rustc-cfg=soc_has_sha",
1792 "cargo:rustc-cfg=soc_has_spi0",
1793 "cargo:rustc-cfg=soc_has_spi1",
1794 "cargo:rustc-cfg=soc_has_spi2",
1795 "cargo:rustc-cfg=soc_has_system",
1796 "cargo:rustc-cfg=soc_has_systimer",
1797 "cargo:rustc-cfg=soc_has_timg0",
1798 "cargo:rustc-cfg=soc_has_timg1",
1799 "cargo:rustc-cfg=soc_has_twai0",
1800 "cargo:rustc-cfg=soc_has_uart0",
1801 "cargo:rustc-cfg=soc_has_uart1",
1802 "cargo:rustc-cfg=soc_has_uhci0",
1803 "cargo:rustc-cfg=soc_has_usb_device",
1804 "cargo:rustc-cfg=soc_has_xts_aes",
1805 "cargo:rustc-cfg=soc_has_adc1",
1806 "cargo:rustc-cfg=soc_has_adc2",
1807 "cargo:rustc-cfg=soc_has_bt",
1808 "cargo:rustc-cfg=soc_has_flash",
1809 "cargo:rustc-cfg=soc_has_gpio_dedicated",
1810 "cargo:rustc-cfg=soc_has_tsens",
1811 "cargo:rustc-cfg=soc_has_wifi",
1812 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
1813 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
1814 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
1815 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
1816 "cargo:rustc-cfg=gpio_driver_supported",
1817 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
1818 "cargo:rustc-cfg=io_mux_driver_supported",
1819 "cargo:rustc-cfg=lp_io_driver_supported",
1820 "cargo:rustc-cfg=uart_driver_supported",
1821 "cargo:rustc-cfg=uhci_driver_supported",
1822 "cargo:rustc-cfg=i2c_master_driver_supported",
1823 "cargo:rustc-cfg=i2c_slave_driver_supported",
1824 "cargo:rustc-cfg=spi_master_driver_supported",
1825 "cargo:rustc-cfg=spi_slave_driver_supported",
1826 "cargo:rustc-cfg=i2s_driver_supported",
1827 "cargo:rustc-cfg=rmt_driver_supported",
1828 "cargo:rustc-cfg=twai_driver_supported",
1829 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
1830 "cargo:rustc-cfg=bt_driver_supported",
1831 "cargo:rustc-cfg=wifi_driver_supported",
1832 "cargo:rustc-cfg=phy_driver_supported",
1833 "cargo:rustc-cfg=adc_driver_supported",
1834 "cargo:rustc-cfg=temp_sensor_driver_supported",
1835 "cargo:rustc-cfg=ledc_driver_supported",
1836 "cargo:rustc-cfg=lp_timer_driver_supported",
1837 "cargo:rustc-cfg=sdm_driver_supported",
1838 "cargo:rustc-cfg=systimer_driver_supported",
1839 "cargo:rustc-cfg=timergroup_driver_supported",
1840 "cargo:rustc-cfg=aes_driver_supported",
1841 "cargo:rustc-cfg=hmac_driver_supported",
1842 "cargo:rustc-cfg=rng_driver_supported",
1843 "cargo:rustc-cfg=rsa_driver_supported",
1844 "cargo:rustc-cfg=sha_driver_supported",
1845 "cargo:rustc-cfg=sleep_driver_supported",
1846 "cargo:rustc-cfg=assist_debug_driver_supported",
1847 "cargo:rustc-cfg=dma_driver_supported",
1848 "cargo:rustc-cfg=interrupts_driver_supported",
1849 "cargo:rustc-cfg=mmu_driver_supported",
1850 "cargo:rustc-cfg=rom_driver_supported",
1851 "cargo:rustc-cfg=soc_driver_supported",
1852 "cargo:rustc-cfg=uart_uart0",
1853 "cargo:rustc-cfg=uart_uart1",
1854 "cargo:rustc-cfg=i2c_master_i2c0",
1855 "cargo:rustc-cfg=i2c_slave_i2c0",
1856 "cargo:rustc-cfg=spi_master_spi2",
1857 "cargo:rustc-cfg=spi_slave_spi2",
1858 "cargo:rustc-cfg=i2s_i2s0",
1859 "cargo:rustc-cfg=adc_adc1",
1860 "cargo:rustc-cfg=adc_adc2",
1861 "cargo:rustc-cfg=timergroup_timg0",
1862 "cargo:rustc-cfg=timergroup_timg1",
1863 "cargo:rustc-cfg=gpio_version=\"2\"",
1864 "cargo:rustc-cfg=gpio_has_input_sync",
1865 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
1866 "cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
1867 "cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
1868 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
1869 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
1870 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
1871 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v1\"",
1872 "cargo:rustc-cfg=lp_io_version=\"v3\"",
1873 "cargo:rustc-cfg=uart_ram_size=\"128\"",
1874 "cargo:rustc-cfg=uart_version=\"1\"",
1875 "cargo:rustc-cfg=uart_has_sclk_divider",
1876 "cargo:rustc-cfg=uart_has_sclk_enable",
1877 "cargo:rustc-cfg=i2c_master_version=\"3\"",
1878 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
1879 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
1880 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
1881 "cargo:rustc-cfg=i2c_master_has_conf_update",
1882 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
1883 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
1884 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
1885 "cargo:rustc-cfg=i2c_master_has_pd_en",
1886 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
1887 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
1888 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
1889 "cargo:rustc-cfg=spi_master_version=\"3\"",
1890 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
1891 "cargo:rustc-cfg=spi_master_bit_order_is_bool",
1892 "cargo:rustc-cfg=spi_master_has_app_interrupts",
1893 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
1894 "cargo:rustc-cfg=i2s_version=\"2\"",
1895 "cargo:rustc-cfg=i2s_version_is_set",
1896 "cargo:rustc-cfg=i2s_default_clock_source=\"2\"",
1897 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
1898 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"9\"",
1899 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
1900 "cargo:rustc-cfg=i2s_max_ws_width=\"128\"",
1901 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
1902 "cargo:rustc-cfg=i2s_supports_pdm_tx",
1903 "cargo:rustc-cfg=i2s_supports_pdm_rx",
1904 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
1905 "cargo:rustc-cfg=rmt_ram_start=\"1610703872\"",
1906 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
1907 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
1908 "cargo:rustc-cfg=rmt_has_tx_loop_count",
1909 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
1910 "cargo:rustc-cfg=rmt_has_tx_sync",
1911 "cargo:rustc-cfg=rmt_has_rx_wrap",
1912 "cargo:rustc-cfg=rmt_has_rx_demodulation",
1913 "cargo:rustc-cfg=bt_controller=\"btdm\"",
1914 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
1915 "cargo:rustc-cfg=wifi_csi_supported",
1916 "cargo:rustc-cfg=phy_combo_module",
1917 "cargo:rustc-cfg=phy_backed_up_digital_register_count=\"21\"",
1918 "cargo:rustc-cfg=phy_backed_up_digital_register_count_is_set",
1919 "cargo:rustc-cfg=ledc_version=\"2\"",
1920 "cargo:rustc-cfg=ledc_channel_count=\"6\"",
1921 "cargo:rustc-cfg=soc_has_sdm_ch0",
1922 "cargo:rustc-cfg=soc_has_sdm_ch1",
1923 "cargo:rustc-cfg=soc_has_sdm_ch2",
1924 "cargo:rustc-cfg=soc_has_sdm_ch3",
1925 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
1926 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
1927 "cargo:rustc-cfg=aes_dma_mode_ecb",
1928 "cargo:rustc-cfg=aes_dma_mode_cbc",
1929 "cargo:rustc-cfg=aes_dma_mode_ofb",
1930 "cargo:rustc-cfg=aes_dma_mode_ctr",
1931 "cargo:rustc-cfg=aes_dma_mode_cfb8",
1932 "cargo:rustc-cfg=aes_dma_mode_cfb128",
1933 "cargo:rustc-cfg=aes_has_split_text_registers",
1934 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
1935 "cargo:rustc-cfg=rng_trng_supported",
1936 "cargo:rustc-cfg=rsa_version=\"3\"",
1937 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
1938 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
1939 "cargo:rustc-cfg=sleep_light_sleep",
1940 "cargo:rustc-cfg=sleep_deep_sleep",
1941 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
1942 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
1943 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
1944 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
1945 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
1946 "cargo:rustc-cfg=sleep_has_wakeup_source_touch",
1947 "cargo:rustc-cfg=sleep_has_wakeup_source_ulp",
1948 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
1949 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"2\"",
1950 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
1951 "cargo:rustc-cfg=sleep_deep_sleep_needs_gpio_isolation",
1952 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
1953 "cargo:rustc-cfg=assist_debug_has_region_monitor",
1954 "cargo:rustc-cfg=dma_mem2mem_requires_peripheral",
1955 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
1956 "cargo:rustc-cfg=dma_gdma_version_is_set",
1957 "cargo:rustc-cfg=soc_has_dma_ch0",
1958 "cargo:rustc-cfg=soc_has_dma_ch1",
1959 "cargo:rustc-cfg=soc_has_dma_ch2",
1960 "cargo:rustc-cfg=dma_supports_mem2mem",
1961 "cargo:rustc-cfg=aes_supports_dma",
1962 "cargo:rustc-cfg=aes_dma_engine=\"AHB_GDMA\"",
1963 "cargo:rustc-cfg=sha_supports_dma",
1964 "cargo:rustc-cfg=sha_dma_engine=\"AHB_GDMA\"",
1965 "cargo:rustc-cfg=spi_master_supports_dma",
1966 "cargo:rustc-cfg=spi_master_dma_engine=\"AHB_GDMA\"",
1967 "cargo:rustc-cfg=spi_slave_supports_dma",
1968 "cargo:rustc-cfg=spi_slave_dma_engine=\"AHB_GDMA\"",
1969 "cargo:rustc-cfg=uhci_supports_dma",
1970 "cargo:rustc-cfg=uhci_dma_engine=\"AHB_GDMA\"",
1971 "cargo:rustc-cfg=i2s_supports_dma",
1972 "cargo:rustc-cfg=i2s_dma_engine=\"AHB_GDMA\"",
1973 "cargo:rustc-cfg=dma_max_priority=\"9\"",
1974 "cargo:rustc-cfg=dma_max_priority_is_set",
1975 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
1976 "cargo:rustc-cfg=interrupt_controller=\"riscv_basic\"",
1977 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
1978 "cargo:rustc-cfg=mmu_entry_num=\"128\"",
1979 "cargo:rustc-cfg=rom_has_crc_le",
1980 "cargo:rustc-cfg=rom_has_crc_be",
1981 "cargo:rustc-cfg=rom_has_md5_bsd",
1982 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
1983 "cargo:rustc-cfg=soc_has_swd_watchdog",
1984 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"31\"",
1985 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
1986 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
1987 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
1988 "cargo:rustc-cfg=soc_clock_node_pll_clk_is_configurable",
1989 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
1990 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
1991 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
1992 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
1993 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
1994 "cargo:rustc-cfg=soc_clock_node_system_pre_div_in_is_configurable",
1995 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
1996 "cargo:rustc-cfg=soc_clock_node_system_pre_div_is_configurable",
1997 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_out",
1998 "cargo:rustc-cfg=soc_clock_node_cpu_pll_div_out_is_configurable",
1999 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
2000 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
2001 "cargo:rustc-cfg=soc_has_clock_node_pll_80m",
2002 "cargo:rustc-cfg=soc_has_clock_node_pll_160m",
2003 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
2004 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
2005 "cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
2006 "cargo:rustc-cfg=soc_clock_node_crypto_clk_is_configurable",
2007 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
2008 "cargo:rustc-cfg=soc_clock_node_rc_fast_clk_div_n_is_configurable",
2009 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
2010 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
2011 "cargo:rustc-cfg=soc_clock_node_rtc_slow_clk_is_configurable",
2012 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
2013 "cargo:rustc-cfg=soc_clock_node_rtc_fast_clk_is_configurable",
2014 "cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
2015 "cargo:rustc-cfg=soc_clock_node_low_power_clk_is_configurable",
2016 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
2017 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
2018 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
2019 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
2020 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
2021 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
2022 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
2023 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
2024 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
2025 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
2026 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
2027 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
2028 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
2029 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
2030 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
2031 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
2032 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
2033 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
2034 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
2035 "cargo:rustc-cfg=has_dram_region",
2036 "cargo:rustc-cfg=has_dram2_uninit_region",
2037 "cargo:rustc-cfg=has_irom_region",
2038 "cargo:rustc-cfg=has_drom_region",
2039 ],
2040 memory_layout: &MemoryLayout {
2041 regions: &[
2042 (
2043 "dram",
2044 MemoryRegion {
2045 address_range: 0x3FC80000..0x3FCE0000,
2046 },
2047 ),
2048 (
2049 "dram2_uninit",
2050 MemoryRegion {
2051 address_range: 0x3FCCE400..0x3FCDE710,
2052 },
2053 ),
2054 (
2055 "irom",
2056 MemoryRegion {
2057 address_range: 0x42000000..0x42800000,
2058 },
2059 ),
2060 (
2061 "drom",
2062 MemoryRegion {
2063 address_range: 0x3C000000..0x3C800000,
2064 },
2065 ),
2066 ],
2067 },
2068 pins: &[
2069 PinInfo {
2070 pin: 0,
2071 limitations: &[],
2072 },
2073 PinInfo {
2074 pin: 1,
2075 limitations: &[],
2076 },
2077 PinInfo {
2078 pin: 2,
2079 limitations: &["strapping"],
2080 },
2081 PinInfo {
2082 pin: 3,
2083 limitations: &[],
2084 },
2085 PinInfo {
2086 pin: 4,
2087 limitations: &["jtag"],
2088 },
2089 PinInfo {
2090 pin: 5,
2091 limitations: &["jtag"],
2092 },
2093 PinInfo {
2094 pin: 6,
2095 limitations: &["jtag"],
2096 },
2097 PinInfo {
2098 pin: 7,
2099 limitations: &["jtag"],
2100 },
2101 PinInfo {
2102 pin: 8,
2103 limitations: &["strapping"],
2104 },
2105 PinInfo {
2106 pin: 9,
2107 limitations: &["strapping"],
2108 },
2109 PinInfo {
2110 pin: 10,
2111 limitations: &[],
2112 },
2113 PinInfo {
2114 pin: 11,
2115 limitations: &["spi_flash"],
2116 },
2117 PinInfo {
2118 pin: 12,
2119 limitations: &["spi_flash"],
2120 },
2121 PinInfo {
2122 pin: 13,
2123 limitations: &["spi_flash"],
2124 },
2125 PinInfo {
2126 pin: 14,
2127 limitations: &["spi_flash"],
2128 },
2129 PinInfo {
2130 pin: 15,
2131 limitations: &["spi_flash"],
2132 },
2133 PinInfo {
2134 pin: 16,
2135 limitations: &["spi_flash"],
2136 },
2137 PinInfo {
2138 pin: 17,
2139 limitations: &["spi_flash"],
2140 },
2141 PinInfo {
2142 pin: 18,
2143 limitations: &["usb_jtag"],
2144 },
2145 PinInfo {
2146 pin: 19,
2147 limitations: &["usb_jtag"],
2148 },
2149 PinInfo {
2150 pin: 20,
2151 limitations: &["bootloader_uart"],
2152 },
2153 PinInfo {
2154 pin: 21,
2155 limitations: &["bootloader_uart"],
2156 },
2157 ],
2158 },
2159 Self::Esp32c5 => Config {
2160 architecture: "riscv",
2161 target: "riscv32imac-unknown-none-elf",
2162 symbols: &[
2163 "esp32c5",
2164 "riscv",
2165 "single_core",
2166 "soc_has_aes",
2167 "soc_has_assist_debug",
2168 "soc_has_apb_saradc",
2169 "soc_has_cache",
2170 "soc_has_clint",
2171 "soc_has_dma",
2172 "soc_has_ds",
2173 "soc_has_ecc",
2174 "soc_has_ecdsa",
2175 "soc_has_efuse",
2176 "soc_has_etm",
2177 "soc_has_gpio",
2178 "soc_has_gpio_sd",
2179 "soc_has_hmac",
2180 "soc_has_hp_apm",
2181 "soc_has_hp_sys",
2182 "soc_has_huk",
2183 "soc_has_i2c_ana_mst",
2184 "soc_has_i2c0",
2185 "soc_has_i2s0",
2186 "soc_has_ieee802154",
2187 "soc_has_interrupt_core0",
2188 "soc_has_intpri",
2189 "soc_has_io_mux",
2190 "soc_has_keymng",
2191 "soc_has_lp_ana",
2192 "soc_has_lp_aon",
2193 "soc_has_lp_apm0",
2194 "soc_has_lp_clkrst",
2195 "soc_has_lp_gpio",
2196 "soc_has_lp_i2c0",
2197 "soc_has_lp_i2c_ana_mst",
2198 "soc_has_lp_io_mux",
2199 "soc_has_lp_peri",
2200 "soc_has_lp_tee",
2201 "soc_has_rtc_timer",
2202 "soc_has_lp_uart",
2203 "soc_has_lp_wdt",
2204 "soc_has_lpwr",
2205 "soc_has_mcpwm0",
2206 "soc_has_mem_monitor",
2207 "soc_has_modem_lpcon",
2208 "soc_has_modem_syscon",
2209 "soc_has_parl_io",
2210 "soc_has_pau",
2211 "soc_has_pcnt",
2212 "soc_has_pcr",
2213 "soc_has_pmu",
2214 "soc_has_pvt_monitor",
2215 "soc_has_rmt",
2216 "soc_has_rng",
2217 "soc_has_rsa",
2218 "soc_has_sha",
2219 "soc_has_slc",
2220 "soc_has_spi0",
2221 "soc_has_spi1",
2222 "soc_has_spi2",
2223 "soc_has_system",
2224 "soc_has_systimer",
2225 "soc_has_tee",
2226 "soc_has_timg0",
2227 "soc_has_timg1",
2228 "soc_has_uart0",
2229 "soc_has_uart1",
2230 "soc_has_uhci0",
2231 "soc_has_usb_device",
2232 "soc_has_adc1",
2233 "soc_has_bt",
2234 "soc_has_flash",
2235 "soc_has_gpio_dedicated",
2236 "soc_has_lp_core",
2237 "soc_has_wifi",
2238 "soc_has_psram",
2239 "soc_has_from_cpu_intr0",
2240 "soc_has_from_cpu_intr1",
2241 "soc_has_from_cpu_intr2",
2242 "soc_has_from_cpu_intr3",
2243 "gpio_driver_supported",
2244 "dedicated_gpio_driver_supported",
2245 "io_mux_driver_supported",
2246 "lp_io_driver_supported",
2247 "uart_driver_supported",
2248 "uhci_driver_supported",
2249 "i2c_master_driver_supported",
2250 "lp_i2c_master_driver_supported",
2251 "spi_master_driver_supported",
2252 "spi_slave_driver_supported",
2253 "i2s_driver_supported",
2254 "parl_io_driver_supported",
2255 "rmt_driver_supported",
2256 "usb_serial_jtag_driver_supported",
2257 "bt_driver_supported",
2258 "wifi_driver_supported",
2259 "ieee802154_driver_supported",
2260 "phy_driver_supported",
2261 "adc_driver_supported",
2262 "pcnt_driver_supported",
2263 "lp_timer_driver_supported",
2264 "sdm_driver_supported",
2265 "systimer_driver_supported",
2266 "timergroup_driver_supported",
2267 "aes_driver_supported",
2268 "ecc_driver_supported",
2269 "rng_driver_supported",
2270 "rsa_driver_supported",
2271 "sha_driver_supported",
2272 "sleep_driver_supported",
2273 "assist_debug_driver_supported",
2274 "dma_driver_supported",
2275 "interrupts_driver_supported",
2276 "mmu_driver_supported",
2277 "psram_driver_supported",
2278 "rom_driver_supported",
2279 "soc_driver_supported",
2280 "uart_uart0",
2281 "uart_uart1",
2282 "i2c_master_i2c0",
2283 "spi_master_spi2",
2284 "spi_slave_spi2",
2285 "i2s_i2s0",
2286 "adc_adc1",
2287 "timergroup_timg0",
2288 "timergroup_timg1",
2289 "gpio_version=\"2\"",
2290 "gpio_has_input_sync",
2291 "gpio_gpio_function=\"1\"",
2292 "gpio_constant_0_input=\"96\"",
2293 "gpio_constant_1_input=\"64\"",
2294 "gpio_func_in_sel_offset=\"0\"",
2295 "soc_has_xtal32k_pads",
2296 "gpio_input_signal_max=\"116\"",
2297 "gpio_output_signal_max=\"256\"",
2298 "dedicated_gpio_version=\"riscv_v1\"",
2299 "lp_io_version=\"v4\"",
2300 "uart_ram_size=\"128\"",
2301 "uart_version=\"2\"",
2302 "uart_peripheral_controls_mem_clk",
2303 "uart_has_sclk_enable",
2304 "uhci_combined_uart_selector_field",
2305 "i2c_master_version=\"4\"",
2306 "i2c_master_has_fsm_timeouts",
2307 "i2c_master_has_hw_bus_clear",
2308 "i2c_master_has_bus_timeout_enable",
2309 "i2c_master_can_estimate_nack_reason",
2310 "i2c_master_has_conf_update",
2311 "i2c_master_has_reliable_fsm_reset",
2312 "i2c_master_has_arbitration_en",
2313 "i2c_master_has_tx_fifo_watermark",
2314 "i2c_master_bus_timeout_is_exponential",
2315 "i2c_master_has_pd_en",
2316 "i2c_master_max_bus_timeout=\"31\"",
2317 "i2c_master_ll_intr_mask=\"262143\"",
2318 "i2c_master_fifo_size=\"32\"",
2319 "lp_i2c_master_version=\"lp_i2c\"",
2320 "lp_i2c_master_fifo_size=\"16\"",
2321 "lp_i2c_master_fifo_size_is_set",
2322 "spi_master_version=\"3\"",
2323 "spi_master_fifo_size=\"64\"",
2324 "spi_master_has_app_interrupts",
2325 "spi_master_has_dma_segmented_transfer",
2326 "spi_master_has_clk_pre_div",
2327 "spi_master_dma_can_access_flash",
2328 "i2s_version=\"3\"",
2329 "i2s_version_is_set",
2330 "i2s_default_clock_source=\"2\"",
2331 "i2s_default_clock_source_is_set",
2332 "i2s_mclk_divider_bit_width=\"9\"",
2333 "i2s_mclk_divider_bit_width_is_set",
2334 "i2s_max_ws_width=\"512\"",
2335 "i2s_max_ws_width_is_set",
2336 "i2s_clock_configured_by_pcr",
2337 "i2s_supports_pdm_tx",
2338 "i2s_supports_pdm_rx",
2339 "i2s_supports_pcm2pdm",
2340 "parl_io_version=\"2\"",
2341 "rmt_ram_start=\"1610638336\"",
2342 "rmt_channel_ram_size=\"48\"",
2343 "rmt_has_tx_immediate_stop",
2344 "rmt_has_tx_loop_count",
2345 "rmt_has_tx_loop_auto_stop",
2346 "rmt_has_tx_carrier_data_only",
2347 "rmt_has_tx_sync",
2348 "rmt_has_rx_wrap",
2349 "rmt_has_rx_demodulation",
2350 "bt_controller=\"npl\"",
2351 "wifi_mac_version=\"3\"",
2352 "wifi_has_5g",
2353 "wifi_csi_supported",
2354 "phy_combo_module",
2355 "soc_has_sdm_ch0",
2356 "soc_has_sdm_ch1",
2357 "soc_has_sdm_ch2",
2358 "soc_has_sdm_ch3",
2359 "timergroup_timg_has_divcnt_rst",
2360 "timergroup_rc_fast_calibration_divider",
2361 "timergroup_rc_fast_calibration_is_set",
2362 "aes_dma_mode_ecb",
2363 "aes_dma_mode_cbc",
2364 "aes_dma_mode_ofb",
2365 "aes_dma_mode_ctr",
2366 "aes_dma_mode_cfb8",
2367 "aes_dma_mode_cfb128",
2368 "aes_has_split_text_registers",
2369 "ecc_separate_jacobian_point_memory",
2370 "ecc_has_memory_clock_gate",
2371 "ecc_supports_enhanced_security",
2372 "ecc_has_modular_arithmetic",
2373 "ecc_has_point_addition",
2374 "ecc_has_curve_p192",
2375 "ecc_has_curve_p256",
2376 "ecc_has_curve_p384",
2377 "rng_apb_cycle_wait_num=\"16\"",
2378 "rng_is_lp_sys",
2379 "rsa_version=\"3\"",
2380 "rsa_size_increment=\"32\"",
2381 "rsa_memory_size_bytes=\"384\"",
2382 "sleep_light_sleep",
2383 "sleep_deep_sleep",
2384 "sleep_has_wakeup_source_ext1",
2385 "sleep_has_wakeup_source_gpio",
2386 "sleep_has_wakeup_source_wifi_beacon",
2387 "sleep_has_wakeup_source_timer",
2388 "sleep_has_wakeup_source_wifi",
2389 "sleep_has_wakeup_source_uart",
2390 "sleep_has_wakeup_source_sdio",
2391 "sleep_has_wakeup_source_bt",
2392 "sleep_has_wakeup_source_lp_core",
2393 "sleep_ext1_version=\"2\"",
2394 "sleep_ext1_version_is_set",
2395 "sleep_pin_wakeup_version=\"3\"",
2396 "sleep_pin_wakeup_version_is_set",
2397 "assist_debug_has_sp_monitor",
2398 "assist_debug_has_region_monitor",
2399 "dma_separate_in_out_interrupts",
2400 "dma_gdma_version=\"2\"",
2401 "dma_gdma_version_is_set",
2402 "soc_has_dma_ch0",
2403 "soc_has_dma_ch1",
2404 "soc_has_dma_ch2",
2405 "dma_supports_mem2mem",
2406 "aes_supports_dma",
2407 "aes_dma_engine=\"AHB_GDMA\"",
2408 "sha_supports_dma",
2409 "sha_dma_engine=\"AHB_GDMA\"",
2410 "spi_master_supports_dma",
2411 "spi_master_dma_engine=\"AHB_GDMA\"",
2412 "spi_slave_supports_dma",
2413 "spi_slave_dma_engine=\"AHB_GDMA\"",
2414 "uhci_supports_dma",
2415 "uhci_dma_engine=\"AHB_GDMA\"",
2416 "i2s_supports_dma",
2417 "i2s_dma_engine=\"AHB_GDMA\"",
2418 "parl_io_supports_dma",
2419 "parl_io_dma_engine=\"AHB_GDMA\"",
2420 "dma_can_access_psram",
2421 "dma_max_priority=\"5\"",
2422 "dma_max_priority_is_set",
2423 "interrupts_status_registers=\"3\"",
2424 "interrupt_controller=\"clic\"",
2425 "mmu_page_size=\"65536\"",
2426 "mmu_entry_num=\"512\"",
2427 "psram_extmem_origin=\"1107296256\"",
2428 "rom_has_crc_le",
2429 "rom_has_crc_be",
2430 "rom_has_md5_bsd",
2431 "soc_cpu_has_branch_predictor",
2432 "soc_cpu_csr_prv_mode=\"2064\"",
2433 "soc_cpu_csr_prv_mode_is_set",
2434 "soc_has_swd_watchdog",
2435 "soc_cpu_mcause_mask=\"31\"",
2436 "soc_has_clock_node_xtal_clk",
2437 "soc_clock_node_xtal_clk_is_configurable",
2438 "soc_has_clock_node_pll_clk",
2439 "soc_has_clock_node_rc_fast_clk",
2440 "soc_has_clock_node_xtal32k_clk",
2441 "soc_has_clock_node_osc_slow_clk",
2442 "soc_has_clock_node_rc_slow_clk",
2443 "soc_has_clock_node_pll_f12m",
2444 "soc_has_clock_node_pll_f20m",
2445 "soc_has_clock_node_pll_f40m",
2446 "soc_has_clock_node_pll_f48m",
2447 "soc_has_clock_node_pll_f60m",
2448 "soc_has_clock_node_pll_f80m",
2449 "soc_has_clock_node_pll_f120m",
2450 "soc_has_clock_node_pll_f160m",
2451 "soc_has_clock_node_pll_f240m",
2452 "soc_has_clock_node_hp_root_clk",
2453 "soc_clock_node_hp_root_clk_is_configurable",
2454 "soc_has_clock_node_cpu_clk",
2455 "soc_clock_node_cpu_clk_is_configurable",
2456 "soc_has_clock_node_ahb_clk",
2457 "soc_clock_node_ahb_clk_is_configurable",
2458 "soc_has_clock_node_apb_clk",
2459 "soc_clock_node_apb_clk_is_configurable",
2460 "soc_has_clock_node_xtal_d2_clk",
2461 "soc_has_clock_node_lp_fast_clk",
2462 "soc_clock_node_lp_fast_clk_is_configurable",
2463 "soc_has_clock_node_lp_slow_clk",
2464 "soc_clock_node_lp_slow_clk_is_configurable",
2465 "soc_has_clock_node_crypto_clk",
2466 "soc_clock_node_crypto_clk_is_configurable",
2467 "soc_has_clock_node_iomux_function_clock",
2468 "soc_clock_node_iomux_function_clock_is_configurable",
2469 "soc_has_clock_node_timg_calibration_clock",
2470 "soc_clock_node_timg_calibration_clock_is_configurable",
2471 "soc_has_clock_node_uart_function_clock",
2472 "soc_clock_node_uart_function_clock_is_configurable",
2473 "soc_has_clock_node_uart_baud_rate_generator",
2474 "soc_clock_node_uart_baud_rate_generator_is_configurable",
2475 "soc_has_clock_node_timg_function_clock",
2476 "soc_clock_node_timg_function_clock_is_configurable",
2477 "soc_has_clock_node_timg_wdt_clock",
2478 "soc_clock_node_timg_wdt_clock_is_configurable",
2479 "soc_has_clock_node_sdm_function_clock",
2480 "soc_has_clock_node_rmt_sclk",
2481 "soc_clock_node_rmt_sclk_is_configurable",
2482 "soc_has_clock_node_parl_io_rx_clock",
2483 "soc_clock_node_parl_io_rx_clock_is_configurable",
2484 "soc_has_clock_node_parl_io_tx_clock",
2485 "soc_clock_node_parl_io_tx_clock_is_configurable",
2486 "soc_has_clock_node_i2c_function_clock",
2487 "soc_clock_node_i2c_function_clock_is_configurable",
2488 "soc_has_clock_node_spi_function_clock",
2489 "soc_clock_node_spi_function_clock_is_configurable",
2490 "has_dram_region",
2491 "has_dram2_uninit_region",
2492 "has_irom_region",
2493 "has_drom_region",
2494 ],
2495 cfgs: &[
2496 "cargo:rustc-cfg=esp32c5",
2497 "cargo:rustc-cfg=riscv",
2498 "cargo:rustc-cfg=single_core",
2499 "cargo:rustc-cfg=soc_has_aes",
2500 "cargo:rustc-cfg=soc_has_assist_debug",
2501 "cargo:rustc-cfg=soc_has_apb_saradc",
2502 "cargo:rustc-cfg=soc_has_cache",
2503 "cargo:rustc-cfg=soc_has_clint",
2504 "cargo:rustc-cfg=soc_has_dma",
2505 "cargo:rustc-cfg=soc_has_ds",
2506 "cargo:rustc-cfg=soc_has_ecc",
2507 "cargo:rustc-cfg=soc_has_ecdsa",
2508 "cargo:rustc-cfg=soc_has_efuse",
2509 "cargo:rustc-cfg=soc_has_etm",
2510 "cargo:rustc-cfg=soc_has_gpio",
2511 "cargo:rustc-cfg=soc_has_gpio_sd",
2512 "cargo:rustc-cfg=soc_has_hmac",
2513 "cargo:rustc-cfg=soc_has_hp_apm",
2514 "cargo:rustc-cfg=soc_has_hp_sys",
2515 "cargo:rustc-cfg=soc_has_huk",
2516 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
2517 "cargo:rustc-cfg=soc_has_i2c0",
2518 "cargo:rustc-cfg=soc_has_i2s0",
2519 "cargo:rustc-cfg=soc_has_ieee802154",
2520 "cargo:rustc-cfg=soc_has_interrupt_core0",
2521 "cargo:rustc-cfg=soc_has_intpri",
2522 "cargo:rustc-cfg=soc_has_io_mux",
2523 "cargo:rustc-cfg=soc_has_keymng",
2524 "cargo:rustc-cfg=soc_has_lp_ana",
2525 "cargo:rustc-cfg=soc_has_lp_aon",
2526 "cargo:rustc-cfg=soc_has_lp_apm0",
2527 "cargo:rustc-cfg=soc_has_lp_clkrst",
2528 "cargo:rustc-cfg=soc_has_lp_gpio",
2529 "cargo:rustc-cfg=soc_has_lp_i2c0",
2530 "cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
2531 "cargo:rustc-cfg=soc_has_lp_io_mux",
2532 "cargo:rustc-cfg=soc_has_lp_peri",
2533 "cargo:rustc-cfg=soc_has_lp_tee",
2534 "cargo:rustc-cfg=soc_has_rtc_timer",
2535 "cargo:rustc-cfg=soc_has_lp_uart",
2536 "cargo:rustc-cfg=soc_has_lp_wdt",
2537 "cargo:rustc-cfg=soc_has_lpwr",
2538 "cargo:rustc-cfg=soc_has_mcpwm0",
2539 "cargo:rustc-cfg=soc_has_mem_monitor",
2540 "cargo:rustc-cfg=soc_has_modem_lpcon",
2541 "cargo:rustc-cfg=soc_has_modem_syscon",
2542 "cargo:rustc-cfg=soc_has_parl_io",
2543 "cargo:rustc-cfg=soc_has_pau",
2544 "cargo:rustc-cfg=soc_has_pcnt",
2545 "cargo:rustc-cfg=soc_has_pcr",
2546 "cargo:rustc-cfg=soc_has_pmu",
2547 "cargo:rustc-cfg=soc_has_pvt_monitor",
2548 "cargo:rustc-cfg=soc_has_rmt",
2549 "cargo:rustc-cfg=soc_has_rng",
2550 "cargo:rustc-cfg=soc_has_rsa",
2551 "cargo:rustc-cfg=soc_has_sha",
2552 "cargo:rustc-cfg=soc_has_slc",
2553 "cargo:rustc-cfg=soc_has_spi0",
2554 "cargo:rustc-cfg=soc_has_spi1",
2555 "cargo:rustc-cfg=soc_has_spi2",
2556 "cargo:rustc-cfg=soc_has_system",
2557 "cargo:rustc-cfg=soc_has_systimer",
2558 "cargo:rustc-cfg=soc_has_tee",
2559 "cargo:rustc-cfg=soc_has_timg0",
2560 "cargo:rustc-cfg=soc_has_timg1",
2561 "cargo:rustc-cfg=soc_has_uart0",
2562 "cargo:rustc-cfg=soc_has_uart1",
2563 "cargo:rustc-cfg=soc_has_uhci0",
2564 "cargo:rustc-cfg=soc_has_usb_device",
2565 "cargo:rustc-cfg=soc_has_adc1",
2566 "cargo:rustc-cfg=soc_has_bt",
2567 "cargo:rustc-cfg=soc_has_flash",
2568 "cargo:rustc-cfg=soc_has_gpio_dedicated",
2569 "cargo:rustc-cfg=soc_has_lp_core",
2570 "cargo:rustc-cfg=soc_has_wifi",
2571 "cargo:rustc-cfg=soc_has_psram",
2572 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
2573 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
2574 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
2575 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
2576 "cargo:rustc-cfg=gpio_driver_supported",
2577 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
2578 "cargo:rustc-cfg=io_mux_driver_supported",
2579 "cargo:rustc-cfg=lp_io_driver_supported",
2580 "cargo:rustc-cfg=uart_driver_supported",
2581 "cargo:rustc-cfg=uhci_driver_supported",
2582 "cargo:rustc-cfg=i2c_master_driver_supported",
2583 "cargo:rustc-cfg=lp_i2c_master_driver_supported",
2584 "cargo:rustc-cfg=spi_master_driver_supported",
2585 "cargo:rustc-cfg=spi_slave_driver_supported",
2586 "cargo:rustc-cfg=i2s_driver_supported",
2587 "cargo:rustc-cfg=parl_io_driver_supported",
2588 "cargo:rustc-cfg=rmt_driver_supported",
2589 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
2590 "cargo:rustc-cfg=bt_driver_supported",
2591 "cargo:rustc-cfg=wifi_driver_supported",
2592 "cargo:rustc-cfg=ieee802154_driver_supported",
2593 "cargo:rustc-cfg=phy_driver_supported",
2594 "cargo:rustc-cfg=adc_driver_supported",
2595 "cargo:rustc-cfg=pcnt_driver_supported",
2596 "cargo:rustc-cfg=lp_timer_driver_supported",
2597 "cargo:rustc-cfg=sdm_driver_supported",
2598 "cargo:rustc-cfg=systimer_driver_supported",
2599 "cargo:rustc-cfg=timergroup_driver_supported",
2600 "cargo:rustc-cfg=aes_driver_supported",
2601 "cargo:rustc-cfg=ecc_driver_supported",
2602 "cargo:rustc-cfg=rng_driver_supported",
2603 "cargo:rustc-cfg=rsa_driver_supported",
2604 "cargo:rustc-cfg=sha_driver_supported",
2605 "cargo:rustc-cfg=sleep_driver_supported",
2606 "cargo:rustc-cfg=assist_debug_driver_supported",
2607 "cargo:rustc-cfg=dma_driver_supported",
2608 "cargo:rustc-cfg=interrupts_driver_supported",
2609 "cargo:rustc-cfg=mmu_driver_supported",
2610 "cargo:rustc-cfg=psram_driver_supported",
2611 "cargo:rustc-cfg=rom_driver_supported",
2612 "cargo:rustc-cfg=soc_driver_supported",
2613 "cargo:rustc-cfg=uart_uart0",
2614 "cargo:rustc-cfg=uart_uart1",
2615 "cargo:rustc-cfg=i2c_master_i2c0",
2616 "cargo:rustc-cfg=spi_master_spi2",
2617 "cargo:rustc-cfg=spi_slave_spi2",
2618 "cargo:rustc-cfg=i2s_i2s0",
2619 "cargo:rustc-cfg=adc_adc1",
2620 "cargo:rustc-cfg=timergroup_timg0",
2621 "cargo:rustc-cfg=timergroup_timg1",
2622 "cargo:rustc-cfg=gpio_version=\"2\"",
2623 "cargo:rustc-cfg=gpio_has_input_sync",
2624 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
2625 "cargo:rustc-cfg=gpio_constant_0_input=\"96\"",
2626 "cargo:rustc-cfg=gpio_constant_1_input=\"64\"",
2627 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
2628 "cargo:rustc-cfg=soc_has_xtal32k_pads",
2629 "cargo:rustc-cfg=gpio_input_signal_max=\"116\"",
2630 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
2631 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v1\"",
2632 "cargo:rustc-cfg=lp_io_version=\"v4\"",
2633 "cargo:rustc-cfg=uart_ram_size=\"128\"",
2634 "cargo:rustc-cfg=uart_version=\"2\"",
2635 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
2636 "cargo:rustc-cfg=uart_has_sclk_enable",
2637 "cargo:rustc-cfg=uhci_combined_uart_selector_field",
2638 "cargo:rustc-cfg=i2c_master_version=\"4\"",
2639 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
2640 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
2641 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
2642 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
2643 "cargo:rustc-cfg=i2c_master_has_conf_update",
2644 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
2645 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
2646 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
2647 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
2648 "cargo:rustc-cfg=i2c_master_has_pd_en",
2649 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
2650 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
2651 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
2652 "cargo:rustc-cfg=lp_i2c_master_version=\"lp_i2c\"",
2653 "cargo:rustc-cfg=lp_i2c_master_fifo_size=\"16\"",
2654 "cargo:rustc-cfg=lp_i2c_master_fifo_size_is_set",
2655 "cargo:rustc-cfg=spi_master_version=\"3\"",
2656 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
2657 "cargo:rustc-cfg=spi_master_has_app_interrupts",
2658 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
2659 "cargo:rustc-cfg=spi_master_has_clk_pre_div",
2660 "cargo:rustc-cfg=spi_master_dma_can_access_flash",
2661 "cargo:rustc-cfg=i2s_version=\"3\"",
2662 "cargo:rustc-cfg=i2s_version_is_set",
2663 "cargo:rustc-cfg=i2s_default_clock_source=\"2\"",
2664 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
2665 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"9\"",
2666 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
2667 "cargo:rustc-cfg=i2s_max_ws_width=\"512\"",
2668 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
2669 "cargo:rustc-cfg=i2s_clock_configured_by_pcr",
2670 "cargo:rustc-cfg=i2s_supports_pdm_tx",
2671 "cargo:rustc-cfg=i2s_supports_pdm_rx",
2672 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
2673 "cargo:rustc-cfg=parl_io_version=\"2\"",
2674 "cargo:rustc-cfg=rmt_ram_start=\"1610638336\"",
2675 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
2676 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
2677 "cargo:rustc-cfg=rmt_has_tx_loop_count",
2678 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
2679 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
2680 "cargo:rustc-cfg=rmt_has_tx_sync",
2681 "cargo:rustc-cfg=rmt_has_rx_wrap",
2682 "cargo:rustc-cfg=rmt_has_rx_demodulation",
2683 "cargo:rustc-cfg=bt_controller=\"npl\"",
2684 "cargo:rustc-cfg=wifi_mac_version=\"3\"",
2685 "cargo:rustc-cfg=wifi_has_5g",
2686 "cargo:rustc-cfg=wifi_csi_supported",
2687 "cargo:rustc-cfg=phy_combo_module",
2688 "cargo:rustc-cfg=soc_has_sdm_ch0",
2689 "cargo:rustc-cfg=soc_has_sdm_ch1",
2690 "cargo:rustc-cfg=soc_has_sdm_ch2",
2691 "cargo:rustc-cfg=soc_has_sdm_ch3",
2692 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
2693 "cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
2694 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
2695 "cargo:rustc-cfg=aes_dma_mode_ecb",
2696 "cargo:rustc-cfg=aes_dma_mode_cbc",
2697 "cargo:rustc-cfg=aes_dma_mode_ofb",
2698 "cargo:rustc-cfg=aes_dma_mode_ctr",
2699 "cargo:rustc-cfg=aes_dma_mode_cfb8",
2700 "cargo:rustc-cfg=aes_dma_mode_cfb128",
2701 "cargo:rustc-cfg=aes_has_split_text_registers",
2702 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
2703 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
2704 "cargo:rustc-cfg=ecc_supports_enhanced_security",
2705 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
2706 "cargo:rustc-cfg=ecc_has_point_addition",
2707 "cargo:rustc-cfg=ecc_has_curve_p192",
2708 "cargo:rustc-cfg=ecc_has_curve_p256",
2709 "cargo:rustc-cfg=ecc_has_curve_p384",
2710 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
2711 "cargo:rustc-cfg=rng_is_lp_sys",
2712 "cargo:rustc-cfg=rsa_version=\"3\"",
2713 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
2714 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
2715 "cargo:rustc-cfg=sleep_light_sleep",
2716 "cargo:rustc-cfg=sleep_deep_sleep",
2717 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
2718 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
2719 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi_beacon",
2720 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
2721 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
2722 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
2723 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
2724 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
2725 "cargo:rustc-cfg=sleep_has_wakeup_source_lp_core",
2726 "cargo:rustc-cfg=sleep_ext1_version=\"2\"",
2727 "cargo:rustc-cfg=sleep_ext1_version_is_set",
2728 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"3\"",
2729 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
2730 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
2731 "cargo:rustc-cfg=assist_debug_has_region_monitor",
2732 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
2733 "cargo:rustc-cfg=dma_gdma_version=\"2\"",
2734 "cargo:rustc-cfg=dma_gdma_version_is_set",
2735 "cargo:rustc-cfg=soc_has_dma_ch0",
2736 "cargo:rustc-cfg=soc_has_dma_ch1",
2737 "cargo:rustc-cfg=soc_has_dma_ch2",
2738 "cargo:rustc-cfg=dma_supports_mem2mem",
2739 "cargo:rustc-cfg=aes_supports_dma",
2740 "cargo:rustc-cfg=aes_dma_engine=\"AHB_GDMA\"",
2741 "cargo:rustc-cfg=sha_supports_dma",
2742 "cargo:rustc-cfg=sha_dma_engine=\"AHB_GDMA\"",
2743 "cargo:rustc-cfg=spi_master_supports_dma",
2744 "cargo:rustc-cfg=spi_master_dma_engine=\"AHB_GDMA\"",
2745 "cargo:rustc-cfg=spi_slave_supports_dma",
2746 "cargo:rustc-cfg=spi_slave_dma_engine=\"AHB_GDMA\"",
2747 "cargo:rustc-cfg=uhci_supports_dma",
2748 "cargo:rustc-cfg=uhci_dma_engine=\"AHB_GDMA\"",
2749 "cargo:rustc-cfg=i2s_supports_dma",
2750 "cargo:rustc-cfg=i2s_dma_engine=\"AHB_GDMA\"",
2751 "cargo:rustc-cfg=parl_io_supports_dma",
2752 "cargo:rustc-cfg=parl_io_dma_engine=\"AHB_GDMA\"",
2753 "cargo:rustc-cfg=dma_can_access_psram",
2754 "cargo:rustc-cfg=dma_max_priority=\"5\"",
2755 "cargo:rustc-cfg=dma_max_priority_is_set",
2756 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
2757 "cargo:rustc-cfg=interrupt_controller=\"clic\"",
2758 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
2759 "cargo:rustc-cfg=mmu_entry_num=\"512\"",
2760 "cargo:rustc-cfg=psram_extmem_origin=\"1107296256\"",
2761 "cargo:rustc-cfg=rom_has_crc_le",
2762 "cargo:rustc-cfg=rom_has_crc_be",
2763 "cargo:rustc-cfg=rom_has_md5_bsd",
2764 "cargo:rustc-cfg=soc_cpu_has_branch_predictor",
2765 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"2064\"",
2766 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
2767 "cargo:rustc-cfg=soc_has_swd_watchdog",
2768 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"31\"",
2769 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
2770 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
2771 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
2772 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
2773 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
2774 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
2775 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
2776 "cargo:rustc-cfg=soc_has_clock_node_pll_f12m",
2777 "cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
2778 "cargo:rustc-cfg=soc_has_clock_node_pll_f40m",
2779 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
2780 "cargo:rustc-cfg=soc_has_clock_node_pll_f60m",
2781 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
2782 "cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
2783 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
2784 "cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
2785 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
2786 "cargo:rustc-cfg=soc_clock_node_hp_root_clk_is_configurable",
2787 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
2788 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
2789 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
2790 "cargo:rustc-cfg=soc_clock_node_ahb_clk_is_configurable",
2791 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
2792 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
2793 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
2794 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
2795 "cargo:rustc-cfg=soc_clock_node_lp_fast_clk_is_configurable",
2796 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
2797 "cargo:rustc-cfg=soc_clock_node_lp_slow_clk_is_configurable",
2798 "cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
2799 "cargo:rustc-cfg=soc_clock_node_crypto_clk_is_configurable",
2800 "cargo:rustc-cfg=soc_has_clock_node_iomux_function_clock",
2801 "cargo:rustc-cfg=soc_clock_node_iomux_function_clock_is_configurable",
2802 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
2803 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
2804 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
2805 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
2806 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
2807 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
2808 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
2809 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
2810 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
2811 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
2812 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
2813 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
2814 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
2815 "cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
2816 "cargo:rustc-cfg=soc_clock_node_parl_io_rx_clock_is_configurable",
2817 "cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
2818 "cargo:rustc-cfg=soc_clock_node_parl_io_tx_clock_is_configurable",
2819 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
2820 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
2821 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
2822 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
2823 "cargo:rustc-cfg=has_dram_region",
2824 "cargo:rustc-cfg=has_dram2_uninit_region",
2825 "cargo:rustc-cfg=has_irom_region",
2826 "cargo:rustc-cfg=has_drom_region",
2827 ],
2828 memory_layout: &MemoryLayout {
2829 regions: &[
2830 (
2831 "dram",
2832 MemoryRegion {
2833 address_range: 0x40800000..0x40860000,
2834 },
2835 ),
2836 (
2837 "dram2_uninit",
2838 MemoryRegion {
2839 address_range: 0x4084E5A0..0x4085E5A0,
2840 },
2841 ),
2842 (
2843 "irom",
2844 MemoryRegion {
2845 address_range: 0x42000000..0x44000000,
2846 },
2847 ),
2848 (
2849 "drom",
2850 MemoryRegion {
2851 address_range: 0x42000000..0x44000000,
2852 },
2853 ),
2854 ],
2855 },
2856 pins: &[
2857 PinInfo {
2858 pin: 0,
2859 limitations: &[],
2860 },
2861 PinInfo {
2862 pin: 1,
2863 limitations: &[],
2864 },
2865 PinInfo {
2866 pin: 2,
2867 limitations: &["strapping", "jtag"],
2868 },
2869 PinInfo {
2870 pin: 3,
2871 limitations: &["strapping", "jtag"],
2872 },
2873 PinInfo {
2874 pin: 4,
2875 limitations: &["jtag"],
2876 },
2877 PinInfo {
2878 pin: 5,
2879 limitations: &["jtag"],
2880 },
2881 PinInfo {
2882 pin: 6,
2883 limitations: &[],
2884 },
2885 PinInfo {
2886 pin: 7,
2887 limitations: &["strapping"],
2888 },
2889 PinInfo {
2890 pin: 8,
2891 limitations: &[],
2892 },
2893 PinInfo {
2894 pin: 9,
2895 limitations: &[],
2896 },
2897 PinInfo {
2898 pin: 10,
2899 limitations: &[],
2900 },
2901 PinInfo {
2902 pin: 11,
2903 limitations: &["bootloader_uart"],
2904 },
2905 PinInfo {
2906 pin: 12,
2907 limitations: &["bootloader_uart"],
2908 },
2909 PinInfo {
2910 pin: 13,
2911 limitations: &["usb_jtag"],
2912 },
2913 PinInfo {
2914 pin: 14,
2915 limitations: &["usb_jtag"],
2916 },
2917 PinInfo {
2918 pin: 15,
2919 limitations: &["spi_psram"],
2920 },
2921 PinInfo {
2922 pin: 16,
2923 limitations: &["spi_flash"],
2924 },
2925 PinInfo {
2926 pin: 17,
2927 limitations: &["spi_flash", "spi_psram"],
2928 },
2929 PinInfo {
2930 pin: 18,
2931 limitations: &["spi_flash", "spi_psram"],
2932 },
2933 PinInfo {
2934 pin: 19,
2935 limitations: &["spi_flash", "spi_psram"],
2936 },
2937 PinInfo {
2938 pin: 20,
2939 limitations: &["spi_flash", "spi_psram"],
2940 },
2941 PinInfo {
2942 pin: 21,
2943 limitations: &["spi_flash", "spi_psram"],
2944 },
2945 PinInfo {
2946 pin: 22,
2947 limitations: &["spi_flash", "spi_psram"],
2948 },
2949 PinInfo {
2950 pin: 23,
2951 limitations: &[],
2952 },
2953 PinInfo {
2954 pin: 24,
2955 limitations: &[],
2956 },
2957 PinInfo {
2958 pin: 25,
2959 limitations: &["strapping"],
2960 },
2961 PinInfo {
2962 pin: 26,
2963 limitations: &["strapping"],
2964 },
2965 PinInfo {
2966 pin: 27,
2967 limitations: &["strapping"],
2968 },
2969 PinInfo {
2970 pin: 28,
2971 limitations: &["strapping"],
2972 },
2973 ],
2974 },
2975 Self::Esp32c6 => Config {
2976 architecture: "riscv",
2977 target: "riscv32imac-unknown-none-elf",
2978 symbols: &[
2979 "esp32c6",
2980 "riscv",
2981 "single_core",
2982 "soc_has_aes",
2983 "soc_has_apb_saradc",
2984 "soc_has_assist_debug",
2985 "soc_has_atomic",
2986 "soc_has_dma",
2987 "soc_has_ds",
2988 "soc_has_ecc",
2989 "soc_has_efuse",
2990 "soc_has_extmem",
2991 "soc_has_gpio",
2992 "soc_has_gpio_sd",
2993 "soc_has_hinf",
2994 "soc_has_hmac",
2995 "soc_has_hp_apm",
2996 "soc_has_hp_sys",
2997 "soc_has_i2c_ana_mst",
2998 "soc_has_i2c0",
2999 "soc_has_i2s0",
3000 "soc_has_ieee802154",
3001 "soc_has_interrupt_core0",
3002 "soc_has_intpri",
3003 "soc_has_io_mux",
3004 "soc_has_ledc",
3005 "soc_has_lp_ana",
3006 "soc_has_lp_aon",
3007 "soc_has_lp_apm",
3008 "soc_has_lp_apm0",
3009 "soc_has_lp_clkrst",
3010 "soc_has_lp_i2c0",
3011 "soc_has_lp_i2c_ana_mst",
3012 "soc_has_lp_io",
3013 "soc_has_lp_peri",
3014 "soc_has_lp_tee",
3015 "soc_has_rtc_timer",
3016 "soc_has_lp_uart",
3017 "soc_has_lp_wdt",
3018 "soc_has_lpwr",
3019 "soc_has_mcpwm0",
3020 "soc_has_mem_monitor",
3021 "soc_has_modem_lpcon",
3022 "soc_has_modem_syscon",
3023 "soc_has_otp_debug",
3024 "soc_has_parl_io",
3025 "soc_has_pau",
3026 "soc_has_pcnt",
3027 "soc_has_pcr",
3028 "soc_has_plic_mx",
3029 "soc_has_pmu",
3030 "soc_has_rmt",
3031 "soc_has_rng",
3032 "soc_has_rsa",
3033 "soc_has_sha",
3034 "soc_has_slchost",
3035 "soc_has_etm",
3036 "soc_has_spi0",
3037 "soc_has_spi1",
3038 "soc_has_spi2",
3039 "soc_has_system",
3040 "soc_has_systimer",
3041 "soc_has_tee",
3042 "soc_has_timg0",
3043 "soc_has_timg1",
3044 "soc_has_trace0",
3045 "soc_has_twai0",
3046 "soc_has_twai1",
3047 "soc_has_uart0",
3048 "soc_has_uart1",
3049 "soc_has_uhci0",
3050 "soc_has_usb_device",
3051 "soc_has_adc1",
3052 "soc_has_bt",
3053 "soc_has_flash",
3054 "soc_has_gpio_dedicated",
3055 "soc_has_lp_core",
3056 "soc_has_tsens",
3057 "soc_has_wifi",
3058 "soc_has_from_cpu_intr0",
3059 "soc_has_from_cpu_intr1",
3060 "soc_has_from_cpu_intr2",
3061 "soc_has_from_cpu_intr3",
3062 "gpio_driver_supported",
3063 "dedicated_gpio_driver_supported",
3064 "io_mux_driver_supported",
3065 "lp_io_driver_supported",
3066 "uart_driver_supported",
3067 "lp_uart_driver_supported",
3068 "uhci_driver_supported",
3069 "i2c_master_driver_supported",
3070 "lp_i2c_master_driver_supported",
3071 "i2c_slave_driver_supported",
3072 "spi_master_driver_supported",
3073 "spi_slave_driver_supported",
3074 "i2s_driver_supported",
3075 "parl_io_driver_supported",
3076 "rmt_driver_supported",
3077 "twai_driver_supported",
3078 "usb_serial_jtag_driver_supported",
3079 "bt_driver_supported",
3080 "wifi_driver_supported",
3081 "ieee802154_driver_supported",
3082 "phy_driver_supported",
3083 "adc_driver_supported",
3084 "temp_sensor_driver_supported",
3085 "ledc_driver_supported",
3086 "mcpwm_driver_supported",
3087 "pcnt_driver_supported",
3088 "lp_timer_driver_supported",
3089 "sdm_driver_supported",
3090 "systimer_driver_supported",
3091 "timergroup_driver_supported",
3092 "aes_driver_supported",
3093 "ecc_driver_supported",
3094 "hmac_driver_supported",
3095 "rng_driver_supported",
3096 "rsa_driver_supported",
3097 "sha_driver_supported",
3098 "sleep_driver_supported",
3099 "ulp_riscv_driver_supported",
3100 "assist_debug_driver_supported",
3101 "dma_driver_supported",
3102 "etm_driver_supported",
3103 "interrupts_driver_supported",
3104 "mmu_driver_supported",
3105 "rom_driver_supported",
3106 "soc_driver_supported",
3107 "uart_uart0",
3108 "uart_uart1",
3109 "i2c_master_i2c0",
3110 "i2c_slave_i2c0",
3111 "spi_master_spi2",
3112 "spi_slave_spi2",
3113 "i2s_i2s0",
3114 "adc_adc1",
3115 "timergroup_timg0",
3116 "timergroup_timg1",
3117 "gpio_version=\"2\"",
3118 "gpio_has_input_sync",
3119 "gpio_gpio_function=\"1\"",
3120 "gpio_constant_0_input=\"60\"",
3121 "gpio_constant_1_input=\"56\"",
3122 "gpio_func_in_sel_offset=\"0\"",
3123 "soc_has_xtal32k_pads",
3124 "gpio_input_signal_max=\"124\"",
3125 "gpio_output_signal_max=\"128\"",
3126 "dedicated_gpio_version=\"riscv_v1\"",
3127 "lp_io_version=\"v4\"",
3128 "uart_ram_size=\"128\"",
3129 "uart_version=\"2\"",
3130 "uart_peripheral_controls_mem_clk",
3131 "uart_has_sclk_enable",
3132 "lp_uart_ram_size=\"32\"",
3133 "i2c_master_version=\"4\"",
3134 "i2c_master_has_fsm_timeouts",
3135 "i2c_master_has_hw_bus_clear",
3136 "i2c_master_has_bus_timeout_enable",
3137 "i2c_master_can_estimate_nack_reason",
3138 "i2c_master_has_conf_update",
3139 "i2c_master_has_reliable_fsm_reset",
3140 "i2c_master_has_arbitration_en",
3141 "i2c_master_has_tx_fifo_watermark",
3142 "i2c_master_bus_timeout_is_exponential",
3143 "i2c_master_has_pd_en",
3144 "i2c_master_max_bus_timeout=\"31\"",
3145 "i2c_master_ll_intr_mask=\"262143\"",
3146 "i2c_master_fifo_size=\"32\"",
3147 "lp_i2c_master_version=\"lp_i2c\"",
3148 "lp_i2c_master_fifo_size=\"16\"",
3149 "lp_i2c_master_fifo_size_is_set",
3150 "spi_master_version=\"3\"",
3151 "spi_master_fifo_size=\"64\"",
3152 "spi_master_has_app_interrupts",
3153 "spi_master_has_dma_segmented_transfer",
3154 "i2s_version=\"2\"",
3155 "i2s_version_is_set",
3156 "i2s_default_clock_source=\"2\"",
3157 "i2s_default_clock_source_is_set",
3158 "i2s_mclk_divider_bit_width=\"9\"",
3159 "i2s_mclk_divider_bit_width_is_set",
3160 "i2s_max_ws_width=\"128\"",
3161 "i2s_max_ws_width_is_set",
3162 "i2s_clock_configured_by_pcr",
3163 "i2s_supports_pdm_tx",
3164 "i2s_supports_pdm_rx",
3165 "i2s_supports_pcm2pdm",
3166 "parl_io_version=\"1\"",
3167 "rmt_ram_start=\"1610638336\"",
3168 "rmt_channel_ram_size=\"48\"",
3169 "rmt_has_tx_immediate_stop",
3170 "rmt_has_tx_loop_count",
3171 "rmt_has_tx_loop_auto_stop",
3172 "rmt_has_tx_carrier_data_only",
3173 "rmt_has_tx_sync",
3174 "rmt_has_rx_wrap",
3175 "rmt_has_rx_demodulation",
3176 "bt_controller=\"npl\"",
3177 "wifi_has_wifi6",
3178 "wifi_mac_version=\"2\"",
3179 "wifi_csi_supported",
3180 "phy_combo_module",
3181 "ledc_version=\"3\"",
3182 "ledc_channel_count=\"6\"",
3183 "soc_has_sdm_ch0",
3184 "soc_has_sdm_ch1",
3185 "soc_has_sdm_ch2",
3186 "soc_has_sdm_ch3",
3187 "timergroup_timg_has_divcnt_rst",
3188 "timergroup_rc_fast_calibration_divider",
3189 "timergroup_rc_fast_calibration_is_set",
3190 "aes_dma_mode_ecb",
3191 "aes_dma_mode_cbc",
3192 "aes_dma_mode_ofb",
3193 "aes_dma_mode_ctr",
3194 "aes_dma_mode_cfb8",
3195 "aes_dma_mode_cfb128",
3196 "aes_has_split_text_registers",
3197 "ecc_zero_extend_writes",
3198 "ecc_has_memory_clock_gate",
3199 "ecc_has_curve_p192",
3200 "ecc_has_curve_p256",
3201 "rng_apb_cycle_wait_num=\"16\"",
3202 "rng_trng_supported",
3203 "rng_is_lp_sys",
3204 "rsa_version=\"3\"",
3205 "rsa_size_increment=\"32\"",
3206 "rsa_memory_size_bytes=\"384\"",
3207 "sleep_light_sleep",
3208 "sleep_deep_sleep",
3209 "sleep_has_wakeup_source_ext1",
3210 "sleep_has_wakeup_source_gpio",
3211 "sleep_has_wakeup_source_wifi_beacon",
3212 "sleep_has_wakeup_source_timer",
3213 "sleep_has_wakeup_source_wifi",
3214 "sleep_has_wakeup_source_uart",
3215 "sleep_has_wakeup_source_sdio",
3216 "sleep_has_wakeup_source_bt",
3217 "sleep_has_wakeup_source_lp_core",
3218 "sleep_ext1_version=\"2\"",
3219 "sleep_ext1_version_is_set",
3220 "sleep_pin_wakeup_version=\"3\"",
3221 "sleep_pin_wakeup_version_is_set",
3222 "assist_debug_has_sp_monitor",
3223 "assist_debug_has_region_monitor",
3224 "dma_separate_in_out_interrupts",
3225 "dma_gdma_version=\"1\"",
3226 "dma_gdma_version_is_set",
3227 "soc_has_dma_ch0",
3228 "soc_has_dma_ch1",
3229 "soc_has_dma_ch2",
3230 "dma_supports_mem2mem",
3231 "aes_supports_dma",
3232 "aes_dma_engine=\"AHB_GDMA\"",
3233 "sha_supports_dma",
3234 "sha_dma_engine=\"AHB_GDMA\"",
3235 "spi_master_supports_dma",
3236 "spi_master_dma_engine=\"AHB_GDMA\"",
3237 "spi_slave_supports_dma",
3238 "spi_slave_dma_engine=\"AHB_GDMA\"",
3239 "uhci_supports_dma",
3240 "uhci_dma_engine=\"AHB_GDMA\"",
3241 "i2s_supports_dma",
3242 "i2s_dma_engine=\"AHB_GDMA\"",
3243 "parl_io_supports_dma",
3244 "parl_io_dma_engine=\"AHB_GDMA\"",
3245 "dma_max_priority=\"5\"",
3246 "dma_max_priority_is_set",
3247 "interrupts_status_registers=\"3\"",
3248 "interrupt_controller=\"plic\"",
3249 "mmu_page_size=\"65536\"",
3250 "mmu_entry_num=\"256\"",
3251 "rom_has_crc_le",
3252 "rom_has_crc_be",
3253 "rom_has_md5_bsd",
3254 "soc_cpu_has_csr_pc",
3255 "soc_cpu_csr_prv_mode=\"3088\"",
3256 "soc_cpu_csr_prv_mode_is_set",
3257 "soc_has_swd_watchdog",
3258 "soc_cpu_mcause_mask=\"31\"",
3259 "soc_has_clock_node_xtal_clk",
3260 "soc_clock_node_xtal_clk_is_configurable",
3261 "soc_has_clock_node_pll_clk",
3262 "soc_has_clock_node_rc_fast_clk",
3263 "soc_has_clock_node_xtal32k_clk",
3264 "soc_has_clock_node_osc_slow_clk",
3265 "soc_has_clock_node_rc_slow_clk",
3266 "soc_has_clock_node_soc_root_clk",
3267 "soc_clock_node_soc_root_clk_is_configurable",
3268 "soc_has_clock_node_hp_root_clk",
3269 "soc_clock_node_hp_root_clk_is_configurable",
3270 "soc_has_clock_node_cpu_hs_div",
3271 "soc_clock_node_cpu_hs_div_is_configurable",
3272 "soc_has_clock_node_cpu_ls_div",
3273 "soc_clock_node_cpu_ls_div_is_configurable",
3274 "soc_has_clock_node_cpu_clk",
3275 "soc_clock_node_cpu_clk_is_configurable",
3276 "soc_has_clock_node_ahb_hs_div",
3277 "soc_clock_node_ahb_hs_div_is_configurable",
3278 "soc_has_clock_node_ahb_ls_div",
3279 "soc_clock_node_ahb_ls_div_is_configurable",
3280 "soc_has_clock_node_ahb_clk",
3281 "soc_clock_node_ahb_clk_is_configurable",
3282 "soc_has_clock_node_apb_clk",
3283 "soc_clock_node_apb_clk_is_configurable",
3284 "soc_has_clock_node_mspi_fast_hs_clk",
3285 "soc_clock_node_mspi_fast_hs_clk_is_configurable",
3286 "soc_has_clock_node_mspi_fast_ls_clk",
3287 "soc_clock_node_mspi_fast_ls_clk_is_configurable",
3288 "soc_has_clock_node_mspi_fast_clk",
3289 "soc_clock_node_mspi_fast_clk_is_configurable",
3290 "soc_has_clock_node_pll_f48m",
3291 "soc_has_clock_node_pll_f80m",
3292 "soc_has_clock_node_pll_f160m",
3293 "soc_has_clock_node_pll_f240m",
3294 "soc_has_clock_node_iomux_function_clock",
3295 "soc_clock_node_iomux_function_clock_is_configurable",
3296 "soc_has_clock_node_ledc_sclk",
3297 "soc_clock_node_ledc_sclk_is_configurable",
3298 "soc_has_clock_node_xtal_d2_clk",
3299 "soc_has_clock_node_lp_fast_clk",
3300 "soc_clock_node_lp_fast_clk_is_configurable",
3301 "soc_has_clock_node_lp_slow_clk",
3302 "soc_clock_node_lp_slow_clk_is_configurable",
3303 "soc_has_clock_node_timg_calibration_clock",
3304 "soc_clock_node_timg_calibration_clock_is_configurable",
3305 "soc_has_clock_node_uart_function_clock",
3306 "soc_clock_node_uart_function_clock_is_configurable",
3307 "soc_has_clock_node_uart_baud_rate_generator",
3308 "soc_clock_node_uart_baud_rate_generator_is_configurable",
3309 "soc_has_clock_node_sdm_function_clock",
3310 "soc_has_clock_node_rmt_sclk",
3311 "soc_clock_node_rmt_sclk_is_configurable",
3312 "soc_has_clock_node_timg_function_clock",
3313 "soc_clock_node_timg_function_clock_is_configurable",
3314 "soc_has_clock_node_timg_wdt_clock",
3315 "soc_clock_node_timg_wdt_clock_is_configurable",
3316 "soc_has_clock_node_mcpwm_function_clock",
3317 "soc_clock_node_mcpwm_function_clock_is_configurable",
3318 "soc_has_clock_node_parl_io_rx_clock",
3319 "soc_clock_node_parl_io_rx_clock_is_configurable",
3320 "soc_has_clock_node_parl_io_tx_clock",
3321 "soc_clock_node_parl_io_tx_clock_is_configurable",
3322 "soc_has_clock_node_i2c_function_clock",
3323 "soc_clock_node_i2c_function_clock_is_configurable",
3324 "soc_has_clock_node_spi_function_clock",
3325 "soc_clock_node_spi_function_clock_is_configurable",
3326 "has_dram_region",
3327 "has_dram2_uninit_region",
3328 "has_irom_region",
3329 "has_drom_region",
3330 ],
3331 cfgs: &[
3332 "cargo:rustc-cfg=esp32c6",
3333 "cargo:rustc-cfg=riscv",
3334 "cargo:rustc-cfg=single_core",
3335 "cargo:rustc-cfg=soc_has_aes",
3336 "cargo:rustc-cfg=soc_has_apb_saradc",
3337 "cargo:rustc-cfg=soc_has_assist_debug",
3338 "cargo:rustc-cfg=soc_has_atomic",
3339 "cargo:rustc-cfg=soc_has_dma",
3340 "cargo:rustc-cfg=soc_has_ds",
3341 "cargo:rustc-cfg=soc_has_ecc",
3342 "cargo:rustc-cfg=soc_has_efuse",
3343 "cargo:rustc-cfg=soc_has_extmem",
3344 "cargo:rustc-cfg=soc_has_gpio",
3345 "cargo:rustc-cfg=soc_has_gpio_sd",
3346 "cargo:rustc-cfg=soc_has_hinf",
3347 "cargo:rustc-cfg=soc_has_hmac",
3348 "cargo:rustc-cfg=soc_has_hp_apm",
3349 "cargo:rustc-cfg=soc_has_hp_sys",
3350 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
3351 "cargo:rustc-cfg=soc_has_i2c0",
3352 "cargo:rustc-cfg=soc_has_i2s0",
3353 "cargo:rustc-cfg=soc_has_ieee802154",
3354 "cargo:rustc-cfg=soc_has_interrupt_core0",
3355 "cargo:rustc-cfg=soc_has_intpri",
3356 "cargo:rustc-cfg=soc_has_io_mux",
3357 "cargo:rustc-cfg=soc_has_ledc",
3358 "cargo:rustc-cfg=soc_has_lp_ana",
3359 "cargo:rustc-cfg=soc_has_lp_aon",
3360 "cargo:rustc-cfg=soc_has_lp_apm",
3361 "cargo:rustc-cfg=soc_has_lp_apm0",
3362 "cargo:rustc-cfg=soc_has_lp_clkrst",
3363 "cargo:rustc-cfg=soc_has_lp_i2c0",
3364 "cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
3365 "cargo:rustc-cfg=soc_has_lp_io",
3366 "cargo:rustc-cfg=soc_has_lp_peri",
3367 "cargo:rustc-cfg=soc_has_lp_tee",
3368 "cargo:rustc-cfg=soc_has_rtc_timer",
3369 "cargo:rustc-cfg=soc_has_lp_uart",
3370 "cargo:rustc-cfg=soc_has_lp_wdt",
3371 "cargo:rustc-cfg=soc_has_lpwr",
3372 "cargo:rustc-cfg=soc_has_mcpwm0",
3373 "cargo:rustc-cfg=soc_has_mem_monitor",
3374 "cargo:rustc-cfg=soc_has_modem_lpcon",
3375 "cargo:rustc-cfg=soc_has_modem_syscon",
3376 "cargo:rustc-cfg=soc_has_otp_debug",
3377 "cargo:rustc-cfg=soc_has_parl_io",
3378 "cargo:rustc-cfg=soc_has_pau",
3379 "cargo:rustc-cfg=soc_has_pcnt",
3380 "cargo:rustc-cfg=soc_has_pcr",
3381 "cargo:rustc-cfg=soc_has_plic_mx",
3382 "cargo:rustc-cfg=soc_has_pmu",
3383 "cargo:rustc-cfg=soc_has_rmt",
3384 "cargo:rustc-cfg=soc_has_rng",
3385 "cargo:rustc-cfg=soc_has_rsa",
3386 "cargo:rustc-cfg=soc_has_sha",
3387 "cargo:rustc-cfg=soc_has_slchost",
3388 "cargo:rustc-cfg=soc_has_etm",
3389 "cargo:rustc-cfg=soc_has_spi0",
3390 "cargo:rustc-cfg=soc_has_spi1",
3391 "cargo:rustc-cfg=soc_has_spi2",
3392 "cargo:rustc-cfg=soc_has_system",
3393 "cargo:rustc-cfg=soc_has_systimer",
3394 "cargo:rustc-cfg=soc_has_tee",
3395 "cargo:rustc-cfg=soc_has_timg0",
3396 "cargo:rustc-cfg=soc_has_timg1",
3397 "cargo:rustc-cfg=soc_has_trace0",
3398 "cargo:rustc-cfg=soc_has_twai0",
3399 "cargo:rustc-cfg=soc_has_twai1",
3400 "cargo:rustc-cfg=soc_has_uart0",
3401 "cargo:rustc-cfg=soc_has_uart1",
3402 "cargo:rustc-cfg=soc_has_uhci0",
3403 "cargo:rustc-cfg=soc_has_usb_device",
3404 "cargo:rustc-cfg=soc_has_adc1",
3405 "cargo:rustc-cfg=soc_has_bt",
3406 "cargo:rustc-cfg=soc_has_flash",
3407 "cargo:rustc-cfg=soc_has_gpio_dedicated",
3408 "cargo:rustc-cfg=soc_has_lp_core",
3409 "cargo:rustc-cfg=soc_has_tsens",
3410 "cargo:rustc-cfg=soc_has_wifi",
3411 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
3412 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
3413 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
3414 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
3415 "cargo:rustc-cfg=gpio_driver_supported",
3416 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
3417 "cargo:rustc-cfg=io_mux_driver_supported",
3418 "cargo:rustc-cfg=lp_io_driver_supported",
3419 "cargo:rustc-cfg=uart_driver_supported",
3420 "cargo:rustc-cfg=lp_uart_driver_supported",
3421 "cargo:rustc-cfg=uhci_driver_supported",
3422 "cargo:rustc-cfg=i2c_master_driver_supported",
3423 "cargo:rustc-cfg=lp_i2c_master_driver_supported",
3424 "cargo:rustc-cfg=i2c_slave_driver_supported",
3425 "cargo:rustc-cfg=spi_master_driver_supported",
3426 "cargo:rustc-cfg=spi_slave_driver_supported",
3427 "cargo:rustc-cfg=i2s_driver_supported",
3428 "cargo:rustc-cfg=parl_io_driver_supported",
3429 "cargo:rustc-cfg=rmt_driver_supported",
3430 "cargo:rustc-cfg=twai_driver_supported",
3431 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
3432 "cargo:rustc-cfg=bt_driver_supported",
3433 "cargo:rustc-cfg=wifi_driver_supported",
3434 "cargo:rustc-cfg=ieee802154_driver_supported",
3435 "cargo:rustc-cfg=phy_driver_supported",
3436 "cargo:rustc-cfg=adc_driver_supported",
3437 "cargo:rustc-cfg=temp_sensor_driver_supported",
3438 "cargo:rustc-cfg=ledc_driver_supported",
3439 "cargo:rustc-cfg=mcpwm_driver_supported",
3440 "cargo:rustc-cfg=pcnt_driver_supported",
3441 "cargo:rustc-cfg=lp_timer_driver_supported",
3442 "cargo:rustc-cfg=sdm_driver_supported",
3443 "cargo:rustc-cfg=systimer_driver_supported",
3444 "cargo:rustc-cfg=timergroup_driver_supported",
3445 "cargo:rustc-cfg=aes_driver_supported",
3446 "cargo:rustc-cfg=ecc_driver_supported",
3447 "cargo:rustc-cfg=hmac_driver_supported",
3448 "cargo:rustc-cfg=rng_driver_supported",
3449 "cargo:rustc-cfg=rsa_driver_supported",
3450 "cargo:rustc-cfg=sha_driver_supported",
3451 "cargo:rustc-cfg=sleep_driver_supported",
3452 "cargo:rustc-cfg=ulp_riscv_driver_supported",
3453 "cargo:rustc-cfg=assist_debug_driver_supported",
3454 "cargo:rustc-cfg=dma_driver_supported",
3455 "cargo:rustc-cfg=etm_driver_supported",
3456 "cargo:rustc-cfg=interrupts_driver_supported",
3457 "cargo:rustc-cfg=mmu_driver_supported",
3458 "cargo:rustc-cfg=rom_driver_supported",
3459 "cargo:rustc-cfg=soc_driver_supported",
3460 "cargo:rustc-cfg=uart_uart0",
3461 "cargo:rustc-cfg=uart_uart1",
3462 "cargo:rustc-cfg=i2c_master_i2c0",
3463 "cargo:rustc-cfg=i2c_slave_i2c0",
3464 "cargo:rustc-cfg=spi_master_spi2",
3465 "cargo:rustc-cfg=spi_slave_spi2",
3466 "cargo:rustc-cfg=i2s_i2s0",
3467 "cargo:rustc-cfg=adc_adc1",
3468 "cargo:rustc-cfg=timergroup_timg0",
3469 "cargo:rustc-cfg=timergroup_timg1",
3470 "cargo:rustc-cfg=gpio_version=\"2\"",
3471 "cargo:rustc-cfg=gpio_has_input_sync",
3472 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
3473 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
3474 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
3475 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
3476 "cargo:rustc-cfg=soc_has_xtal32k_pads",
3477 "cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
3478 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
3479 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v1\"",
3480 "cargo:rustc-cfg=lp_io_version=\"v4\"",
3481 "cargo:rustc-cfg=uart_ram_size=\"128\"",
3482 "cargo:rustc-cfg=uart_version=\"2\"",
3483 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
3484 "cargo:rustc-cfg=uart_has_sclk_enable",
3485 "cargo:rustc-cfg=lp_uart_ram_size=\"32\"",
3486 "cargo:rustc-cfg=i2c_master_version=\"4\"",
3487 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
3488 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
3489 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
3490 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
3491 "cargo:rustc-cfg=i2c_master_has_conf_update",
3492 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
3493 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
3494 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
3495 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
3496 "cargo:rustc-cfg=i2c_master_has_pd_en",
3497 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
3498 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
3499 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
3500 "cargo:rustc-cfg=lp_i2c_master_version=\"lp_i2c\"",
3501 "cargo:rustc-cfg=lp_i2c_master_fifo_size=\"16\"",
3502 "cargo:rustc-cfg=lp_i2c_master_fifo_size_is_set",
3503 "cargo:rustc-cfg=spi_master_version=\"3\"",
3504 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
3505 "cargo:rustc-cfg=spi_master_has_app_interrupts",
3506 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
3507 "cargo:rustc-cfg=i2s_version=\"2\"",
3508 "cargo:rustc-cfg=i2s_version_is_set",
3509 "cargo:rustc-cfg=i2s_default_clock_source=\"2\"",
3510 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
3511 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"9\"",
3512 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
3513 "cargo:rustc-cfg=i2s_max_ws_width=\"128\"",
3514 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
3515 "cargo:rustc-cfg=i2s_clock_configured_by_pcr",
3516 "cargo:rustc-cfg=i2s_supports_pdm_tx",
3517 "cargo:rustc-cfg=i2s_supports_pdm_rx",
3518 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
3519 "cargo:rustc-cfg=parl_io_version=\"1\"",
3520 "cargo:rustc-cfg=rmt_ram_start=\"1610638336\"",
3521 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
3522 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
3523 "cargo:rustc-cfg=rmt_has_tx_loop_count",
3524 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
3525 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
3526 "cargo:rustc-cfg=rmt_has_tx_sync",
3527 "cargo:rustc-cfg=rmt_has_rx_wrap",
3528 "cargo:rustc-cfg=rmt_has_rx_demodulation",
3529 "cargo:rustc-cfg=bt_controller=\"npl\"",
3530 "cargo:rustc-cfg=wifi_has_wifi6",
3531 "cargo:rustc-cfg=wifi_mac_version=\"2\"",
3532 "cargo:rustc-cfg=wifi_csi_supported",
3533 "cargo:rustc-cfg=phy_combo_module",
3534 "cargo:rustc-cfg=ledc_version=\"3\"",
3535 "cargo:rustc-cfg=ledc_channel_count=\"6\"",
3536 "cargo:rustc-cfg=soc_has_sdm_ch0",
3537 "cargo:rustc-cfg=soc_has_sdm_ch1",
3538 "cargo:rustc-cfg=soc_has_sdm_ch2",
3539 "cargo:rustc-cfg=soc_has_sdm_ch3",
3540 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
3541 "cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
3542 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
3543 "cargo:rustc-cfg=aes_dma_mode_ecb",
3544 "cargo:rustc-cfg=aes_dma_mode_cbc",
3545 "cargo:rustc-cfg=aes_dma_mode_ofb",
3546 "cargo:rustc-cfg=aes_dma_mode_ctr",
3547 "cargo:rustc-cfg=aes_dma_mode_cfb8",
3548 "cargo:rustc-cfg=aes_dma_mode_cfb128",
3549 "cargo:rustc-cfg=aes_has_split_text_registers",
3550 "cargo:rustc-cfg=ecc_zero_extend_writes",
3551 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
3552 "cargo:rustc-cfg=ecc_has_curve_p192",
3553 "cargo:rustc-cfg=ecc_has_curve_p256",
3554 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
3555 "cargo:rustc-cfg=rng_trng_supported",
3556 "cargo:rustc-cfg=rng_is_lp_sys",
3557 "cargo:rustc-cfg=rsa_version=\"3\"",
3558 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
3559 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
3560 "cargo:rustc-cfg=sleep_light_sleep",
3561 "cargo:rustc-cfg=sleep_deep_sleep",
3562 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
3563 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
3564 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi_beacon",
3565 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
3566 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
3567 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
3568 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
3569 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
3570 "cargo:rustc-cfg=sleep_has_wakeup_source_lp_core",
3571 "cargo:rustc-cfg=sleep_ext1_version=\"2\"",
3572 "cargo:rustc-cfg=sleep_ext1_version_is_set",
3573 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"3\"",
3574 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
3575 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
3576 "cargo:rustc-cfg=assist_debug_has_region_monitor",
3577 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
3578 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
3579 "cargo:rustc-cfg=dma_gdma_version_is_set",
3580 "cargo:rustc-cfg=soc_has_dma_ch0",
3581 "cargo:rustc-cfg=soc_has_dma_ch1",
3582 "cargo:rustc-cfg=soc_has_dma_ch2",
3583 "cargo:rustc-cfg=dma_supports_mem2mem",
3584 "cargo:rustc-cfg=aes_supports_dma",
3585 "cargo:rustc-cfg=aes_dma_engine=\"AHB_GDMA\"",
3586 "cargo:rustc-cfg=sha_supports_dma",
3587 "cargo:rustc-cfg=sha_dma_engine=\"AHB_GDMA\"",
3588 "cargo:rustc-cfg=spi_master_supports_dma",
3589 "cargo:rustc-cfg=spi_master_dma_engine=\"AHB_GDMA\"",
3590 "cargo:rustc-cfg=spi_slave_supports_dma",
3591 "cargo:rustc-cfg=spi_slave_dma_engine=\"AHB_GDMA\"",
3592 "cargo:rustc-cfg=uhci_supports_dma",
3593 "cargo:rustc-cfg=uhci_dma_engine=\"AHB_GDMA\"",
3594 "cargo:rustc-cfg=i2s_supports_dma",
3595 "cargo:rustc-cfg=i2s_dma_engine=\"AHB_GDMA\"",
3596 "cargo:rustc-cfg=parl_io_supports_dma",
3597 "cargo:rustc-cfg=parl_io_dma_engine=\"AHB_GDMA\"",
3598 "cargo:rustc-cfg=dma_max_priority=\"5\"",
3599 "cargo:rustc-cfg=dma_max_priority_is_set",
3600 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
3601 "cargo:rustc-cfg=interrupt_controller=\"plic\"",
3602 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
3603 "cargo:rustc-cfg=mmu_entry_num=\"256\"",
3604 "cargo:rustc-cfg=rom_has_crc_le",
3605 "cargo:rustc-cfg=rom_has_crc_be",
3606 "cargo:rustc-cfg=rom_has_md5_bsd",
3607 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
3608 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"3088\"",
3609 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
3610 "cargo:rustc-cfg=soc_has_swd_watchdog",
3611 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"31\"",
3612 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
3613 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
3614 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
3615 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
3616 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
3617 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
3618 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
3619 "cargo:rustc-cfg=soc_has_clock_node_soc_root_clk",
3620 "cargo:rustc-cfg=soc_clock_node_soc_root_clk_is_configurable",
3621 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
3622 "cargo:rustc-cfg=soc_clock_node_hp_root_clk_is_configurable",
3623 "cargo:rustc-cfg=soc_has_clock_node_cpu_hs_div",
3624 "cargo:rustc-cfg=soc_clock_node_cpu_hs_div_is_configurable",
3625 "cargo:rustc-cfg=soc_has_clock_node_cpu_ls_div",
3626 "cargo:rustc-cfg=soc_clock_node_cpu_ls_div_is_configurable",
3627 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
3628 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
3629 "cargo:rustc-cfg=soc_has_clock_node_ahb_hs_div",
3630 "cargo:rustc-cfg=soc_clock_node_ahb_hs_div_is_configurable",
3631 "cargo:rustc-cfg=soc_has_clock_node_ahb_ls_div",
3632 "cargo:rustc-cfg=soc_clock_node_ahb_ls_div_is_configurable",
3633 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
3634 "cargo:rustc-cfg=soc_clock_node_ahb_clk_is_configurable",
3635 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
3636 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
3637 "cargo:rustc-cfg=soc_has_clock_node_mspi_fast_hs_clk",
3638 "cargo:rustc-cfg=soc_clock_node_mspi_fast_hs_clk_is_configurable",
3639 "cargo:rustc-cfg=soc_has_clock_node_mspi_fast_ls_clk",
3640 "cargo:rustc-cfg=soc_clock_node_mspi_fast_ls_clk_is_configurable",
3641 "cargo:rustc-cfg=soc_has_clock_node_mspi_fast_clk",
3642 "cargo:rustc-cfg=soc_clock_node_mspi_fast_clk_is_configurable",
3643 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
3644 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
3645 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
3646 "cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
3647 "cargo:rustc-cfg=soc_has_clock_node_iomux_function_clock",
3648 "cargo:rustc-cfg=soc_clock_node_iomux_function_clock_is_configurable",
3649 "cargo:rustc-cfg=soc_has_clock_node_ledc_sclk",
3650 "cargo:rustc-cfg=soc_clock_node_ledc_sclk_is_configurable",
3651 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
3652 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
3653 "cargo:rustc-cfg=soc_clock_node_lp_fast_clk_is_configurable",
3654 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
3655 "cargo:rustc-cfg=soc_clock_node_lp_slow_clk_is_configurable",
3656 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
3657 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
3658 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
3659 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
3660 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
3661 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
3662 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
3663 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
3664 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
3665 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
3666 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
3667 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
3668 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
3669 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
3670 "cargo:rustc-cfg=soc_clock_node_mcpwm_function_clock_is_configurable",
3671 "cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
3672 "cargo:rustc-cfg=soc_clock_node_parl_io_rx_clock_is_configurable",
3673 "cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
3674 "cargo:rustc-cfg=soc_clock_node_parl_io_tx_clock_is_configurable",
3675 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
3676 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
3677 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
3678 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
3679 "cargo:rustc-cfg=has_dram_region",
3680 "cargo:rustc-cfg=has_dram2_uninit_region",
3681 "cargo:rustc-cfg=has_irom_region",
3682 "cargo:rustc-cfg=has_drom_region",
3683 ],
3684 memory_layout: &MemoryLayout {
3685 regions: &[
3686 (
3687 "dram",
3688 MemoryRegion {
3689 address_range: 0x40800000..0x40880000,
3690 },
3691 ),
3692 (
3693 "dram2_uninit",
3694 MemoryRegion {
3695 address_range: 0x4086E610..0x4087E610,
3696 },
3697 ),
3698 (
3699 "irom",
3700 MemoryRegion {
3701 address_range: 0x42000000..0x43000000,
3702 },
3703 ),
3704 (
3705 "drom",
3706 MemoryRegion {
3707 address_range: 0x42000000..0x43000000,
3708 },
3709 ),
3710 ],
3711 },
3712 pins: &[
3713 PinInfo {
3714 pin: 0,
3715 limitations: &[],
3716 },
3717 PinInfo {
3718 pin: 1,
3719 limitations: &[],
3720 },
3721 PinInfo {
3722 pin: 2,
3723 limitations: &[],
3724 },
3725 PinInfo {
3726 pin: 3,
3727 limitations: &[],
3728 },
3729 PinInfo {
3730 pin: 4,
3731 limitations: &["strapping", "jtag"],
3732 },
3733 PinInfo {
3734 pin: 5,
3735 limitations: &["strapping", "jtag"],
3736 },
3737 PinInfo {
3738 pin: 6,
3739 limitations: &["jtag"],
3740 },
3741 PinInfo {
3742 pin: 7,
3743 limitations: &["jtag"],
3744 },
3745 PinInfo {
3746 pin: 8,
3747 limitations: &["strapping"],
3748 },
3749 PinInfo {
3750 pin: 9,
3751 limitations: &["strapping"],
3752 },
3753 PinInfo {
3754 pin: 10,
3755 limitations: &[],
3756 },
3757 PinInfo {
3758 pin: 11,
3759 limitations: &[],
3760 },
3761 PinInfo {
3762 pin: 12,
3763 limitations: &["usb_jtag"],
3764 },
3765 PinInfo {
3766 pin: 13,
3767 limitations: &["usb_jtag"],
3768 },
3769 PinInfo {
3770 pin: 14,
3771 limitations: &[],
3772 },
3773 PinInfo {
3774 pin: 15,
3775 limitations: &["strapping"],
3776 },
3777 PinInfo {
3778 pin: 16,
3779 limitations: &["bootloader_uart"],
3780 },
3781 PinInfo {
3782 pin: 17,
3783 limitations: &["bootloader_uart"],
3784 },
3785 PinInfo {
3786 pin: 18,
3787 limitations: &[],
3788 },
3789 PinInfo {
3790 pin: 19,
3791 limitations: &[],
3792 },
3793 PinInfo {
3794 pin: 20,
3795 limitations: &[],
3796 },
3797 PinInfo {
3798 pin: 21,
3799 limitations: &[],
3800 },
3801 PinInfo {
3802 pin: 22,
3803 limitations: &[],
3804 },
3805 PinInfo {
3806 pin: 23,
3807 limitations: &[],
3808 },
3809 PinInfo {
3810 pin: 24,
3811 limitations: &["spi_flash"],
3812 },
3813 PinInfo {
3814 pin: 25,
3815 limitations: &["spi_flash"],
3816 },
3817 PinInfo {
3818 pin: 26,
3819 limitations: &["spi_flash"],
3820 },
3821 PinInfo {
3822 pin: 27,
3823 limitations: &["spi_flash"],
3824 },
3825 PinInfo {
3826 pin: 28,
3827 limitations: &["spi_flash"],
3828 },
3829 PinInfo {
3830 pin: 29,
3831 limitations: &["spi_flash"],
3832 },
3833 PinInfo {
3834 pin: 30,
3835 limitations: &["spi_flash"],
3836 },
3837 ],
3838 },
3839 Self::Esp32c61 => Config {
3840 architecture: "riscv",
3841 target: "riscv32imac-unknown-none-elf",
3842 symbols: &[
3843 "esp32c61",
3844 "riscv",
3845 "single_core",
3846 "soc_has_apb_saradc",
3847 "soc_has_assist_debug",
3848 "soc_has_clint",
3849 "soc_has_cache",
3850 "soc_has_dma",
3851 "soc_has_ecc",
3852 "soc_has_ecdsa",
3853 "soc_has_efuse",
3854 "soc_has_etm",
3855 "soc_has_gpio",
3856 "soc_has_gpio_sd",
3857 "soc_has_hp_apm",
3858 "soc_has_hp_sys",
3859 "soc_has_i2c_ana_mst",
3860 "soc_has_i2c0",
3861 "soc_has_i2s0",
3862 "soc_has_interrupt_core0",
3863 "soc_has_intpri",
3864 "soc_has_io_mux",
3865 "soc_has_lp_ana",
3866 "soc_has_lp_aon",
3867 "soc_has_lp_apm",
3868 "soc_has_lp_clkrst",
3869 "soc_has_lpwr",
3870 "soc_has_lp_gpio",
3871 "soc_has_lp_io_mux",
3872 "soc_has_lp_peri",
3873 "soc_has_lp_tee",
3874 "soc_has_rtc_timer",
3875 "soc_has_lp_wdt",
3876 "soc_has_mem_monitor",
3877 "soc_has_modem_lpcon",
3878 "soc_has_modem_syscon",
3879 "soc_has_pau",
3880 "soc_has_pcr",
3881 "soc_has_pmu",
3882 "soc_has_rng",
3883 "soc_has_sha",
3884 "soc_has_slc",
3885 "soc_has_spi0",
3886 "soc_has_spi1",
3887 "soc_has_spi2",
3888 "soc_has_system",
3889 "soc_has_systimer",
3890 "soc_has_tee",
3891 "soc_has_timg0",
3892 "soc_has_timg1",
3893 "soc_has_uart0",
3894 "soc_has_uart1",
3895 "soc_has_uart2",
3896 "soc_has_usb_device",
3897 "soc_has_adc1",
3898 "soc_has_bt",
3899 "soc_has_flash",
3900 "soc_has_gpio_dedicated",
3901 "soc_has_wifi",
3902 "soc_has_psram",
3903 "soc_has_from_cpu_intr0",
3904 "soc_has_from_cpu_intr1",
3905 "soc_has_from_cpu_intr2",
3906 "soc_has_from_cpu_intr3",
3907 "gpio_driver_supported",
3908 "dedicated_gpio_driver_supported",
3909 "io_mux_driver_supported",
3910 "lp_io_driver_supported",
3911 "uart_driver_supported",
3912 "i2c_master_driver_supported",
3913 "spi_master_driver_supported",
3914 "spi_slave_driver_supported",
3915 "i2s_driver_supported",
3916 "usb_serial_jtag_driver_supported",
3917 "bt_driver_supported",
3918 "wifi_driver_supported",
3919 "phy_driver_supported",
3920 "adc_driver_supported",
3921 "lp_timer_driver_supported",
3922 "systimer_driver_supported",
3923 "timergroup_driver_supported",
3924 "ecc_driver_supported",
3925 "rng_driver_supported",
3926 "sha_driver_supported",
3927 "sleep_driver_supported",
3928 "assist_debug_driver_supported",
3929 "dma_driver_supported",
3930 "interrupts_driver_supported",
3931 "mmu_driver_supported",
3932 "psram_driver_supported",
3933 "rom_driver_supported",
3934 "soc_driver_supported",
3935 "uart_uart0",
3936 "uart_uart1",
3937 "uart_uart2",
3938 "i2c_master_i2c0",
3939 "spi_master_spi2",
3940 "spi_slave_spi2",
3941 "i2s_i2s0",
3942 "adc_adc1",
3943 "timergroup_timg0",
3944 "timergroup_timg1",
3945 "gpio_version=\"2\"",
3946 "gpio_has_input_sync",
3947 "gpio_gpio_function=\"1\"",
3948 "gpio_constant_0_input=\"96\"",
3949 "gpio_constant_1_input=\"64\"",
3950 "gpio_func_in_sel_offset=\"0\"",
3951 "soc_has_xtal32k_pads",
3952 "gpio_input_signal_max=\"100\"",
3953 "gpio_output_signal_max=\"256\"",
3954 "dedicated_gpio_version=\"riscv_v1\"",
3955 "lp_io_version=\"v4\"",
3956 "uart_ram_size=\"128\"",
3957 "uart_version=\"2\"",
3958 "uart_peripheral_controls_mem_clk",
3959 "uart_has_sclk_enable",
3960 "i2c_master_version=\"4\"",
3961 "i2c_master_has_fsm_timeouts",
3962 "i2c_master_has_hw_bus_clear",
3963 "i2c_master_has_bus_timeout_enable",
3964 "i2c_master_can_estimate_nack_reason",
3965 "i2c_master_has_conf_update",
3966 "i2c_master_has_reliable_fsm_reset",
3967 "i2c_master_has_arbitration_en",
3968 "i2c_master_has_tx_fifo_watermark",
3969 "i2c_master_bus_timeout_is_exponential",
3970 "i2c_master_has_pd_en",
3971 "i2c_master_max_bus_timeout=\"31\"",
3972 "i2c_master_ll_intr_mask=\"262143\"",
3973 "i2c_master_fifo_size=\"32\"",
3974 "spi_master_version=\"3\"",
3975 "spi_master_fifo_size=\"64\"",
3976 "spi_master_has_app_interrupts",
3977 "spi_master_has_dma_segmented_transfer",
3978 "spi_master_has_clk_pre_div",
3979 "spi_master_dma_can_access_flash",
3980 "i2s_version=\"3\"",
3981 "i2s_version_is_set",
3982 "i2s_default_clock_source=\"2\"",
3983 "i2s_default_clock_source_is_set",
3984 "i2s_mclk_divider_bit_width=\"9\"",
3985 "i2s_mclk_divider_bit_width_is_set",
3986 "i2s_max_ws_width=\"512\"",
3987 "i2s_max_ws_width_is_set",
3988 "i2s_clock_configured_by_pcr",
3989 "i2s_supports_pdm_tx",
3990 "i2s_supports_pdm_rx",
3991 "i2s_supports_pcm2pdm",
3992 "bt_controller=\"npl\"",
3993 "wifi_has_wifi6",
3994 "wifi_mac_version=\"3\"",
3995 "wifi_csi_supported",
3996 "phy_combo_module",
3997 "timergroup_timg_has_divcnt_rst",
3998 "timergroup_rc_fast_calibration_divider",
3999 "timergroup_rc_fast_calibration_is_set",
4000 "ecc_zero_extend_writes",
4001 "ecc_separate_jacobian_point_memory",
4002 "ecc_has_memory_clock_gate",
4003 "ecc_supports_enhanced_security",
4004 "ecc_has_modular_arithmetic",
4005 "ecc_has_point_addition",
4006 "ecc_has_curve_p192",
4007 "ecc_has_curve_p256",
4008 "rng_apb_cycle_wait_num=\"16\"",
4009 "rng_is_lp_sys",
4010 "sleep_light_sleep",
4011 "sleep_deep_sleep",
4012 "sleep_has_wakeup_source_ext1",
4013 "sleep_has_wakeup_source_gpio",
4014 "sleep_has_wakeup_source_wifi_beacon",
4015 "sleep_has_wakeup_source_timer",
4016 "sleep_has_wakeup_source_wifi",
4017 "sleep_has_wakeup_source_uart",
4018 "sleep_has_wakeup_source_sdio",
4019 "sleep_has_wakeup_source_bt",
4020 "sleep_has_wakeup_source_lp_core",
4021 "sleep_ext1_version=\"2\"",
4022 "sleep_ext1_version_is_set",
4023 "sleep_pin_wakeup_version=\"3\"",
4024 "sleep_pin_wakeup_version_is_set",
4025 "assist_debug_has_sp_monitor",
4026 "assist_debug_has_region_monitor",
4027 "dma_separate_in_out_interrupts",
4028 "dma_gdma_version=\"2\"",
4029 "dma_gdma_version_is_set",
4030 "soc_has_dma_ch0",
4031 "soc_has_dma_ch1",
4032 "dma_supports_mem2mem",
4033 "sha_supports_dma",
4034 "sha_dma_engine=\"AHB_GDMA\"",
4035 "spi_master_supports_dma",
4036 "spi_master_dma_engine=\"AHB_GDMA\"",
4037 "spi_slave_supports_dma",
4038 "spi_slave_dma_engine=\"AHB_GDMA\"",
4039 "i2s_supports_dma",
4040 "i2s_dma_engine=\"AHB_GDMA\"",
4041 "dma_can_access_psram",
4042 "dma_max_priority=\"5\"",
4043 "dma_max_priority_is_set",
4044 "interrupts_status_registers=\"3\"",
4045 "interrupt_controller=\"clic\"",
4046 "mmu_page_size=\"65536\"",
4047 "mmu_entry_num=\"512\"",
4048 "psram_extmem_origin=\"1107296256\"",
4049 "rom_has_crc_le",
4050 "rom_has_crc_be",
4051 "rom_has_md5_bsd",
4052 "soc_cpu_has_branch_predictor",
4053 "soc_cpu_csr_prv_mode=\"2064\"",
4054 "soc_cpu_csr_prv_mode_is_set",
4055 "soc_has_swd_watchdog",
4056 "soc_cpu_mcause_mask=\"31\"",
4057 "soc_has_clock_node_xtal_clk",
4058 "soc_clock_node_xtal_clk_is_configurable",
4059 "soc_has_clock_node_rc_fast_clk",
4060 "soc_has_clock_node_pll_clk",
4061 "soc_has_clock_node_xtal32k_clk",
4062 "soc_has_clock_node_osc_slow_clk",
4063 "soc_has_clock_node_rc_slow_clk",
4064 "soc_has_clock_node_pll_f20m",
4065 "soc_has_clock_node_pll_f40m",
4066 "soc_has_clock_node_pll_f48m",
4067 "soc_has_clock_node_pll_f60m",
4068 "soc_has_clock_node_pll_f80m",
4069 "soc_has_clock_node_pll_f120m",
4070 "soc_has_clock_node_pll_f160m",
4071 "soc_has_clock_node_hp_root_clk",
4072 "soc_clock_node_hp_root_clk_is_configurable",
4073 "soc_has_clock_node_cpu_clk",
4074 "soc_clock_node_cpu_clk_is_configurable",
4075 "soc_has_clock_node_ahb_clk",
4076 "soc_clock_node_ahb_clk_is_configurable",
4077 "soc_has_clock_node_apb_clk",
4078 "soc_clock_node_apb_clk_is_configurable",
4079 "soc_has_clock_node_xtal_d2_clk",
4080 "soc_has_clock_node_lp_fast_clk",
4081 "soc_clock_node_lp_fast_clk_is_configurable",
4082 "soc_has_clock_node_lp_slow_clk",
4083 "soc_clock_node_lp_slow_clk_is_configurable",
4084 "soc_has_clock_node_timg_calibration_clock",
4085 "soc_clock_node_timg_calibration_clock_is_configurable",
4086 "soc_has_clock_node_uart_function_clock",
4087 "soc_clock_node_uart_function_clock_is_configurable",
4088 "soc_has_clock_node_uart_baud_rate_generator",
4089 "soc_clock_node_uart_baud_rate_generator_is_configurable",
4090 "soc_has_clock_node_timg_function_clock",
4091 "soc_clock_node_timg_function_clock_is_configurable",
4092 "soc_has_clock_node_timg_wdt_clock",
4093 "soc_clock_node_timg_wdt_clock_is_configurable",
4094 "soc_has_clock_node_i2c_function_clock",
4095 "soc_clock_node_i2c_function_clock_is_configurable",
4096 "soc_has_clock_node_spi_function_clock",
4097 "soc_clock_node_spi_function_clock_is_configurable",
4098 "has_dram_region",
4099 "has_dram2_uninit_region",
4100 "has_irom_region",
4101 "has_drom_region",
4102 ],
4103 cfgs: &[
4104 "cargo:rustc-cfg=esp32c61",
4105 "cargo:rustc-cfg=riscv",
4106 "cargo:rustc-cfg=single_core",
4107 "cargo:rustc-cfg=soc_has_apb_saradc",
4108 "cargo:rustc-cfg=soc_has_assist_debug",
4109 "cargo:rustc-cfg=soc_has_clint",
4110 "cargo:rustc-cfg=soc_has_cache",
4111 "cargo:rustc-cfg=soc_has_dma",
4112 "cargo:rustc-cfg=soc_has_ecc",
4113 "cargo:rustc-cfg=soc_has_ecdsa",
4114 "cargo:rustc-cfg=soc_has_efuse",
4115 "cargo:rustc-cfg=soc_has_etm",
4116 "cargo:rustc-cfg=soc_has_gpio",
4117 "cargo:rustc-cfg=soc_has_gpio_sd",
4118 "cargo:rustc-cfg=soc_has_hp_apm",
4119 "cargo:rustc-cfg=soc_has_hp_sys",
4120 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
4121 "cargo:rustc-cfg=soc_has_i2c0",
4122 "cargo:rustc-cfg=soc_has_i2s0",
4123 "cargo:rustc-cfg=soc_has_interrupt_core0",
4124 "cargo:rustc-cfg=soc_has_intpri",
4125 "cargo:rustc-cfg=soc_has_io_mux",
4126 "cargo:rustc-cfg=soc_has_lp_ana",
4127 "cargo:rustc-cfg=soc_has_lp_aon",
4128 "cargo:rustc-cfg=soc_has_lp_apm",
4129 "cargo:rustc-cfg=soc_has_lp_clkrst",
4130 "cargo:rustc-cfg=soc_has_lpwr",
4131 "cargo:rustc-cfg=soc_has_lp_gpio",
4132 "cargo:rustc-cfg=soc_has_lp_io_mux",
4133 "cargo:rustc-cfg=soc_has_lp_peri",
4134 "cargo:rustc-cfg=soc_has_lp_tee",
4135 "cargo:rustc-cfg=soc_has_rtc_timer",
4136 "cargo:rustc-cfg=soc_has_lp_wdt",
4137 "cargo:rustc-cfg=soc_has_mem_monitor",
4138 "cargo:rustc-cfg=soc_has_modem_lpcon",
4139 "cargo:rustc-cfg=soc_has_modem_syscon",
4140 "cargo:rustc-cfg=soc_has_pau",
4141 "cargo:rustc-cfg=soc_has_pcr",
4142 "cargo:rustc-cfg=soc_has_pmu",
4143 "cargo:rustc-cfg=soc_has_rng",
4144 "cargo:rustc-cfg=soc_has_sha",
4145 "cargo:rustc-cfg=soc_has_slc",
4146 "cargo:rustc-cfg=soc_has_spi0",
4147 "cargo:rustc-cfg=soc_has_spi1",
4148 "cargo:rustc-cfg=soc_has_spi2",
4149 "cargo:rustc-cfg=soc_has_system",
4150 "cargo:rustc-cfg=soc_has_systimer",
4151 "cargo:rustc-cfg=soc_has_tee",
4152 "cargo:rustc-cfg=soc_has_timg0",
4153 "cargo:rustc-cfg=soc_has_timg1",
4154 "cargo:rustc-cfg=soc_has_uart0",
4155 "cargo:rustc-cfg=soc_has_uart1",
4156 "cargo:rustc-cfg=soc_has_uart2",
4157 "cargo:rustc-cfg=soc_has_usb_device",
4158 "cargo:rustc-cfg=soc_has_adc1",
4159 "cargo:rustc-cfg=soc_has_bt",
4160 "cargo:rustc-cfg=soc_has_flash",
4161 "cargo:rustc-cfg=soc_has_gpio_dedicated",
4162 "cargo:rustc-cfg=soc_has_wifi",
4163 "cargo:rustc-cfg=soc_has_psram",
4164 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
4165 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
4166 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
4167 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
4168 "cargo:rustc-cfg=gpio_driver_supported",
4169 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
4170 "cargo:rustc-cfg=io_mux_driver_supported",
4171 "cargo:rustc-cfg=lp_io_driver_supported",
4172 "cargo:rustc-cfg=uart_driver_supported",
4173 "cargo:rustc-cfg=i2c_master_driver_supported",
4174 "cargo:rustc-cfg=spi_master_driver_supported",
4175 "cargo:rustc-cfg=spi_slave_driver_supported",
4176 "cargo:rustc-cfg=i2s_driver_supported",
4177 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
4178 "cargo:rustc-cfg=bt_driver_supported",
4179 "cargo:rustc-cfg=wifi_driver_supported",
4180 "cargo:rustc-cfg=phy_driver_supported",
4181 "cargo:rustc-cfg=adc_driver_supported",
4182 "cargo:rustc-cfg=lp_timer_driver_supported",
4183 "cargo:rustc-cfg=systimer_driver_supported",
4184 "cargo:rustc-cfg=timergroup_driver_supported",
4185 "cargo:rustc-cfg=ecc_driver_supported",
4186 "cargo:rustc-cfg=rng_driver_supported",
4187 "cargo:rustc-cfg=sha_driver_supported",
4188 "cargo:rustc-cfg=sleep_driver_supported",
4189 "cargo:rustc-cfg=assist_debug_driver_supported",
4190 "cargo:rustc-cfg=dma_driver_supported",
4191 "cargo:rustc-cfg=interrupts_driver_supported",
4192 "cargo:rustc-cfg=mmu_driver_supported",
4193 "cargo:rustc-cfg=psram_driver_supported",
4194 "cargo:rustc-cfg=rom_driver_supported",
4195 "cargo:rustc-cfg=soc_driver_supported",
4196 "cargo:rustc-cfg=uart_uart0",
4197 "cargo:rustc-cfg=uart_uart1",
4198 "cargo:rustc-cfg=uart_uart2",
4199 "cargo:rustc-cfg=i2c_master_i2c0",
4200 "cargo:rustc-cfg=spi_master_spi2",
4201 "cargo:rustc-cfg=spi_slave_spi2",
4202 "cargo:rustc-cfg=i2s_i2s0",
4203 "cargo:rustc-cfg=adc_adc1",
4204 "cargo:rustc-cfg=timergroup_timg0",
4205 "cargo:rustc-cfg=timergroup_timg1",
4206 "cargo:rustc-cfg=gpio_version=\"2\"",
4207 "cargo:rustc-cfg=gpio_has_input_sync",
4208 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
4209 "cargo:rustc-cfg=gpio_constant_0_input=\"96\"",
4210 "cargo:rustc-cfg=gpio_constant_1_input=\"64\"",
4211 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
4212 "cargo:rustc-cfg=soc_has_xtal32k_pads",
4213 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
4214 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
4215 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v1\"",
4216 "cargo:rustc-cfg=lp_io_version=\"v4\"",
4217 "cargo:rustc-cfg=uart_ram_size=\"128\"",
4218 "cargo:rustc-cfg=uart_version=\"2\"",
4219 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
4220 "cargo:rustc-cfg=uart_has_sclk_enable",
4221 "cargo:rustc-cfg=i2c_master_version=\"4\"",
4222 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
4223 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
4224 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
4225 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
4226 "cargo:rustc-cfg=i2c_master_has_conf_update",
4227 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
4228 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
4229 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
4230 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
4231 "cargo:rustc-cfg=i2c_master_has_pd_en",
4232 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
4233 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
4234 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
4235 "cargo:rustc-cfg=spi_master_version=\"3\"",
4236 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
4237 "cargo:rustc-cfg=spi_master_has_app_interrupts",
4238 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
4239 "cargo:rustc-cfg=spi_master_has_clk_pre_div",
4240 "cargo:rustc-cfg=spi_master_dma_can_access_flash",
4241 "cargo:rustc-cfg=i2s_version=\"3\"",
4242 "cargo:rustc-cfg=i2s_version_is_set",
4243 "cargo:rustc-cfg=i2s_default_clock_source=\"2\"",
4244 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
4245 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"9\"",
4246 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
4247 "cargo:rustc-cfg=i2s_max_ws_width=\"512\"",
4248 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
4249 "cargo:rustc-cfg=i2s_clock_configured_by_pcr",
4250 "cargo:rustc-cfg=i2s_supports_pdm_tx",
4251 "cargo:rustc-cfg=i2s_supports_pdm_rx",
4252 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
4253 "cargo:rustc-cfg=bt_controller=\"npl\"",
4254 "cargo:rustc-cfg=wifi_has_wifi6",
4255 "cargo:rustc-cfg=wifi_mac_version=\"3\"",
4256 "cargo:rustc-cfg=wifi_csi_supported",
4257 "cargo:rustc-cfg=phy_combo_module",
4258 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
4259 "cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
4260 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
4261 "cargo:rustc-cfg=ecc_zero_extend_writes",
4262 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
4263 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
4264 "cargo:rustc-cfg=ecc_supports_enhanced_security",
4265 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
4266 "cargo:rustc-cfg=ecc_has_point_addition",
4267 "cargo:rustc-cfg=ecc_has_curve_p192",
4268 "cargo:rustc-cfg=ecc_has_curve_p256",
4269 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
4270 "cargo:rustc-cfg=rng_is_lp_sys",
4271 "cargo:rustc-cfg=sleep_light_sleep",
4272 "cargo:rustc-cfg=sleep_deep_sleep",
4273 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
4274 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
4275 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi_beacon",
4276 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
4277 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
4278 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
4279 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
4280 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
4281 "cargo:rustc-cfg=sleep_has_wakeup_source_lp_core",
4282 "cargo:rustc-cfg=sleep_ext1_version=\"2\"",
4283 "cargo:rustc-cfg=sleep_ext1_version_is_set",
4284 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"3\"",
4285 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
4286 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
4287 "cargo:rustc-cfg=assist_debug_has_region_monitor",
4288 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
4289 "cargo:rustc-cfg=dma_gdma_version=\"2\"",
4290 "cargo:rustc-cfg=dma_gdma_version_is_set",
4291 "cargo:rustc-cfg=soc_has_dma_ch0",
4292 "cargo:rustc-cfg=soc_has_dma_ch1",
4293 "cargo:rustc-cfg=dma_supports_mem2mem",
4294 "cargo:rustc-cfg=sha_supports_dma",
4295 "cargo:rustc-cfg=sha_dma_engine=\"AHB_GDMA\"",
4296 "cargo:rustc-cfg=spi_master_supports_dma",
4297 "cargo:rustc-cfg=spi_master_dma_engine=\"AHB_GDMA\"",
4298 "cargo:rustc-cfg=spi_slave_supports_dma",
4299 "cargo:rustc-cfg=spi_slave_dma_engine=\"AHB_GDMA\"",
4300 "cargo:rustc-cfg=i2s_supports_dma",
4301 "cargo:rustc-cfg=i2s_dma_engine=\"AHB_GDMA\"",
4302 "cargo:rustc-cfg=dma_can_access_psram",
4303 "cargo:rustc-cfg=dma_max_priority=\"5\"",
4304 "cargo:rustc-cfg=dma_max_priority_is_set",
4305 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
4306 "cargo:rustc-cfg=interrupt_controller=\"clic\"",
4307 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
4308 "cargo:rustc-cfg=mmu_entry_num=\"512\"",
4309 "cargo:rustc-cfg=psram_extmem_origin=\"1107296256\"",
4310 "cargo:rustc-cfg=rom_has_crc_le",
4311 "cargo:rustc-cfg=rom_has_crc_be",
4312 "cargo:rustc-cfg=rom_has_md5_bsd",
4313 "cargo:rustc-cfg=soc_cpu_has_branch_predictor",
4314 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"2064\"",
4315 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
4316 "cargo:rustc-cfg=soc_has_swd_watchdog",
4317 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"31\"",
4318 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
4319 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
4320 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
4321 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
4322 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
4323 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
4324 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
4325 "cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
4326 "cargo:rustc-cfg=soc_has_clock_node_pll_f40m",
4327 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
4328 "cargo:rustc-cfg=soc_has_clock_node_pll_f60m",
4329 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
4330 "cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
4331 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
4332 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
4333 "cargo:rustc-cfg=soc_clock_node_hp_root_clk_is_configurable",
4334 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
4335 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
4336 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
4337 "cargo:rustc-cfg=soc_clock_node_ahb_clk_is_configurable",
4338 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
4339 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
4340 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
4341 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
4342 "cargo:rustc-cfg=soc_clock_node_lp_fast_clk_is_configurable",
4343 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
4344 "cargo:rustc-cfg=soc_clock_node_lp_slow_clk_is_configurable",
4345 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
4346 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
4347 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
4348 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
4349 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
4350 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
4351 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
4352 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
4353 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
4354 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
4355 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
4356 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
4357 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
4358 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
4359 "cargo:rustc-cfg=has_dram_region",
4360 "cargo:rustc-cfg=has_dram2_uninit_region",
4361 "cargo:rustc-cfg=has_irom_region",
4362 "cargo:rustc-cfg=has_drom_region",
4363 ],
4364 memory_layout: &MemoryLayout {
4365 regions: &[
4366 (
4367 "dram",
4368 MemoryRegion {
4369 address_range: 0x40800000..0x40850000,
4370 },
4371 ),
4372 (
4373 "dram2_uninit",
4374 MemoryRegion {
4375 address_range: 0x4083EA70..0x4084EA70,
4376 },
4377 ),
4378 (
4379 "irom",
4380 MemoryRegion {
4381 address_range: 0x42000000..0x44000000,
4382 },
4383 ),
4384 (
4385 "drom",
4386 MemoryRegion {
4387 address_range: 0x42000000..0x44000000,
4388 },
4389 ),
4390 ],
4391 },
4392 pins: &[
4393 PinInfo {
4394 pin: 0,
4395 limitations: &[],
4396 },
4397 PinInfo {
4398 pin: 1,
4399 limitations: &[],
4400 },
4401 PinInfo {
4402 pin: 2,
4403 limitations: &[],
4404 },
4405 PinInfo {
4406 pin: 3,
4407 limitations: &["strapping", "jtag"],
4408 },
4409 PinInfo {
4410 pin: 4,
4411 limitations: &["strapping", "jtag"],
4412 },
4413 PinInfo {
4414 pin: 5,
4415 limitations: &["jtag"],
4416 },
4417 PinInfo {
4418 pin: 6,
4419 limitations: &["jtag"],
4420 },
4421 PinInfo {
4422 pin: 7,
4423 limitations: &["strapping"],
4424 },
4425 PinInfo {
4426 pin: 8,
4427 limitations: &["strapping"],
4428 },
4429 PinInfo {
4430 pin: 9,
4431 limitations: &["strapping"],
4432 },
4433 PinInfo {
4434 pin: 10,
4435 limitations: &["bootloader_uart"],
4436 },
4437 PinInfo {
4438 pin: 11,
4439 limitations: &["bootloader_uart"],
4440 },
4441 PinInfo {
4442 pin: 12,
4443 limitations: &["usb_jtag"],
4444 },
4445 PinInfo {
4446 pin: 13,
4447 limitations: &["usb_jtag"],
4448 },
4449 PinInfo {
4450 pin: 14,
4451 limitations: &["spi_psram"],
4452 },
4453 PinInfo {
4454 pin: 15,
4455 limitations: &["spi_flash"],
4456 },
4457 PinInfo {
4458 pin: 16,
4459 limitations: &["spi_flash", "spi_psram"],
4460 },
4461 PinInfo {
4462 pin: 17,
4463 limitations: &["spi_flash", "spi_psram"],
4464 },
4465 PinInfo {
4466 pin: 18,
4467 limitations: &["spi_flash", "spi_psram"],
4468 },
4469 PinInfo {
4470 pin: 19,
4471 limitations: &["spi_flash", "spi_psram"],
4472 },
4473 PinInfo {
4474 pin: 20,
4475 limitations: &["spi_flash", "spi_psram"],
4476 },
4477 PinInfo {
4478 pin: 21,
4479 limitations: &["spi_flash", "spi_psram"],
4480 },
4481 PinInfo {
4482 pin: 22,
4483 limitations: &[],
4484 },
4485 PinInfo {
4486 pin: 23,
4487 limitations: &[],
4488 },
4489 PinInfo {
4490 pin: 24,
4491 limitations: &[],
4492 },
4493 PinInfo {
4494 pin: 25,
4495 limitations: &[],
4496 },
4497 PinInfo {
4498 pin: 26,
4499 limitations: &[],
4500 },
4501 PinInfo {
4502 pin: 27,
4503 limitations: &[],
4504 },
4505 PinInfo {
4506 pin: 28,
4507 limitations: &[],
4508 },
4509 PinInfo {
4510 pin: 29,
4511 limitations: &[],
4512 },
4513 ],
4514 },
4515 Self::Esp32h2 => Config {
4516 architecture: "riscv",
4517 target: "riscv32imac-unknown-none-elf",
4518 symbols: &[
4519 "esp32h2",
4520 "riscv",
4521 "single_core",
4522 "soc_has_aes",
4523 "soc_has_apb_saradc",
4524 "soc_has_assist_debug",
4525 "soc_has_dma",
4526 "soc_has_ds",
4527 "soc_has_ecc",
4528 "soc_has_efuse",
4529 "soc_has_gpio",
4530 "soc_has_gpio_sd",
4531 "soc_has_hmac",
4532 "soc_has_hp_apm",
4533 "soc_has_hp_sys",
4534 "soc_has_i2c_ana_mst",
4535 "soc_has_i2c0",
4536 "soc_has_i2c1",
4537 "soc_has_i2s0",
4538 "soc_has_ieee802154",
4539 "soc_has_interrupt_core0",
4540 "soc_has_intpri",
4541 "soc_has_io_mux",
4542 "soc_has_ledc",
4543 "soc_has_lpwr",
4544 "soc_has_lp_ana",
4545 "soc_has_lp_aon",
4546 "soc_has_lp_apm",
4547 "soc_has_lp_apm0",
4548 "soc_has_lp_clkrst",
4549 "soc_has_lp_peri",
4550 "soc_has_rtc_timer",
4551 "soc_has_lp_wdt",
4552 "soc_has_mcpwm0",
4553 "soc_has_mem_monitor",
4554 "soc_has_modem_lpcon",
4555 "soc_has_modem_syscon",
4556 "soc_has_otp_debug",
4557 "soc_has_parl_io",
4558 "soc_has_pau",
4559 "soc_has_pcnt",
4560 "soc_has_pcr",
4561 "soc_has_plic_mx",
4562 "soc_has_pmu",
4563 "soc_has_rmt",
4564 "soc_has_rng",
4565 "soc_has_rsa",
4566 "soc_has_sha",
4567 "soc_has_etm",
4568 "soc_has_spi0",
4569 "soc_has_spi1",
4570 "soc_has_spi2",
4571 "soc_has_system",
4572 "soc_has_systimer",
4573 "soc_has_tee",
4574 "soc_has_timg0",
4575 "soc_has_timg1",
4576 "soc_has_trace0",
4577 "soc_has_twai0",
4578 "soc_has_uart0",
4579 "soc_has_uart1",
4580 "soc_has_uhci0",
4581 "soc_has_usb_device",
4582 "soc_has_adc1",
4583 "soc_has_bt",
4584 "soc_has_flash",
4585 "soc_has_gpio_dedicated",
4586 "soc_has_from_cpu_intr0",
4587 "soc_has_from_cpu_intr1",
4588 "soc_has_from_cpu_intr2",
4589 "soc_has_from_cpu_intr3",
4590 "gpio_driver_supported",
4591 "dedicated_gpio_driver_supported",
4592 "io_mux_driver_supported",
4593 "lp_io_driver_supported",
4594 "uart_driver_supported",
4595 "uhci_driver_supported",
4596 "i2c_master_driver_supported",
4597 "spi_master_driver_supported",
4598 "spi_slave_driver_supported",
4599 "i2s_driver_supported",
4600 "parl_io_driver_supported",
4601 "rmt_driver_supported",
4602 "twai_driver_supported",
4603 "usb_serial_jtag_driver_supported",
4604 "bt_driver_supported",
4605 "ieee802154_driver_supported",
4606 "phy_driver_supported",
4607 "adc_driver_supported",
4608 "temp_sensor_driver_supported",
4609 "ledc_driver_supported",
4610 "mcpwm_driver_supported",
4611 "pcnt_driver_supported",
4612 "lp_timer_driver_supported",
4613 "sdm_driver_supported",
4614 "systimer_driver_supported",
4615 "timergroup_driver_supported",
4616 "aes_driver_supported",
4617 "ecc_driver_supported",
4618 "hmac_driver_supported",
4619 "rng_driver_supported",
4620 "rsa_driver_supported",
4621 "sha_driver_supported",
4622 "sleep_driver_supported",
4623 "assist_debug_driver_supported",
4624 "dma_driver_supported",
4625 "etm_driver_supported",
4626 "interrupts_driver_supported",
4627 "mmu_driver_supported",
4628 "rom_driver_supported",
4629 "soc_driver_supported",
4630 "uart_uart0",
4631 "uart_uart1",
4632 "i2c_master_i2c0",
4633 "i2c_master_i2c1",
4634 "spi_master_spi2",
4635 "spi_slave_spi2",
4636 "i2s_i2s0",
4637 "adc_adc1",
4638 "timergroup_timg0",
4639 "timergroup_timg1",
4640 "gpio_version=\"2\"",
4641 "gpio_has_input_sync",
4642 "gpio_gpio_function=\"1\"",
4643 "gpio_constant_0_input=\"60\"",
4644 "gpio_constant_1_input=\"56\"",
4645 "gpio_func_in_sel_offset=\"0\"",
4646 "soc_has_xtal32k_pads",
4647 "gpio_input_signal_max=\"124\"",
4648 "gpio_output_signal_max=\"128\"",
4649 "dedicated_gpio_version=\"riscv_v1\"",
4650 "lp_io_version=\"esp32h2\"",
4651 "uart_ram_size=\"128\"",
4652 "uart_version=\"2\"",
4653 "uart_peripheral_controls_mem_clk",
4654 "uart_has_sclk_enable",
4655 "i2c_master_version=\"4\"",
4656 "i2c_master_has_fsm_timeouts",
4657 "i2c_master_has_hw_bus_clear",
4658 "i2c_master_has_bus_timeout_enable",
4659 "i2c_master_can_estimate_nack_reason",
4660 "i2c_master_has_conf_update",
4661 "i2c_master_has_reliable_fsm_reset",
4662 "i2c_master_has_arbitration_en",
4663 "i2c_master_has_tx_fifo_watermark",
4664 "i2c_master_bus_timeout_is_exponential",
4665 "i2c_master_has_pd_en",
4666 "i2c_master_max_bus_timeout=\"31\"",
4667 "i2c_master_ll_intr_mask=\"262143\"",
4668 "i2c_master_fifo_size=\"32\"",
4669 "spi_master_version=\"3\"",
4670 "spi_master_fifo_size=\"64\"",
4671 "spi_master_has_app_interrupts",
4672 "spi_master_has_dma_segmented_transfer",
4673 "i2s_version=\"3\"",
4674 "i2s_version_is_set",
4675 "i2s_default_clock_source=\"1\"",
4676 "i2s_default_clock_source_is_set",
4677 "i2s_mclk_divider_bit_width=\"9\"",
4678 "i2s_mclk_divider_bit_width_is_set",
4679 "i2s_max_ws_width=\"512\"",
4680 "i2s_max_ws_width_is_set",
4681 "i2s_clock_configured_by_pcr",
4682 "i2s_supports_pdm_tx",
4683 "i2s_supports_pdm_rx",
4684 "i2s_supports_pcm2pdm",
4685 "parl_io_version=\"2\"",
4686 "rmt_ram_start=\"1610642432\"",
4687 "rmt_channel_ram_size=\"48\"",
4688 "rmt_has_tx_immediate_stop",
4689 "rmt_has_tx_loop_count",
4690 "rmt_has_tx_loop_auto_stop",
4691 "rmt_has_tx_carrier_data_only",
4692 "rmt_has_tx_sync",
4693 "rmt_has_rx_wrap",
4694 "rmt_has_rx_demodulation",
4695 "bt_controller=\"npl\"",
4696 "ledc_version=\"3\"",
4697 "ledc_channel_count=\"6\"",
4698 "soc_has_sdm_ch0",
4699 "soc_has_sdm_ch1",
4700 "soc_has_sdm_ch2",
4701 "soc_has_sdm_ch3",
4702 "timergroup_timg_has_divcnt_rst",
4703 "timergroup_rc_fast_calibration_divider",
4704 "timergroup_rc_fast_calibration_tick_enable",
4705 "timergroup_rc_fast_calibration_is_set",
4706 "aes_dma_mode_ecb",
4707 "aes_dma_mode_cbc",
4708 "aes_dma_mode_ofb",
4709 "aes_dma_mode_ctr",
4710 "aes_dma_mode_cfb8",
4711 "aes_dma_mode_cfb128",
4712 "aes_has_split_text_registers",
4713 "ecc_zero_extend_writes",
4714 "ecc_separate_jacobian_point_memory",
4715 "ecc_has_memory_clock_gate",
4716 "ecc_supports_enhanced_security",
4717 "ecc_has_modular_arithmetic",
4718 "ecc_has_point_addition",
4719 "ecc_has_curve_p192",
4720 "ecc_has_curve_p256",
4721 "rng_apb_cycle_wait_num=\"16\"",
4722 "rng_trng_supported",
4723 "rsa_version=\"3\"",
4724 "rsa_size_increment=\"32\"",
4725 "rsa_memory_size_bytes=\"384\"",
4726 "sleep_light_sleep",
4727 "sleep_deep_sleep",
4728 "sleep_has_wakeup_source_ext1",
4729 "sleep_has_wakeup_source_gpio",
4730 "sleep_has_wakeup_source_wifi_beacon",
4731 "sleep_has_wakeup_source_timer",
4732 "sleep_has_wakeup_source_wifi",
4733 "sleep_has_wakeup_source_uart",
4734 "sleep_has_wakeup_source_sdio",
4735 "sleep_has_wakeup_source_bt",
4736 "sleep_has_wakeup_source_lp_core",
4737 "sleep_ext1_version=\"2\"",
4738 "sleep_ext1_version_is_set",
4739 "assist_debug_has_sp_monitor",
4740 "assist_debug_has_region_monitor",
4741 "dma_separate_in_out_interrupts",
4742 "dma_gdma_version=\"1\"",
4743 "dma_gdma_version_is_set",
4744 "soc_has_dma_ch0",
4745 "soc_has_dma_ch1",
4746 "soc_has_dma_ch2",
4747 "dma_supports_mem2mem",
4748 "aes_supports_dma",
4749 "aes_dma_engine=\"AHB_GDMA\"",
4750 "sha_supports_dma",
4751 "sha_dma_engine=\"AHB_GDMA\"",
4752 "spi_master_supports_dma",
4753 "spi_master_dma_engine=\"AHB_GDMA\"",
4754 "spi_slave_supports_dma",
4755 "spi_slave_dma_engine=\"AHB_GDMA\"",
4756 "uhci_supports_dma",
4757 "uhci_dma_engine=\"AHB_GDMA\"",
4758 "i2s_supports_dma",
4759 "i2s_dma_engine=\"AHB_GDMA\"",
4760 "parl_io_supports_dma",
4761 "parl_io_dma_engine=\"AHB_GDMA\"",
4762 "dma_max_priority=\"5\"",
4763 "dma_max_priority_is_set",
4764 "interrupts_status_registers=\"2\"",
4765 "interrupt_controller=\"plic\"",
4766 "mmu_page_size=\"65536\"",
4767 "mmu_entry_num=\"256\"",
4768 "rom_has_crc_le",
4769 "rom_has_crc_be",
4770 "rom_has_md5_bsd",
4771 "soc_cpu_has_csr_pc",
4772 "soc_cpu_csr_prv_mode=\"3088\"",
4773 "soc_cpu_csr_prv_mode_is_set",
4774 "soc_has_swd_watchdog",
4775 "soc_cpu_mcause_mask=\"31\"",
4776 "soc_has_clock_node_xtal_clk",
4777 "soc_clock_node_xtal_clk_is_configurable",
4778 "soc_has_clock_node_pll_f96m_clk",
4779 "soc_has_clock_node_pll_f64m_clk",
4780 "soc_has_clock_node_pll_f48m_clk",
4781 "soc_has_clock_node_rc_fast_clk",
4782 "soc_has_clock_node_iomux_function_clock",
4783 "soc_clock_node_iomux_function_clock_is_configurable",
4784 "soc_has_clock_node_xtal32k_clk",
4785 "soc_has_clock_node_osc_slow_clk",
4786 "soc_has_clock_node_rc_slow_clk",
4787 "soc_has_clock_node_pll_lp_clk",
4788 "soc_has_clock_node_hp_root_clk",
4789 "soc_clock_node_hp_root_clk_is_configurable",
4790 "soc_has_clock_node_cpu_clk",
4791 "soc_clock_node_cpu_clk_is_configurable",
4792 "soc_has_clock_node_ahb_clk",
4793 "soc_clock_node_ahb_clk_is_configurable",
4794 "soc_has_clock_node_apb_clk",
4795 "soc_clock_node_apb_clk_is_configurable",
4796 "soc_has_clock_node_xtal_d2_clk",
4797 "soc_has_clock_node_lp_fast_clk",
4798 "soc_clock_node_lp_fast_clk_is_configurable",
4799 "soc_has_clock_node_lp_slow_clk",
4800 "soc_clock_node_lp_slow_clk_is_configurable",
4801 "soc_has_clock_node_timg_calibration_clock",
4802 "soc_clock_node_timg_calibration_clock_is_configurable",
4803 "soc_has_clock_node_uart_function_clock",
4804 "soc_clock_node_uart_function_clock_is_configurable",
4805 "soc_has_clock_node_uart_baud_rate_generator",
4806 "soc_clock_node_uart_baud_rate_generator_is_configurable",
4807 "soc_has_clock_node_sdm_function_clock",
4808 "soc_has_clock_node_rmt_sclk",
4809 "soc_clock_node_rmt_sclk_is_configurable",
4810 "soc_has_clock_node_timg_function_clock",
4811 "soc_clock_node_timg_function_clock_is_configurable",
4812 "soc_has_clock_node_timg_wdt_clock",
4813 "soc_clock_node_timg_wdt_clock_is_configurable",
4814 "soc_has_clock_node_mcpwm_function_clock",
4815 "soc_clock_node_mcpwm_function_clock_is_configurable",
4816 "soc_has_clock_node_parl_io_rx_clock",
4817 "soc_clock_node_parl_io_rx_clock_is_configurable",
4818 "soc_has_clock_node_parl_io_tx_clock",
4819 "soc_clock_node_parl_io_tx_clock_is_configurable",
4820 "soc_has_clock_node_i2c_function_clock",
4821 "soc_clock_node_i2c_function_clock_is_configurable",
4822 "soc_has_clock_node_spi_function_clock",
4823 "soc_clock_node_spi_function_clock_is_configurable",
4824 "has_dram_region",
4825 "has_dram2_uninit_region",
4826 "has_irom_region",
4827 "has_drom_region",
4828 ],
4829 cfgs: &[
4830 "cargo:rustc-cfg=esp32h2",
4831 "cargo:rustc-cfg=riscv",
4832 "cargo:rustc-cfg=single_core",
4833 "cargo:rustc-cfg=soc_has_aes",
4834 "cargo:rustc-cfg=soc_has_apb_saradc",
4835 "cargo:rustc-cfg=soc_has_assist_debug",
4836 "cargo:rustc-cfg=soc_has_dma",
4837 "cargo:rustc-cfg=soc_has_ds",
4838 "cargo:rustc-cfg=soc_has_ecc",
4839 "cargo:rustc-cfg=soc_has_efuse",
4840 "cargo:rustc-cfg=soc_has_gpio",
4841 "cargo:rustc-cfg=soc_has_gpio_sd",
4842 "cargo:rustc-cfg=soc_has_hmac",
4843 "cargo:rustc-cfg=soc_has_hp_apm",
4844 "cargo:rustc-cfg=soc_has_hp_sys",
4845 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
4846 "cargo:rustc-cfg=soc_has_i2c0",
4847 "cargo:rustc-cfg=soc_has_i2c1",
4848 "cargo:rustc-cfg=soc_has_i2s0",
4849 "cargo:rustc-cfg=soc_has_ieee802154",
4850 "cargo:rustc-cfg=soc_has_interrupt_core0",
4851 "cargo:rustc-cfg=soc_has_intpri",
4852 "cargo:rustc-cfg=soc_has_io_mux",
4853 "cargo:rustc-cfg=soc_has_ledc",
4854 "cargo:rustc-cfg=soc_has_lpwr",
4855 "cargo:rustc-cfg=soc_has_lp_ana",
4856 "cargo:rustc-cfg=soc_has_lp_aon",
4857 "cargo:rustc-cfg=soc_has_lp_apm",
4858 "cargo:rustc-cfg=soc_has_lp_apm0",
4859 "cargo:rustc-cfg=soc_has_lp_clkrst",
4860 "cargo:rustc-cfg=soc_has_lp_peri",
4861 "cargo:rustc-cfg=soc_has_rtc_timer",
4862 "cargo:rustc-cfg=soc_has_lp_wdt",
4863 "cargo:rustc-cfg=soc_has_mcpwm0",
4864 "cargo:rustc-cfg=soc_has_mem_monitor",
4865 "cargo:rustc-cfg=soc_has_modem_lpcon",
4866 "cargo:rustc-cfg=soc_has_modem_syscon",
4867 "cargo:rustc-cfg=soc_has_otp_debug",
4868 "cargo:rustc-cfg=soc_has_parl_io",
4869 "cargo:rustc-cfg=soc_has_pau",
4870 "cargo:rustc-cfg=soc_has_pcnt",
4871 "cargo:rustc-cfg=soc_has_pcr",
4872 "cargo:rustc-cfg=soc_has_plic_mx",
4873 "cargo:rustc-cfg=soc_has_pmu",
4874 "cargo:rustc-cfg=soc_has_rmt",
4875 "cargo:rustc-cfg=soc_has_rng",
4876 "cargo:rustc-cfg=soc_has_rsa",
4877 "cargo:rustc-cfg=soc_has_sha",
4878 "cargo:rustc-cfg=soc_has_etm",
4879 "cargo:rustc-cfg=soc_has_spi0",
4880 "cargo:rustc-cfg=soc_has_spi1",
4881 "cargo:rustc-cfg=soc_has_spi2",
4882 "cargo:rustc-cfg=soc_has_system",
4883 "cargo:rustc-cfg=soc_has_systimer",
4884 "cargo:rustc-cfg=soc_has_tee",
4885 "cargo:rustc-cfg=soc_has_timg0",
4886 "cargo:rustc-cfg=soc_has_timg1",
4887 "cargo:rustc-cfg=soc_has_trace0",
4888 "cargo:rustc-cfg=soc_has_twai0",
4889 "cargo:rustc-cfg=soc_has_uart0",
4890 "cargo:rustc-cfg=soc_has_uart1",
4891 "cargo:rustc-cfg=soc_has_uhci0",
4892 "cargo:rustc-cfg=soc_has_usb_device",
4893 "cargo:rustc-cfg=soc_has_adc1",
4894 "cargo:rustc-cfg=soc_has_bt",
4895 "cargo:rustc-cfg=soc_has_flash",
4896 "cargo:rustc-cfg=soc_has_gpio_dedicated",
4897 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
4898 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
4899 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
4900 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
4901 "cargo:rustc-cfg=gpio_driver_supported",
4902 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
4903 "cargo:rustc-cfg=io_mux_driver_supported",
4904 "cargo:rustc-cfg=lp_io_driver_supported",
4905 "cargo:rustc-cfg=uart_driver_supported",
4906 "cargo:rustc-cfg=uhci_driver_supported",
4907 "cargo:rustc-cfg=i2c_master_driver_supported",
4908 "cargo:rustc-cfg=spi_master_driver_supported",
4909 "cargo:rustc-cfg=spi_slave_driver_supported",
4910 "cargo:rustc-cfg=i2s_driver_supported",
4911 "cargo:rustc-cfg=parl_io_driver_supported",
4912 "cargo:rustc-cfg=rmt_driver_supported",
4913 "cargo:rustc-cfg=twai_driver_supported",
4914 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
4915 "cargo:rustc-cfg=bt_driver_supported",
4916 "cargo:rustc-cfg=ieee802154_driver_supported",
4917 "cargo:rustc-cfg=phy_driver_supported",
4918 "cargo:rustc-cfg=adc_driver_supported",
4919 "cargo:rustc-cfg=temp_sensor_driver_supported",
4920 "cargo:rustc-cfg=ledc_driver_supported",
4921 "cargo:rustc-cfg=mcpwm_driver_supported",
4922 "cargo:rustc-cfg=pcnt_driver_supported",
4923 "cargo:rustc-cfg=lp_timer_driver_supported",
4924 "cargo:rustc-cfg=sdm_driver_supported",
4925 "cargo:rustc-cfg=systimer_driver_supported",
4926 "cargo:rustc-cfg=timergroup_driver_supported",
4927 "cargo:rustc-cfg=aes_driver_supported",
4928 "cargo:rustc-cfg=ecc_driver_supported",
4929 "cargo:rustc-cfg=hmac_driver_supported",
4930 "cargo:rustc-cfg=rng_driver_supported",
4931 "cargo:rustc-cfg=rsa_driver_supported",
4932 "cargo:rustc-cfg=sha_driver_supported",
4933 "cargo:rustc-cfg=sleep_driver_supported",
4934 "cargo:rustc-cfg=assist_debug_driver_supported",
4935 "cargo:rustc-cfg=dma_driver_supported",
4936 "cargo:rustc-cfg=etm_driver_supported",
4937 "cargo:rustc-cfg=interrupts_driver_supported",
4938 "cargo:rustc-cfg=mmu_driver_supported",
4939 "cargo:rustc-cfg=rom_driver_supported",
4940 "cargo:rustc-cfg=soc_driver_supported",
4941 "cargo:rustc-cfg=uart_uart0",
4942 "cargo:rustc-cfg=uart_uart1",
4943 "cargo:rustc-cfg=i2c_master_i2c0",
4944 "cargo:rustc-cfg=i2c_master_i2c1",
4945 "cargo:rustc-cfg=spi_master_spi2",
4946 "cargo:rustc-cfg=spi_slave_spi2",
4947 "cargo:rustc-cfg=i2s_i2s0",
4948 "cargo:rustc-cfg=adc_adc1",
4949 "cargo:rustc-cfg=timergroup_timg0",
4950 "cargo:rustc-cfg=timergroup_timg1",
4951 "cargo:rustc-cfg=gpio_version=\"2\"",
4952 "cargo:rustc-cfg=gpio_has_input_sync",
4953 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
4954 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
4955 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
4956 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
4957 "cargo:rustc-cfg=soc_has_xtal32k_pads",
4958 "cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
4959 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
4960 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v1\"",
4961 "cargo:rustc-cfg=lp_io_version=\"esp32h2\"",
4962 "cargo:rustc-cfg=uart_ram_size=\"128\"",
4963 "cargo:rustc-cfg=uart_version=\"2\"",
4964 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
4965 "cargo:rustc-cfg=uart_has_sclk_enable",
4966 "cargo:rustc-cfg=i2c_master_version=\"4\"",
4967 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
4968 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
4969 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
4970 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
4971 "cargo:rustc-cfg=i2c_master_has_conf_update",
4972 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
4973 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
4974 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
4975 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
4976 "cargo:rustc-cfg=i2c_master_has_pd_en",
4977 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
4978 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
4979 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
4980 "cargo:rustc-cfg=spi_master_version=\"3\"",
4981 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
4982 "cargo:rustc-cfg=spi_master_has_app_interrupts",
4983 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
4984 "cargo:rustc-cfg=i2s_version=\"3\"",
4985 "cargo:rustc-cfg=i2s_version_is_set",
4986 "cargo:rustc-cfg=i2s_default_clock_source=\"1\"",
4987 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
4988 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"9\"",
4989 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
4990 "cargo:rustc-cfg=i2s_max_ws_width=\"512\"",
4991 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
4992 "cargo:rustc-cfg=i2s_clock_configured_by_pcr",
4993 "cargo:rustc-cfg=i2s_supports_pdm_tx",
4994 "cargo:rustc-cfg=i2s_supports_pdm_rx",
4995 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
4996 "cargo:rustc-cfg=parl_io_version=\"2\"",
4997 "cargo:rustc-cfg=rmt_ram_start=\"1610642432\"",
4998 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
4999 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
5000 "cargo:rustc-cfg=rmt_has_tx_loop_count",
5001 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
5002 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
5003 "cargo:rustc-cfg=rmt_has_tx_sync",
5004 "cargo:rustc-cfg=rmt_has_rx_wrap",
5005 "cargo:rustc-cfg=rmt_has_rx_demodulation",
5006 "cargo:rustc-cfg=bt_controller=\"npl\"",
5007 "cargo:rustc-cfg=ledc_version=\"3\"",
5008 "cargo:rustc-cfg=ledc_channel_count=\"6\"",
5009 "cargo:rustc-cfg=soc_has_sdm_ch0",
5010 "cargo:rustc-cfg=soc_has_sdm_ch1",
5011 "cargo:rustc-cfg=soc_has_sdm_ch2",
5012 "cargo:rustc-cfg=soc_has_sdm_ch3",
5013 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
5014 "cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
5015 "cargo:rustc-cfg=timergroup_rc_fast_calibration_tick_enable",
5016 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
5017 "cargo:rustc-cfg=aes_dma_mode_ecb",
5018 "cargo:rustc-cfg=aes_dma_mode_cbc",
5019 "cargo:rustc-cfg=aes_dma_mode_ofb",
5020 "cargo:rustc-cfg=aes_dma_mode_ctr",
5021 "cargo:rustc-cfg=aes_dma_mode_cfb8",
5022 "cargo:rustc-cfg=aes_dma_mode_cfb128",
5023 "cargo:rustc-cfg=aes_has_split_text_registers",
5024 "cargo:rustc-cfg=ecc_zero_extend_writes",
5025 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
5026 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
5027 "cargo:rustc-cfg=ecc_supports_enhanced_security",
5028 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
5029 "cargo:rustc-cfg=ecc_has_point_addition",
5030 "cargo:rustc-cfg=ecc_has_curve_p192",
5031 "cargo:rustc-cfg=ecc_has_curve_p256",
5032 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
5033 "cargo:rustc-cfg=rng_trng_supported",
5034 "cargo:rustc-cfg=rsa_version=\"3\"",
5035 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
5036 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
5037 "cargo:rustc-cfg=sleep_light_sleep",
5038 "cargo:rustc-cfg=sleep_deep_sleep",
5039 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
5040 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
5041 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi_beacon",
5042 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
5043 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
5044 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
5045 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
5046 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
5047 "cargo:rustc-cfg=sleep_has_wakeup_source_lp_core",
5048 "cargo:rustc-cfg=sleep_ext1_version=\"2\"",
5049 "cargo:rustc-cfg=sleep_ext1_version_is_set",
5050 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
5051 "cargo:rustc-cfg=assist_debug_has_region_monitor",
5052 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
5053 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
5054 "cargo:rustc-cfg=dma_gdma_version_is_set",
5055 "cargo:rustc-cfg=soc_has_dma_ch0",
5056 "cargo:rustc-cfg=soc_has_dma_ch1",
5057 "cargo:rustc-cfg=soc_has_dma_ch2",
5058 "cargo:rustc-cfg=dma_supports_mem2mem",
5059 "cargo:rustc-cfg=aes_supports_dma",
5060 "cargo:rustc-cfg=aes_dma_engine=\"AHB_GDMA\"",
5061 "cargo:rustc-cfg=sha_supports_dma",
5062 "cargo:rustc-cfg=sha_dma_engine=\"AHB_GDMA\"",
5063 "cargo:rustc-cfg=spi_master_supports_dma",
5064 "cargo:rustc-cfg=spi_master_dma_engine=\"AHB_GDMA\"",
5065 "cargo:rustc-cfg=spi_slave_supports_dma",
5066 "cargo:rustc-cfg=spi_slave_dma_engine=\"AHB_GDMA\"",
5067 "cargo:rustc-cfg=uhci_supports_dma",
5068 "cargo:rustc-cfg=uhci_dma_engine=\"AHB_GDMA\"",
5069 "cargo:rustc-cfg=i2s_supports_dma",
5070 "cargo:rustc-cfg=i2s_dma_engine=\"AHB_GDMA\"",
5071 "cargo:rustc-cfg=parl_io_supports_dma",
5072 "cargo:rustc-cfg=parl_io_dma_engine=\"AHB_GDMA\"",
5073 "cargo:rustc-cfg=dma_max_priority=\"5\"",
5074 "cargo:rustc-cfg=dma_max_priority_is_set",
5075 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
5076 "cargo:rustc-cfg=interrupt_controller=\"plic\"",
5077 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
5078 "cargo:rustc-cfg=mmu_entry_num=\"256\"",
5079 "cargo:rustc-cfg=rom_has_crc_le",
5080 "cargo:rustc-cfg=rom_has_crc_be",
5081 "cargo:rustc-cfg=rom_has_md5_bsd",
5082 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
5083 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"3088\"",
5084 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
5085 "cargo:rustc-cfg=soc_has_swd_watchdog",
5086 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"31\"",
5087 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
5088 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
5089 "cargo:rustc-cfg=soc_has_clock_node_pll_f96m_clk",
5090 "cargo:rustc-cfg=soc_has_clock_node_pll_f64m_clk",
5091 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m_clk",
5092 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
5093 "cargo:rustc-cfg=soc_has_clock_node_iomux_function_clock",
5094 "cargo:rustc-cfg=soc_clock_node_iomux_function_clock_is_configurable",
5095 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
5096 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
5097 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
5098 "cargo:rustc-cfg=soc_has_clock_node_pll_lp_clk",
5099 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
5100 "cargo:rustc-cfg=soc_clock_node_hp_root_clk_is_configurable",
5101 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
5102 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
5103 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
5104 "cargo:rustc-cfg=soc_clock_node_ahb_clk_is_configurable",
5105 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
5106 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
5107 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
5108 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
5109 "cargo:rustc-cfg=soc_clock_node_lp_fast_clk_is_configurable",
5110 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
5111 "cargo:rustc-cfg=soc_clock_node_lp_slow_clk_is_configurable",
5112 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
5113 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
5114 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
5115 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
5116 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
5117 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
5118 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
5119 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
5120 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
5121 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
5122 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
5123 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
5124 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
5125 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
5126 "cargo:rustc-cfg=soc_clock_node_mcpwm_function_clock_is_configurable",
5127 "cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
5128 "cargo:rustc-cfg=soc_clock_node_parl_io_rx_clock_is_configurable",
5129 "cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
5130 "cargo:rustc-cfg=soc_clock_node_parl_io_tx_clock_is_configurable",
5131 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
5132 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
5133 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
5134 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
5135 "cargo:rustc-cfg=has_dram_region",
5136 "cargo:rustc-cfg=has_dram2_uninit_region",
5137 "cargo:rustc-cfg=has_irom_region",
5138 "cargo:rustc-cfg=has_drom_region",
5139 ],
5140 memory_layout: &MemoryLayout {
5141 regions: &[
5142 (
5143 "dram",
5144 MemoryRegion {
5145 address_range: 0x40800000..0x40850000,
5146 },
5147 ),
5148 (
5149 "dram2_uninit",
5150 MemoryRegion {
5151 address_range: 0x4083EFD0..0x4084FEE0,
5152 },
5153 ),
5154 (
5155 "irom",
5156 MemoryRegion {
5157 address_range: 0x42000000..0x43000000,
5158 },
5159 ),
5160 (
5161 "drom",
5162 MemoryRegion {
5163 address_range: 0x42000000..0x43000000,
5164 },
5165 ),
5166 ],
5167 },
5168 pins: &[
5169 PinInfo {
5170 pin: 0,
5171 limitations: &[],
5172 },
5173 PinInfo {
5174 pin: 1,
5175 limitations: &[],
5176 },
5177 PinInfo {
5178 pin: 2,
5179 limitations: &["jtag"],
5180 },
5181 PinInfo {
5182 pin: 3,
5183 limitations: &["jtag"],
5184 },
5185 PinInfo {
5186 pin: 4,
5187 limitations: &["jtag"],
5188 },
5189 PinInfo {
5190 pin: 5,
5191 limitations: &["jtag"],
5192 },
5193 PinInfo {
5194 pin: 6,
5195 limitations: &["spi_flash"],
5196 },
5197 PinInfo {
5198 pin: 7,
5199 limitations: &["spi_flash"],
5200 },
5201 PinInfo {
5202 pin: 8,
5203 limitations: &["strapping"],
5204 },
5205 PinInfo {
5206 pin: 9,
5207 limitations: &["strapping"],
5208 },
5209 PinInfo {
5210 pin: 10,
5211 limitations: &[],
5212 },
5213 PinInfo {
5214 pin: 11,
5215 limitations: &[],
5216 },
5217 PinInfo {
5218 pin: 12,
5219 limitations: &[],
5220 },
5221 PinInfo {
5222 pin: 13,
5223 limitations: &[],
5224 },
5225 PinInfo {
5226 pin: 14,
5227 limitations: &[],
5228 },
5229 PinInfo {
5230 pin: 22,
5231 limitations: &[],
5232 },
5233 PinInfo {
5234 pin: 23,
5235 limitations: &["bootloader_uart"],
5236 },
5237 PinInfo {
5238 pin: 24,
5239 limitations: &["bootloader_uart"],
5240 },
5241 PinInfo {
5242 pin: 25,
5243 limitations: &["strapping"],
5244 },
5245 PinInfo {
5246 pin: 26,
5247 limitations: &["usb_jtag"],
5248 },
5249 PinInfo {
5250 pin: 27,
5251 limitations: &["usb_jtag"],
5252 },
5253 ],
5254 },
5255 Self::Esp32p4 => Config {
5256 architecture: "riscv",
5257 target: "riscv32imafc-unknown-none-elf",
5258 symbols: &[
5259 "esp32p4",
5260 "riscv",
5261 "multi_core",
5262 "soc_has_efuse",
5263 "soc_has_gpio",
5264 "soc_has_gpio_sd",
5265 "soc_has_system",
5266 "soc_has_hp_sys",
5267 "soc_has_hp_sys_clkrst",
5268 "soc_has_rng",
5269 "soc_has_interrupt_core0",
5270 "soc_has_interrupt_core1",
5271 "soc_has_lp_i2c_ana_mst",
5272 "soc_has_clic",
5273 "soc_has_io_mux",
5274 "soc_has_iomux_mspi_pin",
5275 "soc_has_lp_i2c0",
5276 "soc_has_lp_aon",
5277 "soc_has_lp_aon_clkrst",
5278 "soc_has_lp_sys",
5279 "soc_has_lp_gpio",
5280 "soc_has_lp_io_mux",
5281 "soc_has_lp_peri",
5282 "soc_has_rtc_timer",
5283 "soc_has_lp_wdt",
5284 "soc_has_lpwr",
5285 "soc_has_pmu",
5286 "soc_has_systimer",
5287 "soc_has_timg0",
5288 "soc_has_timg1",
5289 "soc_has_uart0",
5290 "soc_has_uart1",
5291 "soc_has_uart2",
5292 "soc_has_uart3",
5293 "soc_has_uart4",
5294 "soc_has_uhci0",
5295 "soc_has_spi0",
5296 "soc_has_spi1",
5297 "soc_has_memspi2",
5298 "soc_has_memspi3",
5299 "soc_has_spi2",
5300 "soc_has_spi3",
5301 "soc_has_i2c0",
5302 "soc_has_i2c1",
5303 "soc_has_i2s0",
5304 "soc_has_i2s1",
5305 "soc_has_i2s2",
5306 "soc_has_twai0",
5307 "soc_has_twai1",
5308 "soc_has_twai2",
5309 "soc_has_dma",
5310 "soc_has_axi_gdma",
5311 "soc_has_eth",
5312 "soc_has_emac_dma",
5313 "soc_has_emac_mac",
5314 "soc_has_mipi_dsi",
5315 "soc_has_vdma",
5316 "soc_has_mipi_dsi_host",
5317 "soc_has_mipi_dsi_bridge",
5318 "soc_has_usb_device",
5319 "soc_has_sdhost",
5320 "soc_has_ledc",
5321 "soc_has_mcpwm0",
5322 "soc_has_mcpwm1",
5323 "soc_has_pcnt",
5324 "soc_has_apb_saradc",
5325 "soc_has_lp_adc",
5326 "soc_has_rmt",
5327 "soc_has_aes",
5328 "soc_has_sha",
5329 "soc_has_rsa",
5330 "soc_has_ecc",
5331 "soc_has_usb_fs",
5332 "soc_has_usb_hs",
5333 "soc_has_usb_wrap",
5334 "soc_has_adc1",
5335 "soc_has_adc2",
5336 "soc_has_flash",
5337 "soc_has_psram",
5338 "soc_has_gpio_dedicated",
5339 "soc_has_cpu_ctrl",
5340 "soc_has_from_cpu_intr0",
5341 "soc_has_from_cpu_intr1",
5342 "soc_has_from_cpu_intr2",
5343 "soc_has_from_cpu_intr3",
5344 "gpio_driver_supported",
5345 "dedicated_gpio_driver_supported",
5346 "io_mux_driver_supported",
5347 "lp_io_driver_supported",
5348 "uart_driver_supported",
5349 "uhci_driver_supported",
5350 "i2c_master_driver_supported",
5351 "lp_i2c_master_driver_supported",
5352 "spi_master_driver_supported",
5353 "spi_slave_driver_supported",
5354 "i2s_driver_supported",
5355 "rmt_driver_supported",
5356 "sdmmc_driver_supported",
5357 "usb_otg_driver_supported",
5358 "usb_otg_hs_driver_supported",
5359 "usb_serial_jtag_driver_supported",
5360 "ethernet_driver_supported",
5361 "mipi_dsi_driver_supported",
5362 "adc_driver_supported",
5363 "lp_timer_driver_supported",
5364 "sdm_driver_supported",
5365 "systimer_driver_supported",
5366 "timergroup_driver_supported",
5367 "aes_driver_supported",
5368 "ecc_driver_supported",
5369 "rng_driver_supported",
5370 "rsa_driver_supported",
5371 "sha_driver_supported",
5372 "sleep_driver_supported",
5373 "dma_driver_supported",
5374 "interrupts_driver_supported",
5375 "mmu_driver_supported",
5376 "psram_driver_supported",
5377 "rom_driver_supported",
5378 "soc_driver_supported",
5379 "uart_uart0",
5380 "uart_uart1",
5381 "uart_uart2",
5382 "uart_uart3",
5383 "uart_uart4",
5384 "i2c_master_i2c0",
5385 "i2c_master_i2c1",
5386 "spi_master_spi2",
5387 "spi_master_spi3",
5388 "spi_slave_spi2",
5389 "spi_slave_spi3",
5390 "i2s_i2s0",
5391 "i2s_i2s1",
5392 "i2s_i2s2",
5393 "adc_adc1",
5394 "adc_adc2",
5395 "timergroup_timg0",
5396 "timergroup_timg1",
5397 "gpio_version=\"3\"",
5398 "gpio_has_input_sync",
5399 "gpio_gpio_function=\"1\"",
5400 "gpio_constant_0_input=\"62\"",
5401 "gpio_constant_1_input=\"63\"",
5402 "gpio_func_in_sel_offset=\"1\"",
5403 "gpio_has_bank_1",
5404 "gpio_input_signal_max=\"249\"",
5405 "gpio_output_signal_max=\"256\"",
5406 "dedicated_gpio_version=\"riscv_v2\"",
5407 "lp_io_version=\"esp32p4\"",
5408 "lp_io_has_gpio_matrix",
5409 "uart_ram_size=\"128\"",
5410 "uart_version=\"2\"",
5411 "uhci_combined_uart_selector_field",
5412 "i2c_master_version=\"4\"",
5413 "i2c_master_has_fsm_timeouts",
5414 "i2c_master_has_hw_bus_clear",
5415 "i2c_master_has_bus_timeout_enable",
5416 "i2c_master_can_estimate_nack_reason",
5417 "i2c_master_has_conf_update",
5418 "i2c_master_has_arbitration_en",
5419 "i2c_master_has_pd_en",
5420 "i2c_master_max_bus_timeout=\"31\"",
5421 "i2c_master_ll_intr_mask=\"262143\"",
5422 "i2c_master_fifo_size=\"32\"",
5423 "lp_i2c_master_version=\"lp_i2c\"",
5424 "lp_i2c_master_fifo_size=\"16\"",
5425 "lp_i2c_master_fifo_size_is_set",
5426 "spi_master_version=\"3\"",
5427 "spi_master_fifo_size=\"64\"",
5428 "i2s_version=\"3\"",
5429 "i2s_version_is_set",
5430 "i2s_default_clock_source=\"3\"",
5431 "i2s_default_clock_source_is_set",
5432 "i2s_mclk_divider_bit_width=\"6\"",
5433 "i2s_mclk_divider_bit_width_is_set",
5434 "i2s_max_ws_width=\"128\"",
5435 "i2s_max_ws_width_is_set",
5436 "i2s_clock_configured_by_hp_sys_clkrst",
5437 "i2s_supports_pdm_rx_hp_filter",
5438 "i2s_supports_pdm_tx",
5439 "i2s_supports_pdm_rx",
5440 "i2s_supports_pcm2pdm",
5441 "i2s_supports_pdm2pcm",
5442 "rmt_ram_start=\"1342842880\"",
5443 "rmt_channel_ram_size=\"48\"",
5444 "rmt_has_tx_immediate_stop",
5445 "rmt_has_tx_loop_count",
5446 "rmt_has_tx_loop_auto_stop",
5447 "rmt_has_tx_carrier_data_only",
5448 "rmt_has_tx_sync",
5449 "rmt_has_rx_wrap",
5450 "rmt_has_rx_demodulation",
5451 "sdmmc_delay_phase_num=\"8\"",
5452 "sdmmc_delay_phase_num_is_set",
5453 "sdmmc_has_iomux",
5454 "sdmmc_has_gpio_matrix",
5455 "sdmmc_psram_dma",
5456 "usb_otg_fifo_depth_words=\"200\"",
5457 "usb_otg_hs_fifo_depth_words=\"896\"",
5458 "ethernet_mii_via_gpio_matrix",
5459 "soc_has_sdm_ch0",
5460 "soc_has_sdm_ch1",
5461 "soc_has_sdm_ch2",
5462 "soc_has_sdm_ch3",
5463 "soc_has_sdm_ch4",
5464 "soc_has_sdm_ch5",
5465 "soc_has_sdm_ch6",
5466 "soc_has_sdm_ch7",
5467 "timergroup_timg_has_timer1",
5468 "timergroup_timg_has_divcnt_rst",
5469 "timergroup_rc_fast_calibration_is_set",
5470 "aes_dma_mode_ecb",
5471 "aes_dma_mode_cbc",
5472 "aes_dma_mode_ofb",
5473 "aes_dma_mode_ctr",
5474 "aes_dma_mode_cfb8",
5475 "aes_dma_mode_cfb128",
5476 "aes_dma_mode_gcm",
5477 "aes_has_split_text_registers",
5478 "ecc_separate_jacobian_point_memory",
5479 "ecc_has_memory_clock_gate",
5480 "ecc_supports_enhanced_security",
5481 "ecc_has_modular_arithmetic",
5482 "ecc_has_point_addition",
5483 "ecc_has_curve_p192",
5484 "ecc_has_curve_p256",
5485 "ecc_has_curve_p384",
5486 "rng_apb_cycle_wait_num=\"16\"",
5487 "rng_is_lp_sys",
5488 "rsa_version=\"3\"",
5489 "rsa_size_increment=\"32\"",
5490 "rsa_memory_size_bytes=\"512\"",
5491 "sleep_light_sleep",
5492 "sleep_deep_sleep",
5493 "sleep_has_wakeup_source_sdio",
5494 "sleep_has_wakeup_source_gpio",
5495 "sleep_has_wakeup_source_usb",
5496 "sleep_has_wakeup_source_uart",
5497 "sleep_has_wakeup_source_touch",
5498 "sleep_has_wakeup_source_ext1",
5499 "sleep_has_wakeup_source_timer",
5500 "sleep_ext1_version=\"3\"",
5501 "sleep_ext1_version_is_set",
5502 "sleep_pin_wakeup_version=\"3\"",
5503 "sleep_pin_wakeup_version_is_set",
5504 "dma_separate_in_out_interrupts",
5505 "dma_gdma_version=\"2\"",
5506 "dma_gdma_version_is_set",
5507 "soc_has_dma_ch0",
5508 "soc_has_dma_ch1",
5509 "soc_has_dma_ch2",
5510 "soc_has_dma_axi_ch0",
5511 "soc_has_dma_axi_ch1",
5512 "soc_has_dma_axi_ch2",
5513 "soc_has_vdma_ch0",
5514 "soc_has_vdma_ch1",
5515 "soc_has_vdma_ch2",
5516 "soc_has_vdma_ch3",
5517 "dma_supports_mem2mem",
5518 "i2s_supports_dma",
5519 "i2s_dma_engine=\"AHB_GDMA\"",
5520 "uhci_supports_dma",
5521 "uhci_dma_engine=\"AHB_GDMA\"",
5522 "aes_supports_dma",
5523 "aes_dma_engine=\"AXI_GDMA\"",
5524 "sha_supports_dma",
5525 "sha_dma_engine=\"AXI_GDMA\"",
5526 "spi_master_supports_dma",
5527 "spi_master_dma_engine=\"AXI_GDMA\"",
5528 "spi_slave_supports_dma",
5529 "spi_slave_dma_engine=\"AXI_GDMA\"",
5530 "mipi_dsi_supports_dma",
5531 "mipi_dsi_dma_engine=\"VDMA\"",
5532 "dma_can_access_psram",
5533 "dma_max_priority=\"5\"",
5534 "dma_max_priority_is_set",
5535 "interrupts_status_registers=\"5\"",
5536 "interrupt_controller=\"clic\"",
5537 "mmu_page_size=\"65536\"",
5538 "mmu_entry_num=\"512\"",
5539 "psram_octal_spi",
5540 "psram_hex_spi",
5541 "psram_extmem_origin=\"1207959552\"",
5542 "rom_has_crc_le",
5543 "rom_has_crc_be",
5544 "rom_has_md5_bsd",
5545 "soc_cpu_has_branch_predictor",
5546 "soc_multi_core_enabled",
5547 "soc_internal_memory_cached",
5548 "soc_has_swd_watchdog",
5549 "soc_cpu_mcause_mask=\"63\"",
5550 "soc_has_clock_node_xtal_clk",
5551 "soc_has_clock_node_cpll_clk",
5552 "soc_clock_node_cpll_clk_is_configurable",
5553 "soc_has_clock_node_spll_clk",
5554 "soc_has_clock_node_mpll_clk",
5555 "soc_clock_node_mpll_clk_is_configurable",
5556 "soc_has_clock_node_rc_fast_clk",
5557 "soc_has_clock_node_xtal32k_clk",
5558 "soc_has_clock_node_osc_slow_clk",
5559 "soc_has_clock_node_rc_slow_clk",
5560 "soc_has_clock_node_rc32k_clk",
5561 "soc_has_clock_node_pll_f20m",
5562 "soc_has_clock_node_pll_f80m",
5563 "soc_has_clock_node_pll_f120m",
5564 "soc_has_clock_node_pll_f160m",
5565 "soc_has_clock_node_pll_f240m",
5566 "soc_has_clock_node_iomux_function_clock",
5567 "soc_clock_node_iomux_function_clock_is_configurable",
5568 "soc_has_clock_node_pll_f25m",
5569 "soc_has_clock_node_pll_f50m",
5570 "soc_has_clock_node_xtal_d2_clk",
5571 "soc_has_clock_node_cpu_root_clk",
5572 "soc_clock_node_cpu_root_clk_is_configurable",
5573 "soc_has_clock_node_cpu_clk",
5574 "soc_clock_node_cpu_clk_is_configurable",
5575 "soc_has_clock_node_mem_clk",
5576 "soc_clock_node_mem_clk_is_configurable",
5577 "soc_has_clock_node_sys_clk",
5578 "soc_clock_node_sys_clk_is_configurable",
5579 "soc_has_clock_node_apb_clk",
5580 "soc_clock_node_apb_clk_is_configurable",
5581 "soc_has_clock_node_lp_fast_clk",
5582 "soc_clock_node_lp_fast_clk_is_configurable",
5583 "soc_has_clock_node_lp_slow_clk",
5584 "soc_clock_node_lp_slow_clk_is_configurable",
5585 "soc_has_clock_node_timg_calibration_clock",
5586 "soc_clock_node_timg_calibration_clock_is_configurable",
5587 "soc_has_clock_node_psram_function_clock",
5588 "soc_clock_node_psram_function_clock_is_configurable",
5589 "soc_has_clock_node_uart_function_clock",
5590 "soc_clock_node_uart_function_clock_is_configurable",
5591 "soc_has_clock_node_uart_baud_rate_generator",
5592 "soc_clock_node_uart_baud_rate_generator_is_configurable",
5593 "soc_has_clock_node_sdm_function_clock",
5594 "soc_has_clock_node_timg_function_clock",
5595 "soc_clock_node_timg_function_clock_is_configurable",
5596 "soc_has_clock_node_timg_wdt_clock",
5597 "soc_clock_node_timg_wdt_clock_is_configurable",
5598 "soc_has_clock_node_i2c_function_clock",
5599 "soc_clock_node_i2c_function_clock_is_configurable",
5600 "soc_has_clock_node_rmt_sclk",
5601 "soc_clock_node_rmt_sclk_is_configurable",
5602 "soc_has_clock_node_spi_function_clock",
5603 "soc_clock_node_spi_function_clock_is_configurable",
5604 "soc_has_clock_node_mipi_dsi_dpi_clk",
5605 "soc_clock_node_mipi_dsi_dpi_clk_is_configurable",
5606 "soc_has_clock_node_mipi_dsi_phy_pll_refclk",
5607 "soc_clock_node_mipi_dsi_phy_pll_refclk_is_configurable",
5608 "soc_has_clock_node_mipi_dsi_phy_cfg_clk",
5609 "soc_clock_node_mipi_dsi_phy_cfg_clk_is_configurable",
5610 "has_dram_region",
5611 "has_dram2_uninit_region",
5612 "has_irom_region",
5613 "has_drom_region",
5614 ],
5615 cfgs: &[
5616 "cargo:rustc-cfg=esp32p4",
5617 "cargo:rustc-cfg=riscv",
5618 "cargo:rustc-cfg=multi_core",
5619 "cargo:rustc-cfg=soc_has_efuse",
5620 "cargo:rustc-cfg=soc_has_gpio",
5621 "cargo:rustc-cfg=soc_has_gpio_sd",
5622 "cargo:rustc-cfg=soc_has_system",
5623 "cargo:rustc-cfg=soc_has_hp_sys",
5624 "cargo:rustc-cfg=soc_has_hp_sys_clkrst",
5625 "cargo:rustc-cfg=soc_has_rng",
5626 "cargo:rustc-cfg=soc_has_interrupt_core0",
5627 "cargo:rustc-cfg=soc_has_interrupt_core1",
5628 "cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
5629 "cargo:rustc-cfg=soc_has_clic",
5630 "cargo:rustc-cfg=soc_has_io_mux",
5631 "cargo:rustc-cfg=soc_has_iomux_mspi_pin",
5632 "cargo:rustc-cfg=soc_has_lp_i2c0",
5633 "cargo:rustc-cfg=soc_has_lp_aon",
5634 "cargo:rustc-cfg=soc_has_lp_aon_clkrst",
5635 "cargo:rustc-cfg=soc_has_lp_sys",
5636 "cargo:rustc-cfg=soc_has_lp_gpio",
5637 "cargo:rustc-cfg=soc_has_lp_io_mux",
5638 "cargo:rustc-cfg=soc_has_lp_peri",
5639 "cargo:rustc-cfg=soc_has_rtc_timer",
5640 "cargo:rustc-cfg=soc_has_lp_wdt",
5641 "cargo:rustc-cfg=soc_has_lpwr",
5642 "cargo:rustc-cfg=soc_has_pmu",
5643 "cargo:rustc-cfg=soc_has_systimer",
5644 "cargo:rustc-cfg=soc_has_timg0",
5645 "cargo:rustc-cfg=soc_has_timg1",
5646 "cargo:rustc-cfg=soc_has_uart0",
5647 "cargo:rustc-cfg=soc_has_uart1",
5648 "cargo:rustc-cfg=soc_has_uart2",
5649 "cargo:rustc-cfg=soc_has_uart3",
5650 "cargo:rustc-cfg=soc_has_uart4",
5651 "cargo:rustc-cfg=soc_has_uhci0",
5652 "cargo:rustc-cfg=soc_has_spi0",
5653 "cargo:rustc-cfg=soc_has_spi1",
5654 "cargo:rustc-cfg=soc_has_memspi2",
5655 "cargo:rustc-cfg=soc_has_memspi3",
5656 "cargo:rustc-cfg=soc_has_spi2",
5657 "cargo:rustc-cfg=soc_has_spi3",
5658 "cargo:rustc-cfg=soc_has_i2c0",
5659 "cargo:rustc-cfg=soc_has_i2c1",
5660 "cargo:rustc-cfg=soc_has_i2s0",
5661 "cargo:rustc-cfg=soc_has_i2s1",
5662 "cargo:rustc-cfg=soc_has_i2s2",
5663 "cargo:rustc-cfg=soc_has_twai0",
5664 "cargo:rustc-cfg=soc_has_twai1",
5665 "cargo:rustc-cfg=soc_has_twai2",
5666 "cargo:rustc-cfg=soc_has_dma",
5667 "cargo:rustc-cfg=soc_has_axi_gdma",
5668 "cargo:rustc-cfg=soc_has_eth",
5669 "cargo:rustc-cfg=soc_has_emac_dma",
5670 "cargo:rustc-cfg=soc_has_emac_mac",
5671 "cargo:rustc-cfg=soc_has_mipi_dsi",
5672 "cargo:rustc-cfg=soc_has_vdma",
5673 "cargo:rustc-cfg=soc_has_mipi_dsi_host",
5674 "cargo:rustc-cfg=soc_has_mipi_dsi_bridge",
5675 "cargo:rustc-cfg=soc_has_usb_device",
5676 "cargo:rustc-cfg=soc_has_sdhost",
5677 "cargo:rustc-cfg=soc_has_ledc",
5678 "cargo:rustc-cfg=soc_has_mcpwm0",
5679 "cargo:rustc-cfg=soc_has_mcpwm1",
5680 "cargo:rustc-cfg=soc_has_pcnt",
5681 "cargo:rustc-cfg=soc_has_apb_saradc",
5682 "cargo:rustc-cfg=soc_has_lp_adc",
5683 "cargo:rustc-cfg=soc_has_rmt",
5684 "cargo:rustc-cfg=soc_has_aes",
5685 "cargo:rustc-cfg=soc_has_sha",
5686 "cargo:rustc-cfg=soc_has_rsa",
5687 "cargo:rustc-cfg=soc_has_ecc",
5688 "cargo:rustc-cfg=soc_has_usb_fs",
5689 "cargo:rustc-cfg=soc_has_usb_hs",
5690 "cargo:rustc-cfg=soc_has_usb_wrap",
5691 "cargo:rustc-cfg=soc_has_adc1",
5692 "cargo:rustc-cfg=soc_has_adc2",
5693 "cargo:rustc-cfg=soc_has_flash",
5694 "cargo:rustc-cfg=soc_has_psram",
5695 "cargo:rustc-cfg=soc_has_gpio_dedicated",
5696 "cargo:rustc-cfg=soc_has_cpu_ctrl",
5697 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
5698 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
5699 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
5700 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
5701 "cargo:rustc-cfg=gpio_driver_supported",
5702 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
5703 "cargo:rustc-cfg=io_mux_driver_supported",
5704 "cargo:rustc-cfg=lp_io_driver_supported",
5705 "cargo:rustc-cfg=uart_driver_supported",
5706 "cargo:rustc-cfg=uhci_driver_supported",
5707 "cargo:rustc-cfg=i2c_master_driver_supported",
5708 "cargo:rustc-cfg=lp_i2c_master_driver_supported",
5709 "cargo:rustc-cfg=spi_master_driver_supported",
5710 "cargo:rustc-cfg=spi_slave_driver_supported",
5711 "cargo:rustc-cfg=i2s_driver_supported",
5712 "cargo:rustc-cfg=rmt_driver_supported",
5713 "cargo:rustc-cfg=sdmmc_driver_supported",
5714 "cargo:rustc-cfg=usb_otg_driver_supported",
5715 "cargo:rustc-cfg=usb_otg_hs_driver_supported",
5716 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
5717 "cargo:rustc-cfg=ethernet_driver_supported",
5718 "cargo:rustc-cfg=mipi_dsi_driver_supported",
5719 "cargo:rustc-cfg=adc_driver_supported",
5720 "cargo:rustc-cfg=lp_timer_driver_supported",
5721 "cargo:rustc-cfg=sdm_driver_supported",
5722 "cargo:rustc-cfg=systimer_driver_supported",
5723 "cargo:rustc-cfg=timergroup_driver_supported",
5724 "cargo:rustc-cfg=aes_driver_supported",
5725 "cargo:rustc-cfg=ecc_driver_supported",
5726 "cargo:rustc-cfg=rng_driver_supported",
5727 "cargo:rustc-cfg=rsa_driver_supported",
5728 "cargo:rustc-cfg=sha_driver_supported",
5729 "cargo:rustc-cfg=sleep_driver_supported",
5730 "cargo:rustc-cfg=dma_driver_supported",
5731 "cargo:rustc-cfg=interrupts_driver_supported",
5732 "cargo:rustc-cfg=mmu_driver_supported",
5733 "cargo:rustc-cfg=psram_driver_supported",
5734 "cargo:rustc-cfg=rom_driver_supported",
5735 "cargo:rustc-cfg=soc_driver_supported",
5736 "cargo:rustc-cfg=uart_uart0",
5737 "cargo:rustc-cfg=uart_uart1",
5738 "cargo:rustc-cfg=uart_uart2",
5739 "cargo:rustc-cfg=uart_uart3",
5740 "cargo:rustc-cfg=uart_uart4",
5741 "cargo:rustc-cfg=i2c_master_i2c0",
5742 "cargo:rustc-cfg=i2c_master_i2c1",
5743 "cargo:rustc-cfg=spi_master_spi2",
5744 "cargo:rustc-cfg=spi_master_spi3",
5745 "cargo:rustc-cfg=spi_slave_spi2",
5746 "cargo:rustc-cfg=spi_slave_spi3",
5747 "cargo:rustc-cfg=i2s_i2s0",
5748 "cargo:rustc-cfg=i2s_i2s1",
5749 "cargo:rustc-cfg=i2s_i2s2",
5750 "cargo:rustc-cfg=adc_adc1",
5751 "cargo:rustc-cfg=adc_adc2",
5752 "cargo:rustc-cfg=timergroup_timg0",
5753 "cargo:rustc-cfg=timergroup_timg1",
5754 "cargo:rustc-cfg=gpio_version=\"3\"",
5755 "cargo:rustc-cfg=gpio_has_input_sync",
5756 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
5757 "cargo:rustc-cfg=gpio_constant_0_input=\"62\"",
5758 "cargo:rustc-cfg=gpio_constant_1_input=\"63\"",
5759 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"1\"",
5760 "cargo:rustc-cfg=gpio_has_bank_1",
5761 "cargo:rustc-cfg=gpio_input_signal_max=\"249\"",
5762 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
5763 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v2\"",
5764 "cargo:rustc-cfg=lp_io_version=\"esp32p4\"",
5765 "cargo:rustc-cfg=lp_io_has_gpio_matrix",
5766 "cargo:rustc-cfg=uart_ram_size=\"128\"",
5767 "cargo:rustc-cfg=uart_version=\"2\"",
5768 "cargo:rustc-cfg=uhci_combined_uart_selector_field",
5769 "cargo:rustc-cfg=i2c_master_version=\"4\"",
5770 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
5771 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
5772 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
5773 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
5774 "cargo:rustc-cfg=i2c_master_has_conf_update",
5775 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
5776 "cargo:rustc-cfg=i2c_master_has_pd_en",
5777 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
5778 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
5779 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
5780 "cargo:rustc-cfg=lp_i2c_master_version=\"lp_i2c\"",
5781 "cargo:rustc-cfg=lp_i2c_master_fifo_size=\"16\"",
5782 "cargo:rustc-cfg=lp_i2c_master_fifo_size_is_set",
5783 "cargo:rustc-cfg=spi_master_version=\"3\"",
5784 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
5785 "cargo:rustc-cfg=i2s_version=\"3\"",
5786 "cargo:rustc-cfg=i2s_version_is_set",
5787 "cargo:rustc-cfg=i2s_default_clock_source=\"3\"",
5788 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
5789 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"6\"",
5790 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
5791 "cargo:rustc-cfg=i2s_max_ws_width=\"128\"",
5792 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
5793 "cargo:rustc-cfg=i2s_clock_configured_by_hp_sys_clkrst",
5794 "cargo:rustc-cfg=i2s_supports_pdm_rx_hp_filter",
5795 "cargo:rustc-cfg=i2s_supports_pdm_tx",
5796 "cargo:rustc-cfg=i2s_supports_pdm_rx",
5797 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
5798 "cargo:rustc-cfg=i2s_supports_pdm2pcm",
5799 "cargo:rustc-cfg=rmt_ram_start=\"1342842880\"",
5800 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
5801 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
5802 "cargo:rustc-cfg=rmt_has_tx_loop_count",
5803 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
5804 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
5805 "cargo:rustc-cfg=rmt_has_tx_sync",
5806 "cargo:rustc-cfg=rmt_has_rx_wrap",
5807 "cargo:rustc-cfg=rmt_has_rx_demodulation",
5808 "cargo:rustc-cfg=sdmmc_delay_phase_num=\"8\"",
5809 "cargo:rustc-cfg=sdmmc_delay_phase_num_is_set",
5810 "cargo:rustc-cfg=sdmmc_has_iomux",
5811 "cargo:rustc-cfg=sdmmc_has_gpio_matrix",
5812 "cargo:rustc-cfg=sdmmc_psram_dma",
5813 "cargo:rustc-cfg=usb_otg_fifo_depth_words=\"200\"",
5814 "cargo:rustc-cfg=usb_otg_hs_fifo_depth_words=\"896\"",
5815 "cargo:rustc-cfg=ethernet_mii_via_gpio_matrix",
5816 "cargo:rustc-cfg=soc_has_sdm_ch0",
5817 "cargo:rustc-cfg=soc_has_sdm_ch1",
5818 "cargo:rustc-cfg=soc_has_sdm_ch2",
5819 "cargo:rustc-cfg=soc_has_sdm_ch3",
5820 "cargo:rustc-cfg=soc_has_sdm_ch4",
5821 "cargo:rustc-cfg=soc_has_sdm_ch5",
5822 "cargo:rustc-cfg=soc_has_sdm_ch6",
5823 "cargo:rustc-cfg=soc_has_sdm_ch7",
5824 "cargo:rustc-cfg=timergroup_timg_has_timer1",
5825 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
5826 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
5827 "cargo:rustc-cfg=aes_dma_mode_ecb",
5828 "cargo:rustc-cfg=aes_dma_mode_cbc",
5829 "cargo:rustc-cfg=aes_dma_mode_ofb",
5830 "cargo:rustc-cfg=aes_dma_mode_ctr",
5831 "cargo:rustc-cfg=aes_dma_mode_cfb8",
5832 "cargo:rustc-cfg=aes_dma_mode_cfb128",
5833 "cargo:rustc-cfg=aes_dma_mode_gcm",
5834 "cargo:rustc-cfg=aes_has_split_text_registers",
5835 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
5836 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
5837 "cargo:rustc-cfg=ecc_supports_enhanced_security",
5838 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
5839 "cargo:rustc-cfg=ecc_has_point_addition",
5840 "cargo:rustc-cfg=ecc_has_curve_p192",
5841 "cargo:rustc-cfg=ecc_has_curve_p256",
5842 "cargo:rustc-cfg=ecc_has_curve_p384",
5843 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
5844 "cargo:rustc-cfg=rng_is_lp_sys",
5845 "cargo:rustc-cfg=rsa_version=\"3\"",
5846 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
5847 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
5848 "cargo:rustc-cfg=sleep_light_sleep",
5849 "cargo:rustc-cfg=sleep_deep_sleep",
5850 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
5851 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
5852 "cargo:rustc-cfg=sleep_has_wakeup_source_usb",
5853 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
5854 "cargo:rustc-cfg=sleep_has_wakeup_source_touch",
5855 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
5856 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
5857 "cargo:rustc-cfg=sleep_ext1_version=\"3\"",
5858 "cargo:rustc-cfg=sleep_ext1_version_is_set",
5859 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"3\"",
5860 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
5861 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
5862 "cargo:rustc-cfg=dma_gdma_version=\"2\"",
5863 "cargo:rustc-cfg=dma_gdma_version_is_set",
5864 "cargo:rustc-cfg=soc_has_dma_ch0",
5865 "cargo:rustc-cfg=soc_has_dma_ch1",
5866 "cargo:rustc-cfg=soc_has_dma_ch2",
5867 "cargo:rustc-cfg=soc_has_dma_axi_ch0",
5868 "cargo:rustc-cfg=soc_has_dma_axi_ch1",
5869 "cargo:rustc-cfg=soc_has_dma_axi_ch2",
5870 "cargo:rustc-cfg=soc_has_vdma_ch0",
5871 "cargo:rustc-cfg=soc_has_vdma_ch1",
5872 "cargo:rustc-cfg=soc_has_vdma_ch2",
5873 "cargo:rustc-cfg=soc_has_vdma_ch3",
5874 "cargo:rustc-cfg=dma_supports_mem2mem",
5875 "cargo:rustc-cfg=i2s_supports_dma",
5876 "cargo:rustc-cfg=i2s_dma_engine=\"AHB_GDMA\"",
5877 "cargo:rustc-cfg=uhci_supports_dma",
5878 "cargo:rustc-cfg=uhci_dma_engine=\"AHB_GDMA\"",
5879 "cargo:rustc-cfg=aes_supports_dma",
5880 "cargo:rustc-cfg=aes_dma_engine=\"AXI_GDMA\"",
5881 "cargo:rustc-cfg=sha_supports_dma",
5882 "cargo:rustc-cfg=sha_dma_engine=\"AXI_GDMA\"",
5883 "cargo:rustc-cfg=spi_master_supports_dma",
5884 "cargo:rustc-cfg=spi_master_dma_engine=\"AXI_GDMA\"",
5885 "cargo:rustc-cfg=spi_slave_supports_dma",
5886 "cargo:rustc-cfg=spi_slave_dma_engine=\"AXI_GDMA\"",
5887 "cargo:rustc-cfg=mipi_dsi_supports_dma",
5888 "cargo:rustc-cfg=mipi_dsi_dma_engine=\"VDMA\"",
5889 "cargo:rustc-cfg=dma_can_access_psram",
5890 "cargo:rustc-cfg=dma_max_priority=\"5\"",
5891 "cargo:rustc-cfg=dma_max_priority_is_set",
5892 "cargo:rustc-cfg=interrupts_status_registers=\"5\"",
5893 "cargo:rustc-cfg=interrupt_controller=\"clic\"",
5894 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
5895 "cargo:rustc-cfg=mmu_entry_num=\"512\"",
5896 "cargo:rustc-cfg=psram_octal_spi",
5897 "cargo:rustc-cfg=psram_hex_spi",
5898 "cargo:rustc-cfg=psram_extmem_origin=\"1207959552\"",
5899 "cargo:rustc-cfg=rom_has_crc_le",
5900 "cargo:rustc-cfg=rom_has_crc_be",
5901 "cargo:rustc-cfg=rom_has_md5_bsd",
5902 "cargo:rustc-cfg=soc_cpu_has_branch_predictor",
5903 "cargo:rustc-cfg=soc_multi_core_enabled",
5904 "cargo:rustc-cfg=soc_internal_memory_cached",
5905 "cargo:rustc-cfg=soc_has_swd_watchdog",
5906 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"63\"",
5907 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
5908 "cargo:rustc-cfg=soc_has_clock_node_cpll_clk",
5909 "cargo:rustc-cfg=soc_clock_node_cpll_clk_is_configurable",
5910 "cargo:rustc-cfg=soc_has_clock_node_spll_clk",
5911 "cargo:rustc-cfg=soc_has_clock_node_mpll_clk",
5912 "cargo:rustc-cfg=soc_clock_node_mpll_clk_is_configurable",
5913 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
5914 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
5915 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
5916 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
5917 "cargo:rustc-cfg=soc_has_clock_node_rc32k_clk",
5918 "cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
5919 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
5920 "cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
5921 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
5922 "cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
5923 "cargo:rustc-cfg=soc_has_clock_node_iomux_function_clock",
5924 "cargo:rustc-cfg=soc_clock_node_iomux_function_clock_is_configurable",
5925 "cargo:rustc-cfg=soc_has_clock_node_pll_f25m",
5926 "cargo:rustc-cfg=soc_has_clock_node_pll_f50m",
5927 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
5928 "cargo:rustc-cfg=soc_has_clock_node_cpu_root_clk",
5929 "cargo:rustc-cfg=soc_clock_node_cpu_root_clk_is_configurable",
5930 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
5931 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
5932 "cargo:rustc-cfg=soc_has_clock_node_mem_clk",
5933 "cargo:rustc-cfg=soc_clock_node_mem_clk_is_configurable",
5934 "cargo:rustc-cfg=soc_has_clock_node_sys_clk",
5935 "cargo:rustc-cfg=soc_clock_node_sys_clk_is_configurable",
5936 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
5937 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
5938 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
5939 "cargo:rustc-cfg=soc_clock_node_lp_fast_clk_is_configurable",
5940 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
5941 "cargo:rustc-cfg=soc_clock_node_lp_slow_clk_is_configurable",
5942 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
5943 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
5944 "cargo:rustc-cfg=soc_has_clock_node_psram_function_clock",
5945 "cargo:rustc-cfg=soc_clock_node_psram_function_clock_is_configurable",
5946 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
5947 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
5948 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
5949 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
5950 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
5951 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
5952 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
5953 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
5954 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
5955 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
5956 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
5957 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
5958 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
5959 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
5960 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
5961 "cargo:rustc-cfg=soc_has_clock_node_mipi_dsi_dpi_clk",
5962 "cargo:rustc-cfg=soc_clock_node_mipi_dsi_dpi_clk_is_configurable",
5963 "cargo:rustc-cfg=soc_has_clock_node_mipi_dsi_phy_pll_refclk",
5964 "cargo:rustc-cfg=soc_clock_node_mipi_dsi_phy_pll_refclk_is_configurable",
5965 "cargo:rustc-cfg=soc_has_clock_node_mipi_dsi_phy_cfg_clk",
5966 "cargo:rustc-cfg=soc_clock_node_mipi_dsi_phy_cfg_clk_is_configurable",
5967 "cargo:rustc-cfg=has_dram_region",
5968 "cargo:rustc-cfg=has_dram2_uninit_region",
5969 "cargo:rustc-cfg=has_irom_region",
5970 "cargo:rustc-cfg=has_drom_region",
5971 ],
5972 memory_layout: &MemoryLayout {
5973 regions: &[
5974 (
5975 "dram",
5976 MemoryRegion {
5977 address_range: 0x4FF40000..0x4FFC0000,
5978 },
5979 ),
5980 (
5981 "dram2_uninit",
5982 MemoryRegion {
5983 address_range: 0x4FF00000..0x4FF40000,
5984 },
5985 ),
5986 (
5987 "irom",
5988 MemoryRegion {
5989 address_range: 0x40000000..0x44000000,
5990 },
5991 ),
5992 (
5993 "drom",
5994 MemoryRegion {
5995 address_range: 0x40000000..0x44000000,
5996 },
5997 ),
5998 ],
5999 },
6000 pins: &[
6001 PinInfo {
6002 pin: 0,
6003 limitations: &[],
6004 },
6005 PinInfo {
6006 pin: 1,
6007 limitations: &[],
6008 },
6009 PinInfo {
6010 pin: 2,
6011 limitations: &["jtag"],
6012 },
6013 PinInfo {
6014 pin: 3,
6015 limitations: &["jtag"],
6016 },
6017 PinInfo {
6018 pin: 4,
6019 limitations: &["jtag"],
6020 },
6021 PinInfo {
6022 pin: 5,
6023 limitations: &["jtag"],
6024 },
6025 PinInfo {
6026 pin: 6,
6027 limitations: &[],
6028 },
6029 PinInfo {
6030 pin: 7,
6031 limitations: &[],
6032 },
6033 PinInfo {
6034 pin: 8,
6035 limitations: &[],
6036 },
6037 PinInfo {
6038 pin: 9,
6039 limitations: &[],
6040 },
6041 PinInfo {
6042 pin: 10,
6043 limitations: &[],
6044 },
6045 PinInfo {
6046 pin: 11,
6047 limitations: &[],
6048 },
6049 PinInfo {
6050 pin: 12,
6051 limitations: &[],
6052 },
6053 PinInfo {
6054 pin: 13,
6055 limitations: &[],
6056 },
6057 PinInfo {
6058 pin: 14,
6059 limitations: &[],
6060 },
6061 PinInfo {
6062 pin: 15,
6063 limitations: &[],
6064 },
6065 PinInfo {
6066 pin: 16,
6067 limitations: &[],
6068 },
6069 PinInfo {
6070 pin: 17,
6071 limitations: &[],
6072 },
6073 PinInfo {
6074 pin: 18,
6075 limitations: &[],
6076 },
6077 PinInfo {
6078 pin: 19,
6079 limitations: &[],
6080 },
6081 PinInfo {
6082 pin: 20,
6083 limitations: &[],
6084 },
6085 PinInfo {
6086 pin: 21,
6087 limitations: &[],
6088 },
6089 PinInfo {
6090 pin: 22,
6091 limitations: &[],
6092 },
6093 PinInfo {
6094 pin: 23,
6095 limitations: &[],
6096 },
6097 PinInfo {
6098 pin: 24,
6099 limitations: &["usb_jtag"],
6100 },
6101 PinInfo {
6102 pin: 25,
6103 limitations: &["usb_jtag"],
6104 },
6105 PinInfo {
6106 pin: 26,
6107 limitations: &[],
6108 },
6109 PinInfo {
6110 pin: 27,
6111 limitations: &[],
6112 },
6113 PinInfo {
6114 pin: 28,
6115 limitations: &[],
6116 },
6117 PinInfo {
6118 pin: 29,
6119 limitations: &[],
6120 },
6121 PinInfo {
6122 pin: 30,
6123 limitations: &[],
6124 },
6125 PinInfo {
6126 pin: 31,
6127 limitations: &[],
6128 },
6129 PinInfo {
6130 pin: 32,
6131 limitations: &["strapping"],
6132 },
6133 PinInfo {
6134 pin: 33,
6135 limitations: &["strapping"],
6136 },
6137 PinInfo {
6138 pin: 34,
6139 limitations: &["strapping"],
6140 },
6141 PinInfo {
6142 pin: 35,
6143 limitations: &["strapping"],
6144 },
6145 PinInfo {
6146 pin: 36,
6147 limitations: &["strapping"],
6148 },
6149 PinInfo {
6150 pin: 37,
6151 limitations: &["strapping"],
6152 },
6153 PinInfo {
6154 pin: 38,
6155 limitations: &["strapping"],
6156 },
6157 PinInfo {
6158 pin: 39,
6159 limitations: &[],
6160 },
6161 PinInfo {
6162 pin: 40,
6163 limitations: &[],
6164 },
6165 PinInfo {
6166 pin: 41,
6167 limitations: &[],
6168 },
6169 PinInfo {
6170 pin: 42,
6171 limitations: &[],
6172 },
6173 PinInfo {
6174 pin: 43,
6175 limitations: &[],
6176 },
6177 PinInfo {
6178 pin: 44,
6179 limitations: &[],
6180 },
6181 PinInfo {
6182 pin: 45,
6183 limitations: &[],
6184 },
6185 PinInfo {
6186 pin: 46,
6187 limitations: &[],
6188 },
6189 PinInfo {
6190 pin: 47,
6191 limitations: &[],
6192 },
6193 PinInfo {
6194 pin: 48,
6195 limitations: &[],
6196 },
6197 PinInfo {
6198 pin: 49,
6199 limitations: &[],
6200 },
6201 PinInfo {
6202 pin: 50,
6203 limitations: &[],
6204 },
6205 PinInfo {
6206 pin: 51,
6207 limitations: &[],
6208 },
6209 PinInfo {
6210 pin: 52,
6211 limitations: &[],
6212 },
6213 PinInfo {
6214 pin: 53,
6215 limitations: &[],
6216 },
6217 PinInfo {
6218 pin: 54,
6219 limitations: &[],
6220 },
6221 ],
6222 },
6223 Self::Esp32s2 => Config {
6224 architecture: "xtensa",
6225 target: "xtensa-esp32s2-none-elf",
6226 symbols: &[
6227 "esp32s2",
6228 "xtensa",
6229 "single_core",
6230 "soc_has_aes",
6231 "soc_has_apb_saradc",
6232 "soc_has_ds",
6233 "soc_has_efuse",
6234 "soc_has_extmem",
6235 "soc_has_mmu_table",
6236 "soc_has_fe",
6237 "soc_has_fe2",
6238 "soc_has_gpio",
6239 "soc_has_gpio_sd",
6240 "soc_has_hmac",
6241 "soc_has_i2c_ana_mst",
6242 "soc_has_i2c0",
6243 "soc_has_i2c1",
6244 "soc_has_i2s0",
6245 "soc_has_interrupt_core0",
6246 "soc_has_io_mux",
6247 "soc_has_ledc",
6248 "soc_has_nrx",
6249 "soc_has_pcnt",
6250 "soc_has_pms",
6251 "soc_has_rmt",
6252 "soc_has_rng",
6253 "soc_has_rsa",
6254 "soc_has_lpwr",
6255 "soc_has_rtc_timer",
6256 "soc_has_lp_i2c0",
6257 "soc_has_rtc_io",
6258 "soc_has_sens",
6259 "soc_has_sha",
6260 "soc_has_spi0",
6261 "soc_has_spi1",
6262 "soc_has_spi2",
6263 "soc_has_spi3",
6264 "soc_has_syscon",
6265 "soc_has_system",
6266 "soc_has_systimer",
6267 "soc_has_timg0",
6268 "soc_has_timg1",
6269 "soc_has_twai0",
6270 "soc_has_uart0",
6271 "soc_has_uart1",
6272 "soc_has_uhci0",
6273 "soc_has_usb_fs",
6274 "soc_has_usb_wrap",
6275 "soc_has_xts_aes",
6276 "soc_has_wifi",
6277 "soc_has_adc1",
6278 "soc_has_adc2",
6279 "soc_has_dac1",
6280 "soc_has_dac2",
6281 "soc_has_flash",
6282 "soc_has_gpio_dedicated",
6283 "soc_has_psram",
6284 "soc_has_ulp_riscv_core",
6285 "soc_has_from_cpu_intr0",
6286 "soc_has_from_cpu_intr1",
6287 "soc_has_from_cpu_intr2",
6288 "soc_has_from_cpu_intr3",
6289 "gpio_driver_supported",
6290 "dedicated_gpio_driver_supported",
6291 "io_mux_driver_supported",
6292 "lp_io_driver_supported",
6293 "uart_driver_supported",
6294 "i2c_master_driver_supported",
6295 "spi_master_driver_supported",
6296 "spi_slave_driver_supported",
6297 "i2s_driver_supported",
6298 "rmt_driver_supported",
6299 "twai_driver_supported",
6300 "usb_otg_driver_supported",
6301 "wifi_driver_supported",
6302 "phy_driver_supported",
6303 "adc_driver_supported",
6304 "dac_driver_supported",
6305 "temp_sensor_driver_supported",
6306 "ledc_driver_supported",
6307 "pcnt_driver_supported",
6308 "lp_timer_driver_supported",
6309 "sdm_driver_supported",
6310 "systimer_driver_supported",
6311 "timergroup_driver_supported",
6312 "aes_driver_supported",
6313 "hmac_driver_supported",
6314 "rng_driver_supported",
6315 "rsa_driver_supported",
6316 "sha_driver_supported",
6317 "sleep_driver_supported",
6318 "ulp_riscv_driver_supported",
6319 "dma_driver_supported",
6320 "interrupts_driver_supported",
6321 "mmu_driver_supported",
6322 "psram_driver_supported",
6323 "rom_driver_supported",
6324 "soc_driver_supported",
6325 "uart_uart0",
6326 "uart_uart1",
6327 "i2c_master_i2c0",
6328 "i2c_master_i2c1",
6329 "spi_master_spi2",
6330 "spi_master_spi3",
6331 "spi_slave_spi2",
6332 "spi_slave_spi3",
6333 "i2s_i2s0",
6334 "adc_adc1",
6335 "adc_adc2",
6336 "dac_dac1",
6337 "dac_dac2",
6338 "timergroup_timg0",
6339 "timergroup_timg1",
6340 "gpio_version=\"2\"",
6341 "gpio_has_input_sync",
6342 "gpio_gpio_function=\"1\"",
6343 "gpio_constant_0_input=\"60\"",
6344 "gpio_constant_1_input=\"56\"",
6345 "gpio_func_in_sel_offset=\"0\"",
6346 "soc_has_xtal32k_pads",
6347 "gpio_has_bank_1",
6348 "gpio_input_signal_max=\"242\"",
6349 "gpio_output_signal_max=\"256\"",
6350 "dedicated_gpio_version=\"esp32s2\"",
6351 "dedicated_gpio_needs_initialization",
6352 "lp_io_version=\"v2\"",
6353 "uart_ram_size=\"128\"",
6354 "uart_version=\"1\"",
6355 "i2c_master_version=\"2\"",
6356 "i2c_master_has_bus_timeout_enable",
6357 "i2c_master_separate_filter_config_registers",
6358 "i2c_master_has_arbitration_en",
6359 "i2c_master_has_pd_en",
6360 "i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
6361 "i2c_master_i2c0_data_register_ahb_address_is_set",
6362 "i2c_master_max_bus_timeout=\"16777215\"",
6363 "i2c_master_ll_intr_mask=\"131071\"",
6364 "i2c_master_fifo_size=\"32\"",
6365 "spi_master_version=\"2\"",
6366 "spi_master_fifo_size=\"72\"",
6367 "spi_master_bit_order_is_bool",
6368 "spi_master_has_octal",
6369 "spi_master_has_dma_segmented_transfer",
6370 "i2s_version=\"1\"",
6371 "i2s_version_is_set",
6372 "i2s_default_clock_source=\"2\"",
6373 "i2s_default_clock_source_is_set",
6374 "i2s_mclk_divider_bit_width=\"6\"",
6375 "i2s_mclk_divider_bit_width_is_set",
6376 "i2s_max_ws_width=\"128\"",
6377 "i2s_max_ws_width_is_set",
6378 "rmt_ram_start=\"1061250048\"",
6379 "rmt_channel_ram_size=\"64\"",
6380 "rmt_has_tx_immediate_stop",
6381 "rmt_has_tx_loop_count",
6382 "rmt_has_tx_carrier_data_only",
6383 "rmt_has_tx_sync",
6384 "rmt_has_rx_demodulation",
6385 "rmt_has_per_channel_clock",
6386 "usb_otg_fifo_depth_words=\"256\"",
6387 "wifi_mac_version=\"1\"",
6388 "wifi_csi_supported",
6389 "ledc_version=\"2\"",
6390 "ledc_channel_count=\"8\"",
6391 "soc_has_sdm_ch0",
6392 "soc_has_sdm_ch1",
6393 "soc_has_sdm_ch2",
6394 "soc_has_sdm_ch3",
6395 "soc_has_sdm_ch4",
6396 "soc_has_sdm_ch5",
6397 "soc_has_sdm_ch6",
6398 "soc_has_sdm_ch7",
6399 "timergroup_timg_has_timer1",
6400 "timergroup_rc_fast_calibration_is_set",
6401 "aes_dma_mode_ecb",
6402 "aes_dma_mode_cbc",
6403 "aes_dma_mode_ofb",
6404 "aes_dma_mode_ctr",
6405 "aes_dma_mode_cfb8",
6406 "aes_dma_mode_cfb128",
6407 "aes_dma_mode_gcm",
6408 "aes_has_split_text_registers",
6409 "aes_endianness_configurable",
6410 "rng_apb_cycle_wait_num=\"16\"",
6411 "rng_trng_supported",
6412 "rsa_version=\"2\"",
6413 "rsa_size_increment=\"32\"",
6414 "rsa_memory_size_bytes=\"512\"",
6415 "sleep_light_sleep",
6416 "sleep_deep_sleep",
6417 "sleep_has_wakeup_source_ext0",
6418 "sleep_has_wakeup_source_ext1",
6419 "sleep_has_wakeup_source_gpio",
6420 "sleep_has_wakeup_source_timer",
6421 "sleep_has_wakeup_source_wifi",
6422 "sleep_has_wakeup_source_uart",
6423 "sleep_has_wakeup_source_touch",
6424 "sleep_has_wakeup_source_ulp_riscv",
6425 "sleep_has_wakeup_source_ulp_riscv_trap",
6426 "sleep_ext1_version=\"1\"",
6427 "sleep_ext1_version_is_set",
6428 "sleep_pin_wakeup_version=\"1\"",
6429 "sleep_pin_wakeup_version_is_set",
6430 "sleep_deep_sleep_needs_gpio_isolation",
6431 "dma_ext_mem_configurable_block_size",
6432 "soc_has_dma_spi2",
6433 "soc_has_dma_spi3",
6434 "soc_has_dma_i2s0",
6435 "soc_has_dma_crypto",
6436 "soc_has_dma_copy",
6437 "dma_supports_mem2mem",
6438 "spi_master_supports_dma",
6439 "spi_master_dma_engine=\"SPI_DMA\"",
6440 "spi_slave_supports_dma",
6441 "spi_slave_dma_engine=\"SPI_DMA\"",
6442 "i2s_supports_dma",
6443 "i2s_dma_engine=\"I2S_DMA\"",
6444 "aes_supports_dma",
6445 "aes_dma_engine=\"CRYPTO_DMA\"",
6446 "sha_supports_dma",
6447 "sha_dma_engine=\"CRYPTO_DMA\"",
6448 "dma_can_access_psram",
6449 "interrupts_status_registers=\"3\"",
6450 "interrupt_controller=\"xtensa\"",
6451 "mmu_page_size=\"65536\"",
6452 "mmu_entry_num=\"256\"",
6453 "psram_extmem_origin=\"1062207488\"",
6454 "rom_has_crc_le",
6455 "rom_has_md5_bsd",
6456 "soc_has_swd_watchdog",
6457 "soc_cpu_mcause_mask=\"0\"",
6458 "soc_has_clock_node_xtal_clk",
6459 "soc_clock_node_xtal_clk_is_configurable",
6460 "soc_has_clock_node_pll_clk",
6461 "soc_clock_node_pll_clk_is_configurable",
6462 "soc_has_clock_node_apll_clk",
6463 "soc_clock_node_apll_clk_is_configurable",
6464 "soc_has_clock_node_rc_fast_clk",
6465 "soc_has_clock_node_cpu_pll_div_in",
6466 "soc_clock_node_cpu_pll_div_in_is_configurable",
6467 "soc_has_clock_node_cpu_pll_div",
6468 "soc_clock_node_cpu_pll_div_is_configurable",
6469 "soc_has_clock_node_system_pre_div_in",
6470 "soc_clock_node_system_pre_div_in_is_configurable",
6471 "soc_has_clock_node_system_pre_div",
6472 "soc_clock_node_system_pre_div_is_configurable",
6473 "soc_has_clock_node_cpu_clk",
6474 "soc_clock_node_cpu_clk_is_configurable",
6475 "soc_has_clock_node_apb_clk_cpu_div2",
6476 "soc_has_clock_node_apb_clk_80m",
6477 "soc_has_clock_node_apb_clk",
6478 "soc_clock_node_apb_clk_is_configurable",
6479 "soc_has_clock_node_ref_tick_xtal",
6480 "soc_clock_node_ref_tick_xtal_is_configurable",
6481 "soc_has_clock_node_ref_tick_ck8m",
6482 "soc_clock_node_ref_tick_ck8m_is_configurable",
6483 "soc_has_clock_node_ref_tick",
6484 "soc_clock_node_ref_tick_is_configurable",
6485 "soc_has_clock_node_xtal32k_clk",
6486 "soc_has_clock_node_rc_slow_clk",
6487 "soc_has_clock_node_rc_fast_div_clk",
6488 "soc_has_clock_node_xtal_div_clk",
6489 "soc_has_clock_node_rtc_slow_clk",
6490 "soc_clock_node_rtc_slow_clk_is_configurable",
6491 "soc_has_clock_node_rtc_fast_clk",
6492 "soc_clock_node_rtc_fast_clk_is_configurable",
6493 "soc_has_clock_node_uart_mem_clk",
6494 "soc_has_clock_node_timg_calibration_clock",
6495 "soc_clock_node_timg_calibration_clock_is_configurable",
6496 "soc_has_clock_node_timg_function_clock",
6497 "soc_clock_node_timg_function_clock_is_configurable",
6498 "soc_has_clock_node_uart_function_clock",
6499 "soc_clock_node_uart_function_clock_is_configurable",
6500 "soc_has_clock_node_uart_baud_rate_generator",
6501 "soc_clock_node_uart_baud_rate_generator_is_configurable",
6502 "soc_has_clock_node_uart_mem_clock",
6503 "soc_has_clock_node_sdm_function_clock",
6504 "soc_has_clock_node_rmt_sclk",
6505 "soc_clock_node_rmt_sclk_is_configurable",
6506 "soc_has_clock_node_i2c_function_clock",
6507 "soc_clock_node_i2c_function_clock_is_configurable",
6508 "soc_has_clock_node_spi_function_clock",
6509 "has_dram_region",
6510 "has_dram2_uninit_region",
6511 "has_irom_region",
6512 "has_drom_region",
6513 ],
6514 cfgs: &[
6515 "cargo:rustc-cfg=esp32s2",
6516 "cargo:rustc-cfg=xtensa",
6517 "cargo:rustc-cfg=single_core",
6518 "cargo:rustc-cfg=soc_has_aes",
6519 "cargo:rustc-cfg=soc_has_apb_saradc",
6520 "cargo:rustc-cfg=soc_has_ds",
6521 "cargo:rustc-cfg=soc_has_efuse",
6522 "cargo:rustc-cfg=soc_has_extmem",
6523 "cargo:rustc-cfg=soc_has_mmu_table",
6524 "cargo:rustc-cfg=soc_has_fe",
6525 "cargo:rustc-cfg=soc_has_fe2",
6526 "cargo:rustc-cfg=soc_has_gpio",
6527 "cargo:rustc-cfg=soc_has_gpio_sd",
6528 "cargo:rustc-cfg=soc_has_hmac",
6529 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
6530 "cargo:rustc-cfg=soc_has_i2c0",
6531 "cargo:rustc-cfg=soc_has_i2c1",
6532 "cargo:rustc-cfg=soc_has_i2s0",
6533 "cargo:rustc-cfg=soc_has_interrupt_core0",
6534 "cargo:rustc-cfg=soc_has_io_mux",
6535 "cargo:rustc-cfg=soc_has_ledc",
6536 "cargo:rustc-cfg=soc_has_nrx",
6537 "cargo:rustc-cfg=soc_has_pcnt",
6538 "cargo:rustc-cfg=soc_has_pms",
6539 "cargo:rustc-cfg=soc_has_rmt",
6540 "cargo:rustc-cfg=soc_has_rng",
6541 "cargo:rustc-cfg=soc_has_rsa",
6542 "cargo:rustc-cfg=soc_has_lpwr",
6543 "cargo:rustc-cfg=soc_has_rtc_timer",
6544 "cargo:rustc-cfg=soc_has_lp_i2c0",
6545 "cargo:rustc-cfg=soc_has_rtc_io",
6546 "cargo:rustc-cfg=soc_has_sens",
6547 "cargo:rustc-cfg=soc_has_sha",
6548 "cargo:rustc-cfg=soc_has_spi0",
6549 "cargo:rustc-cfg=soc_has_spi1",
6550 "cargo:rustc-cfg=soc_has_spi2",
6551 "cargo:rustc-cfg=soc_has_spi3",
6552 "cargo:rustc-cfg=soc_has_syscon",
6553 "cargo:rustc-cfg=soc_has_system",
6554 "cargo:rustc-cfg=soc_has_systimer",
6555 "cargo:rustc-cfg=soc_has_timg0",
6556 "cargo:rustc-cfg=soc_has_timg1",
6557 "cargo:rustc-cfg=soc_has_twai0",
6558 "cargo:rustc-cfg=soc_has_uart0",
6559 "cargo:rustc-cfg=soc_has_uart1",
6560 "cargo:rustc-cfg=soc_has_uhci0",
6561 "cargo:rustc-cfg=soc_has_usb_fs",
6562 "cargo:rustc-cfg=soc_has_usb_wrap",
6563 "cargo:rustc-cfg=soc_has_xts_aes",
6564 "cargo:rustc-cfg=soc_has_wifi",
6565 "cargo:rustc-cfg=soc_has_adc1",
6566 "cargo:rustc-cfg=soc_has_adc2",
6567 "cargo:rustc-cfg=soc_has_dac1",
6568 "cargo:rustc-cfg=soc_has_dac2",
6569 "cargo:rustc-cfg=soc_has_flash",
6570 "cargo:rustc-cfg=soc_has_gpio_dedicated",
6571 "cargo:rustc-cfg=soc_has_psram",
6572 "cargo:rustc-cfg=soc_has_ulp_riscv_core",
6573 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
6574 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
6575 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
6576 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
6577 "cargo:rustc-cfg=gpio_driver_supported",
6578 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
6579 "cargo:rustc-cfg=io_mux_driver_supported",
6580 "cargo:rustc-cfg=lp_io_driver_supported",
6581 "cargo:rustc-cfg=uart_driver_supported",
6582 "cargo:rustc-cfg=i2c_master_driver_supported",
6583 "cargo:rustc-cfg=spi_master_driver_supported",
6584 "cargo:rustc-cfg=spi_slave_driver_supported",
6585 "cargo:rustc-cfg=i2s_driver_supported",
6586 "cargo:rustc-cfg=rmt_driver_supported",
6587 "cargo:rustc-cfg=twai_driver_supported",
6588 "cargo:rustc-cfg=usb_otg_driver_supported",
6589 "cargo:rustc-cfg=wifi_driver_supported",
6590 "cargo:rustc-cfg=phy_driver_supported",
6591 "cargo:rustc-cfg=adc_driver_supported",
6592 "cargo:rustc-cfg=dac_driver_supported",
6593 "cargo:rustc-cfg=temp_sensor_driver_supported",
6594 "cargo:rustc-cfg=ledc_driver_supported",
6595 "cargo:rustc-cfg=pcnt_driver_supported",
6596 "cargo:rustc-cfg=lp_timer_driver_supported",
6597 "cargo:rustc-cfg=sdm_driver_supported",
6598 "cargo:rustc-cfg=systimer_driver_supported",
6599 "cargo:rustc-cfg=timergroup_driver_supported",
6600 "cargo:rustc-cfg=aes_driver_supported",
6601 "cargo:rustc-cfg=hmac_driver_supported",
6602 "cargo:rustc-cfg=rng_driver_supported",
6603 "cargo:rustc-cfg=rsa_driver_supported",
6604 "cargo:rustc-cfg=sha_driver_supported",
6605 "cargo:rustc-cfg=sleep_driver_supported",
6606 "cargo:rustc-cfg=ulp_riscv_driver_supported",
6607 "cargo:rustc-cfg=dma_driver_supported",
6608 "cargo:rustc-cfg=interrupts_driver_supported",
6609 "cargo:rustc-cfg=mmu_driver_supported",
6610 "cargo:rustc-cfg=psram_driver_supported",
6611 "cargo:rustc-cfg=rom_driver_supported",
6612 "cargo:rustc-cfg=soc_driver_supported",
6613 "cargo:rustc-cfg=uart_uart0",
6614 "cargo:rustc-cfg=uart_uart1",
6615 "cargo:rustc-cfg=i2c_master_i2c0",
6616 "cargo:rustc-cfg=i2c_master_i2c1",
6617 "cargo:rustc-cfg=spi_master_spi2",
6618 "cargo:rustc-cfg=spi_master_spi3",
6619 "cargo:rustc-cfg=spi_slave_spi2",
6620 "cargo:rustc-cfg=spi_slave_spi3",
6621 "cargo:rustc-cfg=i2s_i2s0",
6622 "cargo:rustc-cfg=adc_adc1",
6623 "cargo:rustc-cfg=adc_adc2",
6624 "cargo:rustc-cfg=dac_dac1",
6625 "cargo:rustc-cfg=dac_dac2",
6626 "cargo:rustc-cfg=timergroup_timg0",
6627 "cargo:rustc-cfg=timergroup_timg1",
6628 "cargo:rustc-cfg=gpio_version=\"2\"",
6629 "cargo:rustc-cfg=gpio_has_input_sync",
6630 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
6631 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
6632 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
6633 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
6634 "cargo:rustc-cfg=soc_has_xtal32k_pads",
6635 "cargo:rustc-cfg=gpio_has_bank_1",
6636 "cargo:rustc-cfg=gpio_input_signal_max=\"242\"",
6637 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
6638 "cargo:rustc-cfg=dedicated_gpio_version=\"esp32s2\"",
6639 "cargo:rustc-cfg=dedicated_gpio_needs_initialization",
6640 "cargo:rustc-cfg=lp_io_version=\"v2\"",
6641 "cargo:rustc-cfg=uart_ram_size=\"128\"",
6642 "cargo:rustc-cfg=uart_version=\"1\"",
6643 "cargo:rustc-cfg=i2c_master_version=\"2\"",
6644 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
6645 "cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
6646 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
6647 "cargo:rustc-cfg=i2c_master_has_pd_en",
6648 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
6649 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address_is_set",
6650 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"16777215\"",
6651 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"131071\"",
6652 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
6653 "cargo:rustc-cfg=spi_master_version=\"2\"",
6654 "cargo:rustc-cfg=spi_master_fifo_size=\"72\"",
6655 "cargo:rustc-cfg=spi_master_bit_order_is_bool",
6656 "cargo:rustc-cfg=spi_master_has_octal",
6657 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
6658 "cargo:rustc-cfg=i2s_version=\"1\"",
6659 "cargo:rustc-cfg=i2s_version_is_set",
6660 "cargo:rustc-cfg=i2s_default_clock_source=\"2\"",
6661 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
6662 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"6\"",
6663 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
6664 "cargo:rustc-cfg=i2s_max_ws_width=\"128\"",
6665 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
6666 "cargo:rustc-cfg=rmt_ram_start=\"1061250048\"",
6667 "cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
6668 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
6669 "cargo:rustc-cfg=rmt_has_tx_loop_count",
6670 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
6671 "cargo:rustc-cfg=rmt_has_tx_sync",
6672 "cargo:rustc-cfg=rmt_has_rx_demodulation",
6673 "cargo:rustc-cfg=rmt_has_per_channel_clock",
6674 "cargo:rustc-cfg=usb_otg_fifo_depth_words=\"256\"",
6675 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
6676 "cargo:rustc-cfg=wifi_csi_supported",
6677 "cargo:rustc-cfg=ledc_version=\"2\"",
6678 "cargo:rustc-cfg=ledc_channel_count=\"8\"",
6679 "cargo:rustc-cfg=soc_has_sdm_ch0",
6680 "cargo:rustc-cfg=soc_has_sdm_ch1",
6681 "cargo:rustc-cfg=soc_has_sdm_ch2",
6682 "cargo:rustc-cfg=soc_has_sdm_ch3",
6683 "cargo:rustc-cfg=soc_has_sdm_ch4",
6684 "cargo:rustc-cfg=soc_has_sdm_ch5",
6685 "cargo:rustc-cfg=soc_has_sdm_ch6",
6686 "cargo:rustc-cfg=soc_has_sdm_ch7",
6687 "cargo:rustc-cfg=timergroup_timg_has_timer1",
6688 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
6689 "cargo:rustc-cfg=aes_dma_mode_ecb",
6690 "cargo:rustc-cfg=aes_dma_mode_cbc",
6691 "cargo:rustc-cfg=aes_dma_mode_ofb",
6692 "cargo:rustc-cfg=aes_dma_mode_ctr",
6693 "cargo:rustc-cfg=aes_dma_mode_cfb8",
6694 "cargo:rustc-cfg=aes_dma_mode_cfb128",
6695 "cargo:rustc-cfg=aes_dma_mode_gcm",
6696 "cargo:rustc-cfg=aes_has_split_text_registers",
6697 "cargo:rustc-cfg=aes_endianness_configurable",
6698 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
6699 "cargo:rustc-cfg=rng_trng_supported",
6700 "cargo:rustc-cfg=rsa_version=\"2\"",
6701 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
6702 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
6703 "cargo:rustc-cfg=sleep_light_sleep",
6704 "cargo:rustc-cfg=sleep_deep_sleep",
6705 "cargo:rustc-cfg=sleep_has_wakeup_source_ext0",
6706 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
6707 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
6708 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
6709 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
6710 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
6711 "cargo:rustc-cfg=sleep_has_wakeup_source_touch",
6712 "cargo:rustc-cfg=sleep_has_wakeup_source_ulp_riscv",
6713 "cargo:rustc-cfg=sleep_has_wakeup_source_ulp_riscv_trap",
6714 "cargo:rustc-cfg=sleep_ext1_version=\"1\"",
6715 "cargo:rustc-cfg=sleep_ext1_version_is_set",
6716 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"1\"",
6717 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
6718 "cargo:rustc-cfg=sleep_deep_sleep_needs_gpio_isolation",
6719 "cargo:rustc-cfg=dma_ext_mem_configurable_block_size",
6720 "cargo:rustc-cfg=soc_has_dma_spi2",
6721 "cargo:rustc-cfg=soc_has_dma_spi3",
6722 "cargo:rustc-cfg=soc_has_dma_i2s0",
6723 "cargo:rustc-cfg=soc_has_dma_crypto",
6724 "cargo:rustc-cfg=soc_has_dma_copy",
6725 "cargo:rustc-cfg=dma_supports_mem2mem",
6726 "cargo:rustc-cfg=spi_master_supports_dma",
6727 "cargo:rustc-cfg=spi_master_dma_engine=\"SPI_DMA\"",
6728 "cargo:rustc-cfg=spi_slave_supports_dma",
6729 "cargo:rustc-cfg=spi_slave_dma_engine=\"SPI_DMA\"",
6730 "cargo:rustc-cfg=i2s_supports_dma",
6731 "cargo:rustc-cfg=i2s_dma_engine=\"I2S_DMA\"",
6732 "cargo:rustc-cfg=aes_supports_dma",
6733 "cargo:rustc-cfg=aes_dma_engine=\"CRYPTO_DMA\"",
6734 "cargo:rustc-cfg=sha_supports_dma",
6735 "cargo:rustc-cfg=sha_dma_engine=\"CRYPTO_DMA\"",
6736 "cargo:rustc-cfg=dma_can_access_psram",
6737 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
6738 "cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
6739 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
6740 "cargo:rustc-cfg=mmu_entry_num=\"256\"",
6741 "cargo:rustc-cfg=psram_extmem_origin=\"1062207488\"",
6742 "cargo:rustc-cfg=rom_has_crc_le",
6743 "cargo:rustc-cfg=rom_has_md5_bsd",
6744 "cargo:rustc-cfg=soc_has_swd_watchdog",
6745 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"0\"",
6746 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
6747 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
6748 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
6749 "cargo:rustc-cfg=soc_clock_node_pll_clk_is_configurable",
6750 "cargo:rustc-cfg=soc_has_clock_node_apll_clk",
6751 "cargo:rustc-cfg=soc_clock_node_apll_clk_is_configurable",
6752 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
6753 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_in",
6754 "cargo:rustc-cfg=soc_clock_node_cpu_pll_div_in_is_configurable",
6755 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
6756 "cargo:rustc-cfg=soc_clock_node_cpu_pll_div_is_configurable",
6757 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
6758 "cargo:rustc-cfg=soc_clock_node_system_pre_div_in_is_configurable",
6759 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
6760 "cargo:rustc-cfg=soc_clock_node_system_pre_div_is_configurable",
6761 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
6762 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
6763 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_cpu_div2",
6764 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_80m",
6765 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
6766 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
6767 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_xtal",
6768 "cargo:rustc-cfg=soc_clock_node_ref_tick_xtal_is_configurable",
6769 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_ck8m",
6770 "cargo:rustc-cfg=soc_clock_node_ref_tick_ck8m_is_configurable",
6771 "cargo:rustc-cfg=soc_has_clock_node_ref_tick",
6772 "cargo:rustc-cfg=soc_clock_node_ref_tick_is_configurable",
6773 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
6774 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
6775 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
6776 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
6777 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
6778 "cargo:rustc-cfg=soc_clock_node_rtc_slow_clk_is_configurable",
6779 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
6780 "cargo:rustc-cfg=soc_clock_node_rtc_fast_clk_is_configurable",
6781 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
6782 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
6783 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
6784 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
6785 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
6786 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
6787 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
6788 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
6789 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
6790 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
6791 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
6792 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
6793 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
6794 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
6795 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
6796 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
6797 "cargo:rustc-cfg=has_dram_region",
6798 "cargo:rustc-cfg=has_dram2_uninit_region",
6799 "cargo:rustc-cfg=has_irom_region",
6800 "cargo:rustc-cfg=has_drom_region",
6801 ],
6802 memory_layout: &MemoryLayout {
6803 regions: &[
6804 (
6805 "dram",
6806 MemoryRegion {
6807 address_range: 0x3FFB0000..0x40000000,
6808 },
6809 ),
6810 (
6811 "dram2_uninit",
6812 MemoryRegion {
6813 address_range: 0x3FFDE000..0x40000000,
6814 },
6815 ),
6816 (
6817 "irom",
6818 MemoryRegion {
6819 address_range: 0x40080000..0x40800000,
6820 },
6821 ),
6822 (
6823 "drom",
6824 MemoryRegion {
6825 address_range: 0x3F000000..0x3F400000,
6826 },
6827 ),
6828 ],
6829 },
6830 pins: &[
6831 PinInfo {
6832 pin: 0,
6833 limitations: &["strapping"],
6834 },
6835 PinInfo {
6836 pin: 1,
6837 limitations: &[],
6838 },
6839 PinInfo {
6840 pin: 2,
6841 limitations: &[],
6842 },
6843 PinInfo {
6844 pin: 3,
6845 limitations: &[],
6846 },
6847 PinInfo {
6848 pin: 4,
6849 limitations: &[],
6850 },
6851 PinInfo {
6852 pin: 5,
6853 limitations: &[],
6854 },
6855 PinInfo {
6856 pin: 6,
6857 limitations: &[],
6858 },
6859 PinInfo {
6860 pin: 7,
6861 limitations: &[],
6862 },
6863 PinInfo {
6864 pin: 8,
6865 limitations: &[],
6866 },
6867 PinInfo {
6868 pin: 9,
6869 limitations: &[],
6870 },
6871 PinInfo {
6872 pin: 10,
6873 limitations: &[],
6874 },
6875 PinInfo {
6876 pin: 11,
6877 limitations: &[],
6878 },
6879 PinInfo {
6880 pin: 12,
6881 limitations: &[],
6882 },
6883 PinInfo {
6884 pin: 13,
6885 limitations: &[],
6886 },
6887 PinInfo {
6888 pin: 14,
6889 limitations: &[],
6890 },
6891 PinInfo {
6892 pin: 15,
6893 limitations: &[],
6894 },
6895 PinInfo {
6896 pin: 16,
6897 limitations: &[],
6898 },
6899 PinInfo {
6900 pin: 17,
6901 limitations: &[],
6902 },
6903 PinInfo {
6904 pin: 18,
6905 limitations: &[],
6906 },
6907 PinInfo {
6908 pin: 19,
6909 limitations: &[],
6910 },
6911 PinInfo {
6912 pin: 20,
6913 limitations: &[],
6914 },
6915 PinInfo {
6916 pin: 21,
6917 limitations: &[],
6918 },
6919 PinInfo {
6920 pin: 26,
6921 limitations: &["spi_psram"],
6922 },
6923 PinInfo {
6924 pin: 27,
6925 limitations: &["spi_flash", "spi_psram"],
6926 },
6927 PinInfo {
6928 pin: 28,
6929 limitations: &["spi_flash", "spi_psram"],
6930 },
6931 PinInfo {
6932 pin: 29,
6933 limitations: &["spi_flash"],
6934 },
6935 PinInfo {
6936 pin: 30,
6937 limitations: &["spi_flash", "spi_psram"],
6938 },
6939 PinInfo {
6940 pin: 31,
6941 limitations: &["spi_flash", "spi_psram"],
6942 },
6943 PinInfo {
6944 pin: 32,
6945 limitations: &["spi_flash", "spi_psram"],
6946 },
6947 PinInfo {
6948 pin: 33,
6949 limitations: &["octal_flash", "octal_psram"],
6950 },
6951 PinInfo {
6952 pin: 34,
6953 limitations: &["octal_flash", "octal_psram"],
6954 },
6955 PinInfo {
6956 pin: 35,
6957 limitations: &["octal_flash", "octal_psram"],
6958 },
6959 PinInfo {
6960 pin: 36,
6961 limitations: &["octal_flash", "octal_psram"],
6962 },
6963 PinInfo {
6964 pin: 37,
6965 limitations: &["octal_flash", "octal_psram"],
6966 },
6967 PinInfo {
6968 pin: 38,
6969 limitations: &[],
6970 },
6971 PinInfo {
6972 pin: 39,
6973 limitations: &["jtag"],
6974 },
6975 PinInfo {
6976 pin: 40,
6977 limitations: &["jtag"],
6978 },
6979 PinInfo {
6980 pin: 41,
6981 limitations: &["jtag"],
6982 },
6983 PinInfo {
6984 pin: 42,
6985 limitations: &["jtag"],
6986 },
6987 PinInfo {
6988 pin: 43,
6989 limitations: &["bootloader_uart"],
6990 },
6991 PinInfo {
6992 pin: 44,
6993 limitations: &["bootloader_uart"],
6994 },
6995 PinInfo {
6996 pin: 45,
6997 limitations: &["strapping"],
6998 },
6999 PinInfo {
7000 pin: 46,
7001 limitations: &["strapping"],
7002 },
7003 ],
7004 },
7005 Self::Esp32s3 => Config {
7006 architecture: "xtensa",
7007 target: "xtensa-esp32s3-none-elf",
7008 symbols: &[
7009 "esp32s3",
7010 "xtensa",
7011 "multi_core",
7012 "soc_has_aes",
7013 "soc_has_apb_ctrl",
7014 "soc_has_apb_saradc",
7015 "soc_has_assist_debug",
7016 "soc_has_dma",
7017 "soc_has_ds",
7018 "soc_has_efuse",
7019 "soc_has_extmem",
7020 "soc_has_mmu_table",
7021 "soc_has_gpio",
7022 "soc_has_gpio_sd",
7023 "soc_has_hmac",
7024 "soc_has_i2c_ana_mst",
7025 "soc_has_i2c0",
7026 "soc_has_i2c1",
7027 "soc_has_i2s0",
7028 "soc_has_i2s1",
7029 "soc_has_interrupt_core0",
7030 "soc_has_interrupt_core1",
7031 "soc_has_io_mux",
7032 "soc_has_lcd_cam",
7033 "soc_has_ledc",
7034 "soc_has_lpwr",
7035 "soc_has_rtc_timer",
7036 "soc_has_mcpwm0",
7037 "soc_has_mcpwm1",
7038 "soc_has_pcnt",
7039 "soc_has_peri_backup",
7040 "soc_has_rmt",
7041 "soc_has_rng",
7042 "soc_has_rsa",
7043 "soc_has_rtc_cntl",
7044 "soc_has_lp_i2c0",
7045 "soc_has_rtc_io",
7046 "soc_has_sdhost",
7047 "soc_has_sens",
7048 "soc_has_sensitive",
7049 "soc_has_sha",
7050 "soc_has_spi0",
7051 "soc_has_spi1",
7052 "soc_has_spi2",
7053 "soc_has_spi3",
7054 "soc_has_system",
7055 "soc_has_systimer",
7056 "soc_has_timg0",
7057 "soc_has_timg1",
7058 "soc_has_twai0",
7059 "soc_has_uart0",
7060 "soc_has_uart1",
7061 "soc_has_uart2",
7062 "soc_has_uhci0",
7063 "soc_has_usb_fs",
7064 "soc_has_usb_device",
7065 "soc_has_usb_wrap",
7066 "soc_has_wcl",
7067 "soc_has_xts_aes",
7068 "soc_has_adc1",
7069 "soc_has_adc2",
7070 "soc_has_bt",
7071 "soc_has_cpu_ctrl",
7072 "soc_has_flash",
7073 "soc_has_gpio_dedicated",
7074 "soc_has_psram",
7075 "soc_has_ulp_riscv_core",
7076 "soc_has_wifi",
7077 "soc_has_from_cpu_intr0",
7078 "soc_has_from_cpu_intr1",
7079 "soc_has_from_cpu_intr2",
7080 "soc_has_from_cpu_intr3",
7081 "gpio_driver_supported",
7082 "dedicated_gpio_driver_supported",
7083 "io_mux_driver_supported",
7084 "lp_io_driver_supported",
7085 "uart_driver_supported",
7086 "uhci_driver_supported",
7087 "i2c_master_driver_supported",
7088 "lp_i2c_master_driver_supported",
7089 "spi_master_driver_supported",
7090 "spi_slave_driver_supported",
7091 "i2s_driver_supported",
7092 "rmt_driver_supported",
7093 "sdmmc_driver_supported",
7094 "twai_driver_supported",
7095 "usb_otg_driver_supported",
7096 "usb_serial_jtag_driver_supported",
7097 "bt_driver_supported",
7098 "wifi_driver_supported",
7099 "phy_driver_supported",
7100 "camera_driver_supported",
7101 "rgb_display_driver_supported",
7102 "adc_driver_supported",
7103 "temp_sensor_driver_supported",
7104 "ledc_driver_supported",
7105 "mcpwm_driver_supported",
7106 "pcnt_driver_supported",
7107 "lp_timer_driver_supported",
7108 "sdm_driver_supported",
7109 "systimer_driver_supported",
7110 "timergroup_driver_supported",
7111 "aes_driver_supported",
7112 "hmac_driver_supported",
7113 "rng_driver_supported",
7114 "rsa_driver_supported",
7115 "sha_driver_supported",
7116 "sleep_driver_supported",
7117 "ulp_riscv_driver_supported",
7118 "assist_debug_driver_supported",
7119 "dma_driver_supported",
7120 "interrupts_driver_supported",
7121 "mmu_driver_supported",
7122 "psram_driver_supported",
7123 "rom_driver_supported",
7124 "soc_driver_supported",
7125 "uart_uart0",
7126 "uart_uart1",
7127 "uart_uart2",
7128 "i2c_master_i2c0",
7129 "i2c_master_i2c1",
7130 "spi_master_spi2",
7131 "spi_master_spi3",
7132 "spi_slave_spi2",
7133 "spi_slave_spi3",
7134 "i2s_i2s0",
7135 "i2s_i2s1",
7136 "adc_adc1",
7137 "adc_adc2",
7138 "timergroup_timg0",
7139 "timergroup_timg1",
7140 "gpio_version=\"2\"",
7141 "gpio_has_input_sync",
7142 "gpio_gpio_function=\"1\"",
7143 "gpio_constant_0_input=\"60\"",
7144 "gpio_constant_1_input=\"56\"",
7145 "gpio_func_in_sel_offset=\"0\"",
7146 "soc_has_xtal32k_pads",
7147 "gpio_has_bank_1",
7148 "gpio_input_signal_max=\"255\"",
7149 "gpio_output_signal_max=\"256\"",
7150 "dedicated_gpio_version=\"esp32s3\"",
7151 "dedicated_gpio_needs_initialization",
7152 "lp_io_version=\"v2\"",
7153 "uart_ram_size=\"128\"",
7154 "uart_version=\"1\"",
7155 "uart_has_sclk_divider",
7156 "uart_has_sclk_enable",
7157 "i2c_master_version=\"3\"",
7158 "i2c_master_has_fsm_timeouts",
7159 "i2c_master_has_bus_timeout_enable",
7160 "i2c_master_can_estimate_nack_reason",
7161 "i2c_master_has_conf_update",
7162 "i2c_master_has_arbitration_en",
7163 "i2c_master_has_tx_fifo_watermark",
7164 "i2c_master_bus_timeout_is_exponential",
7165 "i2c_master_has_pd_en",
7166 "i2c_master_max_bus_timeout=\"31\"",
7167 "i2c_master_ll_intr_mask=\"262143\"",
7168 "i2c_master_fifo_size=\"32\"",
7169 "lp_i2c_master_version=\"rtc_i2c\"",
7170 "spi_master_version=\"3\"",
7171 "spi_master_fifo_size=\"64\"",
7172 "spi_master_has_octal",
7173 "spi_master_has_app_interrupts",
7174 "spi_master_has_dma_segmented_transfer",
7175 "i2s_version=\"2\"",
7176 "i2s_version_is_set",
7177 "i2s_default_clock_source=\"2\"",
7178 "i2s_default_clock_source_is_set",
7179 "i2s_mclk_divider_bit_width=\"6\"",
7180 "i2s_mclk_divider_bit_width_is_set",
7181 "i2s_max_ws_width=\"128\"",
7182 "i2s_max_ws_width_is_set",
7183 "i2s_supports_pdm_tx",
7184 "i2s_supports_pdm_rx",
7185 "i2s_supports_pcm2pdm",
7186 "i2s_supports_pdm2pcm",
7187 "rmt_ram_start=\"1610704896\"",
7188 "rmt_channel_ram_size=\"48\"",
7189 "rmt_has_tx_immediate_stop",
7190 "rmt_has_tx_loop_count",
7191 "rmt_has_tx_loop_auto_stop",
7192 "rmt_has_tx_carrier_data_only",
7193 "rmt_has_tx_sync",
7194 "rmt_has_rx_wrap",
7195 "rmt_has_rx_demodulation",
7196 "sdmmc_delay_phase_num=\"4\"",
7197 "sdmmc_delay_phase_num_is_set",
7198 "sdmmc_has_gpio_matrix",
7199 "usb_otg_fifo_depth_words=\"256\"",
7200 "bt_controller=\"btdm\"",
7201 "wifi_mac_version=\"1\"",
7202 "wifi_csi_supported",
7203 "phy_combo_module",
7204 "phy_backed_up_digital_register_count=\"21\"",
7205 "phy_backed_up_digital_register_count_is_set",
7206 "ledc_version=\"2\"",
7207 "ledc_channel_count=\"8\"",
7208 "soc_has_sdm_ch0",
7209 "soc_has_sdm_ch1",
7210 "soc_has_sdm_ch2",
7211 "soc_has_sdm_ch3",
7212 "soc_has_sdm_ch4",
7213 "soc_has_sdm_ch5",
7214 "soc_has_sdm_ch6",
7215 "soc_has_sdm_ch7",
7216 "timergroup_timg_has_timer1",
7217 "timergroup_rc_fast_calibration_is_set",
7218 "aes_dma_mode_ecb",
7219 "aes_dma_mode_cbc",
7220 "aes_dma_mode_ofb",
7221 "aes_dma_mode_ctr",
7222 "aes_dma_mode_cfb8",
7223 "aes_dma_mode_cfb128",
7224 "aes_has_split_text_registers",
7225 "rng_apb_cycle_wait_num=\"16\"",
7226 "rng_trng_supported",
7227 "rsa_version=\"2\"",
7228 "rsa_size_increment=\"32\"",
7229 "rsa_memory_size_bytes=\"512\"",
7230 "sleep_light_sleep",
7231 "sleep_deep_sleep",
7232 "sleep_has_wakeup_source_ext0",
7233 "sleep_has_wakeup_source_ext1",
7234 "sleep_has_wakeup_source_gpio",
7235 "sleep_has_wakeup_source_timer",
7236 "sleep_has_wakeup_source_sdio",
7237 "sleep_has_wakeup_source_wifi",
7238 "sleep_has_wakeup_source_uart",
7239 "sleep_has_wakeup_source_touch",
7240 "sleep_has_wakeup_source_bt",
7241 "sleep_has_wakeup_source_ulp_riscv",
7242 "sleep_has_wakeup_source_ulp_riscv_trap",
7243 "sleep_ext1_version=\"1\"",
7244 "sleep_ext1_version_is_set",
7245 "sleep_pin_wakeup_version=\"1\"",
7246 "sleep_pin_wakeup_version_is_set",
7247 "sleep_deep_sleep_needs_gpio_isolation",
7248 "assist_debug_has_region_monitor",
7249 "dma_mem2mem_requires_peripheral",
7250 "dma_ext_mem_configurable_block_size",
7251 "dma_separate_in_out_interrupts",
7252 "dma_gdma_version=\"1\"",
7253 "dma_gdma_version_is_set",
7254 "soc_has_dma_ch0",
7255 "soc_has_dma_ch1",
7256 "soc_has_dma_ch2",
7257 "soc_has_dma_ch3",
7258 "soc_has_dma_ch4",
7259 "dma_supports_mem2mem",
7260 "aes_supports_dma",
7261 "aes_dma_engine=\"AHB_GDMA\"",
7262 "sha_supports_dma",
7263 "sha_dma_engine=\"AHB_GDMA\"",
7264 "spi_master_supports_dma",
7265 "spi_master_dma_engine=\"AHB_GDMA\"",
7266 "spi_slave_supports_dma",
7267 "spi_slave_dma_engine=\"AHB_GDMA\"",
7268 "rmt_supports_dma",
7269 "rmt_dma_engine=\"AHB_GDMA\"",
7270 "uhci_supports_dma",
7271 "uhci_dma_engine=\"AHB_GDMA\"",
7272 "i2s_supports_dma",
7273 "i2s_dma_engine=\"AHB_GDMA\"",
7274 "lcd_cam_supports_dma",
7275 "lcd_cam_dma_engine=\"AHB_GDMA\"",
7276 "dma_can_access_psram",
7277 "dma_max_priority=\"9\"",
7278 "dma_max_priority_is_set",
7279 "interrupts_status_registers=\"4\"",
7280 "interrupt_controller=\"xtensa\"",
7281 "mmu_page_size=\"65536\"",
7282 "mmu_entry_num=\"384\"",
7283 "psram_octal_spi",
7284 "psram_extmem_origin=\"1006632960\"",
7285 "rom_has_crc_le",
7286 "rom_has_crc_be",
7287 "rom_has_md5_bsd",
7288 "soc_multi_core_enabled",
7289 "soc_has_swd_watchdog",
7290 "soc_cpu_mcause_mask=\"0\"",
7291 "soc_has_clock_node_xtal_clk",
7292 "soc_clock_node_xtal_clk_is_configurable",
7293 "soc_has_clock_node_pll_clk",
7294 "soc_clock_node_pll_clk_is_configurable",
7295 "soc_has_clock_node_rc_fast_clk",
7296 "soc_has_clock_node_xtal32k_clk",
7297 "soc_has_clock_node_rc_slow_clk",
7298 "soc_has_clock_node_rc_fast_div_clk",
7299 "soc_has_clock_node_system_pre_div_in",
7300 "soc_clock_node_system_pre_div_in_is_configurable",
7301 "soc_has_clock_node_system_pre_div",
7302 "soc_clock_node_system_pre_div_is_configurable",
7303 "soc_has_clock_node_cpu_pll_div_out",
7304 "soc_clock_node_cpu_pll_div_out_is_configurable",
7305 "soc_has_clock_node_cpu_clk",
7306 "soc_clock_node_cpu_clk_is_configurable",
7307 "soc_has_clock_node_pll_d2",
7308 "soc_has_clock_node_pll_160m",
7309 "soc_has_clock_node_apb_80m",
7310 "soc_has_clock_node_apb_clk",
7311 "soc_clock_node_apb_clk_is_configurable",
7312 "soc_has_clock_node_crypto_pwm_clk",
7313 "soc_clock_node_crypto_pwm_clk_is_configurable",
7314 "soc_has_clock_node_rc_fast_clk_div_n",
7315 "soc_clock_node_rc_fast_clk_div_n_is_configurable",
7316 "soc_has_clock_node_xtal_div_clk",
7317 "soc_has_clock_node_rtc_slow_clk",
7318 "soc_clock_node_rtc_slow_clk_is_configurable",
7319 "soc_has_clock_node_rtc_fast_clk",
7320 "soc_clock_node_rtc_fast_clk_is_configurable",
7321 "soc_has_clock_node_low_power_clk",
7322 "soc_clock_node_low_power_clk_is_configurable",
7323 "soc_has_clock_node_uart_mem_clk",
7324 "soc_has_clock_node_timg_calibration_clock",
7325 "soc_clock_node_timg_calibration_clock_is_configurable",
7326 "soc_has_clock_node_mcpwm_function_clock",
7327 "soc_has_clock_node_timg_function_clock",
7328 "soc_clock_node_timg_function_clock_is_configurable",
7329 "soc_has_clock_node_sdm_function_clock",
7330 "soc_has_clock_node_rmt_sclk",
7331 "soc_clock_node_rmt_sclk_is_configurable",
7332 "soc_has_clock_node_uart_function_clock",
7333 "soc_clock_node_uart_function_clock_is_configurable",
7334 "soc_has_clock_node_uart_baud_rate_generator",
7335 "soc_clock_node_uart_baud_rate_generator_is_configurable",
7336 "soc_has_clock_node_uart_mem_clock",
7337 "soc_has_clock_node_i2c_function_clock",
7338 "soc_clock_node_i2c_function_clock_is_configurable",
7339 "soc_has_clock_node_lcd_cam_lcd_clock",
7340 "soc_clock_node_lcd_cam_lcd_clock_is_configurable",
7341 "soc_has_clock_node_lcd_cam_cam_clock",
7342 "soc_clock_node_lcd_cam_cam_clock_is_configurable",
7343 "soc_has_clock_node_spi_function_clock",
7344 "soc_clock_node_spi_function_clock_is_configurable",
7345 "has_dram_region",
7346 "has_dram2_uninit_region",
7347 "has_irom_region",
7348 "has_drom_region",
7349 ],
7350 cfgs: &[
7351 "cargo:rustc-cfg=esp32s3",
7352 "cargo:rustc-cfg=xtensa",
7353 "cargo:rustc-cfg=multi_core",
7354 "cargo:rustc-cfg=soc_has_aes",
7355 "cargo:rustc-cfg=soc_has_apb_ctrl",
7356 "cargo:rustc-cfg=soc_has_apb_saradc",
7357 "cargo:rustc-cfg=soc_has_assist_debug",
7358 "cargo:rustc-cfg=soc_has_dma",
7359 "cargo:rustc-cfg=soc_has_ds",
7360 "cargo:rustc-cfg=soc_has_efuse",
7361 "cargo:rustc-cfg=soc_has_extmem",
7362 "cargo:rustc-cfg=soc_has_mmu_table",
7363 "cargo:rustc-cfg=soc_has_gpio",
7364 "cargo:rustc-cfg=soc_has_gpio_sd",
7365 "cargo:rustc-cfg=soc_has_hmac",
7366 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
7367 "cargo:rustc-cfg=soc_has_i2c0",
7368 "cargo:rustc-cfg=soc_has_i2c1",
7369 "cargo:rustc-cfg=soc_has_i2s0",
7370 "cargo:rustc-cfg=soc_has_i2s1",
7371 "cargo:rustc-cfg=soc_has_interrupt_core0",
7372 "cargo:rustc-cfg=soc_has_interrupt_core1",
7373 "cargo:rustc-cfg=soc_has_io_mux",
7374 "cargo:rustc-cfg=soc_has_lcd_cam",
7375 "cargo:rustc-cfg=soc_has_ledc",
7376 "cargo:rustc-cfg=soc_has_lpwr",
7377 "cargo:rustc-cfg=soc_has_rtc_timer",
7378 "cargo:rustc-cfg=soc_has_mcpwm0",
7379 "cargo:rustc-cfg=soc_has_mcpwm1",
7380 "cargo:rustc-cfg=soc_has_pcnt",
7381 "cargo:rustc-cfg=soc_has_peri_backup",
7382 "cargo:rustc-cfg=soc_has_rmt",
7383 "cargo:rustc-cfg=soc_has_rng",
7384 "cargo:rustc-cfg=soc_has_rsa",
7385 "cargo:rustc-cfg=soc_has_rtc_cntl",
7386 "cargo:rustc-cfg=soc_has_lp_i2c0",
7387 "cargo:rustc-cfg=soc_has_rtc_io",
7388 "cargo:rustc-cfg=soc_has_sdhost",
7389 "cargo:rustc-cfg=soc_has_sens",
7390 "cargo:rustc-cfg=soc_has_sensitive",
7391 "cargo:rustc-cfg=soc_has_sha",
7392 "cargo:rustc-cfg=soc_has_spi0",
7393 "cargo:rustc-cfg=soc_has_spi1",
7394 "cargo:rustc-cfg=soc_has_spi2",
7395 "cargo:rustc-cfg=soc_has_spi3",
7396 "cargo:rustc-cfg=soc_has_system",
7397 "cargo:rustc-cfg=soc_has_systimer",
7398 "cargo:rustc-cfg=soc_has_timg0",
7399 "cargo:rustc-cfg=soc_has_timg1",
7400 "cargo:rustc-cfg=soc_has_twai0",
7401 "cargo:rustc-cfg=soc_has_uart0",
7402 "cargo:rustc-cfg=soc_has_uart1",
7403 "cargo:rustc-cfg=soc_has_uart2",
7404 "cargo:rustc-cfg=soc_has_uhci0",
7405 "cargo:rustc-cfg=soc_has_usb_fs",
7406 "cargo:rustc-cfg=soc_has_usb_device",
7407 "cargo:rustc-cfg=soc_has_usb_wrap",
7408 "cargo:rustc-cfg=soc_has_wcl",
7409 "cargo:rustc-cfg=soc_has_xts_aes",
7410 "cargo:rustc-cfg=soc_has_adc1",
7411 "cargo:rustc-cfg=soc_has_adc2",
7412 "cargo:rustc-cfg=soc_has_bt",
7413 "cargo:rustc-cfg=soc_has_cpu_ctrl",
7414 "cargo:rustc-cfg=soc_has_flash",
7415 "cargo:rustc-cfg=soc_has_gpio_dedicated",
7416 "cargo:rustc-cfg=soc_has_psram",
7417 "cargo:rustc-cfg=soc_has_ulp_riscv_core",
7418 "cargo:rustc-cfg=soc_has_wifi",
7419 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
7420 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
7421 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
7422 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
7423 "cargo:rustc-cfg=gpio_driver_supported",
7424 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
7425 "cargo:rustc-cfg=io_mux_driver_supported",
7426 "cargo:rustc-cfg=lp_io_driver_supported",
7427 "cargo:rustc-cfg=uart_driver_supported",
7428 "cargo:rustc-cfg=uhci_driver_supported",
7429 "cargo:rustc-cfg=i2c_master_driver_supported",
7430 "cargo:rustc-cfg=lp_i2c_master_driver_supported",
7431 "cargo:rustc-cfg=spi_master_driver_supported",
7432 "cargo:rustc-cfg=spi_slave_driver_supported",
7433 "cargo:rustc-cfg=i2s_driver_supported",
7434 "cargo:rustc-cfg=rmt_driver_supported",
7435 "cargo:rustc-cfg=sdmmc_driver_supported",
7436 "cargo:rustc-cfg=twai_driver_supported",
7437 "cargo:rustc-cfg=usb_otg_driver_supported",
7438 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
7439 "cargo:rustc-cfg=bt_driver_supported",
7440 "cargo:rustc-cfg=wifi_driver_supported",
7441 "cargo:rustc-cfg=phy_driver_supported",
7442 "cargo:rustc-cfg=camera_driver_supported",
7443 "cargo:rustc-cfg=rgb_display_driver_supported",
7444 "cargo:rustc-cfg=adc_driver_supported",
7445 "cargo:rustc-cfg=temp_sensor_driver_supported",
7446 "cargo:rustc-cfg=ledc_driver_supported",
7447 "cargo:rustc-cfg=mcpwm_driver_supported",
7448 "cargo:rustc-cfg=pcnt_driver_supported",
7449 "cargo:rustc-cfg=lp_timer_driver_supported",
7450 "cargo:rustc-cfg=sdm_driver_supported",
7451 "cargo:rustc-cfg=systimer_driver_supported",
7452 "cargo:rustc-cfg=timergroup_driver_supported",
7453 "cargo:rustc-cfg=aes_driver_supported",
7454 "cargo:rustc-cfg=hmac_driver_supported",
7455 "cargo:rustc-cfg=rng_driver_supported",
7456 "cargo:rustc-cfg=rsa_driver_supported",
7457 "cargo:rustc-cfg=sha_driver_supported",
7458 "cargo:rustc-cfg=sleep_driver_supported",
7459 "cargo:rustc-cfg=ulp_riscv_driver_supported",
7460 "cargo:rustc-cfg=assist_debug_driver_supported",
7461 "cargo:rustc-cfg=dma_driver_supported",
7462 "cargo:rustc-cfg=interrupts_driver_supported",
7463 "cargo:rustc-cfg=mmu_driver_supported",
7464 "cargo:rustc-cfg=psram_driver_supported",
7465 "cargo:rustc-cfg=rom_driver_supported",
7466 "cargo:rustc-cfg=soc_driver_supported",
7467 "cargo:rustc-cfg=uart_uart0",
7468 "cargo:rustc-cfg=uart_uart1",
7469 "cargo:rustc-cfg=uart_uart2",
7470 "cargo:rustc-cfg=i2c_master_i2c0",
7471 "cargo:rustc-cfg=i2c_master_i2c1",
7472 "cargo:rustc-cfg=spi_master_spi2",
7473 "cargo:rustc-cfg=spi_master_spi3",
7474 "cargo:rustc-cfg=spi_slave_spi2",
7475 "cargo:rustc-cfg=spi_slave_spi3",
7476 "cargo:rustc-cfg=i2s_i2s0",
7477 "cargo:rustc-cfg=i2s_i2s1",
7478 "cargo:rustc-cfg=adc_adc1",
7479 "cargo:rustc-cfg=adc_adc2",
7480 "cargo:rustc-cfg=timergroup_timg0",
7481 "cargo:rustc-cfg=timergroup_timg1",
7482 "cargo:rustc-cfg=gpio_version=\"2\"",
7483 "cargo:rustc-cfg=gpio_has_input_sync",
7484 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
7485 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
7486 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
7487 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
7488 "cargo:rustc-cfg=soc_has_xtal32k_pads",
7489 "cargo:rustc-cfg=gpio_has_bank_1",
7490 "cargo:rustc-cfg=gpio_input_signal_max=\"255\"",
7491 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
7492 "cargo:rustc-cfg=dedicated_gpio_version=\"esp32s3\"",
7493 "cargo:rustc-cfg=dedicated_gpio_needs_initialization",
7494 "cargo:rustc-cfg=lp_io_version=\"v2\"",
7495 "cargo:rustc-cfg=uart_ram_size=\"128\"",
7496 "cargo:rustc-cfg=uart_version=\"1\"",
7497 "cargo:rustc-cfg=uart_has_sclk_divider",
7498 "cargo:rustc-cfg=uart_has_sclk_enable",
7499 "cargo:rustc-cfg=i2c_master_version=\"3\"",
7500 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
7501 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
7502 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
7503 "cargo:rustc-cfg=i2c_master_has_conf_update",
7504 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
7505 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
7506 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
7507 "cargo:rustc-cfg=i2c_master_has_pd_en",
7508 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
7509 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
7510 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
7511 "cargo:rustc-cfg=lp_i2c_master_version=\"rtc_i2c\"",
7512 "cargo:rustc-cfg=spi_master_version=\"3\"",
7513 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
7514 "cargo:rustc-cfg=spi_master_has_octal",
7515 "cargo:rustc-cfg=spi_master_has_app_interrupts",
7516 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
7517 "cargo:rustc-cfg=i2s_version=\"2\"",
7518 "cargo:rustc-cfg=i2s_version_is_set",
7519 "cargo:rustc-cfg=i2s_default_clock_source=\"2\"",
7520 "cargo:rustc-cfg=i2s_default_clock_source_is_set",
7521 "cargo:rustc-cfg=i2s_mclk_divider_bit_width=\"6\"",
7522 "cargo:rustc-cfg=i2s_mclk_divider_bit_width_is_set",
7523 "cargo:rustc-cfg=i2s_max_ws_width=\"128\"",
7524 "cargo:rustc-cfg=i2s_max_ws_width_is_set",
7525 "cargo:rustc-cfg=i2s_supports_pdm_tx",
7526 "cargo:rustc-cfg=i2s_supports_pdm_rx",
7527 "cargo:rustc-cfg=i2s_supports_pcm2pdm",
7528 "cargo:rustc-cfg=i2s_supports_pdm2pcm",
7529 "cargo:rustc-cfg=rmt_ram_start=\"1610704896\"",
7530 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
7531 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
7532 "cargo:rustc-cfg=rmt_has_tx_loop_count",
7533 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
7534 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
7535 "cargo:rustc-cfg=rmt_has_tx_sync",
7536 "cargo:rustc-cfg=rmt_has_rx_wrap",
7537 "cargo:rustc-cfg=rmt_has_rx_demodulation",
7538 "cargo:rustc-cfg=sdmmc_delay_phase_num=\"4\"",
7539 "cargo:rustc-cfg=sdmmc_delay_phase_num_is_set",
7540 "cargo:rustc-cfg=sdmmc_has_gpio_matrix",
7541 "cargo:rustc-cfg=usb_otg_fifo_depth_words=\"256\"",
7542 "cargo:rustc-cfg=bt_controller=\"btdm\"",
7543 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
7544 "cargo:rustc-cfg=wifi_csi_supported",
7545 "cargo:rustc-cfg=phy_combo_module",
7546 "cargo:rustc-cfg=phy_backed_up_digital_register_count=\"21\"",
7547 "cargo:rustc-cfg=phy_backed_up_digital_register_count_is_set",
7548 "cargo:rustc-cfg=ledc_version=\"2\"",
7549 "cargo:rustc-cfg=ledc_channel_count=\"8\"",
7550 "cargo:rustc-cfg=soc_has_sdm_ch0",
7551 "cargo:rustc-cfg=soc_has_sdm_ch1",
7552 "cargo:rustc-cfg=soc_has_sdm_ch2",
7553 "cargo:rustc-cfg=soc_has_sdm_ch3",
7554 "cargo:rustc-cfg=soc_has_sdm_ch4",
7555 "cargo:rustc-cfg=soc_has_sdm_ch5",
7556 "cargo:rustc-cfg=soc_has_sdm_ch6",
7557 "cargo:rustc-cfg=soc_has_sdm_ch7",
7558 "cargo:rustc-cfg=timergroup_timg_has_timer1",
7559 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
7560 "cargo:rustc-cfg=aes_dma_mode_ecb",
7561 "cargo:rustc-cfg=aes_dma_mode_cbc",
7562 "cargo:rustc-cfg=aes_dma_mode_ofb",
7563 "cargo:rustc-cfg=aes_dma_mode_ctr",
7564 "cargo:rustc-cfg=aes_dma_mode_cfb8",
7565 "cargo:rustc-cfg=aes_dma_mode_cfb128",
7566 "cargo:rustc-cfg=aes_has_split_text_registers",
7567 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
7568 "cargo:rustc-cfg=rng_trng_supported",
7569 "cargo:rustc-cfg=rsa_version=\"2\"",
7570 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
7571 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
7572 "cargo:rustc-cfg=sleep_light_sleep",
7573 "cargo:rustc-cfg=sleep_deep_sleep",
7574 "cargo:rustc-cfg=sleep_has_wakeup_source_ext0",
7575 "cargo:rustc-cfg=sleep_has_wakeup_source_ext1",
7576 "cargo:rustc-cfg=sleep_has_wakeup_source_gpio",
7577 "cargo:rustc-cfg=sleep_has_wakeup_source_timer",
7578 "cargo:rustc-cfg=sleep_has_wakeup_source_sdio",
7579 "cargo:rustc-cfg=sleep_has_wakeup_source_wifi",
7580 "cargo:rustc-cfg=sleep_has_wakeup_source_uart",
7581 "cargo:rustc-cfg=sleep_has_wakeup_source_touch",
7582 "cargo:rustc-cfg=sleep_has_wakeup_source_bt",
7583 "cargo:rustc-cfg=sleep_has_wakeup_source_ulp_riscv",
7584 "cargo:rustc-cfg=sleep_has_wakeup_source_ulp_riscv_trap",
7585 "cargo:rustc-cfg=sleep_ext1_version=\"1\"",
7586 "cargo:rustc-cfg=sleep_ext1_version_is_set",
7587 "cargo:rustc-cfg=sleep_pin_wakeup_version=\"1\"",
7588 "cargo:rustc-cfg=sleep_pin_wakeup_version_is_set",
7589 "cargo:rustc-cfg=sleep_deep_sleep_needs_gpio_isolation",
7590 "cargo:rustc-cfg=assist_debug_has_region_monitor",
7591 "cargo:rustc-cfg=dma_mem2mem_requires_peripheral",
7592 "cargo:rustc-cfg=dma_ext_mem_configurable_block_size",
7593 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
7594 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
7595 "cargo:rustc-cfg=dma_gdma_version_is_set",
7596 "cargo:rustc-cfg=soc_has_dma_ch0",
7597 "cargo:rustc-cfg=soc_has_dma_ch1",
7598 "cargo:rustc-cfg=soc_has_dma_ch2",
7599 "cargo:rustc-cfg=soc_has_dma_ch3",
7600 "cargo:rustc-cfg=soc_has_dma_ch4",
7601 "cargo:rustc-cfg=dma_supports_mem2mem",
7602 "cargo:rustc-cfg=aes_supports_dma",
7603 "cargo:rustc-cfg=aes_dma_engine=\"AHB_GDMA\"",
7604 "cargo:rustc-cfg=sha_supports_dma",
7605 "cargo:rustc-cfg=sha_dma_engine=\"AHB_GDMA\"",
7606 "cargo:rustc-cfg=spi_master_supports_dma",
7607 "cargo:rustc-cfg=spi_master_dma_engine=\"AHB_GDMA\"",
7608 "cargo:rustc-cfg=spi_slave_supports_dma",
7609 "cargo:rustc-cfg=spi_slave_dma_engine=\"AHB_GDMA\"",
7610 "cargo:rustc-cfg=rmt_supports_dma",
7611 "cargo:rustc-cfg=rmt_dma_engine=\"AHB_GDMA\"",
7612 "cargo:rustc-cfg=uhci_supports_dma",
7613 "cargo:rustc-cfg=uhci_dma_engine=\"AHB_GDMA\"",
7614 "cargo:rustc-cfg=i2s_supports_dma",
7615 "cargo:rustc-cfg=i2s_dma_engine=\"AHB_GDMA\"",
7616 "cargo:rustc-cfg=lcd_cam_supports_dma",
7617 "cargo:rustc-cfg=lcd_cam_dma_engine=\"AHB_GDMA\"",
7618 "cargo:rustc-cfg=dma_can_access_psram",
7619 "cargo:rustc-cfg=dma_max_priority=\"9\"",
7620 "cargo:rustc-cfg=dma_max_priority_is_set",
7621 "cargo:rustc-cfg=interrupts_status_registers=\"4\"",
7622 "cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
7623 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
7624 "cargo:rustc-cfg=mmu_entry_num=\"384\"",
7625 "cargo:rustc-cfg=psram_octal_spi",
7626 "cargo:rustc-cfg=psram_extmem_origin=\"1006632960\"",
7627 "cargo:rustc-cfg=rom_has_crc_le",
7628 "cargo:rustc-cfg=rom_has_crc_be",
7629 "cargo:rustc-cfg=rom_has_md5_bsd",
7630 "cargo:rustc-cfg=soc_multi_core_enabled",
7631 "cargo:rustc-cfg=soc_has_swd_watchdog",
7632 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"0\"",
7633 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
7634 "cargo:rustc-cfg=soc_clock_node_xtal_clk_is_configurable",
7635 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
7636 "cargo:rustc-cfg=soc_clock_node_pll_clk_is_configurable",
7637 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
7638 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
7639 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
7640 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
7641 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
7642 "cargo:rustc-cfg=soc_clock_node_system_pre_div_in_is_configurable",
7643 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
7644 "cargo:rustc-cfg=soc_clock_node_system_pre_div_is_configurable",
7645 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_out",
7646 "cargo:rustc-cfg=soc_clock_node_cpu_pll_div_out_is_configurable",
7647 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
7648 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
7649 "cargo:rustc-cfg=soc_has_clock_node_pll_d2",
7650 "cargo:rustc-cfg=soc_has_clock_node_pll_160m",
7651 "cargo:rustc-cfg=soc_has_clock_node_apb_80m",
7652 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
7653 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
7654 "cargo:rustc-cfg=soc_has_clock_node_crypto_pwm_clk",
7655 "cargo:rustc-cfg=soc_clock_node_crypto_pwm_clk_is_configurable",
7656 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
7657 "cargo:rustc-cfg=soc_clock_node_rc_fast_clk_div_n_is_configurable",
7658 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
7659 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
7660 "cargo:rustc-cfg=soc_clock_node_rtc_slow_clk_is_configurable",
7661 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
7662 "cargo:rustc-cfg=soc_clock_node_rtc_fast_clk_is_configurable",
7663 "cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
7664 "cargo:rustc-cfg=soc_clock_node_low_power_clk_is_configurable",
7665 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
7666 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
7667 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
7668 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
7669 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
7670 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
7671 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
7672 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
7673 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
7674 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
7675 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
7676 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
7677 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
7678 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
7679 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
7680 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
7681 "cargo:rustc-cfg=soc_has_clock_node_lcd_cam_lcd_clock",
7682 "cargo:rustc-cfg=soc_clock_node_lcd_cam_lcd_clock_is_configurable",
7683 "cargo:rustc-cfg=soc_has_clock_node_lcd_cam_cam_clock",
7684 "cargo:rustc-cfg=soc_clock_node_lcd_cam_cam_clock_is_configurable",
7685 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
7686 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
7687 "cargo:rustc-cfg=has_dram_region",
7688 "cargo:rustc-cfg=has_dram2_uninit_region",
7689 "cargo:rustc-cfg=has_irom_region",
7690 "cargo:rustc-cfg=has_drom_region",
7691 ],
7692 memory_layout: &MemoryLayout {
7693 regions: &[
7694 (
7695 "dram",
7696 MemoryRegion {
7697 address_range: 0x3FC88000..0x3FD00000,
7698 },
7699 ),
7700 (
7701 "dram2_uninit",
7702 MemoryRegion {
7703 address_range: 0x3FCDB700..0x3FCED710,
7704 },
7705 ),
7706 (
7707 "irom",
7708 MemoryRegion {
7709 address_range: 0x42000000..0x44000000,
7710 },
7711 ),
7712 (
7713 "drom",
7714 MemoryRegion {
7715 address_range: 0x3C000000..0x3E000000,
7716 },
7717 ),
7718 ],
7719 },
7720 pins: &[
7721 PinInfo {
7722 pin: 0,
7723 limitations: &["strapping"],
7724 },
7725 PinInfo {
7726 pin: 1,
7727 limitations: &[],
7728 },
7729 PinInfo {
7730 pin: 2,
7731 limitations: &[],
7732 },
7733 PinInfo {
7734 pin: 3,
7735 limitations: &["strapping"],
7736 },
7737 PinInfo {
7738 pin: 4,
7739 limitations: &[],
7740 },
7741 PinInfo {
7742 pin: 5,
7743 limitations: &[],
7744 },
7745 PinInfo {
7746 pin: 6,
7747 limitations: &[],
7748 },
7749 PinInfo {
7750 pin: 7,
7751 limitations: &[],
7752 },
7753 PinInfo {
7754 pin: 8,
7755 limitations: &[],
7756 },
7757 PinInfo {
7758 pin: 9,
7759 limitations: &[],
7760 },
7761 PinInfo {
7762 pin: 10,
7763 limitations: &[],
7764 },
7765 PinInfo {
7766 pin: 11,
7767 limitations: &[],
7768 },
7769 PinInfo {
7770 pin: 12,
7771 limitations: &[],
7772 },
7773 PinInfo {
7774 pin: 13,
7775 limitations: &[],
7776 },
7777 PinInfo {
7778 pin: 14,
7779 limitations: &[],
7780 },
7781 PinInfo {
7782 pin: 15,
7783 limitations: &[],
7784 },
7785 PinInfo {
7786 pin: 16,
7787 limitations: &[],
7788 },
7789 PinInfo {
7790 pin: 17,
7791 limitations: &[],
7792 },
7793 PinInfo {
7794 pin: 18,
7795 limitations: &[],
7796 },
7797 PinInfo {
7798 pin: 19,
7799 limitations: &["usb_jtag"],
7800 },
7801 PinInfo {
7802 pin: 20,
7803 limitations: &["usb_jtag"],
7804 },
7805 PinInfo {
7806 pin: 21,
7807 limitations: &[],
7808 },
7809 PinInfo {
7810 pin: 26,
7811 limitations: &["spi_psram"],
7812 },
7813 PinInfo {
7814 pin: 27,
7815 limitations: &["spi_flash", "spi_psram"],
7816 },
7817 PinInfo {
7818 pin: 28,
7819 limitations: &["spi_flash", "spi_psram"],
7820 },
7821 PinInfo {
7822 pin: 29,
7823 limitations: &["spi_flash"],
7824 },
7825 PinInfo {
7826 pin: 30,
7827 limitations: &["spi_flash", "spi_psram"],
7828 },
7829 PinInfo {
7830 pin: 31,
7831 limitations: &["spi_flash", "spi_psram"],
7832 },
7833 PinInfo {
7834 pin: 32,
7835 limitations: &["spi_flash"],
7836 },
7837 PinInfo {
7838 pin: 33,
7839 limitations: &["octal_flash", "octal_psram"],
7840 },
7841 PinInfo {
7842 pin: 34,
7843 limitations: &["octal_flash", "octal_psram"],
7844 },
7845 PinInfo {
7846 pin: 35,
7847 limitations: &["octal_flash", "octal_psram"],
7848 },
7849 PinInfo {
7850 pin: 36,
7851 limitations: &["octal_flash", "octal_psram"],
7852 },
7853 PinInfo {
7854 pin: 37,
7855 limitations: &["octal_flash", "octal_psram"],
7856 },
7857 PinInfo {
7858 pin: 38,
7859 limitations: &[],
7860 },
7861 PinInfo {
7862 pin: 39,
7863 limitations: &["jtag"],
7864 },
7865 PinInfo {
7866 pin: 40,
7867 limitations: &["jtag"],
7868 },
7869 PinInfo {
7870 pin: 41,
7871 limitations: &["jtag"],
7872 },
7873 PinInfo {
7874 pin: 42,
7875 limitations: &["jtag"],
7876 },
7877 PinInfo {
7878 pin: 43,
7879 limitations: &["bootloader_uart"],
7880 },
7881 PinInfo {
7882 pin: 44,
7883 limitations: &["bootloader_uart"],
7884 },
7885 PinInfo {
7886 pin: 45,
7887 limitations: &["strapping"],
7888 },
7889 PinInfo {
7890 pin: 46,
7891 limitations: &["strapping"],
7892 },
7893 PinInfo {
7894 pin: 47,
7895 limitations: &[],
7896 },
7897 PinInfo {
7898 pin: 48,
7899 limitations: &[],
7900 },
7901 ],
7902 },
7903 Self::Esp32s31 => Config {
7904 architecture: "riscv",
7905 target: "riscv32imafc-unknown-none-elf",
7906 symbols: &[
7907 "esp32s31",
7908 "riscv",
7909 "multi_core",
7910 "soc_has_aes",
7911 "soc_has_apb_saradc",
7912 "soc_has_assist_debug",
7913 "soc_has_cache",
7914 "soc_has_clic",
7915 "soc_has_cnnt_sys",
7916 "soc_has_cnnt_io_mux",
7917 "soc_has_ecc",
7918 "soc_has_efuse",
7919 "soc_has_gpio",
7920 "soc_has_gpio_sd",
7921 "soc_has_hp_apm",
7922 "soc_has_hp_mem_apm",
7923 "soc_has_hp_sys",
7924 "soc_has_hp_alive_sys",
7925 "soc_has_hp_sys_clkrst",
7926 "soc_has_i2c0",
7927 "soc_has_i2c1",
7928 "soc_has_interrupt_core0",
7929 "soc_has_interrupt_core1",
7930 "soc_has_io_mux",
7931 "soc_has_iomux_mspi_pin",
7932 "soc_has_lp_aon_clk_rst",
7933 "soc_has_lp_apm",
7934 "soc_has_lp_gpio",
7935 "soc_has_lp_io_mux",
7936 "soc_has_lp_peri",
7937 "soc_has_lp_sys",
7938 "soc_has_lp_tee",
7939 "soc_has_lp_wdt",
7940 "soc_has_lpwr",
7941 "soc_has_mem_monitor",
7942 "soc_has_modem_lpcon",
7943 "soc_has_modem_syscon",
7944 "soc_has_pau",
7945 "soc_has_pmu",
7946 "soc_has_rtc_timer",
7947 "soc_has_rng",
7948 "soc_has_rmt",
7949 "soc_has_rsa",
7950 "soc_has_spi0",
7951 "soc_has_spi1",
7952 "soc_has_memspi2",
7953 "soc_has_memspi3",
7954 "soc_has_spi2",
7955 "soc_has_spi3",
7956 "soc_has_axi_gdma",
7957 "soc_has_dma",
7958 "soc_has_sha",
7959 "soc_has_system",
7960 "soc_has_systimer",
7961 "soc_has_sdhost",
7962 "soc_has_tee",
7963 "soc_has_timg0",
7964 "soc_has_timg1",
7965 "soc_has_uart0",
7966 "soc_has_uart1",
7967 "soc_has_uart2",
7968 "soc_has_uart3",
7969 "soc_has_uhci0",
7970 "soc_has_usb_device",
7971 "soc_has_usb_hs",
7972 "soc_has_adc1",
7973 "soc_has_adc2",
7974 "soc_has_flash",
7975 "soc_has_psram",
7976 "soc_has_gpio_dedicated",
7977 "soc_has_cpu_ctrl",
7978 "soc_has_from_cpu_intr0",
7979 "soc_has_from_cpu_intr1",
7980 "soc_has_from_cpu_intr2",
7981 "soc_has_from_cpu_intr3",
7982 "gpio_driver_supported",
7983 "dedicated_gpio_driver_supported",
7984 "io_mux_driver_supported",
7985 "uart_driver_supported",
7986 "uhci_driver_supported",
7987 "i2c_master_driver_supported",
7988 "spi_master_driver_supported",
7989 "spi_slave_driver_supported",
7990 "rmt_driver_supported",
7991 "sdmmc_driver_supported",
7992 "usb_otg_hs_driver_supported",
7993 "usb_serial_jtag_driver_supported",
7994 "adc_driver_supported",
7995 "lp_timer_driver_supported",
7996 "sdm_driver_supported",
7997 "systimer_driver_supported",
7998 "timergroup_driver_supported",
7999 "aes_driver_supported",
8000 "ecc_driver_supported",
8001 "rng_driver_supported",
8002 "rsa_driver_supported",
8003 "sha_driver_supported",
8004 "dma_driver_supported",
8005 "interrupts_driver_supported",
8006 "mmu_driver_supported",
8007 "psram_driver_supported",
8008 "rom_driver_supported",
8009 "soc_driver_supported",
8010 "uart_uart0",
8011 "uart_uart1",
8012 "uart_uart2",
8013 "uart_uart3",
8014 "i2c_master_i2c0",
8015 "i2c_master_i2c1",
8016 "spi_master_spi2",
8017 "spi_master_spi3",
8018 "spi_slave_spi2",
8019 "spi_slave_spi3",
8020 "adc_adc1",
8021 "adc_adc2",
8022 "timergroup_timg0",
8023 "timergroup_timg1",
8024 "gpio_version=\"3\"",
8025 "gpio_has_input_sync",
8026 "gpio_gpio_function=\"1\"",
8027 "gpio_constant_0_input=\"192\"",
8028 "gpio_constant_1_input=\"128\"",
8029 "gpio_func_in_sel_offset=\"0\"",
8030 "soc_has_xtal32k_pads",
8031 "gpio_has_bank_1",
8032 "gpio_input_signal_max=\"255\"",
8033 "gpio_output_signal_max=\"256\"",
8034 "dedicated_gpio_version=\"riscv_v2\"",
8035 "uart_ram_size=\"128\"",
8036 "uart_version=\"2\"",
8037 "uart_peripheral_controls_mem_clk",
8038 "uart_has_sclk_enable",
8039 "uhci_combined_uart_selector_field",
8040 "i2c_master_version=\"4\"",
8041 "i2c_master_has_fsm_timeouts",
8042 "i2c_master_has_hw_bus_clear",
8043 "i2c_master_has_bus_timeout_enable",
8044 "i2c_master_can_estimate_nack_reason",
8045 "i2c_master_has_conf_update",
8046 "i2c_master_has_reliable_fsm_reset",
8047 "i2c_master_has_arbitration_en",
8048 "i2c_master_has_tx_fifo_watermark",
8049 "i2c_master_bus_timeout_is_exponential",
8050 "i2c_master_has_pd_en",
8051 "i2c_master_max_bus_timeout=\"31\"",
8052 "i2c_master_ll_intr_mask=\"262143\"",
8053 "i2c_master_fifo_size=\"32\"",
8054 "spi_master_version=\"3\"",
8055 "spi_master_fifo_size=\"64\"",
8056 "spi_master_has_octal",
8057 "spi_master_has_app_interrupts",
8058 "spi_master_has_dma_segmented_transfer",
8059 "rmt_ram_start=\"540366848\"",
8060 "rmt_channel_ram_size=\"48\"",
8061 "rmt_has_tx_immediate_stop",
8062 "rmt_has_tx_loop_count",
8063 "rmt_has_tx_loop_auto_stop",
8064 "rmt_has_tx_carrier_data_only",
8065 "rmt_has_tx_sync",
8066 "rmt_has_rx_wrap",
8067 "rmt_has_rx_demodulation",
8068 "sdmmc_delay_phase_num=\"8\"",
8069 "sdmmc_delay_phase_num_is_set",
8070 "sdmmc_has_iomux",
8071 "sdmmc_psram_dma",
8072 "usb_otg_hs_fifo_depth_words=\"896\"",
8073 "soc_has_sdm_ch0",
8074 "soc_has_sdm_ch1",
8075 "soc_has_sdm_ch2",
8076 "soc_has_sdm_ch3",
8077 "soc_has_sdm_ch4",
8078 "soc_has_sdm_ch5",
8079 "soc_has_sdm_ch6",
8080 "soc_has_sdm_ch7",
8081 "timergroup_timg_has_divcnt_rst",
8082 "timergroup_rc_fast_calibration_divider",
8083 "timergroup_rc_fast_calibration_is_set",
8084 "aes_dma_mode_ecb",
8085 "aes_dma_mode_cbc",
8086 "aes_dma_mode_ofb",
8087 "aes_dma_mode_ctr",
8088 "aes_dma_mode_cfb8",
8089 "aes_dma_mode_cfb128",
8090 "aes_dma_mode_gcm",
8091 "aes_has_split_text_registers",
8092 "ecc_separate_jacobian_point_memory",
8093 "ecc_has_memory_clock_gate",
8094 "ecc_supports_enhanced_security",
8095 "ecc_has_modular_arithmetic",
8096 "ecc_has_point_addition",
8097 "ecc_has_curve_p192",
8098 "ecc_has_curve_p256",
8099 "ecc_has_curve_p384",
8100 "rng_apb_cycle_wait_num=\"16\"",
8101 "rsa_version=\"3\"",
8102 "rsa_size_increment=\"32\"",
8103 "rsa_memory_size_bytes=\"512\"",
8104 "dma_separate_in_out_interrupts",
8105 "dma_gdma_version=\"3\"",
8106 "dma_gdma_version_is_set",
8107 "soc_has_dma_ch0",
8108 "soc_has_dma_ch1",
8109 "soc_has_dma_ch2",
8110 "soc_has_dma_ch3",
8111 "soc_has_dma_ch4",
8112 "soc_has_dma_axi_ch0",
8113 "soc_has_dma_axi_ch1",
8114 "soc_has_dma_axi_ch2",
8115 "dma_supports_mem2mem",
8116 "uhci_supports_dma",
8117 "uhci_dma_engine=\"AHB_GDMA\"",
8118 "spi_master_supports_dma",
8119 "spi_master_dma_engine=\"AXI_GDMA\"",
8120 "spi_slave_supports_dma",
8121 "spi_slave_dma_engine=\"AXI_GDMA\"",
8122 "aes_supports_dma",
8123 "aes_dma_engine=\"AXI_GDMA\"",
8124 "dma_can_access_psram",
8125 "dma_max_priority=\"15\"",
8126 "dma_max_priority_is_set",
8127 "interrupts_status_registers=\"6\"",
8128 "interrupt_controller=\"clic\"",
8129 "mmu_page_size=\"65536\"",
8130 "mmu_entry_num=\"1024\"",
8131 "psram_octal_spi",
8132 "psram_extmem_origin=\"1342177280\"",
8133 "rom_has_crc_le",
8134 "rom_has_crc_be",
8135 "rom_has_md5_bsd",
8136 "soc_cpu_has_branch_predictor",
8137 "soc_multi_core_enabled",
8138 "soc_cpu_csr_prv_mode=\"2064\"",
8139 "soc_cpu_csr_prv_mode_is_set",
8140 "soc_has_swd_watchdog",
8141 "soc_cpu_mcause_mask=\"63\"",
8142 "soc_has_clock_node_xtal_clk",
8143 "soc_has_clock_node_bbpll_clk",
8144 "soc_has_clock_node_cpll_clk",
8145 "soc_has_clock_node_mpll_clk",
8146 "soc_has_clock_node_rc_fast_clk",
8147 "soc_has_clock_node_xtal32k_clk",
8148 "soc_has_clock_node_rc_slow_clk",
8149 "soc_has_clock_node_pll_f20m",
8150 "soc_has_clock_node_pll_f80m",
8151 "soc_has_clock_node_pll_f120m",
8152 "soc_has_clock_node_pll_f160m",
8153 "soc_has_clock_node_pll_f240m",
8154 "soc_has_clock_node_pll_f25m",
8155 "soc_has_clock_node_pll_f50m",
8156 "soc_has_clock_node_xtal_d2_clk",
8157 "soc_has_clock_node_cpu_root_clk",
8158 "soc_clock_node_cpu_root_clk_is_configurable",
8159 "soc_has_clock_node_cpu_clk",
8160 "soc_clock_node_cpu_clk_is_configurable",
8161 "soc_has_clock_node_ahb_clk",
8162 "soc_clock_node_ahb_clk_is_configurable",
8163 "soc_has_clock_node_apb_clk",
8164 "soc_clock_node_apb_clk_is_configurable",
8165 "soc_has_clock_node_lp_fast_clk",
8166 "soc_clock_node_lp_fast_clk_is_configurable",
8167 "soc_has_clock_node_lp_slow_clk",
8168 "soc_clock_node_lp_slow_clk_is_configurable",
8169 "soc_has_clock_node_iomux_function_clock",
8170 "soc_clock_node_iomux_function_clock_is_configurable",
8171 "soc_has_clock_node_timg_calibration_clock",
8172 "soc_clock_node_timg_calibration_clock_is_configurable",
8173 "soc_has_clock_node_psram_function_clock",
8174 "soc_clock_node_psram_function_clock_is_configurable",
8175 "soc_has_clock_node_uart_function_clock",
8176 "soc_clock_node_uart_function_clock_is_configurable",
8177 "soc_has_clock_node_uart_baud_rate_generator",
8178 "soc_clock_node_uart_baud_rate_generator_is_configurable",
8179 "soc_has_clock_node_uart_mem_clock",
8180 "soc_has_clock_node_timg_function_clock",
8181 "soc_clock_node_timg_function_clock_is_configurable",
8182 "soc_has_clock_node_timg_wdt_clock",
8183 "soc_clock_node_timg_wdt_clock_is_configurable",
8184 "soc_has_clock_node_spi_function_clock",
8185 "soc_clock_node_spi_function_clock_is_configurable",
8186 "soc_has_clock_node_i2c_function_clock",
8187 "soc_clock_node_i2c_function_clock_is_configurable",
8188 "soc_has_clock_node_rmt_sclk",
8189 "soc_clock_node_rmt_sclk_is_configurable",
8190 "soc_has_clock_node_sdm_function_clock",
8191 "has_dram_region",
8192 "has_dram2_uninit_region",
8193 "has_irom_region",
8194 "has_drom_region",
8195 ],
8196 cfgs: &[
8197 "cargo:rustc-cfg=esp32s31",
8198 "cargo:rustc-cfg=riscv",
8199 "cargo:rustc-cfg=multi_core",
8200 "cargo:rustc-cfg=soc_has_aes",
8201 "cargo:rustc-cfg=soc_has_apb_saradc",
8202 "cargo:rustc-cfg=soc_has_assist_debug",
8203 "cargo:rustc-cfg=soc_has_cache",
8204 "cargo:rustc-cfg=soc_has_clic",
8205 "cargo:rustc-cfg=soc_has_cnnt_sys",
8206 "cargo:rustc-cfg=soc_has_cnnt_io_mux",
8207 "cargo:rustc-cfg=soc_has_ecc",
8208 "cargo:rustc-cfg=soc_has_efuse",
8209 "cargo:rustc-cfg=soc_has_gpio",
8210 "cargo:rustc-cfg=soc_has_gpio_sd",
8211 "cargo:rustc-cfg=soc_has_hp_apm",
8212 "cargo:rustc-cfg=soc_has_hp_mem_apm",
8213 "cargo:rustc-cfg=soc_has_hp_sys",
8214 "cargo:rustc-cfg=soc_has_hp_alive_sys",
8215 "cargo:rustc-cfg=soc_has_hp_sys_clkrst",
8216 "cargo:rustc-cfg=soc_has_i2c0",
8217 "cargo:rustc-cfg=soc_has_i2c1",
8218 "cargo:rustc-cfg=soc_has_interrupt_core0",
8219 "cargo:rustc-cfg=soc_has_interrupt_core1",
8220 "cargo:rustc-cfg=soc_has_io_mux",
8221 "cargo:rustc-cfg=soc_has_iomux_mspi_pin",
8222 "cargo:rustc-cfg=soc_has_lp_aon_clk_rst",
8223 "cargo:rustc-cfg=soc_has_lp_apm",
8224 "cargo:rustc-cfg=soc_has_lp_gpio",
8225 "cargo:rustc-cfg=soc_has_lp_io_mux",
8226 "cargo:rustc-cfg=soc_has_lp_peri",
8227 "cargo:rustc-cfg=soc_has_lp_sys",
8228 "cargo:rustc-cfg=soc_has_lp_tee",
8229 "cargo:rustc-cfg=soc_has_lp_wdt",
8230 "cargo:rustc-cfg=soc_has_lpwr",
8231 "cargo:rustc-cfg=soc_has_mem_monitor",
8232 "cargo:rustc-cfg=soc_has_modem_lpcon",
8233 "cargo:rustc-cfg=soc_has_modem_syscon",
8234 "cargo:rustc-cfg=soc_has_pau",
8235 "cargo:rustc-cfg=soc_has_pmu",
8236 "cargo:rustc-cfg=soc_has_rtc_timer",
8237 "cargo:rustc-cfg=soc_has_rng",
8238 "cargo:rustc-cfg=soc_has_rmt",
8239 "cargo:rustc-cfg=soc_has_rsa",
8240 "cargo:rustc-cfg=soc_has_spi0",
8241 "cargo:rustc-cfg=soc_has_spi1",
8242 "cargo:rustc-cfg=soc_has_memspi2",
8243 "cargo:rustc-cfg=soc_has_memspi3",
8244 "cargo:rustc-cfg=soc_has_spi2",
8245 "cargo:rustc-cfg=soc_has_spi3",
8246 "cargo:rustc-cfg=soc_has_axi_gdma",
8247 "cargo:rustc-cfg=soc_has_dma",
8248 "cargo:rustc-cfg=soc_has_sha",
8249 "cargo:rustc-cfg=soc_has_system",
8250 "cargo:rustc-cfg=soc_has_systimer",
8251 "cargo:rustc-cfg=soc_has_sdhost",
8252 "cargo:rustc-cfg=soc_has_tee",
8253 "cargo:rustc-cfg=soc_has_timg0",
8254 "cargo:rustc-cfg=soc_has_timg1",
8255 "cargo:rustc-cfg=soc_has_uart0",
8256 "cargo:rustc-cfg=soc_has_uart1",
8257 "cargo:rustc-cfg=soc_has_uart2",
8258 "cargo:rustc-cfg=soc_has_uart3",
8259 "cargo:rustc-cfg=soc_has_uhci0",
8260 "cargo:rustc-cfg=soc_has_usb_device",
8261 "cargo:rustc-cfg=soc_has_usb_hs",
8262 "cargo:rustc-cfg=soc_has_adc1",
8263 "cargo:rustc-cfg=soc_has_adc2",
8264 "cargo:rustc-cfg=soc_has_flash",
8265 "cargo:rustc-cfg=soc_has_psram",
8266 "cargo:rustc-cfg=soc_has_gpio_dedicated",
8267 "cargo:rustc-cfg=soc_has_cpu_ctrl",
8268 "cargo:rustc-cfg=soc_has_from_cpu_intr0",
8269 "cargo:rustc-cfg=soc_has_from_cpu_intr1",
8270 "cargo:rustc-cfg=soc_has_from_cpu_intr2",
8271 "cargo:rustc-cfg=soc_has_from_cpu_intr3",
8272 "cargo:rustc-cfg=gpio_driver_supported",
8273 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
8274 "cargo:rustc-cfg=io_mux_driver_supported",
8275 "cargo:rustc-cfg=uart_driver_supported",
8276 "cargo:rustc-cfg=uhci_driver_supported",
8277 "cargo:rustc-cfg=i2c_master_driver_supported",
8278 "cargo:rustc-cfg=spi_master_driver_supported",
8279 "cargo:rustc-cfg=spi_slave_driver_supported",
8280 "cargo:rustc-cfg=rmt_driver_supported",
8281 "cargo:rustc-cfg=sdmmc_driver_supported",
8282 "cargo:rustc-cfg=usb_otg_hs_driver_supported",
8283 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
8284 "cargo:rustc-cfg=adc_driver_supported",
8285 "cargo:rustc-cfg=lp_timer_driver_supported",
8286 "cargo:rustc-cfg=sdm_driver_supported",
8287 "cargo:rustc-cfg=systimer_driver_supported",
8288 "cargo:rustc-cfg=timergroup_driver_supported",
8289 "cargo:rustc-cfg=aes_driver_supported",
8290 "cargo:rustc-cfg=ecc_driver_supported",
8291 "cargo:rustc-cfg=rng_driver_supported",
8292 "cargo:rustc-cfg=rsa_driver_supported",
8293 "cargo:rustc-cfg=sha_driver_supported",
8294 "cargo:rustc-cfg=dma_driver_supported",
8295 "cargo:rustc-cfg=interrupts_driver_supported",
8296 "cargo:rustc-cfg=mmu_driver_supported",
8297 "cargo:rustc-cfg=psram_driver_supported",
8298 "cargo:rustc-cfg=rom_driver_supported",
8299 "cargo:rustc-cfg=soc_driver_supported",
8300 "cargo:rustc-cfg=uart_uart0",
8301 "cargo:rustc-cfg=uart_uart1",
8302 "cargo:rustc-cfg=uart_uart2",
8303 "cargo:rustc-cfg=uart_uart3",
8304 "cargo:rustc-cfg=i2c_master_i2c0",
8305 "cargo:rustc-cfg=i2c_master_i2c1",
8306 "cargo:rustc-cfg=spi_master_spi2",
8307 "cargo:rustc-cfg=spi_master_spi3",
8308 "cargo:rustc-cfg=spi_slave_spi2",
8309 "cargo:rustc-cfg=spi_slave_spi3",
8310 "cargo:rustc-cfg=adc_adc1",
8311 "cargo:rustc-cfg=adc_adc2",
8312 "cargo:rustc-cfg=timergroup_timg0",
8313 "cargo:rustc-cfg=timergroup_timg1",
8314 "cargo:rustc-cfg=gpio_version=\"3\"",
8315 "cargo:rustc-cfg=gpio_has_input_sync",
8316 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
8317 "cargo:rustc-cfg=gpio_constant_0_input=\"192\"",
8318 "cargo:rustc-cfg=gpio_constant_1_input=\"128\"",
8319 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
8320 "cargo:rustc-cfg=soc_has_xtal32k_pads",
8321 "cargo:rustc-cfg=gpio_has_bank_1",
8322 "cargo:rustc-cfg=gpio_input_signal_max=\"255\"",
8323 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
8324 "cargo:rustc-cfg=dedicated_gpio_version=\"riscv_v2\"",
8325 "cargo:rustc-cfg=uart_ram_size=\"128\"",
8326 "cargo:rustc-cfg=uart_version=\"2\"",
8327 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
8328 "cargo:rustc-cfg=uart_has_sclk_enable",
8329 "cargo:rustc-cfg=uhci_combined_uart_selector_field",
8330 "cargo:rustc-cfg=i2c_master_version=\"4\"",
8331 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
8332 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
8333 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
8334 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
8335 "cargo:rustc-cfg=i2c_master_has_conf_update",
8336 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
8337 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
8338 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
8339 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
8340 "cargo:rustc-cfg=i2c_master_has_pd_en",
8341 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
8342 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
8343 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
8344 "cargo:rustc-cfg=spi_master_version=\"3\"",
8345 "cargo:rustc-cfg=spi_master_fifo_size=\"64\"",
8346 "cargo:rustc-cfg=spi_master_has_octal",
8347 "cargo:rustc-cfg=spi_master_has_app_interrupts",
8348 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
8349 "cargo:rustc-cfg=rmt_ram_start=\"540366848\"",
8350 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
8351 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
8352 "cargo:rustc-cfg=rmt_has_tx_loop_count",
8353 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
8354 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
8355 "cargo:rustc-cfg=rmt_has_tx_sync",
8356 "cargo:rustc-cfg=rmt_has_rx_wrap",
8357 "cargo:rustc-cfg=rmt_has_rx_demodulation",
8358 "cargo:rustc-cfg=sdmmc_delay_phase_num=\"8\"",
8359 "cargo:rustc-cfg=sdmmc_delay_phase_num_is_set",
8360 "cargo:rustc-cfg=sdmmc_has_iomux",
8361 "cargo:rustc-cfg=sdmmc_psram_dma",
8362 "cargo:rustc-cfg=usb_otg_hs_fifo_depth_words=\"896\"",
8363 "cargo:rustc-cfg=soc_has_sdm_ch0",
8364 "cargo:rustc-cfg=soc_has_sdm_ch1",
8365 "cargo:rustc-cfg=soc_has_sdm_ch2",
8366 "cargo:rustc-cfg=soc_has_sdm_ch3",
8367 "cargo:rustc-cfg=soc_has_sdm_ch4",
8368 "cargo:rustc-cfg=soc_has_sdm_ch5",
8369 "cargo:rustc-cfg=soc_has_sdm_ch6",
8370 "cargo:rustc-cfg=soc_has_sdm_ch7",
8371 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
8372 "cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
8373 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
8374 "cargo:rustc-cfg=aes_dma_mode_ecb",
8375 "cargo:rustc-cfg=aes_dma_mode_cbc",
8376 "cargo:rustc-cfg=aes_dma_mode_ofb",
8377 "cargo:rustc-cfg=aes_dma_mode_ctr",
8378 "cargo:rustc-cfg=aes_dma_mode_cfb8",
8379 "cargo:rustc-cfg=aes_dma_mode_cfb128",
8380 "cargo:rustc-cfg=aes_dma_mode_gcm",
8381 "cargo:rustc-cfg=aes_has_split_text_registers",
8382 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
8383 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
8384 "cargo:rustc-cfg=ecc_supports_enhanced_security",
8385 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
8386 "cargo:rustc-cfg=ecc_has_point_addition",
8387 "cargo:rustc-cfg=ecc_has_curve_p192",
8388 "cargo:rustc-cfg=ecc_has_curve_p256",
8389 "cargo:rustc-cfg=ecc_has_curve_p384",
8390 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
8391 "cargo:rustc-cfg=rsa_version=\"3\"",
8392 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
8393 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
8394 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
8395 "cargo:rustc-cfg=dma_gdma_version=\"3\"",
8396 "cargo:rustc-cfg=dma_gdma_version_is_set",
8397 "cargo:rustc-cfg=soc_has_dma_ch0",
8398 "cargo:rustc-cfg=soc_has_dma_ch1",
8399 "cargo:rustc-cfg=soc_has_dma_ch2",
8400 "cargo:rustc-cfg=soc_has_dma_ch3",
8401 "cargo:rustc-cfg=soc_has_dma_ch4",
8402 "cargo:rustc-cfg=soc_has_dma_axi_ch0",
8403 "cargo:rustc-cfg=soc_has_dma_axi_ch1",
8404 "cargo:rustc-cfg=soc_has_dma_axi_ch2",
8405 "cargo:rustc-cfg=dma_supports_mem2mem",
8406 "cargo:rustc-cfg=uhci_supports_dma",
8407 "cargo:rustc-cfg=uhci_dma_engine=\"AHB_GDMA\"",
8408 "cargo:rustc-cfg=spi_master_supports_dma",
8409 "cargo:rustc-cfg=spi_master_dma_engine=\"AXI_GDMA\"",
8410 "cargo:rustc-cfg=spi_slave_supports_dma",
8411 "cargo:rustc-cfg=spi_slave_dma_engine=\"AXI_GDMA\"",
8412 "cargo:rustc-cfg=aes_supports_dma",
8413 "cargo:rustc-cfg=aes_dma_engine=\"AXI_GDMA\"",
8414 "cargo:rustc-cfg=dma_can_access_psram",
8415 "cargo:rustc-cfg=dma_max_priority=\"15\"",
8416 "cargo:rustc-cfg=dma_max_priority_is_set",
8417 "cargo:rustc-cfg=interrupts_status_registers=\"6\"",
8418 "cargo:rustc-cfg=interrupt_controller=\"clic\"",
8419 "cargo:rustc-cfg=mmu_page_size=\"65536\"",
8420 "cargo:rustc-cfg=mmu_entry_num=\"1024\"",
8421 "cargo:rustc-cfg=psram_octal_spi",
8422 "cargo:rustc-cfg=psram_extmem_origin=\"1342177280\"",
8423 "cargo:rustc-cfg=rom_has_crc_le",
8424 "cargo:rustc-cfg=rom_has_crc_be",
8425 "cargo:rustc-cfg=rom_has_md5_bsd",
8426 "cargo:rustc-cfg=soc_cpu_has_branch_predictor",
8427 "cargo:rustc-cfg=soc_multi_core_enabled",
8428 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"2064\"",
8429 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
8430 "cargo:rustc-cfg=soc_has_swd_watchdog",
8431 "cargo:rustc-cfg=soc_cpu_mcause_mask=\"63\"",
8432 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
8433 "cargo:rustc-cfg=soc_has_clock_node_bbpll_clk",
8434 "cargo:rustc-cfg=soc_has_clock_node_cpll_clk",
8435 "cargo:rustc-cfg=soc_has_clock_node_mpll_clk",
8436 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
8437 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
8438 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
8439 "cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
8440 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
8441 "cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
8442 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
8443 "cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
8444 "cargo:rustc-cfg=soc_has_clock_node_pll_f25m",
8445 "cargo:rustc-cfg=soc_has_clock_node_pll_f50m",
8446 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
8447 "cargo:rustc-cfg=soc_has_clock_node_cpu_root_clk",
8448 "cargo:rustc-cfg=soc_clock_node_cpu_root_clk_is_configurable",
8449 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
8450 "cargo:rustc-cfg=soc_clock_node_cpu_clk_is_configurable",
8451 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
8452 "cargo:rustc-cfg=soc_clock_node_ahb_clk_is_configurable",
8453 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
8454 "cargo:rustc-cfg=soc_clock_node_apb_clk_is_configurable",
8455 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
8456 "cargo:rustc-cfg=soc_clock_node_lp_fast_clk_is_configurable",
8457 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
8458 "cargo:rustc-cfg=soc_clock_node_lp_slow_clk_is_configurable",
8459 "cargo:rustc-cfg=soc_has_clock_node_iomux_function_clock",
8460 "cargo:rustc-cfg=soc_clock_node_iomux_function_clock_is_configurable",
8461 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
8462 "cargo:rustc-cfg=soc_clock_node_timg_calibration_clock_is_configurable",
8463 "cargo:rustc-cfg=soc_has_clock_node_psram_function_clock",
8464 "cargo:rustc-cfg=soc_clock_node_psram_function_clock_is_configurable",
8465 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
8466 "cargo:rustc-cfg=soc_clock_node_uart_function_clock_is_configurable",
8467 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
8468 "cargo:rustc-cfg=soc_clock_node_uart_baud_rate_generator_is_configurable",
8469 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
8470 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
8471 "cargo:rustc-cfg=soc_clock_node_timg_function_clock_is_configurable",
8472 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
8473 "cargo:rustc-cfg=soc_clock_node_timg_wdt_clock_is_configurable",
8474 "cargo:rustc-cfg=soc_has_clock_node_spi_function_clock",
8475 "cargo:rustc-cfg=soc_clock_node_spi_function_clock_is_configurable",
8476 "cargo:rustc-cfg=soc_has_clock_node_i2c_function_clock",
8477 "cargo:rustc-cfg=soc_clock_node_i2c_function_clock_is_configurable",
8478 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
8479 "cargo:rustc-cfg=soc_clock_node_rmt_sclk_is_configurable",
8480 "cargo:rustc-cfg=soc_has_clock_node_sdm_function_clock",
8481 "cargo:rustc-cfg=has_dram_region",
8482 "cargo:rustc-cfg=has_dram2_uninit_region",
8483 "cargo:rustc-cfg=has_irom_region",
8484 "cargo:rustc-cfg=has_drom_region",
8485 ],
8486 memory_layout: &MemoryLayout {
8487 regions: &[
8488 (
8489 "dram",
8490 MemoryRegion {
8491 address_range: 0x2F000000..0x2F07AFC0,
8492 },
8493 ),
8494 (
8495 "dram2_uninit",
8496 MemoryRegion {
8497 address_range: 0x2F07AFC0..0x2F07CFB0,
8498 },
8499 ),
8500 (
8501 "irom",
8502 MemoryRegion {
8503 address_range: 0x40000000..0x50000000,
8504 },
8505 ),
8506 (
8507 "drom",
8508 MemoryRegion {
8509 address_range: 0x40000000..0x50000000,
8510 },
8511 ),
8512 ],
8513 },
8514 pins: &[
8515 PinInfo {
8516 pin: 0,
8517 limitations: &[],
8518 },
8519 PinInfo {
8520 pin: 1,
8521 limitations: &[],
8522 },
8523 PinInfo {
8524 pin: 2,
8525 limitations: &[],
8526 },
8527 PinInfo {
8528 pin: 3,
8529 limitations: &[],
8530 },
8531 PinInfo {
8532 pin: 4,
8533 limitations: &[],
8534 },
8535 PinInfo {
8536 pin: 5,
8537 limitations: &[],
8538 },
8539 PinInfo {
8540 pin: 6,
8541 limitations: &[],
8542 },
8543 PinInfo {
8544 pin: 7,
8545 limitations: &[],
8546 },
8547 PinInfo {
8548 pin: 8,
8549 limitations: &[],
8550 },
8551 PinInfo {
8552 pin: 9,
8553 limitations: &[],
8554 },
8555 PinInfo {
8556 pin: 10,
8557 limitations: &[],
8558 },
8559 PinInfo {
8560 pin: 11,
8561 limitations: &[],
8562 },
8563 PinInfo {
8564 pin: 12,
8565 limitations: &[],
8566 },
8567 PinInfo {
8568 pin: 13,
8569 limitations: &[],
8570 },
8571 PinInfo {
8572 pin: 14,
8573 limitations: &[],
8574 },
8575 PinInfo {
8576 pin: 15,
8577 limitations: &[],
8578 },
8579 PinInfo {
8580 pin: 16,
8581 limitations: &[],
8582 },
8583 PinInfo {
8584 pin: 17,
8585 limitations: &[],
8586 },
8587 PinInfo {
8588 pin: 18,
8589 limitations: &[],
8590 },
8591 PinInfo {
8592 pin: 19,
8593 limitations: &[],
8594 },
8595 PinInfo {
8596 pin: 20,
8597 limitations: &[],
8598 },
8599 PinInfo {
8600 pin: 21,
8601 limitations: &[],
8602 },
8603 PinInfo {
8604 pin: 22,
8605 limitations: &[],
8606 },
8607 PinInfo {
8608 pin: 23,
8609 limitations: &[],
8610 },
8611 PinInfo {
8612 pin: 24,
8613 limitations: &[],
8614 },
8615 PinInfo {
8616 pin: 25,
8617 limitations: &[],
8618 },
8619 PinInfo {
8620 pin: 26,
8621 limitations: &["spi_flash"],
8622 },
8623 PinInfo {
8624 pin: 27,
8625 limitations: &["spi_flash", "strapping"],
8626 },
8627 PinInfo {
8628 pin: 28,
8629 limitations: &["spi_flash", "strapping"],
8630 },
8631 PinInfo {
8632 pin: 30,
8633 limitations: &["spi_flash"],
8634 },
8635 PinInfo {
8636 pin: 31,
8637 limitations: &["spi_flash"],
8638 },
8639 PinInfo {
8640 pin: 32,
8641 limitations: &["spi_flash"],
8642 },
8643 PinInfo {
8644 pin: 33,
8645 limitations: &["usb_jtag"],
8646 },
8647 PinInfo {
8648 pin: 34,
8649 limitations: &["usb_jtag"],
8650 },
8651 PinInfo {
8652 pin: 35,
8653 limitations: &[],
8654 },
8655 PinInfo {
8656 pin: 36,
8657 limitations: &["strapping"],
8658 },
8659 PinInfo {
8660 pin: 37,
8661 limitations: &["strapping"],
8662 },
8663 PinInfo {
8664 pin: 38,
8665 limitations: &["strapping"],
8666 },
8667 PinInfo {
8668 pin: 39,
8669 limitations: &["strapping"],
8670 },
8671 PinInfo {
8672 pin: 40,
8673 limitations: &["strapping"],
8674 },
8675 PinInfo {
8676 pin: 42,
8677 limitations: &[],
8678 },
8679 PinInfo {
8680 pin: 43,
8681 limitations: &[],
8682 },
8683 PinInfo {
8684 pin: 44,
8685 limitations: &[],
8686 },
8687 PinInfo {
8688 pin: 45,
8689 limitations: &[],
8690 },
8691 PinInfo {
8692 pin: 46,
8693 limitations: &[],
8694 },
8695 PinInfo {
8696 pin: 47,
8697 limitations: &[],
8698 },
8699 PinInfo {
8700 pin: 48,
8701 limitations: &[],
8702 },
8703 PinInfo {
8704 pin: 49,
8705 limitations: &[],
8706 },
8707 PinInfo {
8708 pin: 50,
8709 limitations: &[],
8710 },
8711 PinInfo {
8712 pin: 51,
8713 limitations: &[],
8714 },
8715 PinInfo {
8716 pin: 52,
8717 limitations: &[],
8718 },
8719 PinInfo {
8720 pin: 53,
8721 limitations: &[],
8722 },
8723 PinInfo {
8724 pin: 54,
8725 limitations: &["jtag"],
8726 },
8727 PinInfo {
8728 pin: 55,
8729 limitations: &["jtag"],
8730 },
8731 PinInfo {
8732 pin: 56,
8733 limitations: &["jtag"],
8734 },
8735 PinInfo {
8736 pin: 57,
8737 limitations: &["jtag"],
8738 },
8739 PinInfo {
8740 pin: 58,
8741 limitations: &["bootloader_uart"],
8742 },
8743 PinInfo {
8744 pin: 59,
8745 limitations: &["bootloader_uart"],
8746 },
8747 PinInfo {
8748 pin: 60,
8749 limitations: &["strapping"],
8750 },
8751 PinInfo {
8752 pin: 61,
8753 limitations: &["strapping"],
8754 },
8755 ],
8756 },
8757 }
8758 }
8759 pub fn all_possible_symbols() -> &'static [&'static str] {
8767 &[
8768 "esp32",
8769 "xtensa",
8770 "multi_core",
8771 "soc_has_aes",
8772 "soc_has_apb_ctrl",
8773 "soc_has_bb",
8774 "soc_has_dport",
8775 "soc_has_system",
8776 "soc_has_efuse",
8777 "soc_has_eth",
8778 "soc_has_emac_dma",
8779 "soc_has_emac_ext",
8780 "soc_has_emac_mac",
8781 "soc_has_flash_encryption",
8782 "soc_has_frc_timer",
8783 "soc_has_gpio",
8784 "soc_has_gpio_sd",
8785 "soc_has_hinf",
8786 "soc_has_i2c0",
8787 "soc_has_i2c1",
8788 "soc_has_i2s0",
8789 "soc_has_i2s1",
8790 "soc_has_io_mux",
8791 "soc_has_ledc",
8792 "soc_has_mcpwm0",
8793 "soc_has_mmu_table",
8794 "soc_has_mcpwm1",
8795 "soc_has_nrx",
8796 "soc_has_pcnt",
8797 "soc_has_rmt",
8798 "soc_has_rng",
8799 "soc_has_rsa",
8800 "soc_has_lpwr",
8801 "soc_has_rtc_timer",
8802 "soc_has_lp_i2c0",
8803 "soc_has_rtc_io",
8804 "soc_has_sdhost",
8805 "soc_has_sens",
8806 "soc_has_sha",
8807 "soc_has_slc",
8808 "soc_has_slchost",
8809 "soc_has_spi0",
8810 "soc_has_spi1",
8811 "soc_has_spi2",
8812 "soc_has_spi3",
8813 "soc_has_timg0",
8814 "soc_has_timg1",
8815 "soc_has_twai0",
8816 "soc_has_uart0",
8817 "soc_has_uart1",
8818 "soc_has_uart2",
8819 "soc_has_uhci0",
8820 "soc_has_uhci1",
8821 "soc_has_wifi",
8822 "soc_has_adc1",
8823 "soc_has_adc2",
8824 "soc_has_bt",
8825 "soc_has_cpu_ctrl",
8826 "soc_has_dac1",
8827 "soc_has_dac2",
8828 "soc_has_flash",
8829 "soc_has_psram",
8830 "soc_has_touch",
8831 "soc_has_from_cpu_intr0",
8832 "soc_has_from_cpu_intr1",
8833 "soc_has_from_cpu_intr2",
8834 "soc_has_from_cpu_intr3",
8835 "gpio_driver_supported",
8836 "io_mux_driver_supported",
8837 "lp_io_driver_supported",
8838 "uart_driver_supported",
8839 "i2c_master_driver_supported",
8840 "spi_master_driver_supported",
8841 "spi_slave_driver_supported",
8842 "i2s_driver_supported",
8843 "rmt_driver_supported",
8844 "sdmmc_driver_supported",
8845 "twai_driver_supported",
8846 "bt_driver_supported",
8847 "wifi_driver_supported",
8848 "ethernet_driver_supported",
8849 "phy_driver_supported",
8850 "rgb_display_driver_supported",
8851 "adc_driver_supported",
8852 "dac_driver_supported",
8853 "temp_sensor_driver_supported",
8854 "touch_driver_supported",
8855 "ledc_driver_supported",
8856 "mcpwm_driver_supported",
8857 "pcnt_driver_supported",
8858 "lp_timer_driver_supported",
8859 "sdm_driver_supported",
8860 "timergroup_driver_supported",
8861 "aes_driver_supported",
8862 "rng_driver_supported",
8863 "rsa_driver_supported",
8864 "sha_driver_supported",
8865 "sleep_driver_supported",
8866 "dma_driver_supported",
8867 "interrupts_driver_supported",
8868 "mmu_driver_supported",
8869 "psram_driver_supported",
8870 "rom_driver_supported",
8871 "soc_driver_supported",
8872 "uart_uart0",
8873 "uart_uart1",
8874 "uart_uart2",
8875 "i2c_master_i2c0",
8876 "i2c_master_i2c1",
8877 "spi_master_spi2",
8878 "spi_master_spi3",
8879 "spi_slave_spi2",
8880 "spi_slave_spi3",
8881 "i2s_i2s0",
8882 "i2s_i2s1",
8883 "adc_adc1",
8884 "adc_adc2",
8885 "dac_dac1",
8886 "dac_dac2",
8887 "timergroup_timg0",
8888 "timergroup_timg1",
8889 "gpio_remap_iomux_pin_registers",
8890 "soc_has_xtal32k_pads",
8891 "gpio_has_bank_1",
8892 "i2c_master_separate_filter_config_registers",
8893 "i2c_master_i2c0_data_register_ahb_address_is_set",
8894 "spi_master_bit_order_is_bool",
8895 "i2s_version_is_set",
8896 "i2s_default_clock_source_is_set",
8897 "i2s_mclk_divider_bit_width_is_set",
8898 "i2s_max_ws_width_is_set",
8899 "i2s_supports_pdm_tx",
8900 "i2s_supports_pdm_rx",
8901 "i2s_supports_pcm2pdm",
8902 "i2s_supports_pdm2pcm",
8903 "rmt_has_per_channel_clock",
8904 "sdmmc_has_iomux",
8905 "wifi_csi_supported",
8906 "phy_combo_module",
8907 "soc_has_sdm_ch0",
8908 "soc_has_sdm_ch1",
8909 "soc_has_sdm_ch2",
8910 "soc_has_sdm_ch3",
8911 "soc_has_sdm_ch4",
8912 "soc_has_sdm_ch5",
8913 "soc_has_sdm_ch6",
8914 "soc_has_sdm_ch7",
8915 "timergroup_timg_has_timer1",
8916 "timergroup_rc_fast_calibration_is_set",
8917 "aes_endianness_configurable",
8918 "rng_trng_supported",
8919 "sleep_light_sleep",
8920 "sleep_deep_sleep",
8921 "sleep_has_wakeup_source_ext0",
8922 "sleep_has_wakeup_source_ext1",
8923 "sleep_has_wakeup_source_gpio",
8924 "sleep_has_wakeup_source_timer",
8925 "sleep_has_wakeup_source_sdio",
8926 "sleep_has_wakeup_source_wifi",
8927 "sleep_has_wakeup_source_uart",
8928 "sleep_has_wakeup_source_touch",
8929 "sleep_has_wakeup_source_ulp",
8930 "sleep_has_wakeup_source_bt",
8931 "sleep_ext1_version_is_set",
8932 "sleep_pin_wakeup_version_is_set",
8933 "sleep_deep_sleep_needs_gpio_isolation",
8934 "soc_has_dma_spi2",
8935 "soc_has_dma_spi3",
8936 "soc_has_dma_i2s0",
8937 "soc_has_dma_i2s1",
8938 "spi_master_supports_dma",
8939 "spi_slave_supports_dma",
8940 "i2s_supports_dma",
8941 "rom_has_crc_le",
8942 "rom_has_crc_be",
8943 "rom_has_md5_bsd",
8944 "soc_multi_core_enabled",
8945 "soc_has_clock_node_xtal_clk",
8946 "soc_clock_node_xtal_clk_is_configurable",
8947 "soc_has_clock_node_pll_clk",
8948 "soc_clock_node_pll_clk_is_configurable",
8949 "soc_has_clock_node_apll_clk",
8950 "soc_clock_node_apll_clk_is_configurable",
8951 "soc_has_clock_node_rc_fast_clk",
8952 "soc_has_clock_node_pll_f160m_clk",
8953 "soc_has_clock_node_cpu_pll_div_in",
8954 "soc_clock_node_cpu_pll_div_in_is_configurable",
8955 "soc_has_clock_node_cpu_pll_div",
8956 "soc_clock_node_cpu_pll_div_is_configurable",
8957 "soc_has_clock_node_syscon_pre_div_in",
8958 "soc_clock_node_syscon_pre_div_in_is_configurable",
8959 "soc_has_clock_node_syscon_pre_div",
8960 "soc_clock_node_syscon_pre_div_is_configurable",
8961 "soc_has_clock_node_cpu_clk",
8962 "soc_clock_node_cpu_clk_is_configurable",
8963 "soc_has_clock_node_apb_clk_cpu_div2",
8964 "soc_has_clock_node_apb_clk_80m",
8965 "soc_has_clock_node_apb_clk",
8966 "soc_clock_node_apb_clk_is_configurable",
8967 "soc_has_clock_node_ref_tick_pll",
8968 "soc_clock_node_ref_tick_pll_is_configurable",
8969 "soc_has_clock_node_ref_tick_apll",
8970 "soc_clock_node_ref_tick_apll_is_configurable",
8971 "soc_has_clock_node_ref_tick_xtal",
8972 "soc_clock_node_ref_tick_xtal_is_configurable",
8973 "soc_has_clock_node_ref_tick_fosc",
8974 "soc_clock_node_ref_tick_fosc_is_configurable",
8975 "soc_has_clock_node_ref_tick",
8976 "soc_clock_node_ref_tick_is_configurable",
8977 "soc_has_clock_node_xtal32k_clk",
8978 "soc_has_clock_node_rc_slow_clk",
8979 "soc_has_clock_node_rc_fast_div_clk",
8980 "soc_has_clock_node_xtal_div_clk",
8981 "soc_has_clock_node_rtc_slow_clk",
8982 "soc_clock_node_rtc_slow_clk_is_configurable",
8983 "soc_has_clock_node_rtc_fast_clk",
8984 "soc_clock_node_rtc_fast_clk_is_configurable",
8985 "soc_has_clock_node_uart_mem_clk",
8986 "soc_has_clock_node_timg_calibration_clock",
8987 "soc_clock_node_timg_calibration_clock_is_configurable",
8988 "soc_has_clock_node_mcpwm_function_clock",
8989 "soc_has_clock_node_i2c_function_clock",
8990 "soc_clock_node_i2c_function_clock_is_configurable",
8991 "soc_has_clock_node_uart_function_clock",
8992 "soc_clock_node_uart_function_clock_is_configurable",
8993 "soc_has_clock_node_uart_mem_clock",
8994 "soc_has_clock_node_uart_baud_rate_generator",
8995 "soc_clock_node_uart_baud_rate_generator_is_configurable",
8996 "soc_has_clock_node_sdm_function_clock",
8997 "soc_has_clock_node_rmt_sclk",
8998 "soc_clock_node_rmt_sclk_is_configurable",
8999 "soc_has_clock_node_spi_function_clock",
9000 "has_dram_region",
9001 "has_dram2_uninit_region",
9002 "has_irom_region",
9003 "has_drom_region",
9004 "esp32c2",
9005 "riscv",
9006 "single_core",
9007 "soc_has_apb_saradc",
9008 "soc_has_assist_debug",
9009 "soc_has_dma",
9010 "soc_has_ecc",
9011 "soc_has_extmem",
9012 "soc_has_i2c_ana_mst",
9013 "soc_has_interrupt_core0",
9014 "soc_has_modem_clkrst",
9015 "soc_has_sensitive",
9016 "soc_has_systimer",
9017 "soc_has_xts_aes",
9018 "soc_has_gpio_dedicated",
9019 "dedicated_gpio_driver_supported",
9020 "systimer_driver_supported",
9021 "ecc_driver_supported",
9022 "assist_debug_driver_supported",
9023 "gpio_has_input_sync",
9024 "uart_has_sclk_divider",
9025 "uart_has_sclk_enable",
9026 "i2c_master_has_fsm_timeouts",
9027 "i2c_master_has_hw_bus_clear",
9028 "i2c_master_has_bus_timeout_enable",
9029 "i2c_master_has_conf_update",
9030 "i2c_master_has_arbitration_en",
9031 "i2c_master_has_tx_fifo_watermark",
9032 "i2c_master_bus_timeout_is_exponential",
9033 "i2c_master_has_pd_en",
9034 "spi_master_has_app_interrupts",
9035 "spi_master_has_dma_segmented_transfer",
9036 "timergroup_timg_has_divcnt_rst",
9037 "ecc_zero_extend_writes",
9038 "ecc_has_finite_field_division",
9039 "ecc_has_curve_p192",
9040 "ecc_has_curve_p256",
9041 "assist_debug_has_sp_monitor",
9042 "dma_gdma_version_is_set",
9043 "soc_has_dma_ch0",
9044 "dma_supports_mem2mem",
9045 "sha_supports_dma",
9046 "dma_max_priority_is_set",
9047 "rom_has_md5_mbedtls",
9048 "soc_cpu_has_csr_pc",
9049 "soc_has_swd_watchdog",
9050 "soc_has_clock_node_osc_slow_clk",
9051 "soc_has_clock_node_system_pre_div_in",
9052 "soc_clock_node_system_pre_div_in_is_configurable",
9053 "soc_has_clock_node_system_pre_div",
9054 "soc_clock_node_system_pre_div_is_configurable",
9055 "soc_has_clock_node_pll_40m",
9056 "soc_has_clock_node_pll_60m",
9057 "soc_has_clock_node_pll_80m",
9058 "soc_has_clock_node_cpu_div2",
9059 "soc_has_clock_node_crypto_clk",
9060 "soc_clock_node_crypto_clk_is_configurable",
9061 "soc_has_clock_node_mspi_clk",
9062 "soc_clock_node_mspi_clk_is_configurable",
9063 "soc_has_clock_node_rc_fast_clk_div_n",
9064 "soc_clock_node_rc_fast_clk_div_n_is_configurable",
9065 "soc_has_clock_node_low_power_clk",
9066 "soc_clock_node_low_power_clk_is_configurable",
9067 "soc_has_clock_node_timg_function_clock",
9068 "soc_clock_node_timg_function_clock_is_configurable",
9069 "soc_has_clock_node_timg_wdt_clock",
9070 "soc_clock_node_timg_wdt_clock_is_configurable",
9071 "soc_clock_node_spi_function_clock_is_configurable",
9072 "esp32c3",
9073 "soc_has_ds",
9074 "soc_has_fe",
9075 "soc_has_fe2",
9076 "soc_has_hmac",
9077 "soc_has_usb_device",
9078 "soc_has_tsens",
9079 "uhci_driver_supported",
9080 "i2c_slave_driver_supported",
9081 "usb_serial_jtag_driver_supported",
9082 "hmac_driver_supported",
9083 "i2c_slave_i2c0",
9084 "rmt_has_tx_immediate_stop",
9085 "rmt_has_tx_loop_count",
9086 "rmt_has_tx_carrier_data_only",
9087 "rmt_has_tx_sync",
9088 "rmt_has_rx_wrap",
9089 "rmt_has_rx_demodulation",
9090 "phy_backed_up_digital_register_count_is_set",
9091 "aes_dma_mode_ecb",
9092 "aes_dma_mode_cbc",
9093 "aes_dma_mode_ofb",
9094 "aes_dma_mode_ctr",
9095 "aes_dma_mode_cfb8",
9096 "aes_dma_mode_cfb128",
9097 "aes_has_split_text_registers",
9098 "assist_debug_has_region_monitor",
9099 "dma_mem2mem_requires_peripheral",
9100 "soc_has_dma_ch1",
9101 "soc_has_dma_ch2",
9102 "aes_supports_dma",
9103 "uhci_supports_dma",
9104 "soc_has_clock_node_cpu_pll_div_out",
9105 "soc_clock_node_cpu_pll_div_out_is_configurable",
9106 "soc_has_clock_node_pll_160m",
9107 "esp32c5",
9108 "soc_has_cache",
9109 "soc_has_clint",
9110 "soc_has_ecdsa",
9111 "soc_has_etm",
9112 "soc_has_hp_apm",
9113 "soc_has_hp_sys",
9114 "soc_has_huk",
9115 "soc_has_ieee802154",
9116 "soc_has_intpri",
9117 "soc_has_keymng",
9118 "soc_has_lp_ana",
9119 "soc_has_lp_aon",
9120 "soc_has_lp_apm0",
9121 "soc_has_lp_clkrst",
9122 "soc_has_lp_gpio",
9123 "soc_has_lp_i2c_ana_mst",
9124 "soc_has_lp_io_mux",
9125 "soc_has_lp_peri",
9126 "soc_has_lp_tee",
9127 "soc_has_lp_uart",
9128 "soc_has_lp_wdt",
9129 "soc_has_mem_monitor",
9130 "soc_has_modem_lpcon",
9131 "soc_has_modem_syscon",
9132 "soc_has_parl_io",
9133 "soc_has_pau",
9134 "soc_has_pcr",
9135 "soc_has_pmu",
9136 "soc_has_pvt_monitor",
9137 "soc_has_tee",
9138 "soc_has_lp_core",
9139 "lp_i2c_master_driver_supported",
9140 "parl_io_driver_supported",
9141 "ieee802154_driver_supported",
9142 "uart_peripheral_controls_mem_clk",
9143 "uhci_combined_uart_selector_field",
9144 "i2c_master_can_estimate_nack_reason",
9145 "i2c_master_has_reliable_fsm_reset",
9146 "lp_i2c_master_fifo_size_is_set",
9147 "spi_master_has_clk_pre_div",
9148 "spi_master_dma_can_access_flash",
9149 "i2s_clock_configured_by_pcr",
9150 "rmt_has_tx_loop_auto_stop",
9151 "wifi_has_5g",
9152 "timergroup_rc_fast_calibration_divider",
9153 "ecc_separate_jacobian_point_memory",
9154 "ecc_has_memory_clock_gate",
9155 "ecc_supports_enhanced_security",
9156 "ecc_has_modular_arithmetic",
9157 "ecc_has_point_addition",
9158 "ecc_has_curve_p384",
9159 "rng_is_lp_sys",
9160 "sleep_has_wakeup_source_wifi_beacon",
9161 "sleep_has_wakeup_source_lp_core",
9162 "dma_separate_in_out_interrupts",
9163 "parl_io_supports_dma",
9164 "dma_can_access_psram",
9165 "soc_cpu_has_branch_predictor",
9166 "soc_cpu_csr_prv_mode_is_set",
9167 "soc_has_clock_node_pll_f12m",
9168 "soc_has_clock_node_pll_f20m",
9169 "soc_has_clock_node_pll_f40m",
9170 "soc_has_clock_node_pll_f48m",
9171 "soc_has_clock_node_pll_f60m",
9172 "soc_has_clock_node_pll_f80m",
9173 "soc_has_clock_node_pll_f120m",
9174 "soc_has_clock_node_pll_f160m",
9175 "soc_has_clock_node_pll_f240m",
9176 "soc_has_clock_node_hp_root_clk",
9177 "soc_clock_node_hp_root_clk_is_configurable",
9178 "soc_has_clock_node_ahb_clk",
9179 "soc_clock_node_ahb_clk_is_configurable",
9180 "soc_has_clock_node_xtal_d2_clk",
9181 "soc_has_clock_node_lp_fast_clk",
9182 "soc_clock_node_lp_fast_clk_is_configurable",
9183 "soc_has_clock_node_lp_slow_clk",
9184 "soc_clock_node_lp_slow_clk_is_configurable",
9185 "soc_has_clock_node_iomux_function_clock",
9186 "soc_clock_node_iomux_function_clock_is_configurable",
9187 "soc_has_clock_node_parl_io_rx_clock",
9188 "soc_clock_node_parl_io_rx_clock_is_configurable",
9189 "soc_has_clock_node_parl_io_tx_clock",
9190 "soc_clock_node_parl_io_tx_clock_is_configurable",
9191 "esp32c6",
9192 "soc_has_atomic",
9193 "soc_has_lp_apm",
9194 "soc_has_lp_io",
9195 "soc_has_otp_debug",
9196 "soc_has_plic_mx",
9197 "soc_has_trace0",
9198 "soc_has_twai1",
9199 "lp_uart_driver_supported",
9200 "ulp_riscv_driver_supported",
9201 "etm_driver_supported",
9202 "wifi_has_wifi6",
9203 "soc_has_clock_node_soc_root_clk",
9204 "soc_clock_node_soc_root_clk_is_configurable",
9205 "soc_has_clock_node_cpu_hs_div",
9206 "soc_clock_node_cpu_hs_div_is_configurable",
9207 "soc_has_clock_node_cpu_ls_div",
9208 "soc_clock_node_cpu_ls_div_is_configurable",
9209 "soc_has_clock_node_ahb_hs_div",
9210 "soc_clock_node_ahb_hs_div_is_configurable",
9211 "soc_has_clock_node_ahb_ls_div",
9212 "soc_clock_node_ahb_ls_div_is_configurable",
9213 "soc_has_clock_node_mspi_fast_hs_clk",
9214 "soc_clock_node_mspi_fast_hs_clk_is_configurable",
9215 "soc_has_clock_node_mspi_fast_ls_clk",
9216 "soc_clock_node_mspi_fast_ls_clk_is_configurable",
9217 "soc_has_clock_node_mspi_fast_clk",
9218 "soc_clock_node_mspi_fast_clk_is_configurable",
9219 "soc_has_clock_node_ledc_sclk",
9220 "soc_clock_node_ledc_sclk_is_configurable",
9221 "soc_clock_node_mcpwm_function_clock_is_configurable",
9222 "esp32c61",
9223 "esp32h2",
9224 "timergroup_rc_fast_calibration_tick_enable",
9225 "soc_has_clock_node_pll_f96m_clk",
9226 "soc_has_clock_node_pll_f64m_clk",
9227 "soc_has_clock_node_pll_f48m_clk",
9228 "soc_has_clock_node_pll_lp_clk",
9229 "esp32p4",
9230 "soc_has_hp_sys_clkrst",
9231 "soc_has_interrupt_core1",
9232 "soc_has_clic",
9233 "soc_has_iomux_mspi_pin",
9234 "soc_has_lp_aon_clkrst",
9235 "soc_has_lp_sys",
9236 "soc_has_uart3",
9237 "soc_has_uart4",
9238 "soc_has_memspi2",
9239 "soc_has_memspi3",
9240 "soc_has_i2s2",
9241 "soc_has_twai2",
9242 "soc_has_axi_gdma",
9243 "soc_has_mipi_dsi",
9244 "soc_has_vdma",
9245 "soc_has_mipi_dsi_host",
9246 "soc_has_mipi_dsi_bridge",
9247 "soc_has_lp_adc",
9248 "soc_has_usb_fs",
9249 "soc_has_usb_hs",
9250 "soc_has_usb_wrap",
9251 "usb_otg_driver_supported",
9252 "usb_otg_hs_driver_supported",
9253 "mipi_dsi_driver_supported",
9254 "uart_uart3",
9255 "uart_uart4",
9256 "i2s_i2s2",
9257 "lp_io_has_gpio_matrix",
9258 "i2s_clock_configured_by_hp_sys_clkrst",
9259 "i2s_supports_pdm_rx_hp_filter",
9260 "sdmmc_delay_phase_num_is_set",
9261 "sdmmc_has_gpio_matrix",
9262 "sdmmc_psram_dma",
9263 "ethernet_mii_via_gpio_matrix",
9264 "aes_dma_mode_gcm",
9265 "sleep_has_wakeup_source_usb",
9266 "soc_has_dma_axi_ch0",
9267 "soc_has_dma_axi_ch1",
9268 "soc_has_dma_axi_ch2",
9269 "soc_has_vdma_ch0",
9270 "soc_has_vdma_ch1",
9271 "soc_has_vdma_ch2",
9272 "soc_has_vdma_ch3",
9273 "mipi_dsi_supports_dma",
9274 "psram_octal_spi",
9275 "psram_hex_spi",
9276 "soc_internal_memory_cached",
9277 "soc_has_clock_node_cpll_clk",
9278 "soc_clock_node_cpll_clk_is_configurable",
9279 "soc_has_clock_node_spll_clk",
9280 "soc_has_clock_node_mpll_clk",
9281 "soc_clock_node_mpll_clk_is_configurable",
9282 "soc_has_clock_node_rc32k_clk",
9283 "soc_has_clock_node_pll_f25m",
9284 "soc_has_clock_node_pll_f50m",
9285 "soc_has_clock_node_cpu_root_clk",
9286 "soc_clock_node_cpu_root_clk_is_configurable",
9287 "soc_has_clock_node_mem_clk",
9288 "soc_clock_node_mem_clk_is_configurable",
9289 "soc_has_clock_node_sys_clk",
9290 "soc_clock_node_sys_clk_is_configurable",
9291 "soc_has_clock_node_psram_function_clock",
9292 "soc_clock_node_psram_function_clock_is_configurable",
9293 "soc_has_clock_node_mipi_dsi_dpi_clk",
9294 "soc_clock_node_mipi_dsi_dpi_clk_is_configurable",
9295 "soc_has_clock_node_mipi_dsi_phy_pll_refclk",
9296 "soc_clock_node_mipi_dsi_phy_pll_refclk_is_configurable",
9297 "soc_has_clock_node_mipi_dsi_phy_cfg_clk",
9298 "soc_clock_node_mipi_dsi_phy_cfg_clk_is_configurable",
9299 "esp32s2",
9300 "soc_has_pms",
9301 "soc_has_syscon",
9302 "soc_has_ulp_riscv_core",
9303 "dedicated_gpio_needs_initialization",
9304 "spi_master_has_octal",
9305 "sleep_has_wakeup_source_ulp_riscv",
9306 "sleep_has_wakeup_source_ulp_riscv_trap",
9307 "dma_ext_mem_configurable_block_size",
9308 "soc_has_dma_crypto",
9309 "soc_has_dma_copy",
9310 "soc_has_clock_node_ref_tick_ck8m",
9311 "soc_clock_node_ref_tick_ck8m_is_configurable",
9312 "esp32s3",
9313 "soc_has_lcd_cam",
9314 "soc_has_peri_backup",
9315 "soc_has_rtc_cntl",
9316 "soc_has_wcl",
9317 "camera_driver_supported",
9318 "soc_has_dma_ch3",
9319 "soc_has_dma_ch4",
9320 "rmt_supports_dma",
9321 "lcd_cam_supports_dma",
9322 "soc_has_clock_node_pll_d2",
9323 "soc_has_clock_node_apb_80m",
9324 "soc_has_clock_node_crypto_pwm_clk",
9325 "soc_clock_node_crypto_pwm_clk_is_configurable",
9326 "soc_has_clock_node_lcd_cam_lcd_clock",
9327 "soc_clock_node_lcd_cam_lcd_clock_is_configurable",
9328 "soc_has_clock_node_lcd_cam_cam_clock",
9329 "soc_clock_node_lcd_cam_cam_clock_is_configurable",
9330 "esp32s31",
9331 "soc_has_cnnt_sys",
9332 "soc_has_cnnt_io_mux",
9333 "soc_has_hp_mem_apm",
9334 "soc_has_hp_alive_sys",
9335 "soc_has_lp_aon_clk_rst",
9336 "soc_has_clock_node_bbpll_clk",
9337 "gpio_version, values(\"1\",\"2\",\"3\")",
9338 "gpio_gpio_function, values(\"2\",\"1\")",
9339 "gpio_constant_0_input, values(\"48\",\"31\",\"96\",\"60\",\"62\",\"192\")",
9340 "gpio_constant_1_input, values(\"56\",\"30\",\"64\",\"63\",\"128\")",
9341 "gpio_func_in_sel_offset, values(\"0\",\"1\")",
9342 "gpio_input_signal_max, \
9343 values(\"206\",\"100\",\"116\",\"124\",\"249\",\"242\",\"255\")",
9344 "gpio_output_signal_max, values(\"256\",\"128\")",
9345 "lp_io_version, values(\"esp32\",\"v3\",\"v4\",\"esp32h2\",\"esp32p4\",\"v2\")",
9346 "uart_ram_size, values(\"128\")",
9347 "uart_version, values(\"1\",\"2\")",
9348 "i2c_master_version, values(\"1\",\"3\",\"4\",\"2\")",
9349 "i2c_master_i2c0_data_register_ahb_address, values(\"1610690588\")",
9350 "i2c_master_max_bus_timeout, values(\"1048575\",\"31\",\"16777215\")",
9351 "i2c_master_ll_intr_mask, values(\"262143\",\"131071\")",
9352 "i2c_master_fifo_size, values(\"32\",\"16\")",
9353 "spi_master_version, values(\"1\",\"3\",\"2\")",
9354 "spi_master_fifo_size, values(\"64\",\"72\")",
9355 "i2s_version, values(\"1\",\"2\",\"3\")",
9356 "i2s_default_clock_source, values(\"2\",\"1\",\"3\")",
9357 "i2s_mclk_divider_bit_width, values(\"6\",\"9\")",
9358 "i2s_max_ws_width, values(\"128\",\"512\")",
9359 "rmt_ram_start, \
9360 values(\"1073047552\",\"1610703872\",\"1610638336\",\"1610642432\",\"1342842880\",\"\
9361 1061250048\",\"1610704896\",\"540366848\")",
9362 "rmt_channel_ram_size, values(\"64\",\"48\")",
9363 "bt_controller, values(\"btdm\",\"npl\")",
9364 "wifi_mac_version, values(\"1\",\"3\",\"2\")",
9365 "ledc_version, values(\"1\",\"2\",\"3\")",
9366 "ledc_channel_count, values(\"8\",\"6\")",
9367 "rng_apb_cycle_wait_num, values(\"16\")",
9368 "rsa_version, values(\"1\",\"3\",\"2\")",
9369 "rsa_size_increment, values(\"512\",\"32\")",
9370 "rsa_memory_size_bytes, values(\"512\",\"384\")",
9371 "sleep_ext1_version, values(\"1\",\"2\",\"3\")",
9372 "sleep_pin_wakeup_version, values(\"1\",\"2\",\"3\")",
9373 "spi_master_dma_engine, values(\"SPI_DMA\",\"AHB_GDMA\",\"AXI_GDMA\")",
9374 "spi_slave_dma_engine, values(\"SPI_DMA\",\"AHB_GDMA\",\"AXI_GDMA\")",
9375 "i2s_dma_engine, values(\"I2S_DMA\",\"AHB_GDMA\")",
9376 "interrupts_status_registers, values(\"3\",\"2\",\"5\",\"4\",\"6\")",
9377 "interrupt_controller, values(\"xtensa\",\"riscv_basic\",\"clic\",\"plic\")",
9378 "mmu_page_size, values(\"65536\")",
9379 "mmu_entry_num, values(\"256\",\"64\",\"128\",\"512\",\"384\",\"1024\")",
9380 "psram_extmem_origin, \
9381 values(\"1065353216\",\"1107296256\",\"1207959552\",\"1062207488\",\"1006632960\",\"\
9382 1342177280\")",
9383 "soc_cpu_mcause_mask, values(\"0\",\"31\",\"63\")",
9384 "dedicated_gpio_version, values(\"riscv_v1\",\"riscv_v2\",\"esp32s2\",\"esp32s3\")",
9385 "dma_gdma_version, values(\"1\",\"2\",\"3\")",
9386 "sha_dma_engine, values(\"AHB_GDMA\",\"AXI_GDMA\",\"CRYPTO_DMA\")",
9387 "dma_max_priority, values(\"9\",\"5\",\"15\")",
9388 "phy_backed_up_digital_register_count, values(\"21\")",
9389 "aes_dma_engine, values(\"AHB_GDMA\",\"AXI_GDMA\",\"CRYPTO_DMA\")",
9390 "uhci_dma_engine, values(\"AHB_GDMA\")",
9391 "lp_i2c_master_version, values(\"lp_i2c\",\"rtc_i2c\")",
9392 "lp_i2c_master_fifo_size, values(\"16\")",
9393 "parl_io_version, values(\"2\",\"1\")",
9394 "parl_io_dma_engine, values(\"AHB_GDMA\")",
9395 "soc_cpu_csr_prv_mode, values(\"2064\",\"3088\")",
9396 "lp_uart_ram_size, values(\"32\")",
9397 "sdmmc_delay_phase_num, values(\"8\",\"4\")",
9398 "usb_otg_fifo_depth_words, values(\"200\",\"256\")",
9399 "usb_otg_hs_fifo_depth_words, values(\"896\")",
9400 "mipi_dsi_dma_engine, values(\"VDMA\")",
9401 "rmt_dma_engine, values(\"AHB_GDMA\")",
9402 "lcd_cam_dma_engine, values(\"AHB_GDMA\")",
9403 ]
9404 }
9405}
9406pub struct MemoryRegion {
9408 address_range: Range<u32>,
9409}
9410impl MemoryRegion {
9411 pub fn range(&self) -> Range<u32> {
9413 self.address_range.clone()
9414 }
9415 pub fn size(&self) -> u32 {
9417 self.address_range.end - self.address_range.start
9418 }
9419}
9420pub struct MemoryLayout {
9422 regions: &'static [(&'static str, MemoryRegion)],
9423}
9424impl MemoryLayout {
9425 pub fn region(&self, name: &str) -> Option<&'static MemoryRegion> {
9427 self.regions
9428 .iter()
9429 .find_map(|(n, r)| if *n == name { Some(r) } else { None })
9430 }
9431}
9432#[non_exhaustive]
9434pub struct PinInfo {
9435 pub pin: usize,
9437 pub limitations: &'static [&'static str],
9441}
9442struct Config {
9443 architecture: &'static str,
9444 target: &'static str,
9445 symbols: &'static [&'static str],
9446 cfgs: &'static [&'static str],
9447 memory_layout: &'static MemoryLayout,
9448 pins: &'static [PinInfo],
9449}
9450impl Config {
9451 fn define_cfgs(&self) {
9452 emit_check_cfg_directives();
9453 for cfg in self.cfgs {
9454 println!("{cfg}");
9455 }
9456 }
9457}
9458pub fn emit_check_cfg_directives() {
9460 println!("cargo:rustc-check-cfg=cfg(not_really_docsrs)");
9461 println!("cargo:rustc-check-cfg=cfg(semver_checks)");
9462 for cfg in Chip::all_possible_symbols() {
9463 println!("cargo:rustc-check-cfg=cfg({cfg})");
9464 }
9465}