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 Esp32s2,
47 Esp32s3,
48}
49impl core::str::FromStr for Chip {
50 type Err = alloc::string::String;
51 fn from_str(s: &str) -> Result<Self, Self::Err> {
52 match s {
53 "esp32" => Ok(Self::Esp32),
54 "esp32c2" => Ok(Self::Esp32c2),
55 "esp32c3" => Ok(Self::Esp32c3),
56 "esp32c5" => Ok(Self::Esp32c5),
57 "esp32c6" => Ok(Self::Esp32c6),
58 "esp32c61" => Ok(Self::Esp32c61),
59 "esp32h2" => Ok(Self::Esp32h2),
60 "esp32s2" => Ok(Self::Esp32s2),
61 "esp32s3" => Ok(Self::Esp32s3),
62 _ => Err(alloc::format!(
63 "Unknown chip {s}. Possible options: esp32, esp32c2, esp32c3, esp32c5, esp32c6, \
64 esp32c61, esp32h2, esp32s2, esp32s3"
65 )),
66 }
67 }
68}
69impl Chip {
70 pub fn from_cargo_feature() -> Result<Self, &'static str> {
74 let all_chips = [
75 ("CARGO_FEATURE_ESP32", Self::Esp32),
76 ("CARGO_FEATURE_ESP32C2", Self::Esp32c2),
77 ("CARGO_FEATURE_ESP32C3", Self::Esp32c3),
78 ("CARGO_FEATURE_ESP32C5", Self::Esp32c5),
79 ("CARGO_FEATURE_ESP32C6", Self::Esp32c6),
80 ("CARGO_FEATURE_ESP32C61", Self::Esp32c61),
81 ("CARGO_FEATURE_ESP32H2", Self::Esp32h2),
82 ("CARGO_FEATURE_ESP32S2", Self::Esp32s2),
83 ("CARGO_FEATURE_ESP32S3", Self::Esp32s3),
84 ];
85 let mut chip = None;
86 for (env, c) in all_chips {
87 if std::env::var(env).is_ok() {
88 if chip.is_some() {
89 return Err(
90 "Expected exactly one of the following features to be enabled: esp32, \
91 esp32c2, esp32c3, esp32c5, esp32c6, esp32c61, esp32h2, esp32s2, esp32s3",
92 );
93 }
94 chip = Some(c);
95 }
96 }
97 match chip {
98 Some(chip) => Ok(chip),
99 None => Err(
100 "Expected exactly one of the following features to be enabled: esp32, esp32c2, \
101 esp32c3, esp32c5, esp32c6, esp32c61, esp32h2, esp32s2, esp32s3",
102 ),
103 }
104 }
105 pub fn is_xtensa(self) -> bool {
107 self.config().architecture == "xtensa"
108 }
109 pub fn target(self) -> &'static str {
111 self.config().target
112 }
113 pub fn name(self) -> &'static str {
121 match self {
122 Self::Esp32 => "esp32",
123 Self::Esp32c2 => "esp32c2",
124 Self::Esp32c3 => "esp32c3",
125 Self::Esp32c5 => "esp32c5",
126 Self::Esp32c6 => "esp32c6",
127 Self::Esp32c61 => "esp32c61",
128 Self::Esp32h2 => "esp32h2",
129 Self::Esp32s2 => "esp32s2",
130 Self::Esp32s3 => "esp32s3",
131 }
132 }
133 pub fn contains(self, symbol: &str) -> bool {
143 self.all_symbols().contains(&symbol)
144 }
145 pub fn define_cfgs(self) {
147 self.config().define_cfgs()
148 }
149 pub fn all_symbols(&self) -> &'static [&'static str] {
157 self.config().symbols
158 }
159 pub fn memory_layout(&self) -> &'static MemoryLayout {
161 self.config().memory_layout
162 }
163 pub fn pins(&self) -> &'static [PinInfo] {
165 self.config().pins
166 }
167 pub fn iter() -> impl Iterator<Item = Chip> {
175 [
176 Self::Esp32,
177 Self::Esp32c2,
178 Self::Esp32c3,
179 Self::Esp32c5,
180 Self::Esp32c6,
181 Self::Esp32c61,
182 Self::Esp32h2,
183 Self::Esp32s2,
184 Self::Esp32s3,
185 ]
186 .into_iter()
187 }
188 fn config(self) -> Config {
189 match self {
190 Self::Esp32 => Config {
191 architecture: "xtensa",
192 target: "xtensa-esp32-none-elf",
193 symbols: &[
194 "esp32",
195 "xtensa",
196 "multi_core",
197 "soc_has_aes",
198 "soc_has_apb_ctrl",
199 "soc_has_bb",
200 "soc_has_dport",
201 "soc_has_system",
202 "soc_has_efuse",
203 "soc_has_emac_dma",
204 "soc_has_emac_ext",
205 "soc_has_emac_mac",
206 "soc_has_flash_encryption",
207 "soc_has_frc_timer",
208 "soc_has_gpio",
209 "soc_has_gpio_sd",
210 "soc_has_hinf",
211 "soc_has_i2c0",
212 "soc_has_i2c1",
213 "soc_has_i2s0",
214 "soc_has_i2s1",
215 "soc_has_io_mux",
216 "soc_has_ledc",
217 "soc_has_mcpwm0",
218 "soc_has_mcpwm1",
219 "soc_has_nrx",
220 "soc_has_pcnt",
221 "soc_has_rmt",
222 "soc_has_rng",
223 "soc_has_rsa",
224 "soc_has_lpwr",
225 "soc_has_rtc_i2c",
226 "soc_has_rtc_io",
227 "soc_has_sdhost",
228 "soc_has_sens",
229 "soc_has_sha",
230 "soc_has_slc",
231 "soc_has_slchost",
232 "soc_has_spi0",
233 "soc_has_spi1",
234 "soc_has_spi2",
235 "soc_has_spi3",
236 "soc_has_timg0",
237 "soc_has_timg1",
238 "soc_has_twai0",
239 "soc_has_uart0",
240 "soc_has_uart1",
241 "soc_has_uart2",
242 "soc_has_uhci0",
243 "soc_has_uhci1",
244 "soc_has_wifi",
245 "soc_has_dma_spi2",
246 "soc_has_dma_spi3",
247 "soc_has_dma_i2s0",
248 "soc_has_dma_i2s1",
249 "soc_has_adc1",
250 "soc_has_adc2",
251 "soc_has_bt",
252 "soc_has_cpu_ctrl",
253 "soc_has_dac1",
254 "soc_has_dac2",
255 "soc_has_flash",
256 "soc_has_psram",
257 "soc_has_sw_interrupt",
258 "soc_has_touch",
259 "phy",
260 "touch",
261 "rom_crc_le",
262 "rom_crc_be",
263 "rom_md5_bsd",
264 "pm_support_ext0_wakeup",
265 "pm_support_ext1_wakeup",
266 "pm_support_touch_sensor_wakeup",
267 "ulp_supported",
268 "adc_driver_supported",
269 "aes_driver_supported",
270 "bt_driver_supported",
271 "dac_driver_supported",
272 "dma_driver_supported",
273 "gpio_driver_supported",
274 "i2c_master_driver_supported",
275 "i2s_driver_supported",
276 "interrupts_driver_supported",
277 "io_mux_driver_supported",
278 "ledc_driver_supported",
279 "mcpwm_driver_supported",
280 "pcnt_driver_supported",
281 "phy_driver_supported",
282 "psram_driver_supported",
283 "rgb_display_driver_supported",
284 "rmt_driver_supported",
285 "rng_driver_supported",
286 "rsa_driver_supported",
287 "lp_timer_driver_supported",
288 "sd_host_driver_supported",
289 "sd_slave_driver_supported",
290 "sha_driver_supported",
291 "sleep_driver_supported",
292 "soc_driver_supported",
293 "spi_master_driver_supported",
294 "spi_slave_driver_supported",
295 "temp_sensor_driver_supported",
296 "timergroup_driver_supported",
297 "touch_driver_supported",
298 "twai_driver_supported",
299 "uart_driver_supported",
300 "ulp_fsm_driver_supported",
301 "wifi_driver_supported",
302 "adc_adc1",
303 "adc_adc2",
304 "dac_dac1",
305 "dac_dac2",
306 "i2c_master_i2c0",
307 "i2c_master_i2c1",
308 "spi_master_spi2",
309 "spi_master_spi3",
310 "spi_slave_spi2",
311 "spi_slave_spi3",
312 "timergroup_timg0",
313 "timergroup_timg1",
314 "uart_uart0",
315 "uart_uart1",
316 "uart_uart2",
317 "aes_endianness_configurable",
318 "bt_controller=\"btdm\"",
319 "dma_kind=\"pdma\"",
320 "gpio_has_bank_1",
321 "gpio_gpio_function=\"2\"",
322 "gpio_constant_0_input=\"48\"",
323 "gpio_constant_1_input=\"56\"",
324 "gpio_remap_iomux_pin_registers",
325 "gpio_func_in_sel_offset=\"0\"",
326 "gpio_input_signal_max=\"206\"",
327 "gpio_output_signal_max=\"256\"",
328 "i2c_master_separate_filter_config_registers",
329 "i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
330 "i2c_master_i2c0_data_register_ahb_address_is_set",
331 "i2c_master_max_bus_timeout=\"1048575\"",
332 "i2c_master_ll_intr_mask=\"262143\"",
333 "i2c_master_fifo_size=\"32\"",
334 "interrupts_status_registers=\"3\"",
335 "interrupt_controller=\"xtensa\"",
336 "phy_combo_module",
337 "psram_extmem_origin=\"1065353216\"",
338 "rmt_ram_start=\"1073047552\"",
339 "rmt_channel_ram_size=\"64\"",
340 "rmt_has_per_channel_clock",
341 "rmt_supports_reftick_clock",
342 "rmt_supports_apb_clock",
343 "rng_apb_cycle_wait_num=\"16\"",
344 "rng_trng_supported",
345 "rsa_size_increment=\"512\"",
346 "rsa_memory_size_bytes=\"512\"",
347 "sleep_light_sleep",
348 "sleep_deep_sleep",
349 "soc_multi_core_enabled",
350 "soc_rc_fast_clk_default=\"8500000\"",
351 "soc_rc_fast_clk_default_is_set",
352 "soc_has_clock_node_xtal_clk",
353 "soc_has_clock_node_pll_clk",
354 "soc_has_clock_node_apll_clk",
355 "soc_has_clock_node_rc_fast_clk",
356 "soc_has_clock_node_pll_f160m_clk",
357 "soc_has_clock_node_cpu_pll_div_in",
358 "soc_has_clock_node_cpu_pll_div",
359 "soc_has_clock_node_syscon_pre_div_in",
360 "soc_has_clock_node_syscon_pre_div",
361 "soc_has_clock_node_cpu_clk",
362 "soc_has_clock_node_apb_clk_cpu_div2",
363 "soc_has_clock_node_apb_clk_80m",
364 "soc_has_clock_node_apb_clk",
365 "soc_has_clock_node_ref_tick_pll",
366 "soc_has_clock_node_ref_tick_apll",
367 "soc_has_clock_node_ref_tick_xtal",
368 "soc_has_clock_node_ref_tick_fosc",
369 "soc_has_clock_node_ref_tick",
370 "soc_has_clock_node_xtal32k_clk",
371 "soc_has_clock_node_rc_slow_clk",
372 "soc_has_clock_node_rc_fast_div_clk",
373 "soc_has_clock_node_xtal_div_clk",
374 "soc_has_clock_node_rtc_slow_clk",
375 "soc_has_clock_node_rtc_fast_clk",
376 "soc_has_clock_node_uart_mem_clk",
377 "soc_has_clock_node_timg_calibration_clock",
378 "soc_has_clock_node_mcpwm_function_clock",
379 "soc_has_clock_node_uart_function_clock",
380 "soc_has_clock_node_uart_mem_clock",
381 "soc_has_clock_node_uart_baud_rate_generator",
382 "has_dram_region",
383 "has_dram2_uninit_region",
384 "spi_master_supports_dma",
385 "spi_slave_supports_dma",
386 "timergroup_timg_has_timer1",
387 "timergroup_rc_fast_calibration_is_set",
388 "uart_ram_size=\"128\"",
389 "wifi_mac_version=\"1\"",
390 "wifi_csi_supported",
391 ],
392 cfgs: &[
393 "cargo:rustc-cfg=esp32",
394 "cargo:rustc-cfg=xtensa",
395 "cargo:rustc-cfg=multi_core",
396 "cargo:rustc-cfg=soc_has_aes",
397 "cargo:rustc-cfg=soc_has_apb_ctrl",
398 "cargo:rustc-cfg=soc_has_bb",
399 "cargo:rustc-cfg=soc_has_dport",
400 "cargo:rustc-cfg=soc_has_system",
401 "cargo:rustc-cfg=soc_has_efuse",
402 "cargo:rustc-cfg=soc_has_emac_dma",
403 "cargo:rustc-cfg=soc_has_emac_ext",
404 "cargo:rustc-cfg=soc_has_emac_mac",
405 "cargo:rustc-cfg=soc_has_flash_encryption",
406 "cargo:rustc-cfg=soc_has_frc_timer",
407 "cargo:rustc-cfg=soc_has_gpio",
408 "cargo:rustc-cfg=soc_has_gpio_sd",
409 "cargo:rustc-cfg=soc_has_hinf",
410 "cargo:rustc-cfg=soc_has_i2c0",
411 "cargo:rustc-cfg=soc_has_i2c1",
412 "cargo:rustc-cfg=soc_has_i2s0",
413 "cargo:rustc-cfg=soc_has_i2s1",
414 "cargo:rustc-cfg=soc_has_io_mux",
415 "cargo:rustc-cfg=soc_has_ledc",
416 "cargo:rustc-cfg=soc_has_mcpwm0",
417 "cargo:rustc-cfg=soc_has_mcpwm1",
418 "cargo:rustc-cfg=soc_has_nrx",
419 "cargo:rustc-cfg=soc_has_pcnt",
420 "cargo:rustc-cfg=soc_has_rmt",
421 "cargo:rustc-cfg=soc_has_rng",
422 "cargo:rustc-cfg=soc_has_rsa",
423 "cargo:rustc-cfg=soc_has_lpwr",
424 "cargo:rustc-cfg=soc_has_rtc_i2c",
425 "cargo:rustc-cfg=soc_has_rtc_io",
426 "cargo:rustc-cfg=soc_has_sdhost",
427 "cargo:rustc-cfg=soc_has_sens",
428 "cargo:rustc-cfg=soc_has_sha",
429 "cargo:rustc-cfg=soc_has_slc",
430 "cargo:rustc-cfg=soc_has_slchost",
431 "cargo:rustc-cfg=soc_has_spi0",
432 "cargo:rustc-cfg=soc_has_spi1",
433 "cargo:rustc-cfg=soc_has_spi2",
434 "cargo:rustc-cfg=soc_has_spi3",
435 "cargo:rustc-cfg=soc_has_timg0",
436 "cargo:rustc-cfg=soc_has_timg1",
437 "cargo:rustc-cfg=soc_has_twai0",
438 "cargo:rustc-cfg=soc_has_uart0",
439 "cargo:rustc-cfg=soc_has_uart1",
440 "cargo:rustc-cfg=soc_has_uart2",
441 "cargo:rustc-cfg=soc_has_uhci0",
442 "cargo:rustc-cfg=soc_has_uhci1",
443 "cargo:rustc-cfg=soc_has_wifi",
444 "cargo:rustc-cfg=soc_has_dma_spi2",
445 "cargo:rustc-cfg=soc_has_dma_spi3",
446 "cargo:rustc-cfg=soc_has_dma_i2s0",
447 "cargo:rustc-cfg=soc_has_dma_i2s1",
448 "cargo:rustc-cfg=soc_has_adc1",
449 "cargo:rustc-cfg=soc_has_adc2",
450 "cargo:rustc-cfg=soc_has_bt",
451 "cargo:rustc-cfg=soc_has_cpu_ctrl",
452 "cargo:rustc-cfg=soc_has_dac1",
453 "cargo:rustc-cfg=soc_has_dac2",
454 "cargo:rustc-cfg=soc_has_flash",
455 "cargo:rustc-cfg=soc_has_psram",
456 "cargo:rustc-cfg=soc_has_sw_interrupt",
457 "cargo:rustc-cfg=soc_has_touch",
458 "cargo:rustc-cfg=phy",
459 "cargo:rustc-cfg=touch",
460 "cargo:rustc-cfg=rom_crc_le",
461 "cargo:rustc-cfg=rom_crc_be",
462 "cargo:rustc-cfg=rom_md5_bsd",
463 "cargo:rustc-cfg=pm_support_ext0_wakeup",
464 "cargo:rustc-cfg=pm_support_ext1_wakeup",
465 "cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
466 "cargo:rustc-cfg=ulp_supported",
467 "cargo:rustc-cfg=adc_driver_supported",
468 "cargo:rustc-cfg=aes_driver_supported",
469 "cargo:rustc-cfg=bt_driver_supported",
470 "cargo:rustc-cfg=dac_driver_supported",
471 "cargo:rustc-cfg=dma_driver_supported",
472 "cargo:rustc-cfg=gpio_driver_supported",
473 "cargo:rustc-cfg=i2c_master_driver_supported",
474 "cargo:rustc-cfg=i2s_driver_supported",
475 "cargo:rustc-cfg=interrupts_driver_supported",
476 "cargo:rustc-cfg=io_mux_driver_supported",
477 "cargo:rustc-cfg=ledc_driver_supported",
478 "cargo:rustc-cfg=mcpwm_driver_supported",
479 "cargo:rustc-cfg=pcnt_driver_supported",
480 "cargo:rustc-cfg=phy_driver_supported",
481 "cargo:rustc-cfg=psram_driver_supported",
482 "cargo:rustc-cfg=rgb_display_driver_supported",
483 "cargo:rustc-cfg=rmt_driver_supported",
484 "cargo:rustc-cfg=rng_driver_supported",
485 "cargo:rustc-cfg=rsa_driver_supported",
486 "cargo:rustc-cfg=lp_timer_driver_supported",
487 "cargo:rustc-cfg=sd_host_driver_supported",
488 "cargo:rustc-cfg=sd_slave_driver_supported",
489 "cargo:rustc-cfg=sha_driver_supported",
490 "cargo:rustc-cfg=sleep_driver_supported",
491 "cargo:rustc-cfg=soc_driver_supported",
492 "cargo:rustc-cfg=spi_master_driver_supported",
493 "cargo:rustc-cfg=spi_slave_driver_supported",
494 "cargo:rustc-cfg=temp_sensor_driver_supported",
495 "cargo:rustc-cfg=timergroup_driver_supported",
496 "cargo:rustc-cfg=touch_driver_supported",
497 "cargo:rustc-cfg=twai_driver_supported",
498 "cargo:rustc-cfg=uart_driver_supported",
499 "cargo:rustc-cfg=ulp_fsm_driver_supported",
500 "cargo:rustc-cfg=wifi_driver_supported",
501 "cargo:rustc-cfg=adc_adc1",
502 "cargo:rustc-cfg=adc_adc2",
503 "cargo:rustc-cfg=dac_dac1",
504 "cargo:rustc-cfg=dac_dac2",
505 "cargo:rustc-cfg=i2c_master_i2c0",
506 "cargo:rustc-cfg=i2c_master_i2c1",
507 "cargo:rustc-cfg=spi_master_spi2",
508 "cargo:rustc-cfg=spi_master_spi3",
509 "cargo:rustc-cfg=spi_slave_spi2",
510 "cargo:rustc-cfg=spi_slave_spi3",
511 "cargo:rustc-cfg=timergroup_timg0",
512 "cargo:rustc-cfg=timergroup_timg1",
513 "cargo:rustc-cfg=uart_uart0",
514 "cargo:rustc-cfg=uart_uart1",
515 "cargo:rustc-cfg=uart_uart2",
516 "cargo:rustc-cfg=aes_endianness_configurable",
517 "cargo:rustc-cfg=bt_controller=\"btdm\"",
518 "cargo:rustc-cfg=dma_kind=\"pdma\"",
519 "cargo:rustc-cfg=gpio_has_bank_1",
520 "cargo:rustc-cfg=gpio_gpio_function=\"2\"",
521 "cargo:rustc-cfg=gpio_constant_0_input=\"48\"",
522 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
523 "cargo:rustc-cfg=gpio_remap_iomux_pin_registers",
524 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
525 "cargo:rustc-cfg=gpio_input_signal_max=\"206\"",
526 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
527 "cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
528 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
529 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address_is_set",
530 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"1048575\"",
531 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
532 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
533 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
534 "cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
535 "cargo:rustc-cfg=phy_combo_module",
536 "cargo:rustc-cfg=psram_extmem_origin=\"1065353216\"",
537 "cargo:rustc-cfg=rmt_ram_start=\"1073047552\"",
538 "cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
539 "cargo:rustc-cfg=rmt_has_per_channel_clock",
540 "cargo:rustc-cfg=rmt_supports_reftick_clock",
541 "cargo:rustc-cfg=rmt_supports_apb_clock",
542 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
543 "cargo:rustc-cfg=rng_trng_supported",
544 "cargo:rustc-cfg=rsa_size_increment=\"512\"",
545 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
546 "cargo:rustc-cfg=sleep_light_sleep",
547 "cargo:rustc-cfg=sleep_deep_sleep",
548 "cargo:rustc-cfg=soc_multi_core_enabled",
549 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"8500000\"",
550 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
551 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
552 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
553 "cargo:rustc-cfg=soc_has_clock_node_apll_clk",
554 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
555 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m_clk",
556 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_in",
557 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
558 "cargo:rustc-cfg=soc_has_clock_node_syscon_pre_div_in",
559 "cargo:rustc-cfg=soc_has_clock_node_syscon_pre_div",
560 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
561 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_cpu_div2",
562 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_80m",
563 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
564 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_pll",
565 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_apll",
566 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_xtal",
567 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_fosc",
568 "cargo:rustc-cfg=soc_has_clock_node_ref_tick",
569 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
570 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
571 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
572 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
573 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
574 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
575 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
576 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
577 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
578 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
579 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
580 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
581 "cargo:rustc-cfg=has_dram_region",
582 "cargo:rustc-cfg=has_dram2_uninit_region",
583 "cargo:rustc-cfg=spi_master_supports_dma",
584 "cargo:rustc-cfg=spi_slave_supports_dma",
585 "cargo:rustc-cfg=timergroup_timg_has_timer1",
586 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
587 "cargo:rustc-cfg=uart_ram_size=\"128\"",
588 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
589 "cargo:rustc-cfg=wifi_csi_supported",
590 ],
591 memory_layout: &MemoryLayout {
592 regions: &[
593 (
594 "dram",
595 MemoryRegion {
596 address_range: 0x3FFAE000..0x40000000,
597 },
598 ),
599 (
600 "dram2_uninit",
601 MemoryRegion {
602 address_range: 0x3FFE7E30..0x40000000,
603 },
604 ),
605 ],
606 },
607 pins: &[
608 PinInfo {
609 pin: 0,
610 limitations: &["strapping"],
611 },
612 PinInfo {
613 pin: 1,
614 limitations: &["bootloader_uart"],
615 },
616 PinInfo {
617 pin: 2,
618 limitations: &["strapping"],
619 },
620 PinInfo {
621 pin: 3,
622 limitations: &["bootloader_uart"],
623 },
624 PinInfo {
625 pin: 4,
626 limitations: &[],
627 },
628 PinInfo {
629 pin: 5,
630 limitations: &["strapping"],
631 },
632 PinInfo {
633 pin: 6,
634 limitations: &["spi_flash", "spi_psram"],
635 },
636 PinInfo {
637 pin: 7,
638 limitations: &["spi_flash", "spi_psram"],
639 },
640 PinInfo {
641 pin: 8,
642 limitations: &["spi_flash", "spi_psram"],
643 },
644 PinInfo {
645 pin: 9,
646 limitations: &["spi_flash", "spi_psram"],
647 },
648 PinInfo {
649 pin: 10,
650 limitations: &["spi_flash", "spi_psram"],
651 },
652 PinInfo {
653 pin: 11,
654 limitations: &["spi_flash", "spi_psram"],
655 },
656 PinInfo {
657 pin: 12,
658 limitations: &["strapping", "jtag"],
659 },
660 PinInfo {
661 pin: 13,
662 limitations: &["jtag"],
663 },
664 PinInfo {
665 pin: 14,
666 limitations: &["jtag"],
667 },
668 PinInfo {
669 pin: 15,
670 limitations: &["strapping", "jtag"],
671 },
672 PinInfo {
673 pin: 16,
674 limitations: &["spi_flash", "spi_psram"],
675 },
676 PinInfo {
677 pin: 17,
678 limitations: &["spi_psram"],
679 },
680 PinInfo {
681 pin: 18,
682 limitations: &[],
683 },
684 PinInfo {
685 pin: 19,
686 limitations: &[],
687 },
688 PinInfo {
689 pin: 20,
690 limitations: &["esp32_pico_v3"],
691 },
692 PinInfo {
693 pin: 21,
694 limitations: &[],
695 },
696 PinInfo {
697 pin: 22,
698 limitations: &[],
699 },
700 PinInfo {
701 pin: 23,
702 limitations: &[],
703 },
704 PinInfo {
705 pin: 25,
706 limitations: &[],
707 },
708 PinInfo {
709 pin: 26,
710 limitations: &[],
711 },
712 PinInfo {
713 pin: 27,
714 limitations: &[],
715 },
716 PinInfo {
717 pin: 32,
718 limitations: &[],
719 },
720 PinInfo {
721 pin: 33,
722 limitations: &[],
723 },
724 PinInfo {
725 pin: 34,
726 limitations: &["input_only"],
727 },
728 PinInfo {
729 pin: 35,
730 limitations: &["input_only"],
731 },
732 PinInfo {
733 pin: 36,
734 limitations: &["input_only"],
735 },
736 PinInfo {
737 pin: 37,
738 limitations: &["input_only"],
739 },
740 PinInfo {
741 pin: 38,
742 limitations: &["input_only"],
743 },
744 PinInfo {
745 pin: 39,
746 limitations: &["input_only"],
747 },
748 ],
749 },
750 Self::Esp32c2 => Config {
751 architecture: "riscv",
752 target: "riscv32imc-unknown-none-elf",
753 symbols: &[
754 "esp32c2",
755 "riscv",
756 "single_core",
757 "soc_has_apb_ctrl",
758 "soc_has_apb_saradc",
759 "soc_has_bb",
760 "soc_has_assist_debug",
761 "soc_has_dma",
762 "soc_has_ecc",
763 "soc_has_efuse",
764 "soc_has_extmem",
765 "soc_has_gpio",
766 "soc_has_i2c_ana_mst",
767 "soc_has_i2c0",
768 "soc_has_interrupt_core0",
769 "soc_has_io_mux",
770 "soc_has_ledc",
771 "soc_has_rng",
772 "soc_has_lpwr",
773 "soc_has_modem_clkrst",
774 "soc_has_sensitive",
775 "soc_has_sha",
776 "soc_has_spi0",
777 "soc_has_spi1",
778 "soc_has_spi2",
779 "soc_has_system",
780 "soc_has_systimer",
781 "soc_has_timg0",
782 "soc_has_uart0",
783 "soc_has_uart1",
784 "soc_has_xts_aes",
785 "soc_has_dma_ch0",
786 "soc_has_adc1",
787 "soc_has_bt",
788 "soc_has_flash",
789 "soc_has_gpio_dedicated",
790 "soc_has_sw_interrupt",
791 "soc_has_wifi",
792 "phy",
793 "swd",
794 "rom_crc_le",
795 "rom_crc_be",
796 "rom_md5_mbedtls",
797 "pm_support_wifi_wakeup",
798 "pm_support_bt_wakeup",
799 "uart_support_wakeup_int",
800 "gpio_support_deepsleep_wakeup",
801 "adc_driver_supported",
802 "assist_debug_driver_supported",
803 "bt_driver_supported",
804 "dedicated_gpio_driver_supported",
805 "dma_driver_supported",
806 "ecc_driver_supported",
807 "gpio_driver_supported",
808 "i2c_master_driver_supported",
809 "interrupts_driver_supported",
810 "io_mux_driver_supported",
811 "ledc_driver_supported",
812 "phy_driver_supported",
813 "rng_driver_supported",
814 "lp_timer_driver_supported",
815 "sha_driver_supported",
816 "sleep_driver_supported",
817 "soc_driver_supported",
818 "spi_master_driver_supported",
819 "spi_slave_driver_supported",
820 "systimer_driver_supported",
821 "temp_sensor_driver_supported",
822 "timergroup_driver_supported",
823 "uart_driver_supported",
824 "wifi_driver_supported",
825 "adc_adc1",
826 "i2c_master_i2c0",
827 "spi_master_spi2",
828 "spi_slave_spi2",
829 "timergroup_timg0",
830 "uart_uart0",
831 "uart_uart1",
832 "assist_debug_has_sp_monitor",
833 "bt_controller=\"npl\"",
834 "dma_kind=\"gdma\"",
835 "dma_supports_mem2mem",
836 "dma_max_priority=\"9\"",
837 "dma_max_priority_is_set",
838 "dma_gdma_version=\"1\"",
839 "dma_gdma_version_is_set",
840 "ecc_zero_extend_writes",
841 "ecc_has_finite_field_division",
842 "ecc_has_curve_p192",
843 "ecc_has_curve_p256",
844 "gpio_gpio_function=\"1\"",
845 "gpio_constant_0_input=\"31\"",
846 "gpio_constant_1_input=\"30\"",
847 "gpio_func_in_sel_offset=\"0\"",
848 "gpio_input_signal_max=\"100\"",
849 "gpio_output_signal_max=\"128\"",
850 "i2c_master_has_fsm_timeouts",
851 "i2c_master_has_hw_bus_clear",
852 "i2c_master_has_bus_timeout_enable",
853 "i2c_master_has_conf_update",
854 "i2c_master_has_arbitration_en",
855 "i2c_master_has_tx_fifo_watermark",
856 "i2c_master_bus_timeout_is_exponential",
857 "i2c_master_max_bus_timeout=\"31\"",
858 "i2c_master_ll_intr_mask=\"262143\"",
859 "i2c_master_fifo_size=\"16\"",
860 "interrupts_status_registers=\"2\"",
861 "interrupt_controller=\"riscv_basic\"",
862 "phy_combo_module",
863 "rng_apb_cycle_wait_num=\"16\"",
864 "rng_trng_supported",
865 "sha_dma",
866 "sleep_light_sleep",
867 "sleep_deep_sleep",
868 "soc_cpu_has_csr_pc",
869 "soc_rc_fast_clk_default=\"17500000\"",
870 "soc_rc_fast_clk_default_is_set",
871 "soc_has_clock_node_xtal_clk",
872 "soc_has_clock_node_pll_clk",
873 "soc_has_clock_node_rc_fast_clk",
874 "soc_has_clock_node_osc_slow_clk",
875 "soc_has_clock_node_rc_slow_clk",
876 "soc_has_clock_node_rc_fast_div_clk",
877 "soc_has_clock_node_system_pre_div_in",
878 "soc_has_clock_node_system_pre_div",
879 "soc_has_clock_node_cpu_pll_div",
880 "soc_has_clock_node_cpu_clk",
881 "soc_has_clock_node_pll_40m",
882 "soc_has_clock_node_pll_60m",
883 "soc_has_clock_node_pll_80m",
884 "soc_has_clock_node_cpu_div2",
885 "soc_has_clock_node_apb_clk",
886 "soc_has_clock_node_crypto_clk",
887 "soc_has_clock_node_mspi_clk",
888 "soc_has_clock_node_rc_fast_clk_div_n",
889 "soc_has_clock_node_xtal_div_clk",
890 "soc_has_clock_node_rtc_slow_clk",
891 "soc_has_clock_node_rtc_fast_clk",
892 "soc_has_clock_node_low_power_clk",
893 "soc_has_clock_node_uart_mem_clk",
894 "soc_has_clock_node_timg_calibration_clock",
895 "soc_has_clock_node_timg_function_clock",
896 "soc_has_clock_node_timg_wdt_clock",
897 "soc_has_clock_node_uart_function_clock",
898 "soc_has_clock_node_uart_mem_clock",
899 "soc_has_clock_node_uart_baud_rate_generator",
900 "has_dram_region",
901 "has_dram2_uninit_region",
902 "spi_master_supports_dma",
903 "spi_master_has_app_interrupts",
904 "spi_master_has_dma_segmented_transfer",
905 "spi_slave_supports_dma",
906 "timergroup_timg_has_divcnt_rst",
907 "timergroup_rc_fast_calibration_is_set",
908 "uart_ram_size=\"128\"",
909 "uart_has_sclk_divider",
910 "wifi_mac_version=\"1\"",
911 ],
912 cfgs: &[
913 "cargo:rustc-cfg=esp32c2",
914 "cargo:rustc-cfg=riscv",
915 "cargo:rustc-cfg=single_core",
916 "cargo:rustc-cfg=soc_has_apb_ctrl",
917 "cargo:rustc-cfg=soc_has_apb_saradc",
918 "cargo:rustc-cfg=soc_has_bb",
919 "cargo:rustc-cfg=soc_has_assist_debug",
920 "cargo:rustc-cfg=soc_has_dma",
921 "cargo:rustc-cfg=soc_has_ecc",
922 "cargo:rustc-cfg=soc_has_efuse",
923 "cargo:rustc-cfg=soc_has_extmem",
924 "cargo:rustc-cfg=soc_has_gpio",
925 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
926 "cargo:rustc-cfg=soc_has_i2c0",
927 "cargo:rustc-cfg=soc_has_interrupt_core0",
928 "cargo:rustc-cfg=soc_has_io_mux",
929 "cargo:rustc-cfg=soc_has_ledc",
930 "cargo:rustc-cfg=soc_has_rng",
931 "cargo:rustc-cfg=soc_has_lpwr",
932 "cargo:rustc-cfg=soc_has_modem_clkrst",
933 "cargo:rustc-cfg=soc_has_sensitive",
934 "cargo:rustc-cfg=soc_has_sha",
935 "cargo:rustc-cfg=soc_has_spi0",
936 "cargo:rustc-cfg=soc_has_spi1",
937 "cargo:rustc-cfg=soc_has_spi2",
938 "cargo:rustc-cfg=soc_has_system",
939 "cargo:rustc-cfg=soc_has_systimer",
940 "cargo:rustc-cfg=soc_has_timg0",
941 "cargo:rustc-cfg=soc_has_uart0",
942 "cargo:rustc-cfg=soc_has_uart1",
943 "cargo:rustc-cfg=soc_has_xts_aes",
944 "cargo:rustc-cfg=soc_has_dma_ch0",
945 "cargo:rustc-cfg=soc_has_adc1",
946 "cargo:rustc-cfg=soc_has_bt",
947 "cargo:rustc-cfg=soc_has_flash",
948 "cargo:rustc-cfg=soc_has_gpio_dedicated",
949 "cargo:rustc-cfg=soc_has_sw_interrupt",
950 "cargo:rustc-cfg=soc_has_wifi",
951 "cargo:rustc-cfg=phy",
952 "cargo:rustc-cfg=swd",
953 "cargo:rustc-cfg=rom_crc_le",
954 "cargo:rustc-cfg=rom_crc_be",
955 "cargo:rustc-cfg=rom_md5_mbedtls",
956 "cargo:rustc-cfg=pm_support_wifi_wakeup",
957 "cargo:rustc-cfg=pm_support_bt_wakeup",
958 "cargo:rustc-cfg=uart_support_wakeup_int",
959 "cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
960 "cargo:rustc-cfg=adc_driver_supported",
961 "cargo:rustc-cfg=assist_debug_driver_supported",
962 "cargo:rustc-cfg=bt_driver_supported",
963 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
964 "cargo:rustc-cfg=dma_driver_supported",
965 "cargo:rustc-cfg=ecc_driver_supported",
966 "cargo:rustc-cfg=gpio_driver_supported",
967 "cargo:rustc-cfg=i2c_master_driver_supported",
968 "cargo:rustc-cfg=interrupts_driver_supported",
969 "cargo:rustc-cfg=io_mux_driver_supported",
970 "cargo:rustc-cfg=ledc_driver_supported",
971 "cargo:rustc-cfg=phy_driver_supported",
972 "cargo:rustc-cfg=rng_driver_supported",
973 "cargo:rustc-cfg=lp_timer_driver_supported",
974 "cargo:rustc-cfg=sha_driver_supported",
975 "cargo:rustc-cfg=sleep_driver_supported",
976 "cargo:rustc-cfg=soc_driver_supported",
977 "cargo:rustc-cfg=spi_master_driver_supported",
978 "cargo:rustc-cfg=spi_slave_driver_supported",
979 "cargo:rustc-cfg=systimer_driver_supported",
980 "cargo:rustc-cfg=temp_sensor_driver_supported",
981 "cargo:rustc-cfg=timergroup_driver_supported",
982 "cargo:rustc-cfg=uart_driver_supported",
983 "cargo:rustc-cfg=wifi_driver_supported",
984 "cargo:rustc-cfg=adc_adc1",
985 "cargo:rustc-cfg=i2c_master_i2c0",
986 "cargo:rustc-cfg=spi_master_spi2",
987 "cargo:rustc-cfg=spi_slave_spi2",
988 "cargo:rustc-cfg=timergroup_timg0",
989 "cargo:rustc-cfg=uart_uart0",
990 "cargo:rustc-cfg=uart_uart1",
991 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
992 "cargo:rustc-cfg=bt_controller=\"npl\"",
993 "cargo:rustc-cfg=dma_kind=\"gdma\"",
994 "cargo:rustc-cfg=dma_supports_mem2mem",
995 "cargo:rustc-cfg=dma_max_priority=\"9\"",
996 "cargo:rustc-cfg=dma_max_priority_is_set",
997 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
998 "cargo:rustc-cfg=dma_gdma_version_is_set",
999 "cargo:rustc-cfg=ecc_zero_extend_writes",
1000 "cargo:rustc-cfg=ecc_has_finite_field_division",
1001 "cargo:rustc-cfg=ecc_has_curve_p192",
1002 "cargo:rustc-cfg=ecc_has_curve_p256",
1003 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
1004 "cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
1005 "cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
1006 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
1007 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
1008 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
1009 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
1010 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
1011 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
1012 "cargo:rustc-cfg=i2c_master_has_conf_update",
1013 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
1014 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
1015 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
1016 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
1017 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
1018 "cargo:rustc-cfg=i2c_master_fifo_size=\"16\"",
1019 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
1020 "cargo:rustc-cfg=interrupt_controller=\"riscv_basic\"",
1021 "cargo:rustc-cfg=phy_combo_module",
1022 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
1023 "cargo:rustc-cfg=rng_trng_supported",
1024 "cargo:rustc-cfg=sha_dma",
1025 "cargo:rustc-cfg=sleep_light_sleep",
1026 "cargo:rustc-cfg=sleep_deep_sleep",
1027 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
1028 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
1029 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
1030 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
1031 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
1032 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
1033 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
1034 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
1035 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
1036 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
1037 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
1038 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
1039 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
1040 "cargo:rustc-cfg=soc_has_clock_node_pll_40m",
1041 "cargo:rustc-cfg=soc_has_clock_node_pll_60m",
1042 "cargo:rustc-cfg=soc_has_clock_node_pll_80m",
1043 "cargo:rustc-cfg=soc_has_clock_node_cpu_div2",
1044 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
1045 "cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
1046 "cargo:rustc-cfg=soc_has_clock_node_mspi_clk",
1047 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
1048 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
1049 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
1050 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
1051 "cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
1052 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
1053 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
1054 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
1055 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
1056 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
1057 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
1058 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
1059 "cargo:rustc-cfg=has_dram_region",
1060 "cargo:rustc-cfg=has_dram2_uninit_region",
1061 "cargo:rustc-cfg=spi_master_supports_dma",
1062 "cargo:rustc-cfg=spi_master_has_app_interrupts",
1063 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
1064 "cargo:rustc-cfg=spi_slave_supports_dma",
1065 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
1066 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
1067 "cargo:rustc-cfg=uart_ram_size=\"128\"",
1068 "cargo:rustc-cfg=uart_has_sclk_divider",
1069 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
1070 ],
1071 memory_layout: &MemoryLayout {
1072 regions: &[
1073 (
1074 "dram",
1075 MemoryRegion {
1076 address_range: 0x3FCA0000..0x3FCE0000,
1077 },
1078 ),
1079 (
1080 "dram2_uninit",
1081 MemoryRegion {
1082 address_range: 0x3FCCE800..0x3FCDEB70,
1083 },
1084 ),
1085 ],
1086 },
1087 pins: &[
1088 PinInfo {
1089 pin: 0,
1090 limitations: &[],
1091 },
1092 PinInfo {
1093 pin: 1,
1094 limitations: &[],
1095 },
1096 PinInfo {
1097 pin: 2,
1098 limitations: &[],
1099 },
1100 PinInfo {
1101 pin: 3,
1102 limitations: &[],
1103 },
1104 PinInfo {
1105 pin: 4,
1106 limitations: &["jtag"],
1107 },
1108 PinInfo {
1109 pin: 5,
1110 limitations: &["jtag"],
1111 },
1112 PinInfo {
1113 pin: 6,
1114 limitations: &["jtag"],
1115 },
1116 PinInfo {
1117 pin: 7,
1118 limitations: &["jtag"],
1119 },
1120 PinInfo {
1121 pin: 8,
1122 limitations: &["strapping"],
1123 },
1124 PinInfo {
1125 pin: 9,
1126 limitations: &["strapping"],
1127 },
1128 PinInfo {
1129 pin: 10,
1130 limitations: &[],
1131 },
1132 PinInfo {
1133 pin: 11,
1134 limitations: &["spi_flash"],
1135 },
1136 PinInfo {
1137 pin: 12,
1138 limitations: &["spi_flash"],
1139 },
1140 PinInfo {
1141 pin: 13,
1142 limitations: &["spi_flash"],
1143 },
1144 PinInfo {
1145 pin: 14,
1146 limitations: &["spi_flash"],
1147 },
1148 PinInfo {
1149 pin: 15,
1150 limitations: &["spi_flash"],
1151 },
1152 PinInfo {
1153 pin: 16,
1154 limitations: &["spi_flash"],
1155 },
1156 PinInfo {
1157 pin: 17,
1158 limitations: &["spi_flash"],
1159 },
1160 PinInfo {
1161 pin: 18,
1162 limitations: &[],
1163 },
1164 PinInfo {
1165 pin: 19,
1166 limitations: &["bootloader_uart"],
1167 },
1168 PinInfo {
1169 pin: 20,
1170 limitations: &["bootloader_uart"],
1171 },
1172 ],
1173 },
1174 Self::Esp32c3 => Config {
1175 architecture: "riscv",
1176 target: "riscv32imc-unknown-none-elf",
1177 symbols: &[
1178 "esp32c3",
1179 "riscv",
1180 "single_core",
1181 "soc_has_aes",
1182 "soc_has_apb_ctrl",
1183 "soc_has_apb_saradc",
1184 "soc_has_assist_debug",
1185 "soc_has_bb",
1186 "soc_has_dma",
1187 "soc_has_ds",
1188 "soc_has_efuse",
1189 "soc_has_extmem",
1190 "soc_has_fe",
1191 "soc_has_fe2",
1192 "soc_has_gpio",
1193 "soc_has_gpio_sd",
1194 "soc_has_hmac",
1195 "soc_has_i2c_ana_mst",
1196 "soc_has_i2c0",
1197 "soc_has_i2s0",
1198 "soc_has_interrupt_core0",
1199 "soc_has_io_mux",
1200 "soc_has_ledc",
1201 "soc_has_nrx",
1202 "soc_has_rmt",
1203 "soc_has_rng",
1204 "soc_has_rsa",
1205 "soc_has_lpwr",
1206 "soc_has_sensitive",
1207 "soc_has_sha",
1208 "soc_has_spi0",
1209 "soc_has_spi1",
1210 "soc_has_spi2",
1211 "soc_has_system",
1212 "soc_has_systimer",
1213 "soc_has_timg0",
1214 "soc_has_timg1",
1215 "soc_has_twai0",
1216 "soc_has_uart0",
1217 "soc_has_uart1",
1218 "soc_has_uhci0",
1219 "soc_has_usb_device",
1220 "soc_has_xts_aes",
1221 "soc_has_dma_ch0",
1222 "soc_has_dma_ch1",
1223 "soc_has_dma_ch2",
1224 "soc_has_adc1",
1225 "soc_has_adc2",
1226 "soc_has_bt",
1227 "soc_has_flash",
1228 "soc_has_gpio_dedicated",
1229 "soc_has_sw_interrupt",
1230 "soc_has_tsens",
1231 "soc_has_wifi",
1232 "phy",
1233 "swd",
1234 "rom_crc_le",
1235 "rom_crc_be",
1236 "rom_md5_bsd",
1237 "pm_support_wifi_wakeup",
1238 "pm_support_bt_wakeup",
1239 "uart_support_wakeup_int",
1240 "gpio_support_deepsleep_wakeup",
1241 "adc_driver_supported",
1242 "aes_driver_supported",
1243 "assist_debug_driver_supported",
1244 "bt_driver_supported",
1245 "dedicated_gpio_driver_supported",
1246 "dma_driver_supported",
1247 "gpio_driver_supported",
1248 "hmac_driver_supported",
1249 "i2c_master_driver_supported",
1250 "i2s_driver_supported",
1251 "interrupts_driver_supported",
1252 "io_mux_driver_supported",
1253 "ledc_driver_supported",
1254 "phy_driver_supported",
1255 "rmt_driver_supported",
1256 "rng_driver_supported",
1257 "rsa_driver_supported",
1258 "lp_timer_driver_supported",
1259 "sha_driver_supported",
1260 "sleep_driver_supported",
1261 "soc_driver_supported",
1262 "spi_master_driver_supported",
1263 "spi_slave_driver_supported",
1264 "systimer_driver_supported",
1265 "temp_sensor_driver_supported",
1266 "timergroup_driver_supported",
1267 "twai_driver_supported",
1268 "uart_driver_supported",
1269 "uhci_driver_supported",
1270 "usb_serial_jtag_driver_supported",
1271 "wifi_driver_supported",
1272 "adc_adc1",
1273 "adc_adc2",
1274 "i2c_master_i2c0",
1275 "spi_master_spi2",
1276 "spi_slave_spi2",
1277 "timergroup_timg0",
1278 "timergroup_timg1",
1279 "uart_uart0",
1280 "uart_uart1",
1281 "aes_dma",
1282 "aes_dma_mode_ecb",
1283 "aes_dma_mode_cbc",
1284 "aes_dma_mode_ofb",
1285 "aes_dma_mode_ctr",
1286 "aes_dma_mode_cfb8",
1287 "aes_dma_mode_cfb128",
1288 "aes_has_split_text_registers",
1289 "assist_debug_has_sp_monitor",
1290 "assist_debug_has_region_monitor",
1291 "bt_controller=\"btdm\"",
1292 "dma_kind=\"gdma\"",
1293 "dma_supports_mem2mem",
1294 "dma_max_priority=\"9\"",
1295 "dma_max_priority_is_set",
1296 "dma_gdma_version=\"1\"",
1297 "dma_gdma_version_is_set",
1298 "gpio_gpio_function=\"1\"",
1299 "gpio_constant_0_input=\"31\"",
1300 "gpio_constant_1_input=\"30\"",
1301 "gpio_func_in_sel_offset=\"0\"",
1302 "gpio_input_signal_max=\"100\"",
1303 "gpio_output_signal_max=\"128\"",
1304 "i2c_master_has_fsm_timeouts",
1305 "i2c_master_has_hw_bus_clear",
1306 "i2c_master_has_bus_timeout_enable",
1307 "i2c_master_has_conf_update",
1308 "i2c_master_has_arbitration_en",
1309 "i2c_master_has_tx_fifo_watermark",
1310 "i2c_master_bus_timeout_is_exponential",
1311 "i2c_master_max_bus_timeout=\"31\"",
1312 "i2c_master_ll_intr_mask=\"262143\"",
1313 "i2c_master_fifo_size=\"32\"",
1314 "interrupts_status_registers=\"2\"",
1315 "interrupt_controller=\"riscv_basic\"",
1316 "phy_combo_module",
1317 "phy_backed_up_digital_register_count=\"21\"",
1318 "phy_backed_up_digital_register_count_is_set",
1319 "rmt_ram_start=\"1610703872\"",
1320 "rmt_channel_ram_size=\"48\"",
1321 "rmt_has_tx_immediate_stop",
1322 "rmt_has_tx_loop_count",
1323 "rmt_has_tx_carrier_data_only",
1324 "rmt_has_tx_sync",
1325 "rmt_has_rx_wrap",
1326 "rmt_has_rx_demodulation",
1327 "rmt_supports_none_clock",
1328 "rmt_supports_apb_clock",
1329 "rmt_supports_rcfast_clock",
1330 "rmt_supports_xtal_clock",
1331 "rng_apb_cycle_wait_num=\"16\"",
1332 "rng_trng_supported",
1333 "rsa_size_increment=\"32\"",
1334 "rsa_memory_size_bytes=\"384\"",
1335 "sha_dma",
1336 "sleep_light_sleep",
1337 "sleep_deep_sleep",
1338 "soc_cpu_has_csr_pc",
1339 "soc_rc_fast_clk_default=\"17500000\"",
1340 "soc_rc_fast_clk_default_is_set",
1341 "soc_has_clock_node_xtal_clk",
1342 "soc_has_clock_node_pll_clk",
1343 "soc_has_clock_node_rc_fast_clk",
1344 "soc_has_clock_node_xtal32k_clk",
1345 "soc_has_clock_node_rc_slow_clk",
1346 "soc_has_clock_node_rc_fast_div_clk",
1347 "soc_has_clock_node_system_pre_div_in",
1348 "soc_has_clock_node_system_pre_div",
1349 "soc_has_clock_node_cpu_pll_div_out",
1350 "soc_has_clock_node_cpu_clk",
1351 "soc_has_clock_node_pll_80m",
1352 "soc_has_clock_node_pll_160m",
1353 "soc_has_clock_node_apb_clk",
1354 "soc_has_clock_node_crypto_clk",
1355 "soc_has_clock_node_rc_fast_clk_div_n",
1356 "soc_has_clock_node_xtal_div_clk",
1357 "soc_has_clock_node_rtc_slow_clk",
1358 "soc_has_clock_node_rtc_fast_clk",
1359 "soc_has_clock_node_low_power_clk",
1360 "soc_has_clock_node_uart_mem_clk",
1361 "soc_has_clock_node_timg_calibration_clock",
1362 "soc_has_clock_node_timg_function_clock",
1363 "soc_has_clock_node_timg_wdt_clock",
1364 "soc_has_clock_node_rmt_sclk",
1365 "soc_has_clock_node_uart_function_clock",
1366 "soc_has_clock_node_uart_mem_clock",
1367 "soc_has_clock_node_uart_baud_rate_generator",
1368 "has_dram_region",
1369 "has_dram2_uninit_region",
1370 "spi_master_supports_dma",
1371 "spi_master_has_app_interrupts",
1372 "spi_master_has_dma_segmented_transfer",
1373 "spi_slave_supports_dma",
1374 "timergroup_timg_has_divcnt_rst",
1375 "timergroup_rc_fast_calibration_is_set",
1376 "uart_ram_size=\"128\"",
1377 "uart_has_sclk_divider",
1378 "wifi_mac_version=\"1\"",
1379 "wifi_csi_supported",
1380 ],
1381 cfgs: &[
1382 "cargo:rustc-cfg=esp32c3",
1383 "cargo:rustc-cfg=riscv",
1384 "cargo:rustc-cfg=single_core",
1385 "cargo:rustc-cfg=soc_has_aes",
1386 "cargo:rustc-cfg=soc_has_apb_ctrl",
1387 "cargo:rustc-cfg=soc_has_apb_saradc",
1388 "cargo:rustc-cfg=soc_has_assist_debug",
1389 "cargo:rustc-cfg=soc_has_bb",
1390 "cargo:rustc-cfg=soc_has_dma",
1391 "cargo:rustc-cfg=soc_has_ds",
1392 "cargo:rustc-cfg=soc_has_efuse",
1393 "cargo:rustc-cfg=soc_has_extmem",
1394 "cargo:rustc-cfg=soc_has_fe",
1395 "cargo:rustc-cfg=soc_has_fe2",
1396 "cargo:rustc-cfg=soc_has_gpio",
1397 "cargo:rustc-cfg=soc_has_gpio_sd",
1398 "cargo:rustc-cfg=soc_has_hmac",
1399 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
1400 "cargo:rustc-cfg=soc_has_i2c0",
1401 "cargo:rustc-cfg=soc_has_i2s0",
1402 "cargo:rustc-cfg=soc_has_interrupt_core0",
1403 "cargo:rustc-cfg=soc_has_io_mux",
1404 "cargo:rustc-cfg=soc_has_ledc",
1405 "cargo:rustc-cfg=soc_has_nrx",
1406 "cargo:rustc-cfg=soc_has_rmt",
1407 "cargo:rustc-cfg=soc_has_rng",
1408 "cargo:rustc-cfg=soc_has_rsa",
1409 "cargo:rustc-cfg=soc_has_lpwr",
1410 "cargo:rustc-cfg=soc_has_sensitive",
1411 "cargo:rustc-cfg=soc_has_sha",
1412 "cargo:rustc-cfg=soc_has_spi0",
1413 "cargo:rustc-cfg=soc_has_spi1",
1414 "cargo:rustc-cfg=soc_has_spi2",
1415 "cargo:rustc-cfg=soc_has_system",
1416 "cargo:rustc-cfg=soc_has_systimer",
1417 "cargo:rustc-cfg=soc_has_timg0",
1418 "cargo:rustc-cfg=soc_has_timg1",
1419 "cargo:rustc-cfg=soc_has_twai0",
1420 "cargo:rustc-cfg=soc_has_uart0",
1421 "cargo:rustc-cfg=soc_has_uart1",
1422 "cargo:rustc-cfg=soc_has_uhci0",
1423 "cargo:rustc-cfg=soc_has_usb_device",
1424 "cargo:rustc-cfg=soc_has_xts_aes",
1425 "cargo:rustc-cfg=soc_has_dma_ch0",
1426 "cargo:rustc-cfg=soc_has_dma_ch1",
1427 "cargo:rustc-cfg=soc_has_dma_ch2",
1428 "cargo:rustc-cfg=soc_has_adc1",
1429 "cargo:rustc-cfg=soc_has_adc2",
1430 "cargo:rustc-cfg=soc_has_bt",
1431 "cargo:rustc-cfg=soc_has_flash",
1432 "cargo:rustc-cfg=soc_has_gpio_dedicated",
1433 "cargo:rustc-cfg=soc_has_sw_interrupt",
1434 "cargo:rustc-cfg=soc_has_tsens",
1435 "cargo:rustc-cfg=soc_has_wifi",
1436 "cargo:rustc-cfg=phy",
1437 "cargo:rustc-cfg=swd",
1438 "cargo:rustc-cfg=rom_crc_le",
1439 "cargo:rustc-cfg=rom_crc_be",
1440 "cargo:rustc-cfg=rom_md5_bsd",
1441 "cargo:rustc-cfg=pm_support_wifi_wakeup",
1442 "cargo:rustc-cfg=pm_support_bt_wakeup",
1443 "cargo:rustc-cfg=uart_support_wakeup_int",
1444 "cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
1445 "cargo:rustc-cfg=adc_driver_supported",
1446 "cargo:rustc-cfg=aes_driver_supported",
1447 "cargo:rustc-cfg=assist_debug_driver_supported",
1448 "cargo:rustc-cfg=bt_driver_supported",
1449 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
1450 "cargo:rustc-cfg=dma_driver_supported",
1451 "cargo:rustc-cfg=gpio_driver_supported",
1452 "cargo:rustc-cfg=hmac_driver_supported",
1453 "cargo:rustc-cfg=i2c_master_driver_supported",
1454 "cargo:rustc-cfg=i2s_driver_supported",
1455 "cargo:rustc-cfg=interrupts_driver_supported",
1456 "cargo:rustc-cfg=io_mux_driver_supported",
1457 "cargo:rustc-cfg=ledc_driver_supported",
1458 "cargo:rustc-cfg=phy_driver_supported",
1459 "cargo:rustc-cfg=rmt_driver_supported",
1460 "cargo:rustc-cfg=rng_driver_supported",
1461 "cargo:rustc-cfg=rsa_driver_supported",
1462 "cargo:rustc-cfg=lp_timer_driver_supported",
1463 "cargo:rustc-cfg=sha_driver_supported",
1464 "cargo:rustc-cfg=sleep_driver_supported",
1465 "cargo:rustc-cfg=soc_driver_supported",
1466 "cargo:rustc-cfg=spi_master_driver_supported",
1467 "cargo:rustc-cfg=spi_slave_driver_supported",
1468 "cargo:rustc-cfg=systimer_driver_supported",
1469 "cargo:rustc-cfg=temp_sensor_driver_supported",
1470 "cargo:rustc-cfg=timergroup_driver_supported",
1471 "cargo:rustc-cfg=twai_driver_supported",
1472 "cargo:rustc-cfg=uart_driver_supported",
1473 "cargo:rustc-cfg=uhci_driver_supported",
1474 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
1475 "cargo:rustc-cfg=wifi_driver_supported",
1476 "cargo:rustc-cfg=adc_adc1",
1477 "cargo:rustc-cfg=adc_adc2",
1478 "cargo:rustc-cfg=i2c_master_i2c0",
1479 "cargo:rustc-cfg=spi_master_spi2",
1480 "cargo:rustc-cfg=spi_slave_spi2",
1481 "cargo:rustc-cfg=timergroup_timg0",
1482 "cargo:rustc-cfg=timergroup_timg1",
1483 "cargo:rustc-cfg=uart_uart0",
1484 "cargo:rustc-cfg=uart_uart1",
1485 "cargo:rustc-cfg=aes_dma",
1486 "cargo:rustc-cfg=aes_dma_mode_ecb",
1487 "cargo:rustc-cfg=aes_dma_mode_cbc",
1488 "cargo:rustc-cfg=aes_dma_mode_ofb",
1489 "cargo:rustc-cfg=aes_dma_mode_ctr",
1490 "cargo:rustc-cfg=aes_dma_mode_cfb8",
1491 "cargo:rustc-cfg=aes_dma_mode_cfb128",
1492 "cargo:rustc-cfg=aes_has_split_text_registers",
1493 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
1494 "cargo:rustc-cfg=assist_debug_has_region_monitor",
1495 "cargo:rustc-cfg=bt_controller=\"btdm\"",
1496 "cargo:rustc-cfg=dma_kind=\"gdma\"",
1497 "cargo:rustc-cfg=dma_supports_mem2mem",
1498 "cargo:rustc-cfg=dma_max_priority=\"9\"",
1499 "cargo:rustc-cfg=dma_max_priority_is_set",
1500 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
1501 "cargo:rustc-cfg=dma_gdma_version_is_set",
1502 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
1503 "cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
1504 "cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
1505 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
1506 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
1507 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
1508 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
1509 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
1510 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
1511 "cargo:rustc-cfg=i2c_master_has_conf_update",
1512 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
1513 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
1514 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
1515 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
1516 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
1517 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
1518 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
1519 "cargo:rustc-cfg=interrupt_controller=\"riscv_basic\"",
1520 "cargo:rustc-cfg=phy_combo_module",
1521 "cargo:rustc-cfg=phy_backed_up_digital_register_count=\"21\"",
1522 "cargo:rustc-cfg=phy_backed_up_digital_register_count_is_set",
1523 "cargo:rustc-cfg=rmt_ram_start=\"1610703872\"",
1524 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
1525 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
1526 "cargo:rustc-cfg=rmt_has_tx_loop_count",
1527 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
1528 "cargo:rustc-cfg=rmt_has_tx_sync",
1529 "cargo:rustc-cfg=rmt_has_rx_wrap",
1530 "cargo:rustc-cfg=rmt_has_rx_demodulation",
1531 "cargo:rustc-cfg=rmt_supports_none_clock",
1532 "cargo:rustc-cfg=rmt_supports_apb_clock",
1533 "cargo:rustc-cfg=rmt_supports_rcfast_clock",
1534 "cargo:rustc-cfg=rmt_supports_xtal_clock",
1535 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
1536 "cargo:rustc-cfg=rng_trng_supported",
1537 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
1538 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
1539 "cargo:rustc-cfg=sha_dma",
1540 "cargo:rustc-cfg=sleep_light_sleep",
1541 "cargo:rustc-cfg=sleep_deep_sleep",
1542 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
1543 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
1544 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
1545 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
1546 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
1547 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
1548 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
1549 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
1550 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
1551 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
1552 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
1553 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_out",
1554 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
1555 "cargo:rustc-cfg=soc_has_clock_node_pll_80m",
1556 "cargo:rustc-cfg=soc_has_clock_node_pll_160m",
1557 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
1558 "cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
1559 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
1560 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
1561 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
1562 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
1563 "cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
1564 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
1565 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
1566 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
1567 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
1568 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
1569 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
1570 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
1571 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
1572 "cargo:rustc-cfg=has_dram_region",
1573 "cargo:rustc-cfg=has_dram2_uninit_region",
1574 "cargo:rustc-cfg=spi_master_supports_dma",
1575 "cargo:rustc-cfg=spi_master_has_app_interrupts",
1576 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
1577 "cargo:rustc-cfg=spi_slave_supports_dma",
1578 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
1579 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
1580 "cargo:rustc-cfg=uart_ram_size=\"128\"",
1581 "cargo:rustc-cfg=uart_has_sclk_divider",
1582 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
1583 "cargo:rustc-cfg=wifi_csi_supported",
1584 ],
1585 memory_layout: &MemoryLayout {
1586 regions: &[
1587 (
1588 "dram",
1589 MemoryRegion {
1590 address_range: 0x3FC80000..0x3FCE0000,
1591 },
1592 ),
1593 (
1594 "dram2_uninit",
1595 MemoryRegion {
1596 address_range: 0x3FCCE400..0x3FCDE710,
1597 },
1598 ),
1599 ],
1600 },
1601 pins: &[
1602 PinInfo {
1603 pin: 0,
1604 limitations: &[],
1605 },
1606 PinInfo {
1607 pin: 1,
1608 limitations: &[],
1609 },
1610 PinInfo {
1611 pin: 2,
1612 limitations: &["strapping"],
1613 },
1614 PinInfo {
1615 pin: 3,
1616 limitations: &[],
1617 },
1618 PinInfo {
1619 pin: 4,
1620 limitations: &["jtag"],
1621 },
1622 PinInfo {
1623 pin: 5,
1624 limitations: &["jtag"],
1625 },
1626 PinInfo {
1627 pin: 6,
1628 limitations: &["jtag"],
1629 },
1630 PinInfo {
1631 pin: 7,
1632 limitations: &["jtag"],
1633 },
1634 PinInfo {
1635 pin: 8,
1636 limitations: &["strapping"],
1637 },
1638 PinInfo {
1639 pin: 9,
1640 limitations: &["strapping"],
1641 },
1642 PinInfo {
1643 pin: 10,
1644 limitations: &[],
1645 },
1646 PinInfo {
1647 pin: 11,
1648 limitations: &["spi_flash"],
1649 },
1650 PinInfo {
1651 pin: 12,
1652 limitations: &["spi_flash"],
1653 },
1654 PinInfo {
1655 pin: 13,
1656 limitations: &["spi_flash"],
1657 },
1658 PinInfo {
1659 pin: 14,
1660 limitations: &["spi_flash"],
1661 },
1662 PinInfo {
1663 pin: 15,
1664 limitations: &["spi_flash"],
1665 },
1666 PinInfo {
1667 pin: 16,
1668 limitations: &["spi_flash"],
1669 },
1670 PinInfo {
1671 pin: 17,
1672 limitations: &["spi_flash"],
1673 },
1674 PinInfo {
1675 pin: 18,
1676 limitations: &["usb_jtag"],
1677 },
1678 PinInfo {
1679 pin: 19,
1680 limitations: &["usb_jtag"],
1681 },
1682 PinInfo {
1683 pin: 20,
1684 limitations: &["bootloader_uart"],
1685 },
1686 PinInfo {
1687 pin: 21,
1688 limitations: &["bootloader_uart"],
1689 },
1690 ],
1691 },
1692 Self::Esp32c5 => Config {
1693 architecture: "riscv",
1694 target: "riscv32imac-unknown-none-elf",
1695 symbols: &[
1696 "esp32c5",
1697 "riscv",
1698 "single_core",
1699 "soc_has_aes",
1700 "soc_has_assist_debug",
1701 "soc_has_apb_saradc",
1702 "soc_has_cache",
1703 "soc_has_clint",
1704 "soc_has_dma",
1705 "soc_has_ds",
1706 "soc_has_ecc",
1707 "soc_has_ecdsa",
1708 "soc_has_efuse",
1709 "soc_has_etm",
1710 "soc_has_gpio",
1711 "soc_has_gpio_sd",
1712 "soc_has_hmac",
1713 "soc_has_hp_apm",
1714 "soc_has_hp_sys",
1715 "soc_has_huk",
1716 "soc_has_i2c_ana_mst",
1717 "soc_has_i2c0",
1718 "soc_has_i2s0",
1719 "soc_has_ieee802154",
1720 "soc_has_interrupt_core0",
1721 "soc_has_intpri",
1722 "soc_has_io_mux",
1723 "soc_has_keymng",
1724 "soc_has_lp_ana",
1725 "soc_has_lp_aon",
1726 "soc_has_lp_apm0",
1727 "soc_has_lp_clkrst",
1728 "soc_has_lp_i2c_ana_mst",
1729 "soc_has_lp_io_mux",
1730 "soc_has_lp_peri",
1731 "soc_has_lp_tee",
1732 "soc_has_lp_timer",
1733 "soc_has_lp_uart",
1734 "soc_has_lp_wdt",
1735 "soc_has_lpwr",
1736 "soc_has_mcpwm0",
1737 "soc_has_mem_monitor",
1738 "soc_has_modem_lpcon",
1739 "soc_has_modem_syscon",
1740 "soc_has_parl_io",
1741 "soc_has_pau",
1742 "soc_has_pcnt",
1743 "soc_has_pcr",
1744 "soc_has_pmu",
1745 "soc_has_pvt_monitor",
1746 "soc_has_rmt",
1747 "soc_has_rng",
1748 "soc_has_rsa",
1749 "soc_has_sha",
1750 "soc_has_slc",
1751 "soc_has_spi0",
1752 "soc_has_spi1",
1753 "soc_has_spi2",
1754 "soc_has_system",
1755 "soc_has_systimer",
1756 "soc_has_tee",
1757 "soc_has_timg0",
1758 "soc_has_timg1",
1759 "soc_has_uart0",
1760 "soc_has_uart1",
1761 "soc_has_uhci0",
1762 "soc_has_usb_device",
1763 "soc_has_dma_ch0",
1764 "soc_has_dma_ch1",
1765 "soc_has_dma_ch2",
1766 "soc_has_adc1",
1767 "soc_has_bt",
1768 "soc_has_flash",
1769 "soc_has_gpio_dedicated",
1770 "soc_has_lp_core",
1771 "soc_has_sw_interrupt",
1772 "soc_has_wifi",
1773 "soc_has_mem2mem0",
1774 "soc_has_mem2mem1",
1775 "soc_has_mem2mem2",
1776 "soc_has_mem2mem3",
1777 "soc_has_mem2mem4",
1778 "soc_has_mem2mem5",
1779 "soc_has_mem2mem6",
1780 "soc_has_mem2mem7",
1781 "soc_has_mem2mem8",
1782 "soc_has_psram",
1783 "rom_crc_le",
1784 "rom_crc_be",
1785 "rom_md5_bsd",
1786 "adc_driver_supported",
1787 "aes_driver_supported",
1788 "assist_debug_driver_supported",
1789 "bt_driver_supported",
1790 "dedicated_gpio_driver_supported",
1791 "dma_driver_supported",
1792 "ecc_driver_supported",
1793 "gpio_driver_supported",
1794 "i2c_master_driver_supported",
1795 "ieee802154_driver_supported",
1796 "interrupts_driver_supported",
1797 "io_mux_driver_supported",
1798 "lp_i2c_master_driver_supported",
1799 "parl_io_driver_supported",
1800 "pcnt_driver_supported",
1801 "phy_driver_supported",
1802 "psram_driver_supported",
1803 "rmt_driver_supported",
1804 "rng_driver_supported",
1805 "rsa_driver_supported",
1806 "sha_driver_supported",
1807 "soc_driver_supported",
1808 "spi_master_driver_supported",
1809 "spi_slave_driver_supported",
1810 "systimer_driver_supported",
1811 "timergroup_driver_supported",
1812 "uart_driver_supported",
1813 "uhci_driver_supported",
1814 "usb_serial_jtag_driver_supported",
1815 "wifi_driver_supported",
1816 "adc_adc1",
1817 "i2c_master_i2c0",
1818 "spi_master_spi2",
1819 "spi_slave_spi2",
1820 "timergroup_timg0",
1821 "timergroup_timg1",
1822 "uart_uart0",
1823 "uart_uart1",
1824 "aes_dma",
1825 "aes_dma_mode_ecb",
1826 "aes_dma_mode_cbc",
1827 "aes_dma_mode_ofb",
1828 "aes_dma_mode_ctr",
1829 "aes_dma_mode_cfb8",
1830 "aes_dma_mode_cfb128",
1831 "aes_has_split_text_registers",
1832 "assist_debug_has_sp_monitor",
1833 "assist_debug_has_region_monitor",
1834 "bt_controller=\"npl\"",
1835 "dma_kind=\"gdma\"",
1836 "dma_supports_mem2mem",
1837 "dma_can_access_psram",
1838 "dma_separate_in_out_interrupts",
1839 "dma_max_priority=\"5\"",
1840 "dma_max_priority_is_set",
1841 "dma_gdma_version=\"2\"",
1842 "dma_gdma_version_is_set",
1843 "ecc_separate_jacobian_point_memory",
1844 "ecc_has_memory_clock_gate",
1845 "ecc_supports_enhanced_security",
1846 "ecc_has_modular_arithmetic",
1847 "ecc_has_point_addition",
1848 "ecc_has_curve_p192",
1849 "ecc_has_curve_p256",
1850 "ecc_has_curve_p384",
1851 "gpio_gpio_function=\"1\"",
1852 "gpio_constant_0_input=\"96\"",
1853 "gpio_constant_1_input=\"64\"",
1854 "gpio_func_in_sel_offset=\"0\"",
1855 "gpio_input_signal_max=\"116\"",
1856 "gpio_output_signal_max=\"256\"",
1857 "i2c_master_has_fsm_timeouts",
1858 "i2c_master_has_hw_bus_clear",
1859 "i2c_master_has_bus_timeout_enable",
1860 "i2c_master_can_estimate_nack_reason",
1861 "i2c_master_has_conf_update",
1862 "i2c_master_has_reliable_fsm_reset",
1863 "i2c_master_has_arbitration_en",
1864 "i2c_master_has_tx_fifo_watermark",
1865 "i2c_master_bus_timeout_is_exponential",
1866 "i2c_master_max_bus_timeout=\"31\"",
1867 "i2c_master_ll_intr_mask=\"262143\"",
1868 "i2c_master_fifo_size=\"32\"",
1869 "interrupts_status_registers=\"3\"",
1870 "interrupt_controller=\"clic\"",
1871 "lp_i2c_master_fifo_size=\"16\"",
1872 "lp_uart_ram_size=\"32\"",
1873 "parl_io_version=\"2\"",
1874 "phy_combo_module",
1875 "psram_extmem_origin=\"1107296256\"",
1876 "rmt_ram_start=\"1610638336\"",
1877 "rmt_channel_ram_size=\"48\"",
1878 "rmt_has_tx_immediate_stop",
1879 "rmt_has_tx_loop_count",
1880 "rmt_has_tx_loop_auto_stop",
1881 "rmt_has_tx_carrier_data_only",
1882 "rmt_has_tx_sync",
1883 "rmt_has_rx_wrap",
1884 "rmt_has_rx_demodulation",
1885 "rmt_supports_xtal_clock",
1886 "rmt_supports_rcfast_clock",
1887 "rmt_supports_pll80mhz_clock",
1888 "rng_apb_cycle_wait_num=\"16\"",
1889 "rsa_size_increment=\"32\"",
1890 "rsa_memory_size_bytes=\"384\"",
1891 "sha_dma",
1892 "soc_cpu_has_branch_predictor",
1893 "soc_cpu_csr_prv_mode=\"2064\"",
1894 "soc_cpu_csr_prv_mode_is_set",
1895 "soc_rc_fast_clk_default=\"17500000\"",
1896 "soc_rc_fast_clk_default_is_set",
1897 "soc_has_clock_node_xtal_clk",
1898 "soc_has_clock_node_pll_clk",
1899 "soc_has_clock_node_rc_fast_clk",
1900 "soc_has_clock_node_xtal32k_clk",
1901 "soc_has_clock_node_osc_slow_clk",
1902 "soc_has_clock_node_rc_slow_clk",
1903 "soc_has_clock_node_pll_f12m",
1904 "soc_has_clock_node_pll_f20m",
1905 "soc_has_clock_node_pll_f40m",
1906 "soc_has_clock_node_pll_f48m",
1907 "soc_has_clock_node_pll_f60m",
1908 "soc_has_clock_node_pll_f80m",
1909 "soc_has_clock_node_pll_f120m",
1910 "soc_has_clock_node_pll_f160m",
1911 "soc_has_clock_node_pll_f240m",
1912 "soc_has_clock_node_hp_root_clk",
1913 "soc_has_clock_node_cpu_clk",
1914 "soc_has_clock_node_ahb_clk",
1915 "soc_has_clock_node_apb_clk",
1916 "soc_has_clock_node_xtal_d2_clk",
1917 "soc_has_clock_node_lp_fast_clk",
1918 "soc_has_clock_node_lp_slow_clk",
1919 "soc_has_clock_node_crypto_clk",
1920 "soc_has_clock_node_timg_calibration_clock",
1921 "soc_has_clock_node_uart_function_clock",
1922 "soc_has_clock_node_uart_baud_rate_generator",
1923 "soc_has_clock_node_timg_function_clock",
1924 "soc_has_clock_node_timg_wdt_clock",
1925 "soc_has_clock_node_rmt_sclk",
1926 "soc_has_clock_node_parl_io_rx_clock",
1927 "soc_has_clock_node_parl_io_tx_clock",
1928 "has_dram_region",
1929 "has_dram2_uninit_region",
1930 "spi_master_supports_dma",
1931 "spi_master_has_app_interrupts",
1932 "spi_master_has_dma_segmented_transfer",
1933 "spi_master_has_clk_pre_div",
1934 "timergroup_timg_has_divcnt_rst",
1935 "timergroup_rc_fast_calibration_is_set",
1936 "uart_ram_size=\"128\"",
1937 "uart_peripheral_controls_mem_clk",
1938 "uhci_combined_uart_selector_field",
1939 "wifi_mac_version=\"3\"",
1940 "wifi_has_5g",
1941 "wifi_csi_supported",
1942 ],
1943 cfgs: &[
1944 "cargo:rustc-cfg=esp32c5",
1945 "cargo:rustc-cfg=riscv",
1946 "cargo:rustc-cfg=single_core",
1947 "cargo:rustc-cfg=soc_has_aes",
1948 "cargo:rustc-cfg=soc_has_assist_debug",
1949 "cargo:rustc-cfg=soc_has_apb_saradc",
1950 "cargo:rustc-cfg=soc_has_cache",
1951 "cargo:rustc-cfg=soc_has_clint",
1952 "cargo:rustc-cfg=soc_has_dma",
1953 "cargo:rustc-cfg=soc_has_ds",
1954 "cargo:rustc-cfg=soc_has_ecc",
1955 "cargo:rustc-cfg=soc_has_ecdsa",
1956 "cargo:rustc-cfg=soc_has_efuse",
1957 "cargo:rustc-cfg=soc_has_etm",
1958 "cargo:rustc-cfg=soc_has_gpio",
1959 "cargo:rustc-cfg=soc_has_gpio_sd",
1960 "cargo:rustc-cfg=soc_has_hmac",
1961 "cargo:rustc-cfg=soc_has_hp_apm",
1962 "cargo:rustc-cfg=soc_has_hp_sys",
1963 "cargo:rustc-cfg=soc_has_huk",
1964 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
1965 "cargo:rustc-cfg=soc_has_i2c0",
1966 "cargo:rustc-cfg=soc_has_i2s0",
1967 "cargo:rustc-cfg=soc_has_ieee802154",
1968 "cargo:rustc-cfg=soc_has_interrupt_core0",
1969 "cargo:rustc-cfg=soc_has_intpri",
1970 "cargo:rustc-cfg=soc_has_io_mux",
1971 "cargo:rustc-cfg=soc_has_keymng",
1972 "cargo:rustc-cfg=soc_has_lp_ana",
1973 "cargo:rustc-cfg=soc_has_lp_aon",
1974 "cargo:rustc-cfg=soc_has_lp_apm0",
1975 "cargo:rustc-cfg=soc_has_lp_clkrst",
1976 "cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
1977 "cargo:rustc-cfg=soc_has_lp_io_mux",
1978 "cargo:rustc-cfg=soc_has_lp_peri",
1979 "cargo:rustc-cfg=soc_has_lp_tee",
1980 "cargo:rustc-cfg=soc_has_lp_timer",
1981 "cargo:rustc-cfg=soc_has_lp_uart",
1982 "cargo:rustc-cfg=soc_has_lp_wdt",
1983 "cargo:rustc-cfg=soc_has_lpwr",
1984 "cargo:rustc-cfg=soc_has_mcpwm0",
1985 "cargo:rustc-cfg=soc_has_mem_monitor",
1986 "cargo:rustc-cfg=soc_has_modem_lpcon",
1987 "cargo:rustc-cfg=soc_has_modem_syscon",
1988 "cargo:rustc-cfg=soc_has_parl_io",
1989 "cargo:rustc-cfg=soc_has_pau",
1990 "cargo:rustc-cfg=soc_has_pcnt",
1991 "cargo:rustc-cfg=soc_has_pcr",
1992 "cargo:rustc-cfg=soc_has_pmu",
1993 "cargo:rustc-cfg=soc_has_pvt_monitor",
1994 "cargo:rustc-cfg=soc_has_rmt",
1995 "cargo:rustc-cfg=soc_has_rng",
1996 "cargo:rustc-cfg=soc_has_rsa",
1997 "cargo:rustc-cfg=soc_has_sha",
1998 "cargo:rustc-cfg=soc_has_slc",
1999 "cargo:rustc-cfg=soc_has_spi0",
2000 "cargo:rustc-cfg=soc_has_spi1",
2001 "cargo:rustc-cfg=soc_has_spi2",
2002 "cargo:rustc-cfg=soc_has_system",
2003 "cargo:rustc-cfg=soc_has_systimer",
2004 "cargo:rustc-cfg=soc_has_tee",
2005 "cargo:rustc-cfg=soc_has_timg0",
2006 "cargo:rustc-cfg=soc_has_timg1",
2007 "cargo:rustc-cfg=soc_has_uart0",
2008 "cargo:rustc-cfg=soc_has_uart1",
2009 "cargo:rustc-cfg=soc_has_uhci0",
2010 "cargo:rustc-cfg=soc_has_usb_device",
2011 "cargo:rustc-cfg=soc_has_dma_ch0",
2012 "cargo:rustc-cfg=soc_has_dma_ch1",
2013 "cargo:rustc-cfg=soc_has_dma_ch2",
2014 "cargo:rustc-cfg=soc_has_adc1",
2015 "cargo:rustc-cfg=soc_has_bt",
2016 "cargo:rustc-cfg=soc_has_flash",
2017 "cargo:rustc-cfg=soc_has_gpio_dedicated",
2018 "cargo:rustc-cfg=soc_has_lp_core",
2019 "cargo:rustc-cfg=soc_has_sw_interrupt",
2020 "cargo:rustc-cfg=soc_has_wifi",
2021 "cargo:rustc-cfg=soc_has_mem2mem0",
2022 "cargo:rustc-cfg=soc_has_mem2mem1",
2023 "cargo:rustc-cfg=soc_has_mem2mem2",
2024 "cargo:rustc-cfg=soc_has_mem2mem3",
2025 "cargo:rustc-cfg=soc_has_mem2mem4",
2026 "cargo:rustc-cfg=soc_has_mem2mem5",
2027 "cargo:rustc-cfg=soc_has_mem2mem6",
2028 "cargo:rustc-cfg=soc_has_mem2mem7",
2029 "cargo:rustc-cfg=soc_has_mem2mem8",
2030 "cargo:rustc-cfg=soc_has_psram",
2031 "cargo:rustc-cfg=rom_crc_le",
2032 "cargo:rustc-cfg=rom_crc_be",
2033 "cargo:rustc-cfg=rom_md5_bsd",
2034 "cargo:rustc-cfg=adc_driver_supported",
2035 "cargo:rustc-cfg=aes_driver_supported",
2036 "cargo:rustc-cfg=assist_debug_driver_supported",
2037 "cargo:rustc-cfg=bt_driver_supported",
2038 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
2039 "cargo:rustc-cfg=dma_driver_supported",
2040 "cargo:rustc-cfg=ecc_driver_supported",
2041 "cargo:rustc-cfg=gpio_driver_supported",
2042 "cargo:rustc-cfg=i2c_master_driver_supported",
2043 "cargo:rustc-cfg=ieee802154_driver_supported",
2044 "cargo:rustc-cfg=interrupts_driver_supported",
2045 "cargo:rustc-cfg=io_mux_driver_supported",
2046 "cargo:rustc-cfg=lp_i2c_master_driver_supported",
2047 "cargo:rustc-cfg=parl_io_driver_supported",
2048 "cargo:rustc-cfg=pcnt_driver_supported",
2049 "cargo:rustc-cfg=phy_driver_supported",
2050 "cargo:rustc-cfg=psram_driver_supported",
2051 "cargo:rustc-cfg=rmt_driver_supported",
2052 "cargo:rustc-cfg=rng_driver_supported",
2053 "cargo:rustc-cfg=rsa_driver_supported",
2054 "cargo:rustc-cfg=sha_driver_supported",
2055 "cargo:rustc-cfg=soc_driver_supported",
2056 "cargo:rustc-cfg=spi_master_driver_supported",
2057 "cargo:rustc-cfg=spi_slave_driver_supported",
2058 "cargo:rustc-cfg=systimer_driver_supported",
2059 "cargo:rustc-cfg=timergroup_driver_supported",
2060 "cargo:rustc-cfg=uart_driver_supported",
2061 "cargo:rustc-cfg=uhci_driver_supported",
2062 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
2063 "cargo:rustc-cfg=wifi_driver_supported",
2064 "cargo:rustc-cfg=adc_adc1",
2065 "cargo:rustc-cfg=i2c_master_i2c0",
2066 "cargo:rustc-cfg=spi_master_spi2",
2067 "cargo:rustc-cfg=spi_slave_spi2",
2068 "cargo:rustc-cfg=timergroup_timg0",
2069 "cargo:rustc-cfg=timergroup_timg1",
2070 "cargo:rustc-cfg=uart_uart0",
2071 "cargo:rustc-cfg=uart_uart1",
2072 "cargo:rustc-cfg=aes_dma",
2073 "cargo:rustc-cfg=aes_dma_mode_ecb",
2074 "cargo:rustc-cfg=aes_dma_mode_cbc",
2075 "cargo:rustc-cfg=aes_dma_mode_ofb",
2076 "cargo:rustc-cfg=aes_dma_mode_ctr",
2077 "cargo:rustc-cfg=aes_dma_mode_cfb8",
2078 "cargo:rustc-cfg=aes_dma_mode_cfb128",
2079 "cargo:rustc-cfg=aes_has_split_text_registers",
2080 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
2081 "cargo:rustc-cfg=assist_debug_has_region_monitor",
2082 "cargo:rustc-cfg=bt_controller=\"npl\"",
2083 "cargo:rustc-cfg=dma_kind=\"gdma\"",
2084 "cargo:rustc-cfg=dma_supports_mem2mem",
2085 "cargo:rustc-cfg=dma_can_access_psram",
2086 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
2087 "cargo:rustc-cfg=dma_max_priority=\"5\"",
2088 "cargo:rustc-cfg=dma_max_priority_is_set",
2089 "cargo:rustc-cfg=dma_gdma_version=\"2\"",
2090 "cargo:rustc-cfg=dma_gdma_version_is_set",
2091 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
2092 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
2093 "cargo:rustc-cfg=ecc_supports_enhanced_security",
2094 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
2095 "cargo:rustc-cfg=ecc_has_point_addition",
2096 "cargo:rustc-cfg=ecc_has_curve_p192",
2097 "cargo:rustc-cfg=ecc_has_curve_p256",
2098 "cargo:rustc-cfg=ecc_has_curve_p384",
2099 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
2100 "cargo:rustc-cfg=gpio_constant_0_input=\"96\"",
2101 "cargo:rustc-cfg=gpio_constant_1_input=\"64\"",
2102 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
2103 "cargo:rustc-cfg=gpio_input_signal_max=\"116\"",
2104 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
2105 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
2106 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
2107 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
2108 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
2109 "cargo:rustc-cfg=i2c_master_has_conf_update",
2110 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
2111 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
2112 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
2113 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
2114 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
2115 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
2116 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
2117 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
2118 "cargo:rustc-cfg=interrupt_controller=\"clic\"",
2119 "cargo:rustc-cfg=lp_i2c_master_fifo_size=\"16\"",
2120 "cargo:rustc-cfg=lp_uart_ram_size=\"32\"",
2121 "cargo:rustc-cfg=parl_io_version=\"2\"",
2122 "cargo:rustc-cfg=phy_combo_module",
2123 "cargo:rustc-cfg=psram_extmem_origin=\"1107296256\"",
2124 "cargo:rustc-cfg=rmt_ram_start=\"1610638336\"",
2125 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
2126 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
2127 "cargo:rustc-cfg=rmt_has_tx_loop_count",
2128 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
2129 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
2130 "cargo:rustc-cfg=rmt_has_tx_sync",
2131 "cargo:rustc-cfg=rmt_has_rx_wrap",
2132 "cargo:rustc-cfg=rmt_has_rx_demodulation",
2133 "cargo:rustc-cfg=rmt_supports_xtal_clock",
2134 "cargo:rustc-cfg=rmt_supports_rcfast_clock",
2135 "cargo:rustc-cfg=rmt_supports_pll80mhz_clock",
2136 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
2137 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
2138 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
2139 "cargo:rustc-cfg=sha_dma",
2140 "cargo:rustc-cfg=soc_cpu_has_branch_predictor",
2141 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"2064\"",
2142 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
2143 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
2144 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
2145 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
2146 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
2147 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
2148 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
2149 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
2150 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
2151 "cargo:rustc-cfg=soc_has_clock_node_pll_f12m",
2152 "cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
2153 "cargo:rustc-cfg=soc_has_clock_node_pll_f40m",
2154 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
2155 "cargo:rustc-cfg=soc_has_clock_node_pll_f60m",
2156 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
2157 "cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
2158 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
2159 "cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
2160 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
2161 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
2162 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
2163 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
2164 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
2165 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
2166 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
2167 "cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
2168 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
2169 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
2170 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
2171 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
2172 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
2173 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
2174 "cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
2175 "cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
2176 "cargo:rustc-cfg=has_dram_region",
2177 "cargo:rustc-cfg=has_dram2_uninit_region",
2178 "cargo:rustc-cfg=spi_master_supports_dma",
2179 "cargo:rustc-cfg=spi_master_has_app_interrupts",
2180 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
2181 "cargo:rustc-cfg=spi_master_has_clk_pre_div",
2182 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
2183 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
2184 "cargo:rustc-cfg=uart_ram_size=\"128\"",
2185 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
2186 "cargo:rustc-cfg=uhci_combined_uart_selector_field",
2187 "cargo:rustc-cfg=wifi_mac_version=\"3\"",
2188 "cargo:rustc-cfg=wifi_has_5g",
2189 "cargo:rustc-cfg=wifi_csi_supported",
2190 ],
2191 memory_layout: &MemoryLayout {
2192 regions: &[
2193 (
2194 "dram",
2195 MemoryRegion {
2196 address_range: 0x40800000..0x40860000,
2197 },
2198 ),
2199 (
2200 "dram2_uninit",
2201 MemoryRegion {
2202 address_range: 0x4084E5A0..0x4085E5A0,
2203 },
2204 ),
2205 ],
2206 },
2207 pins: &[
2208 PinInfo {
2209 pin: 0,
2210 limitations: &[],
2211 },
2212 PinInfo {
2213 pin: 1,
2214 limitations: &[],
2215 },
2216 PinInfo {
2217 pin: 2,
2218 limitations: &["strapping", "jtag"],
2219 },
2220 PinInfo {
2221 pin: 3,
2222 limitations: &["strapping", "jtag"],
2223 },
2224 PinInfo {
2225 pin: 4,
2226 limitations: &["jtag"],
2227 },
2228 PinInfo {
2229 pin: 5,
2230 limitations: &["jtag"],
2231 },
2232 PinInfo {
2233 pin: 6,
2234 limitations: &[],
2235 },
2236 PinInfo {
2237 pin: 7,
2238 limitations: &["strapping"],
2239 },
2240 PinInfo {
2241 pin: 8,
2242 limitations: &[],
2243 },
2244 PinInfo {
2245 pin: 9,
2246 limitations: &[],
2247 },
2248 PinInfo {
2249 pin: 10,
2250 limitations: &[],
2251 },
2252 PinInfo {
2253 pin: 11,
2254 limitations: &["bootloader_uart"],
2255 },
2256 PinInfo {
2257 pin: 12,
2258 limitations: &["bootloader_uart"],
2259 },
2260 PinInfo {
2261 pin: 13,
2262 limitations: &["usb_jtag"],
2263 },
2264 PinInfo {
2265 pin: 14,
2266 limitations: &["usb_jtag"],
2267 },
2268 PinInfo {
2269 pin: 23,
2270 limitations: &[],
2271 },
2272 PinInfo {
2273 pin: 24,
2274 limitations: &[],
2275 },
2276 PinInfo {
2277 pin: 25,
2278 limitations: &["strapping"],
2279 },
2280 PinInfo {
2281 pin: 26,
2282 limitations: &["strapping"],
2283 },
2284 PinInfo {
2285 pin: 27,
2286 limitations: &["strapping"],
2287 },
2288 PinInfo {
2289 pin: 28,
2290 limitations: &["strapping"],
2291 },
2292 ],
2293 },
2294 Self::Esp32c6 => Config {
2295 architecture: "riscv",
2296 target: "riscv32imac-unknown-none-elf",
2297 symbols: &[
2298 "esp32c6",
2299 "riscv",
2300 "single_core",
2301 "soc_has_aes",
2302 "soc_has_apb_saradc",
2303 "soc_has_assist_debug",
2304 "soc_has_atomic",
2305 "soc_has_dma",
2306 "soc_has_ds",
2307 "soc_has_ecc",
2308 "soc_has_efuse",
2309 "soc_has_extmem",
2310 "soc_has_gpio",
2311 "soc_has_gpio_sd",
2312 "soc_has_hinf",
2313 "soc_has_hmac",
2314 "soc_has_hp_apm",
2315 "soc_has_hp_sys",
2316 "soc_has_i2c_ana_mst",
2317 "soc_has_i2c0",
2318 "soc_has_i2s0",
2319 "soc_has_ieee802154",
2320 "soc_has_interrupt_core0",
2321 "soc_has_intpri",
2322 "soc_has_io_mux",
2323 "soc_has_ledc",
2324 "soc_has_lp_ana",
2325 "soc_has_lp_aon",
2326 "soc_has_lp_apm",
2327 "soc_has_lp_apm0",
2328 "soc_has_lp_clkrst",
2329 "soc_has_lp_i2c0",
2330 "soc_has_lp_i2c_ana_mst",
2331 "soc_has_lp_io",
2332 "soc_has_lp_peri",
2333 "soc_has_lp_tee",
2334 "soc_has_lp_timer",
2335 "soc_has_lp_uart",
2336 "soc_has_lp_wdt",
2337 "soc_has_lpwr",
2338 "soc_has_mcpwm0",
2339 "soc_has_mem_monitor",
2340 "soc_has_modem_lpcon",
2341 "soc_has_modem_syscon",
2342 "soc_has_otp_debug",
2343 "soc_has_parl_io",
2344 "soc_has_pau",
2345 "soc_has_pcnt",
2346 "soc_has_pcr",
2347 "soc_has_plic_mx",
2348 "soc_has_pmu",
2349 "soc_has_rmt",
2350 "soc_has_rng",
2351 "soc_has_rsa",
2352 "soc_has_sha",
2353 "soc_has_slchost",
2354 "soc_has_etm",
2355 "soc_has_spi0",
2356 "soc_has_spi1",
2357 "soc_has_spi2",
2358 "soc_has_system",
2359 "soc_has_systimer",
2360 "soc_has_tee",
2361 "soc_has_timg0",
2362 "soc_has_timg1",
2363 "soc_has_trace0",
2364 "soc_has_twai0",
2365 "soc_has_twai1",
2366 "soc_has_uart0",
2367 "soc_has_uart1",
2368 "soc_has_uhci0",
2369 "soc_has_usb_device",
2370 "soc_has_dma_ch0",
2371 "soc_has_dma_ch1",
2372 "soc_has_dma_ch2",
2373 "soc_has_adc1",
2374 "soc_has_bt",
2375 "soc_has_flash",
2376 "soc_has_gpio_dedicated",
2377 "soc_has_lp_core",
2378 "soc_has_sw_interrupt",
2379 "soc_has_tsens",
2380 "soc_has_wifi",
2381 "soc_has_mem2mem0",
2382 "soc_has_mem2mem1",
2383 "soc_has_mem2mem2",
2384 "soc_has_mem2mem3",
2385 "soc_has_mem2mem4",
2386 "soc_has_mem2mem5",
2387 "soc_has_mem2mem6",
2388 "soc_has_mem2mem7",
2389 "soc_has_mem2mem8",
2390 "phy",
2391 "lp_core",
2392 "swd",
2393 "rom_crc_le",
2394 "rom_crc_be",
2395 "rom_md5_bsd",
2396 "pm_support_wifi_wakeup",
2397 "pm_support_beacon_wakeup",
2398 "pm_support_bt_wakeup",
2399 "gpio_support_deepsleep_wakeup",
2400 "uart_support_wakeup_int",
2401 "pm_support_ext1_wakeup",
2402 "adc_driver_supported",
2403 "aes_driver_supported",
2404 "assist_debug_driver_supported",
2405 "bt_driver_supported",
2406 "dedicated_gpio_driver_supported",
2407 "dma_driver_supported",
2408 "ecc_driver_supported",
2409 "etm_driver_supported",
2410 "gpio_driver_supported",
2411 "hmac_driver_supported",
2412 "i2c_master_driver_supported",
2413 "i2s_driver_supported",
2414 "ieee802154_driver_supported",
2415 "interrupts_driver_supported",
2416 "io_mux_driver_supported",
2417 "ledc_driver_supported",
2418 "lp_i2c_master_driver_supported",
2419 "lp_uart_driver_supported",
2420 "mcpwm_driver_supported",
2421 "parl_io_driver_supported",
2422 "pcnt_driver_supported",
2423 "phy_driver_supported",
2424 "rmt_driver_supported",
2425 "rng_driver_supported",
2426 "rsa_driver_supported",
2427 "lp_timer_driver_supported",
2428 "sd_slave_driver_supported",
2429 "sha_driver_supported",
2430 "sleep_driver_supported",
2431 "soc_driver_supported",
2432 "spi_master_driver_supported",
2433 "spi_slave_driver_supported",
2434 "systimer_driver_supported",
2435 "temp_sensor_driver_supported",
2436 "timergroup_driver_supported",
2437 "twai_driver_supported",
2438 "uart_driver_supported",
2439 "uhci_driver_supported",
2440 "ulp_riscv_driver_supported",
2441 "usb_serial_jtag_driver_supported",
2442 "wifi_driver_supported",
2443 "adc_adc1",
2444 "i2c_master_i2c0",
2445 "spi_master_spi2",
2446 "spi_slave_spi2",
2447 "timergroup_timg0",
2448 "timergroup_timg1",
2449 "uart_uart0",
2450 "uart_uart1",
2451 "aes_dma",
2452 "aes_dma_mode_ecb",
2453 "aes_dma_mode_cbc",
2454 "aes_dma_mode_ofb",
2455 "aes_dma_mode_ctr",
2456 "aes_dma_mode_cfb8",
2457 "aes_dma_mode_cfb128",
2458 "aes_has_split_text_registers",
2459 "assist_debug_has_sp_monitor",
2460 "assist_debug_has_region_monitor",
2461 "bt_controller=\"npl\"",
2462 "dma_kind=\"gdma\"",
2463 "dma_supports_mem2mem",
2464 "dma_separate_in_out_interrupts",
2465 "dma_max_priority=\"9\"",
2466 "dma_max_priority_is_set",
2467 "dma_gdma_version=\"1\"",
2468 "dma_gdma_version_is_set",
2469 "ecc_zero_extend_writes",
2470 "ecc_has_memory_clock_gate",
2471 "ecc_has_curve_p192",
2472 "ecc_has_curve_p256",
2473 "gpio_gpio_function=\"1\"",
2474 "gpio_constant_0_input=\"60\"",
2475 "gpio_constant_1_input=\"56\"",
2476 "gpio_func_in_sel_offset=\"0\"",
2477 "gpio_input_signal_max=\"124\"",
2478 "gpio_output_signal_max=\"128\"",
2479 "i2c_master_has_fsm_timeouts",
2480 "i2c_master_has_hw_bus_clear",
2481 "i2c_master_has_bus_timeout_enable",
2482 "i2c_master_can_estimate_nack_reason",
2483 "i2c_master_has_conf_update",
2484 "i2c_master_has_reliable_fsm_reset",
2485 "i2c_master_has_arbitration_en",
2486 "i2c_master_has_tx_fifo_watermark",
2487 "i2c_master_bus_timeout_is_exponential",
2488 "i2c_master_max_bus_timeout=\"31\"",
2489 "i2c_master_ll_intr_mask=\"262143\"",
2490 "i2c_master_fifo_size=\"32\"",
2491 "interrupts_status_registers=\"3\"",
2492 "interrupt_controller=\"plic\"",
2493 "lp_i2c_master_fifo_size=\"16\"",
2494 "lp_uart_ram_size=\"32\"",
2495 "parl_io_version=\"1\"",
2496 "phy_combo_module",
2497 "rmt_ram_start=\"1610638336\"",
2498 "rmt_channel_ram_size=\"48\"",
2499 "rmt_has_tx_immediate_stop",
2500 "rmt_has_tx_loop_count",
2501 "rmt_has_tx_loop_auto_stop",
2502 "rmt_has_tx_carrier_data_only",
2503 "rmt_has_tx_sync",
2504 "rmt_has_rx_wrap",
2505 "rmt_has_rx_demodulation",
2506 "rmt_supports_none_clock",
2507 "rmt_supports_pll80mhz_clock",
2508 "rmt_supports_rcfast_clock",
2509 "rmt_supports_xtal_clock",
2510 "rng_apb_cycle_wait_num=\"16\"",
2511 "rng_trng_supported",
2512 "rsa_size_increment=\"32\"",
2513 "rsa_memory_size_bytes=\"384\"",
2514 "sha_dma",
2515 "sleep_light_sleep",
2516 "sleep_deep_sleep",
2517 "soc_cpu_has_csr_pc",
2518 "soc_cpu_csr_prv_mode=\"3088\"",
2519 "soc_cpu_csr_prv_mode_is_set",
2520 "soc_rc_fast_clk_default=\"17500000\"",
2521 "soc_rc_fast_clk_default_is_set",
2522 "soc_has_clock_node_xtal_clk",
2523 "soc_has_clock_node_pll_clk",
2524 "soc_has_clock_node_rc_fast_clk",
2525 "soc_has_clock_node_xtal32k_clk",
2526 "soc_has_clock_node_osc_slow_clk",
2527 "soc_has_clock_node_rc_slow_clk",
2528 "soc_has_clock_node_soc_root_clk",
2529 "soc_has_clock_node_hp_root_clk",
2530 "soc_has_clock_node_cpu_hs_div",
2531 "soc_has_clock_node_cpu_ls_div",
2532 "soc_has_clock_node_cpu_clk",
2533 "soc_has_clock_node_ahb_hs_div",
2534 "soc_has_clock_node_ahb_ls_div",
2535 "soc_has_clock_node_ahb_clk",
2536 "soc_has_clock_node_apb_clk",
2537 "soc_has_clock_node_mspi_fast_hs_clk",
2538 "soc_has_clock_node_mspi_fast_ls_clk",
2539 "soc_has_clock_node_mspi_fast_clk",
2540 "soc_has_clock_node_pll_f48m",
2541 "soc_has_clock_node_pll_f80m",
2542 "soc_has_clock_node_pll_f160m",
2543 "soc_has_clock_node_pll_f240m",
2544 "soc_has_clock_node_ledc_sclk",
2545 "soc_has_clock_node_xtal_d2_clk",
2546 "soc_has_clock_node_lp_fast_clk",
2547 "soc_has_clock_node_lp_slow_clk",
2548 "soc_has_clock_node_timg_calibration_clock",
2549 "soc_has_clock_node_uart_function_clock",
2550 "soc_has_clock_node_uart_baud_rate_generator",
2551 "soc_has_clock_node_rmt_sclk",
2552 "soc_has_clock_node_timg_function_clock",
2553 "soc_has_clock_node_timg_wdt_clock",
2554 "soc_has_clock_node_mcpwm_function_clock",
2555 "soc_has_clock_node_parl_io_rx_clock",
2556 "soc_has_clock_node_parl_io_tx_clock",
2557 "has_dram_region",
2558 "has_dram2_uninit_region",
2559 "spi_master_supports_dma",
2560 "spi_master_has_app_interrupts",
2561 "spi_master_has_dma_segmented_transfer",
2562 "spi_slave_supports_dma",
2563 "timergroup_timg_has_divcnt_rst",
2564 "timergroup_rc_fast_calibration_divider",
2565 "timergroup_rc_fast_calibration_is_set",
2566 "uart_ram_size=\"128\"",
2567 "uart_peripheral_controls_mem_clk",
2568 "wifi_has_wifi6",
2569 "wifi_mac_version=\"2\"",
2570 "wifi_csi_supported",
2571 ],
2572 cfgs: &[
2573 "cargo:rustc-cfg=esp32c6",
2574 "cargo:rustc-cfg=riscv",
2575 "cargo:rustc-cfg=single_core",
2576 "cargo:rustc-cfg=soc_has_aes",
2577 "cargo:rustc-cfg=soc_has_apb_saradc",
2578 "cargo:rustc-cfg=soc_has_assist_debug",
2579 "cargo:rustc-cfg=soc_has_atomic",
2580 "cargo:rustc-cfg=soc_has_dma",
2581 "cargo:rustc-cfg=soc_has_ds",
2582 "cargo:rustc-cfg=soc_has_ecc",
2583 "cargo:rustc-cfg=soc_has_efuse",
2584 "cargo:rustc-cfg=soc_has_extmem",
2585 "cargo:rustc-cfg=soc_has_gpio",
2586 "cargo:rustc-cfg=soc_has_gpio_sd",
2587 "cargo:rustc-cfg=soc_has_hinf",
2588 "cargo:rustc-cfg=soc_has_hmac",
2589 "cargo:rustc-cfg=soc_has_hp_apm",
2590 "cargo:rustc-cfg=soc_has_hp_sys",
2591 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
2592 "cargo:rustc-cfg=soc_has_i2c0",
2593 "cargo:rustc-cfg=soc_has_i2s0",
2594 "cargo:rustc-cfg=soc_has_ieee802154",
2595 "cargo:rustc-cfg=soc_has_interrupt_core0",
2596 "cargo:rustc-cfg=soc_has_intpri",
2597 "cargo:rustc-cfg=soc_has_io_mux",
2598 "cargo:rustc-cfg=soc_has_ledc",
2599 "cargo:rustc-cfg=soc_has_lp_ana",
2600 "cargo:rustc-cfg=soc_has_lp_aon",
2601 "cargo:rustc-cfg=soc_has_lp_apm",
2602 "cargo:rustc-cfg=soc_has_lp_apm0",
2603 "cargo:rustc-cfg=soc_has_lp_clkrst",
2604 "cargo:rustc-cfg=soc_has_lp_i2c0",
2605 "cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
2606 "cargo:rustc-cfg=soc_has_lp_io",
2607 "cargo:rustc-cfg=soc_has_lp_peri",
2608 "cargo:rustc-cfg=soc_has_lp_tee",
2609 "cargo:rustc-cfg=soc_has_lp_timer",
2610 "cargo:rustc-cfg=soc_has_lp_uart",
2611 "cargo:rustc-cfg=soc_has_lp_wdt",
2612 "cargo:rustc-cfg=soc_has_lpwr",
2613 "cargo:rustc-cfg=soc_has_mcpwm0",
2614 "cargo:rustc-cfg=soc_has_mem_monitor",
2615 "cargo:rustc-cfg=soc_has_modem_lpcon",
2616 "cargo:rustc-cfg=soc_has_modem_syscon",
2617 "cargo:rustc-cfg=soc_has_otp_debug",
2618 "cargo:rustc-cfg=soc_has_parl_io",
2619 "cargo:rustc-cfg=soc_has_pau",
2620 "cargo:rustc-cfg=soc_has_pcnt",
2621 "cargo:rustc-cfg=soc_has_pcr",
2622 "cargo:rustc-cfg=soc_has_plic_mx",
2623 "cargo:rustc-cfg=soc_has_pmu",
2624 "cargo:rustc-cfg=soc_has_rmt",
2625 "cargo:rustc-cfg=soc_has_rng",
2626 "cargo:rustc-cfg=soc_has_rsa",
2627 "cargo:rustc-cfg=soc_has_sha",
2628 "cargo:rustc-cfg=soc_has_slchost",
2629 "cargo:rustc-cfg=soc_has_etm",
2630 "cargo:rustc-cfg=soc_has_spi0",
2631 "cargo:rustc-cfg=soc_has_spi1",
2632 "cargo:rustc-cfg=soc_has_spi2",
2633 "cargo:rustc-cfg=soc_has_system",
2634 "cargo:rustc-cfg=soc_has_systimer",
2635 "cargo:rustc-cfg=soc_has_tee",
2636 "cargo:rustc-cfg=soc_has_timg0",
2637 "cargo:rustc-cfg=soc_has_timg1",
2638 "cargo:rustc-cfg=soc_has_trace0",
2639 "cargo:rustc-cfg=soc_has_twai0",
2640 "cargo:rustc-cfg=soc_has_twai1",
2641 "cargo:rustc-cfg=soc_has_uart0",
2642 "cargo:rustc-cfg=soc_has_uart1",
2643 "cargo:rustc-cfg=soc_has_uhci0",
2644 "cargo:rustc-cfg=soc_has_usb_device",
2645 "cargo:rustc-cfg=soc_has_dma_ch0",
2646 "cargo:rustc-cfg=soc_has_dma_ch1",
2647 "cargo:rustc-cfg=soc_has_dma_ch2",
2648 "cargo:rustc-cfg=soc_has_adc1",
2649 "cargo:rustc-cfg=soc_has_bt",
2650 "cargo:rustc-cfg=soc_has_flash",
2651 "cargo:rustc-cfg=soc_has_gpio_dedicated",
2652 "cargo:rustc-cfg=soc_has_lp_core",
2653 "cargo:rustc-cfg=soc_has_sw_interrupt",
2654 "cargo:rustc-cfg=soc_has_tsens",
2655 "cargo:rustc-cfg=soc_has_wifi",
2656 "cargo:rustc-cfg=soc_has_mem2mem0",
2657 "cargo:rustc-cfg=soc_has_mem2mem1",
2658 "cargo:rustc-cfg=soc_has_mem2mem2",
2659 "cargo:rustc-cfg=soc_has_mem2mem3",
2660 "cargo:rustc-cfg=soc_has_mem2mem4",
2661 "cargo:rustc-cfg=soc_has_mem2mem5",
2662 "cargo:rustc-cfg=soc_has_mem2mem6",
2663 "cargo:rustc-cfg=soc_has_mem2mem7",
2664 "cargo:rustc-cfg=soc_has_mem2mem8",
2665 "cargo:rustc-cfg=phy",
2666 "cargo:rustc-cfg=lp_core",
2667 "cargo:rustc-cfg=swd",
2668 "cargo:rustc-cfg=rom_crc_le",
2669 "cargo:rustc-cfg=rom_crc_be",
2670 "cargo:rustc-cfg=rom_md5_bsd",
2671 "cargo:rustc-cfg=pm_support_wifi_wakeup",
2672 "cargo:rustc-cfg=pm_support_beacon_wakeup",
2673 "cargo:rustc-cfg=pm_support_bt_wakeup",
2674 "cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
2675 "cargo:rustc-cfg=uart_support_wakeup_int",
2676 "cargo:rustc-cfg=pm_support_ext1_wakeup",
2677 "cargo:rustc-cfg=adc_driver_supported",
2678 "cargo:rustc-cfg=aes_driver_supported",
2679 "cargo:rustc-cfg=assist_debug_driver_supported",
2680 "cargo:rustc-cfg=bt_driver_supported",
2681 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
2682 "cargo:rustc-cfg=dma_driver_supported",
2683 "cargo:rustc-cfg=ecc_driver_supported",
2684 "cargo:rustc-cfg=etm_driver_supported",
2685 "cargo:rustc-cfg=gpio_driver_supported",
2686 "cargo:rustc-cfg=hmac_driver_supported",
2687 "cargo:rustc-cfg=i2c_master_driver_supported",
2688 "cargo:rustc-cfg=i2s_driver_supported",
2689 "cargo:rustc-cfg=ieee802154_driver_supported",
2690 "cargo:rustc-cfg=interrupts_driver_supported",
2691 "cargo:rustc-cfg=io_mux_driver_supported",
2692 "cargo:rustc-cfg=ledc_driver_supported",
2693 "cargo:rustc-cfg=lp_i2c_master_driver_supported",
2694 "cargo:rustc-cfg=lp_uart_driver_supported",
2695 "cargo:rustc-cfg=mcpwm_driver_supported",
2696 "cargo:rustc-cfg=parl_io_driver_supported",
2697 "cargo:rustc-cfg=pcnt_driver_supported",
2698 "cargo:rustc-cfg=phy_driver_supported",
2699 "cargo:rustc-cfg=rmt_driver_supported",
2700 "cargo:rustc-cfg=rng_driver_supported",
2701 "cargo:rustc-cfg=rsa_driver_supported",
2702 "cargo:rustc-cfg=lp_timer_driver_supported",
2703 "cargo:rustc-cfg=sd_slave_driver_supported",
2704 "cargo:rustc-cfg=sha_driver_supported",
2705 "cargo:rustc-cfg=sleep_driver_supported",
2706 "cargo:rustc-cfg=soc_driver_supported",
2707 "cargo:rustc-cfg=spi_master_driver_supported",
2708 "cargo:rustc-cfg=spi_slave_driver_supported",
2709 "cargo:rustc-cfg=systimer_driver_supported",
2710 "cargo:rustc-cfg=temp_sensor_driver_supported",
2711 "cargo:rustc-cfg=timergroup_driver_supported",
2712 "cargo:rustc-cfg=twai_driver_supported",
2713 "cargo:rustc-cfg=uart_driver_supported",
2714 "cargo:rustc-cfg=uhci_driver_supported",
2715 "cargo:rustc-cfg=ulp_riscv_driver_supported",
2716 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
2717 "cargo:rustc-cfg=wifi_driver_supported",
2718 "cargo:rustc-cfg=adc_adc1",
2719 "cargo:rustc-cfg=i2c_master_i2c0",
2720 "cargo:rustc-cfg=spi_master_spi2",
2721 "cargo:rustc-cfg=spi_slave_spi2",
2722 "cargo:rustc-cfg=timergroup_timg0",
2723 "cargo:rustc-cfg=timergroup_timg1",
2724 "cargo:rustc-cfg=uart_uart0",
2725 "cargo:rustc-cfg=uart_uart1",
2726 "cargo:rustc-cfg=aes_dma",
2727 "cargo:rustc-cfg=aes_dma_mode_ecb",
2728 "cargo:rustc-cfg=aes_dma_mode_cbc",
2729 "cargo:rustc-cfg=aes_dma_mode_ofb",
2730 "cargo:rustc-cfg=aes_dma_mode_ctr",
2731 "cargo:rustc-cfg=aes_dma_mode_cfb8",
2732 "cargo:rustc-cfg=aes_dma_mode_cfb128",
2733 "cargo:rustc-cfg=aes_has_split_text_registers",
2734 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
2735 "cargo:rustc-cfg=assist_debug_has_region_monitor",
2736 "cargo:rustc-cfg=bt_controller=\"npl\"",
2737 "cargo:rustc-cfg=dma_kind=\"gdma\"",
2738 "cargo:rustc-cfg=dma_supports_mem2mem",
2739 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
2740 "cargo:rustc-cfg=dma_max_priority=\"9\"",
2741 "cargo:rustc-cfg=dma_max_priority_is_set",
2742 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
2743 "cargo:rustc-cfg=dma_gdma_version_is_set",
2744 "cargo:rustc-cfg=ecc_zero_extend_writes",
2745 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
2746 "cargo:rustc-cfg=ecc_has_curve_p192",
2747 "cargo:rustc-cfg=ecc_has_curve_p256",
2748 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
2749 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
2750 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
2751 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
2752 "cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
2753 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
2754 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
2755 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
2756 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
2757 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
2758 "cargo:rustc-cfg=i2c_master_has_conf_update",
2759 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
2760 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
2761 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
2762 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
2763 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
2764 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
2765 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
2766 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
2767 "cargo:rustc-cfg=interrupt_controller=\"plic\"",
2768 "cargo:rustc-cfg=lp_i2c_master_fifo_size=\"16\"",
2769 "cargo:rustc-cfg=lp_uart_ram_size=\"32\"",
2770 "cargo:rustc-cfg=parl_io_version=\"1\"",
2771 "cargo:rustc-cfg=phy_combo_module",
2772 "cargo:rustc-cfg=rmt_ram_start=\"1610638336\"",
2773 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
2774 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
2775 "cargo:rustc-cfg=rmt_has_tx_loop_count",
2776 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
2777 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
2778 "cargo:rustc-cfg=rmt_has_tx_sync",
2779 "cargo:rustc-cfg=rmt_has_rx_wrap",
2780 "cargo:rustc-cfg=rmt_has_rx_demodulation",
2781 "cargo:rustc-cfg=rmt_supports_none_clock",
2782 "cargo:rustc-cfg=rmt_supports_pll80mhz_clock",
2783 "cargo:rustc-cfg=rmt_supports_rcfast_clock",
2784 "cargo:rustc-cfg=rmt_supports_xtal_clock",
2785 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
2786 "cargo:rustc-cfg=rng_trng_supported",
2787 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
2788 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
2789 "cargo:rustc-cfg=sha_dma",
2790 "cargo:rustc-cfg=sleep_light_sleep",
2791 "cargo:rustc-cfg=sleep_deep_sleep",
2792 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
2793 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"3088\"",
2794 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
2795 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
2796 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
2797 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
2798 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
2799 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
2800 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
2801 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
2802 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
2803 "cargo:rustc-cfg=soc_has_clock_node_soc_root_clk",
2804 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
2805 "cargo:rustc-cfg=soc_has_clock_node_cpu_hs_div",
2806 "cargo:rustc-cfg=soc_has_clock_node_cpu_ls_div",
2807 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
2808 "cargo:rustc-cfg=soc_has_clock_node_ahb_hs_div",
2809 "cargo:rustc-cfg=soc_has_clock_node_ahb_ls_div",
2810 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
2811 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
2812 "cargo:rustc-cfg=soc_has_clock_node_mspi_fast_hs_clk",
2813 "cargo:rustc-cfg=soc_has_clock_node_mspi_fast_ls_clk",
2814 "cargo:rustc-cfg=soc_has_clock_node_mspi_fast_clk",
2815 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
2816 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
2817 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
2818 "cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
2819 "cargo:rustc-cfg=soc_has_clock_node_ledc_sclk",
2820 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
2821 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
2822 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
2823 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
2824 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
2825 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
2826 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
2827 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
2828 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
2829 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
2830 "cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
2831 "cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
2832 "cargo:rustc-cfg=has_dram_region",
2833 "cargo:rustc-cfg=has_dram2_uninit_region",
2834 "cargo:rustc-cfg=spi_master_supports_dma",
2835 "cargo:rustc-cfg=spi_master_has_app_interrupts",
2836 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
2837 "cargo:rustc-cfg=spi_slave_supports_dma",
2838 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
2839 "cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
2840 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
2841 "cargo:rustc-cfg=uart_ram_size=\"128\"",
2842 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
2843 "cargo:rustc-cfg=wifi_has_wifi6",
2844 "cargo:rustc-cfg=wifi_mac_version=\"2\"",
2845 "cargo:rustc-cfg=wifi_csi_supported",
2846 ],
2847 memory_layout: &MemoryLayout {
2848 regions: &[
2849 (
2850 "dram",
2851 MemoryRegion {
2852 address_range: 0x40800000..0x40880000,
2853 },
2854 ),
2855 (
2856 "dram2_uninit",
2857 MemoryRegion {
2858 address_range: 0x4086E610..0x4087E610,
2859 },
2860 ),
2861 ],
2862 },
2863 pins: &[
2864 PinInfo {
2865 pin: 0,
2866 limitations: &[],
2867 },
2868 PinInfo {
2869 pin: 1,
2870 limitations: &[],
2871 },
2872 PinInfo {
2873 pin: 2,
2874 limitations: &[],
2875 },
2876 PinInfo {
2877 pin: 3,
2878 limitations: &[],
2879 },
2880 PinInfo {
2881 pin: 4,
2882 limitations: &["strapping", "jtag"],
2883 },
2884 PinInfo {
2885 pin: 5,
2886 limitations: &["strapping", "jtag"],
2887 },
2888 PinInfo {
2889 pin: 6,
2890 limitations: &["jtag"],
2891 },
2892 PinInfo {
2893 pin: 7,
2894 limitations: &["jtag"],
2895 },
2896 PinInfo {
2897 pin: 8,
2898 limitations: &["strapping"],
2899 },
2900 PinInfo {
2901 pin: 9,
2902 limitations: &["strapping"],
2903 },
2904 PinInfo {
2905 pin: 10,
2906 limitations: &[],
2907 },
2908 PinInfo {
2909 pin: 11,
2910 limitations: &[],
2911 },
2912 PinInfo {
2913 pin: 12,
2914 limitations: &["usb_jtag"],
2915 },
2916 PinInfo {
2917 pin: 13,
2918 limitations: &["usb_jtag"],
2919 },
2920 PinInfo {
2921 pin: 14,
2922 limitations: &[],
2923 },
2924 PinInfo {
2925 pin: 15,
2926 limitations: &["strapping"],
2927 },
2928 PinInfo {
2929 pin: 16,
2930 limitations: &["bootloader_uart"],
2931 },
2932 PinInfo {
2933 pin: 17,
2934 limitations: &["bootloader_uart"],
2935 },
2936 PinInfo {
2937 pin: 18,
2938 limitations: &[],
2939 },
2940 PinInfo {
2941 pin: 19,
2942 limitations: &[],
2943 },
2944 PinInfo {
2945 pin: 20,
2946 limitations: &[],
2947 },
2948 PinInfo {
2949 pin: 21,
2950 limitations: &[],
2951 },
2952 PinInfo {
2953 pin: 22,
2954 limitations: &[],
2955 },
2956 PinInfo {
2957 pin: 23,
2958 limitations: &[],
2959 },
2960 PinInfo {
2961 pin: 24,
2962 limitations: &["spi_flash"],
2963 },
2964 PinInfo {
2965 pin: 25,
2966 limitations: &["spi_flash"],
2967 },
2968 PinInfo {
2969 pin: 26,
2970 limitations: &["spi_flash"],
2971 },
2972 PinInfo {
2973 pin: 27,
2974 limitations: &["spi_flash"],
2975 },
2976 PinInfo {
2977 pin: 28,
2978 limitations: &["spi_flash"],
2979 },
2980 PinInfo {
2981 pin: 29,
2982 limitations: &["spi_flash"],
2983 },
2984 PinInfo {
2985 pin: 30,
2986 limitations: &["spi_flash"],
2987 },
2988 ],
2989 },
2990 Self::Esp32c61 => Config {
2991 architecture: "riscv",
2992 target: "riscv32imac-unknown-none-elf",
2993 symbols: &[
2994 "esp32c61",
2995 "riscv",
2996 "single_core",
2997 "soc_has_assist_debug",
2998 "soc_has_clint",
2999 "soc_has_cache",
3000 "soc_has_dma",
3001 "soc_has_ecc",
3002 "soc_has_ecdsa",
3003 "soc_has_efuse",
3004 "soc_has_etm",
3005 "soc_has_gpio",
3006 "soc_has_hp_apm",
3007 "soc_has_hp_sys",
3008 "soc_has_i2c_ana_mst",
3009 "soc_has_i2c0",
3010 "soc_has_i2s0",
3011 "soc_has_interrupt_core0",
3012 "soc_has_intpri",
3013 "soc_has_io_mux",
3014 "soc_has_lp_ana",
3015 "soc_has_lp_aon",
3016 "soc_has_lp_apm",
3017 "soc_has_lp_clkrst",
3018 "soc_has_lpwr",
3019 "soc_has_lp_io_mux",
3020 "soc_has_lp_peri",
3021 "soc_has_lp_tee",
3022 "soc_has_lp_timer",
3023 "soc_has_lp_wdt",
3024 "soc_has_mem_monitor",
3025 "soc_has_modem_lpcon",
3026 "soc_has_modem_syscon",
3027 "soc_has_pau",
3028 "soc_has_pcr",
3029 "soc_has_pmu",
3030 "soc_has_rng",
3031 "soc_has_sha",
3032 "soc_has_slc",
3033 "soc_has_spi0",
3034 "soc_has_spi1",
3035 "soc_has_spi2",
3036 "soc_has_system",
3037 "soc_has_systimer",
3038 "soc_has_tee",
3039 "soc_has_timg0",
3040 "soc_has_timg1",
3041 "soc_has_uart0",
3042 "soc_has_uart1",
3043 "soc_has_usb_device",
3044 "soc_has_dma_ch0",
3045 "soc_has_dma_ch1",
3046 "soc_has_bt",
3047 "soc_has_flash",
3048 "soc_has_lp_core",
3049 "soc_has_sw_interrupt",
3050 "soc_has_wifi",
3051 "soc_has_mem2mem0",
3052 "soc_has_mem2mem1",
3053 "soc_has_mem2mem2",
3054 "soc_has_mem2mem3",
3055 "soc_has_mem2mem4",
3056 "soc_has_mem2mem5",
3057 "soc_has_mem2mem6",
3058 "soc_has_mem2mem7",
3059 "soc_has_mem2mem8",
3060 "soc_has_mem2mem9",
3061 "soc_has_mem2mem10",
3062 "soc_has_mem2mem11",
3063 "soc_has_psram",
3064 "swd",
3065 "rom_crc_le",
3066 "rom_crc_be",
3067 "rom_md5_bsd",
3068 "bt_driver_supported",
3069 "dma_driver_supported",
3070 "ecc_driver_supported",
3071 "gpio_driver_supported",
3072 "i2c_master_driver_supported",
3073 "interrupts_driver_supported",
3074 "psram_driver_supported",
3075 "rng_driver_supported",
3076 "sha_driver_supported",
3077 "soc_driver_supported",
3078 "spi_master_driver_supported",
3079 "spi_slave_driver_supported",
3080 "systimer_driver_supported",
3081 "timergroup_driver_supported",
3082 "uart_driver_supported",
3083 "wifi_driver_supported",
3084 "i2c_master_i2c0",
3085 "spi_master_spi2",
3086 "spi_slave_spi2",
3087 "timergroup_timg0",
3088 "timergroup_timg1",
3089 "uart_uart0",
3090 "uart_uart1",
3091 "bt_controller=\"npl\"",
3092 "dma_kind=\"gdma\"",
3093 "dma_supports_mem2mem",
3094 "dma_separate_in_out_interrupts",
3095 "dma_max_priority=\"5\"",
3096 "dma_max_priority_is_set",
3097 "dma_gdma_version=\"2\"",
3098 "dma_gdma_version_is_set",
3099 "ecc_zero_extend_writes",
3100 "ecc_separate_jacobian_point_memory",
3101 "ecc_has_memory_clock_gate",
3102 "ecc_supports_enhanced_security",
3103 "ecc_has_modular_arithmetic",
3104 "ecc_has_point_addition",
3105 "ecc_has_curve_p192",
3106 "ecc_has_curve_p256",
3107 "gpio_gpio_function=\"1\"",
3108 "gpio_constant_0_input=\"96\"",
3109 "gpio_constant_1_input=\"64\"",
3110 "gpio_func_in_sel_offset=\"0\"",
3111 "gpio_input_signal_max=\"100\"",
3112 "gpio_output_signal_max=\"256\"",
3113 "i2c_master_has_fsm_timeouts",
3114 "i2c_master_has_hw_bus_clear",
3115 "i2c_master_has_bus_timeout_enable",
3116 "i2c_master_can_estimate_nack_reason",
3117 "i2c_master_has_conf_update",
3118 "i2c_master_has_reliable_fsm_reset",
3119 "i2c_master_has_arbitration_en",
3120 "i2c_master_has_tx_fifo_watermark",
3121 "i2c_master_bus_timeout_is_exponential",
3122 "i2c_master_max_bus_timeout=\"31\"",
3123 "i2c_master_ll_intr_mask=\"262143\"",
3124 "i2c_master_fifo_size=\"32\"",
3125 "interrupts_status_registers=\"3\"",
3126 "interrupt_controller=\"clic\"",
3127 "psram_extmem_origin=\"1107296256\"",
3128 "rng_apb_cycle_wait_num=\"16\"",
3129 "sha_dma",
3130 "soc_rc_fast_clk_default=\"17500000\"",
3131 "soc_rc_fast_clk_default_is_set",
3132 "soc_has_clock_node_xtal_clk",
3133 "soc_has_clock_node_rc_fast_clk",
3134 "soc_has_clock_node_pll_clk",
3135 "soc_has_clock_node_xtal32k_clk",
3136 "soc_has_clock_node_osc_slow_clk",
3137 "soc_has_clock_node_rc_slow_clk",
3138 "soc_has_clock_node_pll_f20m",
3139 "soc_has_clock_node_pll_f40m",
3140 "soc_has_clock_node_pll_f48m",
3141 "soc_has_clock_node_pll_f60m",
3142 "soc_has_clock_node_pll_f80m",
3143 "soc_has_clock_node_pll_f120m",
3144 "soc_has_clock_node_pll_f160m",
3145 "soc_has_clock_node_hp_root_clk",
3146 "soc_has_clock_node_cpu_clk",
3147 "soc_has_clock_node_ahb_clk",
3148 "soc_has_clock_node_apb_clk",
3149 "soc_has_clock_node_xtal_d2_clk",
3150 "soc_has_clock_node_lp_fast_clk",
3151 "soc_has_clock_node_lp_slow_clk",
3152 "soc_has_clock_node_timg_calibration_clock",
3153 "soc_has_clock_node_uart_function_clock",
3154 "soc_has_clock_node_uart_baud_rate_generator",
3155 "soc_has_clock_node_timg_function_clock",
3156 "soc_has_clock_node_timg_wdt_clock",
3157 "has_dram_region",
3158 "has_dram2_uninit_region",
3159 "spi_master_supports_dma",
3160 "spi_master_has_app_interrupts",
3161 "spi_master_has_dma_segmented_transfer",
3162 "spi_master_has_clk_pre_div",
3163 "timergroup_timg_has_divcnt_rst",
3164 "timergroup_rc_fast_calibration_is_set",
3165 "uart_ram_size=\"128\"",
3166 "uart_peripheral_controls_mem_clk",
3167 "wifi_has_wifi6",
3168 "wifi_mac_version=\"3\"",
3169 "wifi_csi_supported",
3170 ],
3171 cfgs: &[
3172 "cargo:rustc-cfg=esp32c61",
3173 "cargo:rustc-cfg=riscv",
3174 "cargo:rustc-cfg=single_core",
3175 "cargo:rustc-cfg=soc_has_assist_debug",
3176 "cargo:rustc-cfg=soc_has_clint",
3177 "cargo:rustc-cfg=soc_has_cache",
3178 "cargo:rustc-cfg=soc_has_dma",
3179 "cargo:rustc-cfg=soc_has_ecc",
3180 "cargo:rustc-cfg=soc_has_ecdsa",
3181 "cargo:rustc-cfg=soc_has_efuse",
3182 "cargo:rustc-cfg=soc_has_etm",
3183 "cargo:rustc-cfg=soc_has_gpio",
3184 "cargo:rustc-cfg=soc_has_hp_apm",
3185 "cargo:rustc-cfg=soc_has_hp_sys",
3186 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
3187 "cargo:rustc-cfg=soc_has_i2c0",
3188 "cargo:rustc-cfg=soc_has_i2s0",
3189 "cargo:rustc-cfg=soc_has_interrupt_core0",
3190 "cargo:rustc-cfg=soc_has_intpri",
3191 "cargo:rustc-cfg=soc_has_io_mux",
3192 "cargo:rustc-cfg=soc_has_lp_ana",
3193 "cargo:rustc-cfg=soc_has_lp_aon",
3194 "cargo:rustc-cfg=soc_has_lp_apm",
3195 "cargo:rustc-cfg=soc_has_lp_clkrst",
3196 "cargo:rustc-cfg=soc_has_lpwr",
3197 "cargo:rustc-cfg=soc_has_lp_io_mux",
3198 "cargo:rustc-cfg=soc_has_lp_peri",
3199 "cargo:rustc-cfg=soc_has_lp_tee",
3200 "cargo:rustc-cfg=soc_has_lp_timer",
3201 "cargo:rustc-cfg=soc_has_lp_wdt",
3202 "cargo:rustc-cfg=soc_has_mem_monitor",
3203 "cargo:rustc-cfg=soc_has_modem_lpcon",
3204 "cargo:rustc-cfg=soc_has_modem_syscon",
3205 "cargo:rustc-cfg=soc_has_pau",
3206 "cargo:rustc-cfg=soc_has_pcr",
3207 "cargo:rustc-cfg=soc_has_pmu",
3208 "cargo:rustc-cfg=soc_has_rng",
3209 "cargo:rustc-cfg=soc_has_sha",
3210 "cargo:rustc-cfg=soc_has_slc",
3211 "cargo:rustc-cfg=soc_has_spi0",
3212 "cargo:rustc-cfg=soc_has_spi1",
3213 "cargo:rustc-cfg=soc_has_spi2",
3214 "cargo:rustc-cfg=soc_has_system",
3215 "cargo:rustc-cfg=soc_has_systimer",
3216 "cargo:rustc-cfg=soc_has_tee",
3217 "cargo:rustc-cfg=soc_has_timg0",
3218 "cargo:rustc-cfg=soc_has_timg1",
3219 "cargo:rustc-cfg=soc_has_uart0",
3220 "cargo:rustc-cfg=soc_has_uart1",
3221 "cargo:rustc-cfg=soc_has_usb_device",
3222 "cargo:rustc-cfg=soc_has_dma_ch0",
3223 "cargo:rustc-cfg=soc_has_dma_ch1",
3224 "cargo:rustc-cfg=soc_has_bt",
3225 "cargo:rustc-cfg=soc_has_flash",
3226 "cargo:rustc-cfg=soc_has_lp_core",
3227 "cargo:rustc-cfg=soc_has_sw_interrupt",
3228 "cargo:rustc-cfg=soc_has_wifi",
3229 "cargo:rustc-cfg=soc_has_mem2mem0",
3230 "cargo:rustc-cfg=soc_has_mem2mem1",
3231 "cargo:rustc-cfg=soc_has_mem2mem2",
3232 "cargo:rustc-cfg=soc_has_mem2mem3",
3233 "cargo:rustc-cfg=soc_has_mem2mem4",
3234 "cargo:rustc-cfg=soc_has_mem2mem5",
3235 "cargo:rustc-cfg=soc_has_mem2mem6",
3236 "cargo:rustc-cfg=soc_has_mem2mem7",
3237 "cargo:rustc-cfg=soc_has_mem2mem8",
3238 "cargo:rustc-cfg=soc_has_mem2mem9",
3239 "cargo:rustc-cfg=soc_has_mem2mem10",
3240 "cargo:rustc-cfg=soc_has_mem2mem11",
3241 "cargo:rustc-cfg=soc_has_psram",
3242 "cargo:rustc-cfg=swd",
3243 "cargo:rustc-cfg=rom_crc_le",
3244 "cargo:rustc-cfg=rom_crc_be",
3245 "cargo:rustc-cfg=rom_md5_bsd",
3246 "cargo:rustc-cfg=bt_driver_supported",
3247 "cargo:rustc-cfg=dma_driver_supported",
3248 "cargo:rustc-cfg=ecc_driver_supported",
3249 "cargo:rustc-cfg=gpio_driver_supported",
3250 "cargo:rustc-cfg=i2c_master_driver_supported",
3251 "cargo:rustc-cfg=interrupts_driver_supported",
3252 "cargo:rustc-cfg=psram_driver_supported",
3253 "cargo:rustc-cfg=rng_driver_supported",
3254 "cargo:rustc-cfg=sha_driver_supported",
3255 "cargo:rustc-cfg=soc_driver_supported",
3256 "cargo:rustc-cfg=spi_master_driver_supported",
3257 "cargo:rustc-cfg=spi_slave_driver_supported",
3258 "cargo:rustc-cfg=systimer_driver_supported",
3259 "cargo:rustc-cfg=timergroup_driver_supported",
3260 "cargo:rustc-cfg=uart_driver_supported",
3261 "cargo:rustc-cfg=wifi_driver_supported",
3262 "cargo:rustc-cfg=i2c_master_i2c0",
3263 "cargo:rustc-cfg=spi_master_spi2",
3264 "cargo:rustc-cfg=spi_slave_spi2",
3265 "cargo:rustc-cfg=timergroup_timg0",
3266 "cargo:rustc-cfg=timergroup_timg1",
3267 "cargo:rustc-cfg=uart_uart0",
3268 "cargo:rustc-cfg=uart_uart1",
3269 "cargo:rustc-cfg=bt_controller=\"npl\"",
3270 "cargo:rustc-cfg=dma_kind=\"gdma\"",
3271 "cargo:rustc-cfg=dma_supports_mem2mem",
3272 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
3273 "cargo:rustc-cfg=dma_max_priority=\"5\"",
3274 "cargo:rustc-cfg=dma_max_priority_is_set",
3275 "cargo:rustc-cfg=dma_gdma_version=\"2\"",
3276 "cargo:rustc-cfg=dma_gdma_version_is_set",
3277 "cargo:rustc-cfg=ecc_zero_extend_writes",
3278 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
3279 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
3280 "cargo:rustc-cfg=ecc_supports_enhanced_security",
3281 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
3282 "cargo:rustc-cfg=ecc_has_point_addition",
3283 "cargo:rustc-cfg=ecc_has_curve_p192",
3284 "cargo:rustc-cfg=ecc_has_curve_p256",
3285 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
3286 "cargo:rustc-cfg=gpio_constant_0_input=\"96\"",
3287 "cargo:rustc-cfg=gpio_constant_1_input=\"64\"",
3288 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
3289 "cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
3290 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
3291 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
3292 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
3293 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
3294 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
3295 "cargo:rustc-cfg=i2c_master_has_conf_update",
3296 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
3297 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
3298 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
3299 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
3300 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
3301 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
3302 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
3303 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
3304 "cargo:rustc-cfg=interrupt_controller=\"clic\"",
3305 "cargo:rustc-cfg=psram_extmem_origin=\"1107296256\"",
3306 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
3307 "cargo:rustc-cfg=sha_dma",
3308 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
3309 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
3310 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
3311 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
3312 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
3313 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
3314 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
3315 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
3316 "cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
3317 "cargo:rustc-cfg=soc_has_clock_node_pll_f40m",
3318 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
3319 "cargo:rustc-cfg=soc_has_clock_node_pll_f60m",
3320 "cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
3321 "cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
3322 "cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
3323 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
3324 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
3325 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
3326 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
3327 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
3328 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
3329 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
3330 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
3331 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
3332 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
3333 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
3334 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
3335 "cargo:rustc-cfg=has_dram_region",
3336 "cargo:rustc-cfg=has_dram2_uninit_region",
3337 "cargo:rustc-cfg=spi_master_supports_dma",
3338 "cargo:rustc-cfg=spi_master_has_app_interrupts",
3339 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
3340 "cargo:rustc-cfg=spi_master_has_clk_pre_div",
3341 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
3342 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
3343 "cargo:rustc-cfg=uart_ram_size=\"128\"",
3344 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
3345 "cargo:rustc-cfg=wifi_has_wifi6",
3346 "cargo:rustc-cfg=wifi_mac_version=\"3\"",
3347 "cargo:rustc-cfg=wifi_csi_supported",
3348 ],
3349 memory_layout: &MemoryLayout {
3350 regions: &[
3351 (
3352 "dram",
3353 MemoryRegion {
3354 address_range: 0x40800000..0x40850000,
3355 },
3356 ),
3357 (
3358 "dram2_uninit",
3359 MemoryRegion {
3360 address_range: 0x4083EA70..0x4084EA70,
3361 },
3362 ),
3363 ],
3364 },
3365 pins: &[
3366 PinInfo {
3367 pin: 0,
3368 limitations: &[],
3369 },
3370 PinInfo {
3371 pin: 1,
3372 limitations: &[],
3373 },
3374 PinInfo {
3375 pin: 2,
3376 limitations: &[],
3377 },
3378 PinInfo {
3379 pin: 3,
3380 limitations: &["strapping", "jtag"],
3381 },
3382 PinInfo {
3383 pin: 4,
3384 limitations: &["strapping", "jtag"],
3385 },
3386 PinInfo {
3387 pin: 5,
3388 limitations: &["jtag"],
3389 },
3390 PinInfo {
3391 pin: 6,
3392 limitations: &["jtag"],
3393 },
3394 PinInfo {
3395 pin: 7,
3396 limitations: &["strapping"],
3397 },
3398 PinInfo {
3399 pin: 8,
3400 limitations: &["strapping"],
3401 },
3402 PinInfo {
3403 pin: 9,
3404 limitations: &["strapping"],
3405 },
3406 PinInfo {
3407 pin: 10,
3408 limitations: &["bootloader_uart"],
3409 },
3410 PinInfo {
3411 pin: 11,
3412 limitations: &["bootloader_uart"],
3413 },
3414 PinInfo {
3415 pin: 12,
3416 limitations: &["usb_jtag"],
3417 },
3418 PinInfo {
3419 pin: 13,
3420 limitations: &["usb_jtag"],
3421 },
3422 PinInfo {
3423 pin: 14,
3424 limitations: &["spi_flash"],
3425 },
3426 PinInfo {
3427 pin: 15,
3428 limitations: &["spi_flash"],
3429 },
3430 PinInfo {
3431 pin: 16,
3432 limitations: &["spi_flash"],
3433 },
3434 PinInfo {
3435 pin: 17,
3436 limitations: &["spi_flash"],
3437 },
3438 PinInfo {
3439 pin: 18,
3440 limitations: &["spi_flash"],
3441 },
3442 PinInfo {
3443 pin: 19,
3444 limitations: &["spi_flash"],
3445 },
3446 PinInfo {
3447 pin: 20,
3448 limitations: &["spi_flash"],
3449 },
3450 PinInfo {
3451 pin: 21,
3452 limitations: &["spi_flash"],
3453 },
3454 PinInfo {
3455 pin: 22,
3456 limitations: &[],
3457 },
3458 PinInfo {
3459 pin: 23,
3460 limitations: &[],
3461 },
3462 PinInfo {
3463 pin: 24,
3464 limitations: &[],
3465 },
3466 PinInfo {
3467 pin: 25,
3468 limitations: &[],
3469 },
3470 PinInfo {
3471 pin: 26,
3472 limitations: &[],
3473 },
3474 PinInfo {
3475 pin: 27,
3476 limitations: &[],
3477 },
3478 PinInfo {
3479 pin: 28,
3480 limitations: &[],
3481 },
3482 PinInfo {
3483 pin: 29,
3484 limitations: &[],
3485 },
3486 ],
3487 },
3488 Self::Esp32h2 => Config {
3489 architecture: "riscv",
3490 target: "riscv32imac-unknown-none-elf",
3491 symbols: &[
3492 "esp32h2",
3493 "riscv",
3494 "single_core",
3495 "soc_has_aes",
3496 "soc_has_apb_saradc",
3497 "soc_has_assist_debug",
3498 "soc_has_dma",
3499 "soc_has_ds",
3500 "soc_has_ecc",
3501 "soc_has_efuse",
3502 "soc_has_gpio",
3503 "soc_has_gpio_sd",
3504 "soc_has_hmac",
3505 "soc_has_hp_apm",
3506 "soc_has_hp_sys",
3507 "soc_has_i2c_ana_mst",
3508 "soc_has_i2c0",
3509 "soc_has_i2c1",
3510 "soc_has_i2s0",
3511 "soc_has_ieee802154",
3512 "soc_has_interrupt_core0",
3513 "soc_has_intpri",
3514 "soc_has_io_mux",
3515 "soc_has_ledc",
3516 "soc_has_lpwr",
3517 "soc_has_lp_ana",
3518 "soc_has_lp_aon",
3519 "soc_has_lp_apm",
3520 "soc_has_lp_apm0",
3521 "soc_has_lp_clkrst",
3522 "soc_has_lp_peri",
3523 "soc_has_lp_timer",
3524 "soc_has_lp_wdt",
3525 "soc_has_mcpwm0",
3526 "soc_has_mem_monitor",
3527 "soc_has_modem_lpcon",
3528 "soc_has_modem_syscon",
3529 "soc_has_otp_debug",
3530 "soc_has_parl_io",
3531 "soc_has_pau",
3532 "soc_has_pcnt",
3533 "soc_has_pcr",
3534 "soc_has_plic_mx",
3535 "soc_has_pmu",
3536 "soc_has_rmt",
3537 "soc_has_rng",
3538 "soc_has_rsa",
3539 "soc_has_sha",
3540 "soc_has_etm",
3541 "soc_has_spi0",
3542 "soc_has_spi1",
3543 "soc_has_spi2",
3544 "soc_has_system",
3545 "soc_has_systimer",
3546 "soc_has_tee",
3547 "soc_has_timg0",
3548 "soc_has_timg1",
3549 "soc_has_trace0",
3550 "soc_has_twai0",
3551 "soc_has_uart0",
3552 "soc_has_uart1",
3553 "soc_has_uhci0",
3554 "soc_has_usb_device",
3555 "soc_has_dma_ch0",
3556 "soc_has_dma_ch1",
3557 "soc_has_dma_ch2",
3558 "soc_has_adc1",
3559 "soc_has_bt",
3560 "soc_has_flash",
3561 "soc_has_gpio_dedicated",
3562 "soc_has_sw_interrupt",
3563 "soc_has_mem2mem0",
3564 "soc_has_mem2mem1",
3565 "soc_has_mem2mem2",
3566 "soc_has_mem2mem3",
3567 "soc_has_mem2mem4",
3568 "soc_has_mem2mem5",
3569 "soc_has_mem2mem6",
3570 "soc_has_mem2mem7",
3571 "soc_has_mem2mem8",
3572 "phy",
3573 "swd",
3574 "rom_crc_le",
3575 "rom_crc_be",
3576 "rom_md5_bsd",
3577 "adc_driver_supported",
3578 "aes_driver_supported",
3579 "assist_debug_driver_supported",
3580 "bt_driver_supported",
3581 "dedicated_gpio_driver_supported",
3582 "dma_driver_supported",
3583 "ecc_driver_supported",
3584 "etm_driver_supported",
3585 "gpio_driver_supported",
3586 "hmac_driver_supported",
3587 "i2c_master_driver_supported",
3588 "i2s_driver_supported",
3589 "ieee802154_driver_supported",
3590 "interrupts_driver_supported",
3591 "io_mux_driver_supported",
3592 "ledc_driver_supported",
3593 "mcpwm_driver_supported",
3594 "parl_io_driver_supported",
3595 "pcnt_driver_supported",
3596 "phy_driver_supported",
3597 "rmt_driver_supported",
3598 "rng_driver_supported",
3599 "rsa_driver_supported",
3600 "lp_timer_driver_supported",
3601 "sha_driver_supported",
3602 "sleep_driver_supported",
3603 "soc_driver_supported",
3604 "spi_master_driver_supported",
3605 "spi_slave_driver_supported",
3606 "systimer_driver_supported",
3607 "temp_sensor_driver_supported",
3608 "timergroup_driver_supported",
3609 "twai_driver_supported",
3610 "uart_driver_supported",
3611 "uhci_driver_supported",
3612 "usb_serial_jtag_driver_supported",
3613 "adc_adc1",
3614 "i2c_master_i2c0",
3615 "i2c_master_i2c1",
3616 "spi_master_spi2",
3617 "spi_slave_spi2",
3618 "timergroup_timg0",
3619 "timergroup_timg1",
3620 "uart_uart0",
3621 "uart_uart1",
3622 "aes_dma",
3623 "aes_dma_mode_ecb",
3624 "aes_dma_mode_cbc",
3625 "aes_dma_mode_ofb",
3626 "aes_dma_mode_ctr",
3627 "aes_dma_mode_cfb8",
3628 "aes_dma_mode_cfb128",
3629 "aes_has_split_text_registers",
3630 "assist_debug_has_sp_monitor",
3631 "assist_debug_has_region_monitor",
3632 "bt_controller=\"npl\"",
3633 "dma_kind=\"gdma\"",
3634 "dma_supports_mem2mem",
3635 "dma_separate_in_out_interrupts",
3636 "dma_max_priority=\"5\"",
3637 "dma_max_priority_is_set",
3638 "dma_gdma_version=\"1\"",
3639 "dma_gdma_version_is_set",
3640 "ecc_zero_extend_writes",
3641 "ecc_separate_jacobian_point_memory",
3642 "ecc_has_memory_clock_gate",
3643 "ecc_supports_enhanced_security",
3644 "ecc_has_modular_arithmetic",
3645 "ecc_has_point_addition",
3646 "ecc_has_curve_p192",
3647 "ecc_has_curve_p256",
3648 "gpio_gpio_function=\"1\"",
3649 "gpio_constant_0_input=\"60\"",
3650 "gpio_constant_1_input=\"56\"",
3651 "gpio_func_in_sel_offset=\"0\"",
3652 "gpio_input_signal_max=\"124\"",
3653 "gpio_output_signal_max=\"128\"",
3654 "i2c_master_has_fsm_timeouts",
3655 "i2c_master_has_hw_bus_clear",
3656 "i2c_master_has_bus_timeout_enable",
3657 "i2c_master_can_estimate_nack_reason",
3658 "i2c_master_has_conf_update",
3659 "i2c_master_has_reliable_fsm_reset",
3660 "i2c_master_has_arbitration_en",
3661 "i2c_master_has_tx_fifo_watermark",
3662 "i2c_master_bus_timeout_is_exponential",
3663 "i2c_master_max_bus_timeout=\"31\"",
3664 "i2c_master_ll_intr_mask=\"262143\"",
3665 "i2c_master_fifo_size=\"32\"",
3666 "interrupts_status_registers=\"2\"",
3667 "interrupt_controller=\"plic\"",
3668 "parl_io_version=\"2\"",
3669 "rmt_ram_start=\"1610642432\"",
3670 "rmt_channel_ram_size=\"48\"",
3671 "rmt_has_tx_immediate_stop",
3672 "rmt_has_tx_loop_count",
3673 "rmt_has_tx_loop_auto_stop",
3674 "rmt_has_tx_carrier_data_only",
3675 "rmt_has_tx_sync",
3676 "rmt_has_rx_wrap",
3677 "rmt_has_rx_demodulation",
3678 "rmt_supports_xtal_clock",
3679 "rmt_supports_rcfast_clock",
3680 "rng_apb_cycle_wait_num=\"16\"",
3681 "rng_trng_supported",
3682 "rsa_size_increment=\"32\"",
3683 "rsa_memory_size_bytes=\"384\"",
3684 "sha_dma",
3685 "sleep_light_sleep",
3686 "sleep_deep_sleep",
3687 "soc_cpu_has_csr_pc",
3688 "soc_cpu_csr_prv_mode=\"3088\"",
3689 "soc_cpu_csr_prv_mode_is_set",
3690 "soc_rc_fast_clk_default=\"8500000\"",
3691 "soc_rc_fast_clk_default_is_set",
3692 "soc_has_clock_node_xtal_clk",
3693 "soc_has_clock_node_pll_f96m_clk",
3694 "soc_has_clock_node_pll_f64m_clk",
3695 "soc_has_clock_node_pll_f48m_clk",
3696 "soc_has_clock_node_rc_fast_clk",
3697 "soc_has_clock_node_xtal32k_clk",
3698 "soc_has_clock_node_osc_slow_clk",
3699 "soc_has_clock_node_rc_slow_clk",
3700 "soc_has_clock_node_pll_lp_clk",
3701 "soc_has_clock_node_hp_root_clk",
3702 "soc_has_clock_node_cpu_clk",
3703 "soc_has_clock_node_ahb_clk",
3704 "soc_has_clock_node_apb_clk",
3705 "soc_has_clock_node_xtal_d2_clk",
3706 "soc_has_clock_node_lp_fast_clk",
3707 "soc_has_clock_node_lp_slow_clk",
3708 "soc_has_clock_node_timg_calibration_clock",
3709 "soc_has_clock_node_uart_function_clock",
3710 "soc_has_clock_node_uart_baud_rate_generator",
3711 "soc_has_clock_node_rmt_sclk",
3712 "soc_has_clock_node_timg_function_clock",
3713 "soc_has_clock_node_timg_wdt_clock",
3714 "soc_has_clock_node_mcpwm_function_clock",
3715 "soc_has_clock_node_parl_io_rx_clock",
3716 "soc_has_clock_node_parl_io_tx_clock",
3717 "has_dram_region",
3718 "has_dram2_uninit_region",
3719 "spi_master_supports_dma",
3720 "spi_master_has_app_interrupts",
3721 "spi_master_has_dma_segmented_transfer",
3722 "spi_slave_supports_dma",
3723 "timergroup_timg_has_divcnt_rst",
3724 "timergroup_rc_fast_calibration_divider",
3725 "timergroup_rc_fast_calibration_tick_enable",
3726 "timergroup_rc_fast_calibration_is_set",
3727 "uart_ram_size=\"128\"",
3728 "uart_peripheral_controls_mem_clk",
3729 ],
3730 cfgs: &[
3731 "cargo:rustc-cfg=esp32h2",
3732 "cargo:rustc-cfg=riscv",
3733 "cargo:rustc-cfg=single_core",
3734 "cargo:rustc-cfg=soc_has_aes",
3735 "cargo:rustc-cfg=soc_has_apb_saradc",
3736 "cargo:rustc-cfg=soc_has_assist_debug",
3737 "cargo:rustc-cfg=soc_has_dma",
3738 "cargo:rustc-cfg=soc_has_ds",
3739 "cargo:rustc-cfg=soc_has_ecc",
3740 "cargo:rustc-cfg=soc_has_efuse",
3741 "cargo:rustc-cfg=soc_has_gpio",
3742 "cargo:rustc-cfg=soc_has_gpio_sd",
3743 "cargo:rustc-cfg=soc_has_hmac",
3744 "cargo:rustc-cfg=soc_has_hp_apm",
3745 "cargo:rustc-cfg=soc_has_hp_sys",
3746 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
3747 "cargo:rustc-cfg=soc_has_i2c0",
3748 "cargo:rustc-cfg=soc_has_i2c1",
3749 "cargo:rustc-cfg=soc_has_i2s0",
3750 "cargo:rustc-cfg=soc_has_ieee802154",
3751 "cargo:rustc-cfg=soc_has_interrupt_core0",
3752 "cargo:rustc-cfg=soc_has_intpri",
3753 "cargo:rustc-cfg=soc_has_io_mux",
3754 "cargo:rustc-cfg=soc_has_ledc",
3755 "cargo:rustc-cfg=soc_has_lpwr",
3756 "cargo:rustc-cfg=soc_has_lp_ana",
3757 "cargo:rustc-cfg=soc_has_lp_aon",
3758 "cargo:rustc-cfg=soc_has_lp_apm",
3759 "cargo:rustc-cfg=soc_has_lp_apm0",
3760 "cargo:rustc-cfg=soc_has_lp_clkrst",
3761 "cargo:rustc-cfg=soc_has_lp_peri",
3762 "cargo:rustc-cfg=soc_has_lp_timer",
3763 "cargo:rustc-cfg=soc_has_lp_wdt",
3764 "cargo:rustc-cfg=soc_has_mcpwm0",
3765 "cargo:rustc-cfg=soc_has_mem_monitor",
3766 "cargo:rustc-cfg=soc_has_modem_lpcon",
3767 "cargo:rustc-cfg=soc_has_modem_syscon",
3768 "cargo:rustc-cfg=soc_has_otp_debug",
3769 "cargo:rustc-cfg=soc_has_parl_io",
3770 "cargo:rustc-cfg=soc_has_pau",
3771 "cargo:rustc-cfg=soc_has_pcnt",
3772 "cargo:rustc-cfg=soc_has_pcr",
3773 "cargo:rustc-cfg=soc_has_plic_mx",
3774 "cargo:rustc-cfg=soc_has_pmu",
3775 "cargo:rustc-cfg=soc_has_rmt",
3776 "cargo:rustc-cfg=soc_has_rng",
3777 "cargo:rustc-cfg=soc_has_rsa",
3778 "cargo:rustc-cfg=soc_has_sha",
3779 "cargo:rustc-cfg=soc_has_etm",
3780 "cargo:rustc-cfg=soc_has_spi0",
3781 "cargo:rustc-cfg=soc_has_spi1",
3782 "cargo:rustc-cfg=soc_has_spi2",
3783 "cargo:rustc-cfg=soc_has_system",
3784 "cargo:rustc-cfg=soc_has_systimer",
3785 "cargo:rustc-cfg=soc_has_tee",
3786 "cargo:rustc-cfg=soc_has_timg0",
3787 "cargo:rustc-cfg=soc_has_timg1",
3788 "cargo:rustc-cfg=soc_has_trace0",
3789 "cargo:rustc-cfg=soc_has_twai0",
3790 "cargo:rustc-cfg=soc_has_uart0",
3791 "cargo:rustc-cfg=soc_has_uart1",
3792 "cargo:rustc-cfg=soc_has_uhci0",
3793 "cargo:rustc-cfg=soc_has_usb_device",
3794 "cargo:rustc-cfg=soc_has_dma_ch0",
3795 "cargo:rustc-cfg=soc_has_dma_ch1",
3796 "cargo:rustc-cfg=soc_has_dma_ch2",
3797 "cargo:rustc-cfg=soc_has_adc1",
3798 "cargo:rustc-cfg=soc_has_bt",
3799 "cargo:rustc-cfg=soc_has_flash",
3800 "cargo:rustc-cfg=soc_has_gpio_dedicated",
3801 "cargo:rustc-cfg=soc_has_sw_interrupt",
3802 "cargo:rustc-cfg=soc_has_mem2mem0",
3803 "cargo:rustc-cfg=soc_has_mem2mem1",
3804 "cargo:rustc-cfg=soc_has_mem2mem2",
3805 "cargo:rustc-cfg=soc_has_mem2mem3",
3806 "cargo:rustc-cfg=soc_has_mem2mem4",
3807 "cargo:rustc-cfg=soc_has_mem2mem5",
3808 "cargo:rustc-cfg=soc_has_mem2mem6",
3809 "cargo:rustc-cfg=soc_has_mem2mem7",
3810 "cargo:rustc-cfg=soc_has_mem2mem8",
3811 "cargo:rustc-cfg=phy",
3812 "cargo:rustc-cfg=swd",
3813 "cargo:rustc-cfg=rom_crc_le",
3814 "cargo:rustc-cfg=rom_crc_be",
3815 "cargo:rustc-cfg=rom_md5_bsd",
3816 "cargo:rustc-cfg=adc_driver_supported",
3817 "cargo:rustc-cfg=aes_driver_supported",
3818 "cargo:rustc-cfg=assist_debug_driver_supported",
3819 "cargo:rustc-cfg=bt_driver_supported",
3820 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
3821 "cargo:rustc-cfg=dma_driver_supported",
3822 "cargo:rustc-cfg=ecc_driver_supported",
3823 "cargo:rustc-cfg=etm_driver_supported",
3824 "cargo:rustc-cfg=gpio_driver_supported",
3825 "cargo:rustc-cfg=hmac_driver_supported",
3826 "cargo:rustc-cfg=i2c_master_driver_supported",
3827 "cargo:rustc-cfg=i2s_driver_supported",
3828 "cargo:rustc-cfg=ieee802154_driver_supported",
3829 "cargo:rustc-cfg=interrupts_driver_supported",
3830 "cargo:rustc-cfg=io_mux_driver_supported",
3831 "cargo:rustc-cfg=ledc_driver_supported",
3832 "cargo:rustc-cfg=mcpwm_driver_supported",
3833 "cargo:rustc-cfg=parl_io_driver_supported",
3834 "cargo:rustc-cfg=pcnt_driver_supported",
3835 "cargo:rustc-cfg=phy_driver_supported",
3836 "cargo:rustc-cfg=rmt_driver_supported",
3837 "cargo:rustc-cfg=rng_driver_supported",
3838 "cargo:rustc-cfg=rsa_driver_supported",
3839 "cargo:rustc-cfg=lp_timer_driver_supported",
3840 "cargo:rustc-cfg=sha_driver_supported",
3841 "cargo:rustc-cfg=sleep_driver_supported",
3842 "cargo:rustc-cfg=soc_driver_supported",
3843 "cargo:rustc-cfg=spi_master_driver_supported",
3844 "cargo:rustc-cfg=spi_slave_driver_supported",
3845 "cargo:rustc-cfg=systimer_driver_supported",
3846 "cargo:rustc-cfg=temp_sensor_driver_supported",
3847 "cargo:rustc-cfg=timergroup_driver_supported",
3848 "cargo:rustc-cfg=twai_driver_supported",
3849 "cargo:rustc-cfg=uart_driver_supported",
3850 "cargo:rustc-cfg=uhci_driver_supported",
3851 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
3852 "cargo:rustc-cfg=adc_adc1",
3853 "cargo:rustc-cfg=i2c_master_i2c0",
3854 "cargo:rustc-cfg=i2c_master_i2c1",
3855 "cargo:rustc-cfg=spi_master_spi2",
3856 "cargo:rustc-cfg=spi_slave_spi2",
3857 "cargo:rustc-cfg=timergroup_timg0",
3858 "cargo:rustc-cfg=timergroup_timg1",
3859 "cargo:rustc-cfg=uart_uart0",
3860 "cargo:rustc-cfg=uart_uart1",
3861 "cargo:rustc-cfg=aes_dma",
3862 "cargo:rustc-cfg=aes_dma_mode_ecb",
3863 "cargo:rustc-cfg=aes_dma_mode_cbc",
3864 "cargo:rustc-cfg=aes_dma_mode_ofb",
3865 "cargo:rustc-cfg=aes_dma_mode_ctr",
3866 "cargo:rustc-cfg=aes_dma_mode_cfb8",
3867 "cargo:rustc-cfg=aes_dma_mode_cfb128",
3868 "cargo:rustc-cfg=aes_has_split_text_registers",
3869 "cargo:rustc-cfg=assist_debug_has_sp_monitor",
3870 "cargo:rustc-cfg=assist_debug_has_region_monitor",
3871 "cargo:rustc-cfg=bt_controller=\"npl\"",
3872 "cargo:rustc-cfg=dma_kind=\"gdma\"",
3873 "cargo:rustc-cfg=dma_supports_mem2mem",
3874 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
3875 "cargo:rustc-cfg=dma_max_priority=\"5\"",
3876 "cargo:rustc-cfg=dma_max_priority_is_set",
3877 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
3878 "cargo:rustc-cfg=dma_gdma_version_is_set",
3879 "cargo:rustc-cfg=ecc_zero_extend_writes",
3880 "cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
3881 "cargo:rustc-cfg=ecc_has_memory_clock_gate",
3882 "cargo:rustc-cfg=ecc_supports_enhanced_security",
3883 "cargo:rustc-cfg=ecc_has_modular_arithmetic",
3884 "cargo:rustc-cfg=ecc_has_point_addition",
3885 "cargo:rustc-cfg=ecc_has_curve_p192",
3886 "cargo:rustc-cfg=ecc_has_curve_p256",
3887 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
3888 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
3889 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
3890 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
3891 "cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
3892 "cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
3893 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
3894 "cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
3895 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
3896 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
3897 "cargo:rustc-cfg=i2c_master_has_conf_update",
3898 "cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
3899 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
3900 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
3901 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
3902 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
3903 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
3904 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
3905 "cargo:rustc-cfg=interrupts_status_registers=\"2\"",
3906 "cargo:rustc-cfg=interrupt_controller=\"plic\"",
3907 "cargo:rustc-cfg=parl_io_version=\"2\"",
3908 "cargo:rustc-cfg=rmt_ram_start=\"1610642432\"",
3909 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
3910 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
3911 "cargo:rustc-cfg=rmt_has_tx_loop_count",
3912 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
3913 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
3914 "cargo:rustc-cfg=rmt_has_tx_sync",
3915 "cargo:rustc-cfg=rmt_has_rx_wrap",
3916 "cargo:rustc-cfg=rmt_has_rx_demodulation",
3917 "cargo:rustc-cfg=rmt_supports_xtal_clock",
3918 "cargo:rustc-cfg=rmt_supports_rcfast_clock",
3919 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
3920 "cargo:rustc-cfg=rng_trng_supported",
3921 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
3922 "cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
3923 "cargo:rustc-cfg=sha_dma",
3924 "cargo:rustc-cfg=sleep_light_sleep",
3925 "cargo:rustc-cfg=sleep_deep_sleep",
3926 "cargo:rustc-cfg=soc_cpu_has_csr_pc",
3927 "cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"3088\"",
3928 "cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
3929 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"8500000\"",
3930 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
3931 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
3932 "cargo:rustc-cfg=soc_has_clock_node_pll_f96m_clk",
3933 "cargo:rustc-cfg=soc_has_clock_node_pll_f64m_clk",
3934 "cargo:rustc-cfg=soc_has_clock_node_pll_f48m_clk",
3935 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
3936 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
3937 "cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
3938 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
3939 "cargo:rustc-cfg=soc_has_clock_node_pll_lp_clk",
3940 "cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
3941 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
3942 "cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
3943 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
3944 "cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
3945 "cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
3946 "cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
3947 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
3948 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
3949 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
3950 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
3951 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
3952 "cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
3953 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
3954 "cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
3955 "cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
3956 "cargo:rustc-cfg=has_dram_region",
3957 "cargo:rustc-cfg=has_dram2_uninit_region",
3958 "cargo:rustc-cfg=spi_master_supports_dma",
3959 "cargo:rustc-cfg=spi_master_has_app_interrupts",
3960 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
3961 "cargo:rustc-cfg=spi_slave_supports_dma",
3962 "cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
3963 "cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
3964 "cargo:rustc-cfg=timergroup_rc_fast_calibration_tick_enable",
3965 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
3966 "cargo:rustc-cfg=uart_ram_size=\"128\"",
3967 "cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
3968 ],
3969 memory_layout: &MemoryLayout {
3970 regions: &[
3971 (
3972 "dram",
3973 MemoryRegion {
3974 address_range: 0x40800000..0x40850000,
3975 },
3976 ),
3977 (
3978 "dram2_uninit",
3979 MemoryRegion {
3980 address_range: 0x4083EFD0..0x4084FEE0,
3981 },
3982 ),
3983 ],
3984 },
3985 pins: &[
3986 PinInfo {
3987 pin: 0,
3988 limitations: &[],
3989 },
3990 PinInfo {
3991 pin: 1,
3992 limitations: &[],
3993 },
3994 PinInfo {
3995 pin: 2,
3996 limitations: &["jtag"],
3997 },
3998 PinInfo {
3999 pin: 3,
4000 limitations: &["jtag"],
4001 },
4002 PinInfo {
4003 pin: 4,
4004 limitations: &["jtag"],
4005 },
4006 PinInfo {
4007 pin: 5,
4008 limitations: &["jtag"],
4009 },
4010 PinInfo {
4011 pin: 6,
4012 limitations: &["spi_flash"],
4013 },
4014 PinInfo {
4015 pin: 7,
4016 limitations: &["spi_flash"],
4017 },
4018 PinInfo {
4019 pin: 8,
4020 limitations: &["strapping"],
4021 },
4022 PinInfo {
4023 pin: 9,
4024 limitations: &["strapping"],
4025 },
4026 PinInfo {
4027 pin: 10,
4028 limitations: &[],
4029 },
4030 PinInfo {
4031 pin: 11,
4032 limitations: &[],
4033 },
4034 PinInfo {
4035 pin: 12,
4036 limitations: &[],
4037 },
4038 PinInfo {
4039 pin: 13,
4040 limitations: &[],
4041 },
4042 PinInfo {
4043 pin: 14,
4044 limitations: &[],
4045 },
4046 PinInfo {
4047 pin: 22,
4048 limitations: &[],
4049 },
4050 PinInfo {
4051 pin: 23,
4052 limitations: &["bootloader_uart"],
4053 },
4054 PinInfo {
4055 pin: 24,
4056 limitations: &["bootloader_uart"],
4057 },
4058 PinInfo {
4059 pin: 25,
4060 limitations: &["strapping"],
4061 },
4062 PinInfo {
4063 pin: 26,
4064 limitations: &["usb_jtag"],
4065 },
4066 PinInfo {
4067 pin: 27,
4068 limitations: &["usb_jtag"],
4069 },
4070 ],
4071 },
4072 Self::Esp32s2 => Config {
4073 architecture: "xtensa",
4074 target: "xtensa-esp32s2-none-elf",
4075 symbols: &[
4076 "esp32s2",
4077 "xtensa",
4078 "single_core",
4079 "soc_has_aes",
4080 "soc_has_apb_saradc",
4081 "soc_has_dedicated_gpio",
4082 "soc_has_ds",
4083 "soc_has_efuse",
4084 "soc_has_extmem",
4085 "soc_has_fe",
4086 "soc_has_fe2",
4087 "soc_has_gpio",
4088 "soc_has_gpio_sd",
4089 "soc_has_hmac",
4090 "soc_has_i2c_ana_mst",
4091 "soc_has_i2c0",
4092 "soc_has_i2c1",
4093 "soc_has_i2s0",
4094 "soc_has_interrupt_core0",
4095 "soc_has_io_mux",
4096 "soc_has_ledc",
4097 "soc_has_nrx",
4098 "soc_has_pcnt",
4099 "soc_has_pms",
4100 "soc_has_rmt",
4101 "soc_has_rng",
4102 "soc_has_rsa",
4103 "soc_has_lpwr",
4104 "soc_has_rtc_i2c",
4105 "soc_has_rtc_io",
4106 "soc_has_sens",
4107 "soc_has_sha",
4108 "soc_has_spi0",
4109 "soc_has_spi1",
4110 "soc_has_spi2",
4111 "soc_has_spi3",
4112 "soc_has_syscon",
4113 "soc_has_system",
4114 "soc_has_systimer",
4115 "soc_has_timg0",
4116 "soc_has_timg1",
4117 "soc_has_twai0",
4118 "soc_has_uart0",
4119 "soc_has_uart1",
4120 "soc_has_uhci0",
4121 "soc_has_usb0",
4122 "soc_has_usb_wrap",
4123 "soc_has_xts_aes",
4124 "soc_has_wifi",
4125 "soc_has_dma_spi2",
4126 "soc_has_dma_spi3",
4127 "soc_has_dma_i2s0",
4128 "soc_has_dma_crypto",
4129 "soc_has_dma_copy",
4130 "soc_has_adc1",
4131 "soc_has_adc2",
4132 "soc_has_dac1",
4133 "soc_has_dac2",
4134 "soc_has_flash",
4135 "soc_has_gpio_dedicated",
4136 "soc_has_psram",
4137 "soc_has_sw_interrupt",
4138 "soc_has_ulp_riscv_core",
4139 "phy",
4140 "ulp_riscv_core",
4141 "rom_crc_le",
4142 "rom_md5_bsd",
4143 "pm_support_ext0_wakeup",
4144 "pm_support_ext1_wakeup",
4145 "pm_support_touch_sensor_wakeup",
4146 "pm_support_wifi_wakeup",
4147 "uart_support_wakeup_int",
4148 "ulp_supported",
4149 "riscv_coproc_supported",
4150 "adc_driver_supported",
4151 "aes_driver_supported",
4152 "dac_driver_supported",
4153 "dedicated_gpio_driver_supported",
4154 "dma_driver_supported",
4155 "gpio_driver_supported",
4156 "hmac_driver_supported",
4157 "i2c_master_driver_supported",
4158 "i2s_driver_supported",
4159 "interrupts_driver_supported",
4160 "io_mux_driver_supported",
4161 "ledc_driver_supported",
4162 "pcnt_driver_supported",
4163 "phy_driver_supported",
4164 "psram_driver_supported",
4165 "rmt_driver_supported",
4166 "rng_driver_supported",
4167 "rsa_driver_supported",
4168 "lp_timer_driver_supported",
4169 "sha_driver_supported",
4170 "sleep_driver_supported",
4171 "soc_driver_supported",
4172 "spi_master_driver_supported",
4173 "spi_slave_driver_supported",
4174 "systimer_driver_supported",
4175 "temp_sensor_driver_supported",
4176 "timergroup_driver_supported",
4177 "twai_driver_supported",
4178 "uart_driver_supported",
4179 "ulp_fsm_driver_supported",
4180 "ulp_riscv_driver_supported",
4181 "usb_otg_driver_supported",
4182 "wifi_driver_supported",
4183 "adc_adc1",
4184 "adc_adc2",
4185 "dac_dac1",
4186 "dac_dac2",
4187 "i2c_master_i2c0",
4188 "i2c_master_i2c1",
4189 "spi_master_spi2",
4190 "spi_master_spi3",
4191 "spi_slave_spi2",
4192 "spi_slave_spi3",
4193 "timergroup_timg0",
4194 "timergroup_timg1",
4195 "uart_uart0",
4196 "uart_uart1",
4197 "aes_dma",
4198 "aes_dma_mode_ecb",
4199 "aes_dma_mode_cbc",
4200 "aes_dma_mode_ofb",
4201 "aes_dma_mode_ctr",
4202 "aes_dma_mode_cfb8",
4203 "aes_dma_mode_cfb128",
4204 "aes_dma_mode_gcm",
4205 "aes_has_split_text_registers",
4206 "aes_endianness_configurable",
4207 "dedicated_gpio_needs_initialization",
4208 "dma_kind=\"pdma\"",
4209 "dma_supports_mem2mem",
4210 "dma_can_access_psram",
4211 "dma_ext_mem_configurable_block_size",
4212 "gpio_has_bank_1",
4213 "gpio_gpio_function=\"1\"",
4214 "gpio_constant_0_input=\"60\"",
4215 "gpio_constant_1_input=\"56\"",
4216 "gpio_func_in_sel_offset=\"0\"",
4217 "gpio_input_signal_max=\"242\"",
4218 "gpio_output_signal_max=\"256\"",
4219 "i2c_master_has_bus_timeout_enable",
4220 "i2c_master_separate_filter_config_registers",
4221 "i2c_master_has_arbitration_en",
4222 "i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
4223 "i2c_master_i2c0_data_register_ahb_address_is_set",
4224 "i2c_master_max_bus_timeout=\"16777215\"",
4225 "i2c_master_ll_intr_mask=\"131071\"",
4226 "i2c_master_fifo_size=\"32\"",
4227 "interrupts_status_registers=\"3\"",
4228 "interrupt_controller=\"xtensa\"",
4229 "psram_extmem_origin=\"1062207488\"",
4230 "rmt_ram_start=\"1061250048\"",
4231 "rmt_channel_ram_size=\"64\"",
4232 "rmt_has_tx_immediate_stop",
4233 "rmt_has_tx_loop_count",
4234 "rmt_has_tx_carrier_data_only",
4235 "rmt_has_tx_sync",
4236 "rmt_has_rx_demodulation",
4237 "rmt_has_per_channel_clock",
4238 "rmt_supports_reftick_clock",
4239 "rmt_supports_apb_clock",
4240 "rng_apb_cycle_wait_num=\"16\"",
4241 "rng_trng_supported",
4242 "rsa_size_increment=\"32\"",
4243 "rsa_memory_size_bytes=\"512\"",
4244 "sha_dma",
4245 "sleep_light_sleep",
4246 "sleep_deep_sleep",
4247 "soc_rc_fast_clk_default=\"8500000\"",
4248 "soc_rc_fast_clk_default_is_set",
4249 "soc_has_clock_node_xtal_clk",
4250 "soc_has_clock_node_pll_clk",
4251 "soc_has_clock_node_apll_clk",
4252 "soc_has_clock_node_rc_fast_clk",
4253 "soc_has_clock_node_cpu_pll_div_in",
4254 "soc_has_clock_node_cpu_pll_div",
4255 "soc_has_clock_node_system_pre_div_in",
4256 "soc_has_clock_node_system_pre_div",
4257 "soc_has_clock_node_cpu_clk",
4258 "soc_has_clock_node_apb_clk_cpu_div2",
4259 "soc_has_clock_node_apb_clk_80m",
4260 "soc_has_clock_node_apb_clk",
4261 "soc_has_clock_node_ref_tick_xtal",
4262 "soc_has_clock_node_ref_tick_ck8m",
4263 "soc_has_clock_node_ref_tick",
4264 "soc_has_clock_node_xtal32k_clk",
4265 "soc_has_clock_node_rc_slow_clk",
4266 "soc_has_clock_node_rc_fast_div_clk",
4267 "soc_has_clock_node_xtal_div_clk",
4268 "soc_has_clock_node_rtc_slow_clk",
4269 "soc_has_clock_node_rtc_fast_clk",
4270 "soc_has_clock_node_uart_mem_clk",
4271 "soc_has_clock_node_timg_calibration_clock",
4272 "soc_has_clock_node_timg_function_clock",
4273 "soc_has_clock_node_uart_function_clock",
4274 "soc_has_clock_node_uart_baud_rate_generator",
4275 "soc_has_clock_node_uart_mem_clock",
4276 "has_dram_region",
4277 "has_dram2_uninit_region",
4278 "spi_master_supports_dma",
4279 "spi_master_has_octal",
4280 "spi_master_has_dma_segmented_transfer",
4281 "spi_slave_supports_dma",
4282 "timergroup_timg_has_timer1",
4283 "timergroup_rc_fast_calibration_is_set",
4284 "uart_ram_size=\"128\"",
4285 "wifi_mac_version=\"1\"",
4286 "wifi_csi_supported",
4287 ],
4288 cfgs: &[
4289 "cargo:rustc-cfg=esp32s2",
4290 "cargo:rustc-cfg=xtensa",
4291 "cargo:rustc-cfg=single_core",
4292 "cargo:rustc-cfg=soc_has_aes",
4293 "cargo:rustc-cfg=soc_has_apb_saradc",
4294 "cargo:rustc-cfg=soc_has_dedicated_gpio",
4295 "cargo:rustc-cfg=soc_has_ds",
4296 "cargo:rustc-cfg=soc_has_efuse",
4297 "cargo:rustc-cfg=soc_has_extmem",
4298 "cargo:rustc-cfg=soc_has_fe",
4299 "cargo:rustc-cfg=soc_has_fe2",
4300 "cargo:rustc-cfg=soc_has_gpio",
4301 "cargo:rustc-cfg=soc_has_gpio_sd",
4302 "cargo:rustc-cfg=soc_has_hmac",
4303 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
4304 "cargo:rustc-cfg=soc_has_i2c0",
4305 "cargo:rustc-cfg=soc_has_i2c1",
4306 "cargo:rustc-cfg=soc_has_i2s0",
4307 "cargo:rustc-cfg=soc_has_interrupt_core0",
4308 "cargo:rustc-cfg=soc_has_io_mux",
4309 "cargo:rustc-cfg=soc_has_ledc",
4310 "cargo:rustc-cfg=soc_has_nrx",
4311 "cargo:rustc-cfg=soc_has_pcnt",
4312 "cargo:rustc-cfg=soc_has_pms",
4313 "cargo:rustc-cfg=soc_has_rmt",
4314 "cargo:rustc-cfg=soc_has_rng",
4315 "cargo:rustc-cfg=soc_has_rsa",
4316 "cargo:rustc-cfg=soc_has_lpwr",
4317 "cargo:rustc-cfg=soc_has_rtc_i2c",
4318 "cargo:rustc-cfg=soc_has_rtc_io",
4319 "cargo:rustc-cfg=soc_has_sens",
4320 "cargo:rustc-cfg=soc_has_sha",
4321 "cargo:rustc-cfg=soc_has_spi0",
4322 "cargo:rustc-cfg=soc_has_spi1",
4323 "cargo:rustc-cfg=soc_has_spi2",
4324 "cargo:rustc-cfg=soc_has_spi3",
4325 "cargo:rustc-cfg=soc_has_syscon",
4326 "cargo:rustc-cfg=soc_has_system",
4327 "cargo:rustc-cfg=soc_has_systimer",
4328 "cargo:rustc-cfg=soc_has_timg0",
4329 "cargo:rustc-cfg=soc_has_timg1",
4330 "cargo:rustc-cfg=soc_has_twai0",
4331 "cargo:rustc-cfg=soc_has_uart0",
4332 "cargo:rustc-cfg=soc_has_uart1",
4333 "cargo:rustc-cfg=soc_has_uhci0",
4334 "cargo:rustc-cfg=soc_has_usb0",
4335 "cargo:rustc-cfg=soc_has_usb_wrap",
4336 "cargo:rustc-cfg=soc_has_xts_aes",
4337 "cargo:rustc-cfg=soc_has_wifi",
4338 "cargo:rustc-cfg=soc_has_dma_spi2",
4339 "cargo:rustc-cfg=soc_has_dma_spi3",
4340 "cargo:rustc-cfg=soc_has_dma_i2s0",
4341 "cargo:rustc-cfg=soc_has_dma_crypto",
4342 "cargo:rustc-cfg=soc_has_dma_copy",
4343 "cargo:rustc-cfg=soc_has_adc1",
4344 "cargo:rustc-cfg=soc_has_adc2",
4345 "cargo:rustc-cfg=soc_has_dac1",
4346 "cargo:rustc-cfg=soc_has_dac2",
4347 "cargo:rustc-cfg=soc_has_flash",
4348 "cargo:rustc-cfg=soc_has_gpio_dedicated",
4349 "cargo:rustc-cfg=soc_has_psram",
4350 "cargo:rustc-cfg=soc_has_sw_interrupt",
4351 "cargo:rustc-cfg=soc_has_ulp_riscv_core",
4352 "cargo:rustc-cfg=phy",
4353 "cargo:rustc-cfg=ulp_riscv_core",
4354 "cargo:rustc-cfg=rom_crc_le",
4355 "cargo:rustc-cfg=rom_md5_bsd",
4356 "cargo:rustc-cfg=pm_support_ext0_wakeup",
4357 "cargo:rustc-cfg=pm_support_ext1_wakeup",
4358 "cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
4359 "cargo:rustc-cfg=pm_support_wifi_wakeup",
4360 "cargo:rustc-cfg=uart_support_wakeup_int",
4361 "cargo:rustc-cfg=ulp_supported",
4362 "cargo:rustc-cfg=riscv_coproc_supported",
4363 "cargo:rustc-cfg=adc_driver_supported",
4364 "cargo:rustc-cfg=aes_driver_supported",
4365 "cargo:rustc-cfg=dac_driver_supported",
4366 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
4367 "cargo:rustc-cfg=dma_driver_supported",
4368 "cargo:rustc-cfg=gpio_driver_supported",
4369 "cargo:rustc-cfg=hmac_driver_supported",
4370 "cargo:rustc-cfg=i2c_master_driver_supported",
4371 "cargo:rustc-cfg=i2s_driver_supported",
4372 "cargo:rustc-cfg=interrupts_driver_supported",
4373 "cargo:rustc-cfg=io_mux_driver_supported",
4374 "cargo:rustc-cfg=ledc_driver_supported",
4375 "cargo:rustc-cfg=pcnt_driver_supported",
4376 "cargo:rustc-cfg=phy_driver_supported",
4377 "cargo:rustc-cfg=psram_driver_supported",
4378 "cargo:rustc-cfg=rmt_driver_supported",
4379 "cargo:rustc-cfg=rng_driver_supported",
4380 "cargo:rustc-cfg=rsa_driver_supported",
4381 "cargo:rustc-cfg=lp_timer_driver_supported",
4382 "cargo:rustc-cfg=sha_driver_supported",
4383 "cargo:rustc-cfg=sleep_driver_supported",
4384 "cargo:rustc-cfg=soc_driver_supported",
4385 "cargo:rustc-cfg=spi_master_driver_supported",
4386 "cargo:rustc-cfg=spi_slave_driver_supported",
4387 "cargo:rustc-cfg=systimer_driver_supported",
4388 "cargo:rustc-cfg=temp_sensor_driver_supported",
4389 "cargo:rustc-cfg=timergroup_driver_supported",
4390 "cargo:rustc-cfg=twai_driver_supported",
4391 "cargo:rustc-cfg=uart_driver_supported",
4392 "cargo:rustc-cfg=ulp_fsm_driver_supported",
4393 "cargo:rustc-cfg=ulp_riscv_driver_supported",
4394 "cargo:rustc-cfg=usb_otg_driver_supported",
4395 "cargo:rustc-cfg=wifi_driver_supported",
4396 "cargo:rustc-cfg=adc_adc1",
4397 "cargo:rustc-cfg=adc_adc2",
4398 "cargo:rustc-cfg=dac_dac1",
4399 "cargo:rustc-cfg=dac_dac2",
4400 "cargo:rustc-cfg=i2c_master_i2c0",
4401 "cargo:rustc-cfg=i2c_master_i2c1",
4402 "cargo:rustc-cfg=spi_master_spi2",
4403 "cargo:rustc-cfg=spi_master_spi3",
4404 "cargo:rustc-cfg=spi_slave_spi2",
4405 "cargo:rustc-cfg=spi_slave_spi3",
4406 "cargo:rustc-cfg=timergroup_timg0",
4407 "cargo:rustc-cfg=timergroup_timg1",
4408 "cargo:rustc-cfg=uart_uart0",
4409 "cargo:rustc-cfg=uart_uart1",
4410 "cargo:rustc-cfg=aes_dma",
4411 "cargo:rustc-cfg=aes_dma_mode_ecb",
4412 "cargo:rustc-cfg=aes_dma_mode_cbc",
4413 "cargo:rustc-cfg=aes_dma_mode_ofb",
4414 "cargo:rustc-cfg=aes_dma_mode_ctr",
4415 "cargo:rustc-cfg=aes_dma_mode_cfb8",
4416 "cargo:rustc-cfg=aes_dma_mode_cfb128",
4417 "cargo:rustc-cfg=aes_dma_mode_gcm",
4418 "cargo:rustc-cfg=aes_has_split_text_registers",
4419 "cargo:rustc-cfg=aes_endianness_configurable",
4420 "cargo:rustc-cfg=dedicated_gpio_needs_initialization",
4421 "cargo:rustc-cfg=dma_kind=\"pdma\"",
4422 "cargo:rustc-cfg=dma_supports_mem2mem",
4423 "cargo:rustc-cfg=dma_can_access_psram",
4424 "cargo:rustc-cfg=dma_ext_mem_configurable_block_size",
4425 "cargo:rustc-cfg=gpio_has_bank_1",
4426 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
4427 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
4428 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
4429 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
4430 "cargo:rustc-cfg=gpio_input_signal_max=\"242\"",
4431 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
4432 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
4433 "cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
4434 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
4435 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
4436 "cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address_is_set",
4437 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"16777215\"",
4438 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"131071\"",
4439 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
4440 "cargo:rustc-cfg=interrupts_status_registers=\"3\"",
4441 "cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
4442 "cargo:rustc-cfg=psram_extmem_origin=\"1062207488\"",
4443 "cargo:rustc-cfg=rmt_ram_start=\"1061250048\"",
4444 "cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
4445 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
4446 "cargo:rustc-cfg=rmt_has_tx_loop_count",
4447 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
4448 "cargo:rustc-cfg=rmt_has_tx_sync",
4449 "cargo:rustc-cfg=rmt_has_rx_demodulation",
4450 "cargo:rustc-cfg=rmt_has_per_channel_clock",
4451 "cargo:rustc-cfg=rmt_supports_reftick_clock",
4452 "cargo:rustc-cfg=rmt_supports_apb_clock",
4453 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
4454 "cargo:rustc-cfg=rng_trng_supported",
4455 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
4456 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
4457 "cargo:rustc-cfg=sha_dma",
4458 "cargo:rustc-cfg=sleep_light_sleep",
4459 "cargo:rustc-cfg=sleep_deep_sleep",
4460 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"8500000\"",
4461 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
4462 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
4463 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
4464 "cargo:rustc-cfg=soc_has_clock_node_apll_clk",
4465 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
4466 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_in",
4467 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
4468 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
4469 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
4470 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
4471 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_cpu_div2",
4472 "cargo:rustc-cfg=soc_has_clock_node_apb_clk_80m",
4473 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
4474 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_xtal",
4475 "cargo:rustc-cfg=soc_has_clock_node_ref_tick_ck8m",
4476 "cargo:rustc-cfg=soc_has_clock_node_ref_tick",
4477 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
4478 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
4479 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
4480 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
4481 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
4482 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
4483 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
4484 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
4485 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
4486 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
4487 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
4488 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
4489 "cargo:rustc-cfg=has_dram_region",
4490 "cargo:rustc-cfg=has_dram2_uninit_region",
4491 "cargo:rustc-cfg=spi_master_supports_dma",
4492 "cargo:rustc-cfg=spi_master_has_octal",
4493 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
4494 "cargo:rustc-cfg=spi_slave_supports_dma",
4495 "cargo:rustc-cfg=timergroup_timg_has_timer1",
4496 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
4497 "cargo:rustc-cfg=uart_ram_size=\"128\"",
4498 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
4499 "cargo:rustc-cfg=wifi_csi_supported",
4500 ],
4501 memory_layout: &MemoryLayout {
4502 regions: &[
4503 (
4504 "dram",
4505 MemoryRegion {
4506 address_range: 0x3FFB0000..0x40000000,
4507 },
4508 ),
4509 (
4510 "dram2_uninit",
4511 MemoryRegion {
4512 address_range: 0x3FFDE000..0x40000000,
4513 },
4514 ),
4515 ],
4516 },
4517 pins: &[
4518 PinInfo {
4519 pin: 0,
4520 limitations: &["strapping"],
4521 },
4522 PinInfo {
4523 pin: 1,
4524 limitations: &[],
4525 },
4526 PinInfo {
4527 pin: 2,
4528 limitations: &[],
4529 },
4530 PinInfo {
4531 pin: 3,
4532 limitations: &[],
4533 },
4534 PinInfo {
4535 pin: 4,
4536 limitations: &[],
4537 },
4538 PinInfo {
4539 pin: 5,
4540 limitations: &[],
4541 },
4542 PinInfo {
4543 pin: 6,
4544 limitations: &[],
4545 },
4546 PinInfo {
4547 pin: 7,
4548 limitations: &[],
4549 },
4550 PinInfo {
4551 pin: 8,
4552 limitations: &[],
4553 },
4554 PinInfo {
4555 pin: 9,
4556 limitations: &[],
4557 },
4558 PinInfo {
4559 pin: 10,
4560 limitations: &[],
4561 },
4562 PinInfo {
4563 pin: 11,
4564 limitations: &[],
4565 },
4566 PinInfo {
4567 pin: 12,
4568 limitations: &[],
4569 },
4570 PinInfo {
4571 pin: 13,
4572 limitations: &[],
4573 },
4574 PinInfo {
4575 pin: 14,
4576 limitations: &[],
4577 },
4578 PinInfo {
4579 pin: 15,
4580 limitations: &[],
4581 },
4582 PinInfo {
4583 pin: 16,
4584 limitations: &[],
4585 },
4586 PinInfo {
4587 pin: 17,
4588 limitations: &[],
4589 },
4590 PinInfo {
4591 pin: 18,
4592 limitations: &[],
4593 },
4594 PinInfo {
4595 pin: 19,
4596 limitations: &["usb_jtag"],
4597 },
4598 PinInfo {
4599 pin: 20,
4600 limitations: &["usb_jtag"],
4601 },
4602 PinInfo {
4603 pin: 21,
4604 limitations: &[],
4605 },
4606 PinInfo {
4607 pin: 26,
4608 limitations: &["spi_psram"],
4609 },
4610 PinInfo {
4611 pin: 27,
4612 limitations: &["spi_flash", "spi_psram"],
4613 },
4614 PinInfo {
4615 pin: 28,
4616 limitations: &["spi_flash", "spi_psram"],
4617 },
4618 PinInfo {
4619 pin: 29,
4620 limitations: &["spi_flash"],
4621 },
4622 PinInfo {
4623 pin: 30,
4624 limitations: &["spi_flash", "spi_psram"],
4625 },
4626 PinInfo {
4627 pin: 31,
4628 limitations: &["spi_flash", "spi_psram"],
4629 },
4630 PinInfo {
4631 pin: 32,
4632 limitations: &["spi_flash", "spi_psram"],
4633 },
4634 PinInfo {
4635 pin: 33,
4636 limitations: &["octal_flash", "octal_psram"],
4637 },
4638 PinInfo {
4639 pin: 34,
4640 limitations: &["octal_flash", "octal_psram"],
4641 },
4642 PinInfo {
4643 pin: 35,
4644 limitations: &["octal_flash", "octal_psram"],
4645 },
4646 PinInfo {
4647 pin: 36,
4648 limitations: &["octal_flash", "octal_psram"],
4649 },
4650 PinInfo {
4651 pin: 37,
4652 limitations: &["octal_flash", "octal_psram"],
4653 },
4654 PinInfo {
4655 pin: 38,
4656 limitations: &[],
4657 },
4658 PinInfo {
4659 pin: 39,
4660 limitations: &["jtag"],
4661 },
4662 PinInfo {
4663 pin: 40,
4664 limitations: &["jtag"],
4665 },
4666 PinInfo {
4667 pin: 41,
4668 limitations: &["jtag"],
4669 },
4670 PinInfo {
4671 pin: 42,
4672 limitations: &["jtag"],
4673 },
4674 PinInfo {
4675 pin: 43,
4676 limitations: &["bootloader_uart"],
4677 },
4678 PinInfo {
4679 pin: 44,
4680 limitations: &["bootloader_uart"],
4681 },
4682 PinInfo {
4683 pin: 45,
4684 limitations: &["strapping"],
4685 },
4686 PinInfo {
4687 pin: 46,
4688 limitations: &["strapping"],
4689 },
4690 ],
4691 },
4692 Self::Esp32s3 => Config {
4693 architecture: "xtensa",
4694 target: "xtensa-esp32s3-none-elf",
4695 symbols: &[
4696 "esp32s3",
4697 "xtensa",
4698 "multi_core",
4699 "soc_has_aes",
4700 "soc_has_apb_ctrl",
4701 "soc_has_apb_saradc",
4702 "soc_has_assist_debug",
4703 "soc_has_dma",
4704 "soc_has_ds",
4705 "soc_has_efuse",
4706 "soc_has_extmem",
4707 "soc_has_gpio",
4708 "soc_has_gpio_sd",
4709 "soc_has_hmac",
4710 "soc_has_i2c_ana_mst",
4711 "soc_has_i2c0",
4712 "soc_has_i2c1",
4713 "soc_has_i2s0",
4714 "soc_has_i2s1",
4715 "soc_has_interrupt_core0",
4716 "soc_has_interrupt_core1",
4717 "soc_has_io_mux",
4718 "soc_has_lcd_cam",
4719 "soc_has_ledc",
4720 "soc_has_lpwr",
4721 "soc_has_mcpwm0",
4722 "soc_has_mcpwm1",
4723 "soc_has_pcnt",
4724 "soc_has_peri_backup",
4725 "soc_has_rmt",
4726 "soc_has_rng",
4727 "soc_has_rsa",
4728 "soc_has_rtc_cntl",
4729 "soc_has_rtc_i2c",
4730 "soc_has_rtc_io",
4731 "soc_has_sdhost",
4732 "soc_has_sens",
4733 "soc_has_sensitive",
4734 "soc_has_sha",
4735 "soc_has_spi0",
4736 "soc_has_spi1",
4737 "soc_has_spi2",
4738 "soc_has_spi3",
4739 "soc_has_system",
4740 "soc_has_systimer",
4741 "soc_has_timg0",
4742 "soc_has_timg1",
4743 "soc_has_twai0",
4744 "soc_has_uart0",
4745 "soc_has_uart1",
4746 "soc_has_uart2",
4747 "soc_has_uhci0",
4748 "soc_has_usb0",
4749 "soc_has_usb_device",
4750 "soc_has_usb_wrap",
4751 "soc_has_wcl",
4752 "soc_has_xts_aes",
4753 "soc_has_dma_ch0",
4754 "soc_has_dma_ch1",
4755 "soc_has_dma_ch2",
4756 "soc_has_dma_ch3",
4757 "soc_has_dma_ch4",
4758 "soc_has_adc1",
4759 "soc_has_adc2",
4760 "soc_has_bt",
4761 "soc_has_cpu_ctrl",
4762 "soc_has_flash",
4763 "soc_has_gpio_dedicated",
4764 "soc_has_psram",
4765 "soc_has_sw_interrupt",
4766 "soc_has_ulp_riscv_core",
4767 "soc_has_wifi",
4768 "phy",
4769 "swd",
4770 "ulp_riscv_core",
4771 "rom_crc_le",
4772 "rom_crc_be",
4773 "rom_md5_bsd",
4774 "pm_support_ext0_wakeup",
4775 "pm_support_ext1_wakeup",
4776 "pm_support_touch_sensor_wakeup",
4777 "pm_support_wifi_wakeup",
4778 "pm_support_bt_wakeup",
4779 "uart_support_wakeup_int",
4780 "ulp_supported",
4781 "riscv_coproc_supported",
4782 "adc_driver_supported",
4783 "aes_driver_supported",
4784 "assist_debug_driver_supported",
4785 "bt_driver_supported",
4786 "camera_driver_supported",
4787 "dedicated_gpio_driver_supported",
4788 "dma_driver_supported",
4789 "gpio_driver_supported",
4790 "hmac_driver_supported",
4791 "i2c_master_driver_supported",
4792 "i2s_driver_supported",
4793 "interrupts_driver_supported",
4794 "io_mux_driver_supported",
4795 "ledc_driver_supported",
4796 "mcpwm_driver_supported",
4797 "pcnt_driver_supported",
4798 "phy_driver_supported",
4799 "psram_driver_supported",
4800 "rgb_display_driver_supported",
4801 "rmt_driver_supported",
4802 "rng_driver_supported",
4803 "rsa_driver_supported",
4804 "lp_timer_driver_supported",
4805 "sd_host_driver_supported",
4806 "sha_driver_supported",
4807 "sleep_driver_supported",
4808 "soc_driver_supported",
4809 "spi_master_driver_supported",
4810 "spi_slave_driver_supported",
4811 "systimer_driver_supported",
4812 "temp_sensor_driver_supported",
4813 "timergroup_driver_supported",
4814 "twai_driver_supported",
4815 "uart_driver_supported",
4816 "uhci_driver_supported",
4817 "ulp_fsm_driver_supported",
4818 "ulp_riscv_driver_supported",
4819 "usb_otg_driver_supported",
4820 "usb_serial_jtag_driver_supported",
4821 "wifi_driver_supported",
4822 "adc_adc1",
4823 "adc_adc2",
4824 "i2c_master_i2c0",
4825 "i2c_master_i2c1",
4826 "spi_master_spi2",
4827 "spi_master_spi3",
4828 "spi_slave_spi2",
4829 "spi_slave_spi3",
4830 "timergroup_timg0",
4831 "timergroup_timg1",
4832 "uart_uart0",
4833 "uart_uart1",
4834 "uart_uart2",
4835 "aes_dma",
4836 "aes_dma_mode_ecb",
4837 "aes_dma_mode_cbc",
4838 "aes_dma_mode_ofb",
4839 "aes_dma_mode_ctr",
4840 "aes_dma_mode_cfb8",
4841 "aes_dma_mode_cfb128",
4842 "aes_has_split_text_registers",
4843 "assist_debug_has_region_monitor",
4844 "bt_controller=\"btdm\"",
4845 "dedicated_gpio_needs_initialization",
4846 "dma_kind=\"gdma\"",
4847 "dma_supports_mem2mem",
4848 "dma_can_access_psram",
4849 "dma_ext_mem_configurable_block_size",
4850 "dma_separate_in_out_interrupts",
4851 "dma_max_priority=\"9\"",
4852 "dma_max_priority_is_set",
4853 "dma_gdma_version=\"1\"",
4854 "dma_gdma_version_is_set",
4855 "gpio_has_bank_1",
4856 "gpio_gpio_function=\"1\"",
4857 "gpio_constant_0_input=\"60\"",
4858 "gpio_constant_1_input=\"56\"",
4859 "gpio_func_in_sel_offset=\"0\"",
4860 "gpio_input_signal_max=\"255\"",
4861 "gpio_output_signal_max=\"256\"",
4862 "i2c_master_has_fsm_timeouts",
4863 "i2c_master_has_bus_timeout_enable",
4864 "i2c_master_can_estimate_nack_reason",
4865 "i2c_master_has_conf_update",
4866 "i2c_master_has_arbitration_en",
4867 "i2c_master_has_tx_fifo_watermark",
4868 "i2c_master_bus_timeout_is_exponential",
4869 "i2c_master_max_bus_timeout=\"31\"",
4870 "i2c_master_ll_intr_mask=\"262143\"",
4871 "i2c_master_fifo_size=\"32\"",
4872 "interrupts_status_registers=\"4\"",
4873 "interrupt_controller=\"xtensa\"",
4874 "phy_combo_module",
4875 "phy_backed_up_digital_register_count=\"21\"",
4876 "phy_backed_up_digital_register_count_is_set",
4877 "psram_octal_spi",
4878 "psram_extmem_origin=\"1006632960\"",
4879 "rmt_ram_start=\"1610704896\"",
4880 "rmt_channel_ram_size=\"48\"",
4881 "rmt_has_tx_immediate_stop",
4882 "rmt_has_tx_loop_count",
4883 "rmt_has_tx_loop_auto_stop",
4884 "rmt_has_tx_carrier_data_only",
4885 "rmt_has_tx_sync",
4886 "rmt_has_rx_wrap",
4887 "rmt_has_rx_demodulation",
4888 "rmt_has_dma",
4889 "rmt_supports_none_clock",
4890 "rmt_supports_apb_clock",
4891 "rmt_supports_rcfast_clock",
4892 "rmt_supports_xtal_clock",
4893 "rng_apb_cycle_wait_num=\"16\"",
4894 "rng_trng_supported",
4895 "rsa_size_increment=\"32\"",
4896 "rsa_memory_size_bytes=\"512\"",
4897 "sha_dma",
4898 "sleep_light_sleep",
4899 "sleep_deep_sleep",
4900 "soc_multi_core_enabled",
4901 "soc_rc_fast_clk_default=\"17500000\"",
4902 "soc_rc_fast_clk_default_is_set",
4903 "soc_has_clock_node_xtal_clk",
4904 "soc_has_clock_node_pll_clk",
4905 "soc_has_clock_node_rc_fast_clk",
4906 "soc_has_clock_node_xtal32k_clk",
4907 "soc_has_clock_node_rc_slow_clk",
4908 "soc_has_clock_node_rc_fast_div_clk",
4909 "soc_has_clock_node_system_pre_div_in",
4910 "soc_has_clock_node_system_pre_div",
4911 "soc_has_clock_node_cpu_pll_div_out",
4912 "soc_has_clock_node_cpu_clk",
4913 "soc_has_clock_node_pll_d2",
4914 "soc_has_clock_node_pll_160m",
4915 "soc_has_clock_node_apb_80m",
4916 "soc_has_clock_node_apb_clk",
4917 "soc_has_clock_node_crypto_pwm_clk",
4918 "soc_has_clock_node_rc_fast_clk_div_n",
4919 "soc_has_clock_node_xtal_div_clk",
4920 "soc_has_clock_node_rtc_slow_clk",
4921 "soc_has_clock_node_rtc_fast_clk",
4922 "soc_has_clock_node_low_power_clk",
4923 "soc_has_clock_node_uart_mem_clk",
4924 "soc_has_clock_node_timg_calibration_clock",
4925 "soc_has_clock_node_mcpwm_function_clock",
4926 "soc_has_clock_node_timg_function_clock",
4927 "soc_has_clock_node_rmt_sclk",
4928 "soc_has_clock_node_uart_function_clock",
4929 "soc_has_clock_node_uart_baud_rate_generator",
4930 "soc_has_clock_node_uart_mem_clock",
4931 "has_dram_region",
4932 "has_dram2_uninit_region",
4933 "spi_master_supports_dma",
4934 "spi_master_has_octal",
4935 "spi_master_has_app_interrupts",
4936 "spi_master_has_dma_segmented_transfer",
4937 "spi_slave_supports_dma",
4938 "timergroup_timg_has_timer1",
4939 "timergroup_rc_fast_calibration_is_set",
4940 "uart_ram_size=\"128\"",
4941 "uart_has_sclk_divider",
4942 "wifi_mac_version=\"1\"",
4943 "wifi_csi_supported",
4944 ],
4945 cfgs: &[
4946 "cargo:rustc-cfg=esp32s3",
4947 "cargo:rustc-cfg=xtensa",
4948 "cargo:rustc-cfg=multi_core",
4949 "cargo:rustc-cfg=soc_has_aes",
4950 "cargo:rustc-cfg=soc_has_apb_ctrl",
4951 "cargo:rustc-cfg=soc_has_apb_saradc",
4952 "cargo:rustc-cfg=soc_has_assist_debug",
4953 "cargo:rustc-cfg=soc_has_dma",
4954 "cargo:rustc-cfg=soc_has_ds",
4955 "cargo:rustc-cfg=soc_has_efuse",
4956 "cargo:rustc-cfg=soc_has_extmem",
4957 "cargo:rustc-cfg=soc_has_gpio",
4958 "cargo:rustc-cfg=soc_has_gpio_sd",
4959 "cargo:rustc-cfg=soc_has_hmac",
4960 "cargo:rustc-cfg=soc_has_i2c_ana_mst",
4961 "cargo:rustc-cfg=soc_has_i2c0",
4962 "cargo:rustc-cfg=soc_has_i2c1",
4963 "cargo:rustc-cfg=soc_has_i2s0",
4964 "cargo:rustc-cfg=soc_has_i2s1",
4965 "cargo:rustc-cfg=soc_has_interrupt_core0",
4966 "cargo:rustc-cfg=soc_has_interrupt_core1",
4967 "cargo:rustc-cfg=soc_has_io_mux",
4968 "cargo:rustc-cfg=soc_has_lcd_cam",
4969 "cargo:rustc-cfg=soc_has_ledc",
4970 "cargo:rustc-cfg=soc_has_lpwr",
4971 "cargo:rustc-cfg=soc_has_mcpwm0",
4972 "cargo:rustc-cfg=soc_has_mcpwm1",
4973 "cargo:rustc-cfg=soc_has_pcnt",
4974 "cargo:rustc-cfg=soc_has_peri_backup",
4975 "cargo:rustc-cfg=soc_has_rmt",
4976 "cargo:rustc-cfg=soc_has_rng",
4977 "cargo:rustc-cfg=soc_has_rsa",
4978 "cargo:rustc-cfg=soc_has_rtc_cntl",
4979 "cargo:rustc-cfg=soc_has_rtc_i2c",
4980 "cargo:rustc-cfg=soc_has_rtc_io",
4981 "cargo:rustc-cfg=soc_has_sdhost",
4982 "cargo:rustc-cfg=soc_has_sens",
4983 "cargo:rustc-cfg=soc_has_sensitive",
4984 "cargo:rustc-cfg=soc_has_sha",
4985 "cargo:rustc-cfg=soc_has_spi0",
4986 "cargo:rustc-cfg=soc_has_spi1",
4987 "cargo:rustc-cfg=soc_has_spi2",
4988 "cargo:rustc-cfg=soc_has_spi3",
4989 "cargo:rustc-cfg=soc_has_system",
4990 "cargo:rustc-cfg=soc_has_systimer",
4991 "cargo:rustc-cfg=soc_has_timg0",
4992 "cargo:rustc-cfg=soc_has_timg1",
4993 "cargo:rustc-cfg=soc_has_twai0",
4994 "cargo:rustc-cfg=soc_has_uart0",
4995 "cargo:rustc-cfg=soc_has_uart1",
4996 "cargo:rustc-cfg=soc_has_uart2",
4997 "cargo:rustc-cfg=soc_has_uhci0",
4998 "cargo:rustc-cfg=soc_has_usb0",
4999 "cargo:rustc-cfg=soc_has_usb_device",
5000 "cargo:rustc-cfg=soc_has_usb_wrap",
5001 "cargo:rustc-cfg=soc_has_wcl",
5002 "cargo:rustc-cfg=soc_has_xts_aes",
5003 "cargo:rustc-cfg=soc_has_dma_ch0",
5004 "cargo:rustc-cfg=soc_has_dma_ch1",
5005 "cargo:rustc-cfg=soc_has_dma_ch2",
5006 "cargo:rustc-cfg=soc_has_dma_ch3",
5007 "cargo:rustc-cfg=soc_has_dma_ch4",
5008 "cargo:rustc-cfg=soc_has_adc1",
5009 "cargo:rustc-cfg=soc_has_adc2",
5010 "cargo:rustc-cfg=soc_has_bt",
5011 "cargo:rustc-cfg=soc_has_cpu_ctrl",
5012 "cargo:rustc-cfg=soc_has_flash",
5013 "cargo:rustc-cfg=soc_has_gpio_dedicated",
5014 "cargo:rustc-cfg=soc_has_psram",
5015 "cargo:rustc-cfg=soc_has_sw_interrupt",
5016 "cargo:rustc-cfg=soc_has_ulp_riscv_core",
5017 "cargo:rustc-cfg=soc_has_wifi",
5018 "cargo:rustc-cfg=phy",
5019 "cargo:rustc-cfg=swd",
5020 "cargo:rustc-cfg=ulp_riscv_core",
5021 "cargo:rustc-cfg=rom_crc_le",
5022 "cargo:rustc-cfg=rom_crc_be",
5023 "cargo:rustc-cfg=rom_md5_bsd",
5024 "cargo:rustc-cfg=pm_support_ext0_wakeup",
5025 "cargo:rustc-cfg=pm_support_ext1_wakeup",
5026 "cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
5027 "cargo:rustc-cfg=pm_support_wifi_wakeup",
5028 "cargo:rustc-cfg=pm_support_bt_wakeup",
5029 "cargo:rustc-cfg=uart_support_wakeup_int",
5030 "cargo:rustc-cfg=ulp_supported",
5031 "cargo:rustc-cfg=riscv_coproc_supported",
5032 "cargo:rustc-cfg=adc_driver_supported",
5033 "cargo:rustc-cfg=aes_driver_supported",
5034 "cargo:rustc-cfg=assist_debug_driver_supported",
5035 "cargo:rustc-cfg=bt_driver_supported",
5036 "cargo:rustc-cfg=camera_driver_supported",
5037 "cargo:rustc-cfg=dedicated_gpio_driver_supported",
5038 "cargo:rustc-cfg=dma_driver_supported",
5039 "cargo:rustc-cfg=gpio_driver_supported",
5040 "cargo:rustc-cfg=hmac_driver_supported",
5041 "cargo:rustc-cfg=i2c_master_driver_supported",
5042 "cargo:rustc-cfg=i2s_driver_supported",
5043 "cargo:rustc-cfg=interrupts_driver_supported",
5044 "cargo:rustc-cfg=io_mux_driver_supported",
5045 "cargo:rustc-cfg=ledc_driver_supported",
5046 "cargo:rustc-cfg=mcpwm_driver_supported",
5047 "cargo:rustc-cfg=pcnt_driver_supported",
5048 "cargo:rustc-cfg=phy_driver_supported",
5049 "cargo:rustc-cfg=psram_driver_supported",
5050 "cargo:rustc-cfg=rgb_display_driver_supported",
5051 "cargo:rustc-cfg=rmt_driver_supported",
5052 "cargo:rustc-cfg=rng_driver_supported",
5053 "cargo:rustc-cfg=rsa_driver_supported",
5054 "cargo:rustc-cfg=lp_timer_driver_supported",
5055 "cargo:rustc-cfg=sd_host_driver_supported",
5056 "cargo:rustc-cfg=sha_driver_supported",
5057 "cargo:rustc-cfg=sleep_driver_supported",
5058 "cargo:rustc-cfg=soc_driver_supported",
5059 "cargo:rustc-cfg=spi_master_driver_supported",
5060 "cargo:rustc-cfg=spi_slave_driver_supported",
5061 "cargo:rustc-cfg=systimer_driver_supported",
5062 "cargo:rustc-cfg=temp_sensor_driver_supported",
5063 "cargo:rustc-cfg=timergroup_driver_supported",
5064 "cargo:rustc-cfg=twai_driver_supported",
5065 "cargo:rustc-cfg=uart_driver_supported",
5066 "cargo:rustc-cfg=uhci_driver_supported",
5067 "cargo:rustc-cfg=ulp_fsm_driver_supported",
5068 "cargo:rustc-cfg=ulp_riscv_driver_supported",
5069 "cargo:rustc-cfg=usb_otg_driver_supported",
5070 "cargo:rustc-cfg=usb_serial_jtag_driver_supported",
5071 "cargo:rustc-cfg=wifi_driver_supported",
5072 "cargo:rustc-cfg=adc_adc1",
5073 "cargo:rustc-cfg=adc_adc2",
5074 "cargo:rustc-cfg=i2c_master_i2c0",
5075 "cargo:rustc-cfg=i2c_master_i2c1",
5076 "cargo:rustc-cfg=spi_master_spi2",
5077 "cargo:rustc-cfg=spi_master_spi3",
5078 "cargo:rustc-cfg=spi_slave_spi2",
5079 "cargo:rustc-cfg=spi_slave_spi3",
5080 "cargo:rustc-cfg=timergroup_timg0",
5081 "cargo:rustc-cfg=timergroup_timg1",
5082 "cargo:rustc-cfg=uart_uart0",
5083 "cargo:rustc-cfg=uart_uart1",
5084 "cargo:rustc-cfg=uart_uart2",
5085 "cargo:rustc-cfg=aes_dma",
5086 "cargo:rustc-cfg=aes_dma_mode_ecb",
5087 "cargo:rustc-cfg=aes_dma_mode_cbc",
5088 "cargo:rustc-cfg=aes_dma_mode_ofb",
5089 "cargo:rustc-cfg=aes_dma_mode_ctr",
5090 "cargo:rustc-cfg=aes_dma_mode_cfb8",
5091 "cargo:rustc-cfg=aes_dma_mode_cfb128",
5092 "cargo:rustc-cfg=aes_has_split_text_registers",
5093 "cargo:rustc-cfg=assist_debug_has_region_monitor",
5094 "cargo:rustc-cfg=bt_controller=\"btdm\"",
5095 "cargo:rustc-cfg=dedicated_gpio_needs_initialization",
5096 "cargo:rustc-cfg=dma_kind=\"gdma\"",
5097 "cargo:rustc-cfg=dma_supports_mem2mem",
5098 "cargo:rustc-cfg=dma_can_access_psram",
5099 "cargo:rustc-cfg=dma_ext_mem_configurable_block_size",
5100 "cargo:rustc-cfg=dma_separate_in_out_interrupts",
5101 "cargo:rustc-cfg=dma_max_priority=\"9\"",
5102 "cargo:rustc-cfg=dma_max_priority_is_set",
5103 "cargo:rustc-cfg=dma_gdma_version=\"1\"",
5104 "cargo:rustc-cfg=dma_gdma_version_is_set",
5105 "cargo:rustc-cfg=gpio_has_bank_1",
5106 "cargo:rustc-cfg=gpio_gpio_function=\"1\"",
5107 "cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
5108 "cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
5109 "cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
5110 "cargo:rustc-cfg=gpio_input_signal_max=\"255\"",
5111 "cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
5112 "cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
5113 "cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
5114 "cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
5115 "cargo:rustc-cfg=i2c_master_has_conf_update",
5116 "cargo:rustc-cfg=i2c_master_has_arbitration_en",
5117 "cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
5118 "cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
5119 "cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
5120 "cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
5121 "cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
5122 "cargo:rustc-cfg=interrupts_status_registers=\"4\"",
5123 "cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
5124 "cargo:rustc-cfg=phy_combo_module",
5125 "cargo:rustc-cfg=phy_backed_up_digital_register_count=\"21\"",
5126 "cargo:rustc-cfg=phy_backed_up_digital_register_count_is_set",
5127 "cargo:rustc-cfg=psram_octal_spi",
5128 "cargo:rustc-cfg=psram_extmem_origin=\"1006632960\"",
5129 "cargo:rustc-cfg=rmt_ram_start=\"1610704896\"",
5130 "cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
5131 "cargo:rustc-cfg=rmt_has_tx_immediate_stop",
5132 "cargo:rustc-cfg=rmt_has_tx_loop_count",
5133 "cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
5134 "cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
5135 "cargo:rustc-cfg=rmt_has_tx_sync",
5136 "cargo:rustc-cfg=rmt_has_rx_wrap",
5137 "cargo:rustc-cfg=rmt_has_rx_demodulation",
5138 "cargo:rustc-cfg=rmt_has_dma",
5139 "cargo:rustc-cfg=rmt_supports_none_clock",
5140 "cargo:rustc-cfg=rmt_supports_apb_clock",
5141 "cargo:rustc-cfg=rmt_supports_rcfast_clock",
5142 "cargo:rustc-cfg=rmt_supports_xtal_clock",
5143 "cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
5144 "cargo:rustc-cfg=rng_trng_supported",
5145 "cargo:rustc-cfg=rsa_size_increment=\"32\"",
5146 "cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
5147 "cargo:rustc-cfg=sha_dma",
5148 "cargo:rustc-cfg=sleep_light_sleep",
5149 "cargo:rustc-cfg=sleep_deep_sleep",
5150 "cargo:rustc-cfg=soc_multi_core_enabled",
5151 "cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
5152 "cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
5153 "cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
5154 "cargo:rustc-cfg=soc_has_clock_node_pll_clk",
5155 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
5156 "cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
5157 "cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
5158 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
5159 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
5160 "cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
5161 "cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_out",
5162 "cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
5163 "cargo:rustc-cfg=soc_has_clock_node_pll_d2",
5164 "cargo:rustc-cfg=soc_has_clock_node_pll_160m",
5165 "cargo:rustc-cfg=soc_has_clock_node_apb_80m",
5166 "cargo:rustc-cfg=soc_has_clock_node_apb_clk",
5167 "cargo:rustc-cfg=soc_has_clock_node_crypto_pwm_clk",
5168 "cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
5169 "cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
5170 "cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
5171 "cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
5172 "cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
5173 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
5174 "cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
5175 "cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
5176 "cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
5177 "cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
5178 "cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
5179 "cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
5180 "cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
5181 "cargo:rustc-cfg=has_dram_region",
5182 "cargo:rustc-cfg=has_dram2_uninit_region",
5183 "cargo:rustc-cfg=spi_master_supports_dma",
5184 "cargo:rustc-cfg=spi_master_has_octal",
5185 "cargo:rustc-cfg=spi_master_has_app_interrupts",
5186 "cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
5187 "cargo:rustc-cfg=spi_slave_supports_dma",
5188 "cargo:rustc-cfg=timergroup_timg_has_timer1",
5189 "cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
5190 "cargo:rustc-cfg=uart_ram_size=\"128\"",
5191 "cargo:rustc-cfg=uart_has_sclk_divider",
5192 "cargo:rustc-cfg=wifi_mac_version=\"1\"",
5193 "cargo:rustc-cfg=wifi_csi_supported",
5194 ],
5195 memory_layout: &MemoryLayout {
5196 regions: &[
5197 (
5198 "dram",
5199 MemoryRegion {
5200 address_range: 0x3FC88000..0x3FD00000,
5201 },
5202 ),
5203 (
5204 "dram2_uninit",
5205 MemoryRegion {
5206 address_range: 0x3FCDB700..0x3FCED710,
5207 },
5208 ),
5209 ],
5210 },
5211 pins: &[
5212 PinInfo {
5213 pin: 0,
5214 limitations: &["strapping"],
5215 },
5216 PinInfo {
5217 pin: 1,
5218 limitations: &[],
5219 },
5220 PinInfo {
5221 pin: 2,
5222 limitations: &[],
5223 },
5224 PinInfo {
5225 pin: 3,
5226 limitations: &["strapping"],
5227 },
5228 PinInfo {
5229 pin: 4,
5230 limitations: &[],
5231 },
5232 PinInfo {
5233 pin: 5,
5234 limitations: &[],
5235 },
5236 PinInfo {
5237 pin: 6,
5238 limitations: &[],
5239 },
5240 PinInfo {
5241 pin: 7,
5242 limitations: &[],
5243 },
5244 PinInfo {
5245 pin: 8,
5246 limitations: &[],
5247 },
5248 PinInfo {
5249 pin: 9,
5250 limitations: &[],
5251 },
5252 PinInfo {
5253 pin: 10,
5254 limitations: &[],
5255 },
5256 PinInfo {
5257 pin: 11,
5258 limitations: &[],
5259 },
5260 PinInfo {
5261 pin: 12,
5262 limitations: &[],
5263 },
5264 PinInfo {
5265 pin: 13,
5266 limitations: &[],
5267 },
5268 PinInfo {
5269 pin: 14,
5270 limitations: &[],
5271 },
5272 PinInfo {
5273 pin: 15,
5274 limitations: &[],
5275 },
5276 PinInfo {
5277 pin: 16,
5278 limitations: &[],
5279 },
5280 PinInfo {
5281 pin: 17,
5282 limitations: &[],
5283 },
5284 PinInfo {
5285 pin: 18,
5286 limitations: &[],
5287 },
5288 PinInfo {
5289 pin: 19,
5290 limitations: &["usb_jtag"],
5291 },
5292 PinInfo {
5293 pin: 20,
5294 limitations: &["usb_jtag"],
5295 },
5296 PinInfo {
5297 pin: 21,
5298 limitations: &[],
5299 },
5300 PinInfo {
5301 pin: 26,
5302 limitations: &["spi_psram"],
5303 },
5304 PinInfo {
5305 pin: 27,
5306 limitations: &["spi_flash", "spi_psram"],
5307 },
5308 PinInfo {
5309 pin: 28,
5310 limitations: &["spi_flash", "spi_psram"],
5311 },
5312 PinInfo {
5313 pin: 29,
5314 limitations: &["spi_flash", "spi_psram"],
5315 },
5316 PinInfo {
5317 pin: 30,
5318 limitations: &["spi_flash", "spi_psram"],
5319 },
5320 PinInfo {
5321 pin: 31,
5322 limitations: &["spi_flash", "spi_psram"],
5323 },
5324 PinInfo {
5325 pin: 32,
5326 limitations: &["spi_flash"],
5327 },
5328 PinInfo {
5329 pin: 33,
5330 limitations: &["octal_flash", "octal_psram"],
5331 },
5332 PinInfo {
5333 pin: 34,
5334 limitations: &["octal_flash", "octal_psram"],
5335 },
5336 PinInfo {
5337 pin: 35,
5338 limitations: &["octal_flash", "octal_psram"],
5339 },
5340 PinInfo {
5341 pin: 36,
5342 limitations: &["octal_flash", "octal_psram"],
5343 },
5344 PinInfo {
5345 pin: 37,
5346 limitations: &["octal_flash", "octal_psram"],
5347 },
5348 PinInfo {
5349 pin: 38,
5350 limitations: &[],
5351 },
5352 PinInfo {
5353 pin: 39,
5354 limitations: &["jtag"],
5355 },
5356 PinInfo {
5357 pin: 40,
5358 limitations: &["jtag"],
5359 },
5360 PinInfo {
5361 pin: 41,
5362 limitations: &["jtag"],
5363 },
5364 PinInfo {
5365 pin: 42,
5366 limitations: &["jtag"],
5367 },
5368 PinInfo {
5369 pin: 43,
5370 limitations: &["bootloader_uart"],
5371 },
5372 PinInfo {
5373 pin: 44,
5374 limitations: &["bootloader_uart"],
5375 },
5376 PinInfo {
5377 pin: 45,
5378 limitations: &["strapping"],
5379 },
5380 PinInfo {
5381 pin: 46,
5382 limitations: &["strapping"],
5383 },
5384 PinInfo {
5385 pin: 47,
5386 limitations: &[],
5387 },
5388 PinInfo {
5389 pin: 48,
5390 limitations: &[],
5391 },
5392 ],
5393 },
5394 }
5395 }
5396}
5397pub struct MemoryRegion {
5399 address_range: Range<u32>,
5400}
5401impl MemoryRegion {
5402 pub fn range(&self) -> Range<u32> {
5404 self.address_range.clone()
5405 }
5406 pub fn size(&self) -> u32 {
5408 self.address_range.end - self.address_range.start
5409 }
5410}
5411pub struct MemoryLayout {
5413 regions: &'static [(&'static str, MemoryRegion)],
5414}
5415impl MemoryLayout {
5416 pub fn region(&self, name: &str) -> Option<&'static MemoryRegion> {
5418 self.regions
5419 .iter()
5420 .find_map(|(n, r)| if *n == name { Some(r) } else { None })
5421 }
5422}
5423#[non_exhaustive]
5425pub struct PinInfo {
5426 pub pin: usize,
5428 pub limitations: &'static [&'static str],
5432}
5433struct Config {
5434 architecture: &'static str,
5435 target: &'static str,
5436 symbols: &'static [&'static str],
5437 cfgs: &'static [&'static str],
5438 memory_layout: &'static MemoryLayout,
5439 pins: &'static [PinInfo],
5440}
5441impl Config {
5442 fn define_cfgs(&self) {
5443 emit_check_cfg_directives();
5444 for cfg in self.cfgs {
5445 println!("{cfg}");
5446 }
5447 }
5448}
5449pub fn emit_check_cfg_directives() {
5451 println!("cargo:rustc-check-cfg=cfg(not_really_docsrs)");
5452 println!("cargo:rustc-check-cfg=cfg(semver_checks)");
5453 println!("cargo:rustc-check-cfg=cfg(esp32)");
5454 println!("cargo:rustc-check-cfg=cfg(xtensa)");
5455 println!("cargo:rustc-check-cfg=cfg(multi_core)");
5456 println!("cargo:rustc-check-cfg=cfg(soc_has_aes)");
5457 println!("cargo:rustc-check-cfg=cfg(soc_has_apb_ctrl)");
5458 println!("cargo:rustc-check-cfg=cfg(soc_has_bb)");
5459 println!("cargo:rustc-check-cfg=cfg(soc_has_dport)");
5460 println!("cargo:rustc-check-cfg=cfg(soc_has_system)");
5461 println!("cargo:rustc-check-cfg=cfg(soc_has_efuse)");
5462 println!("cargo:rustc-check-cfg=cfg(soc_has_emac_dma)");
5463 println!("cargo:rustc-check-cfg=cfg(soc_has_emac_ext)");
5464 println!("cargo:rustc-check-cfg=cfg(soc_has_emac_mac)");
5465 println!("cargo:rustc-check-cfg=cfg(soc_has_flash_encryption)");
5466 println!("cargo:rustc-check-cfg=cfg(soc_has_frc_timer)");
5467 println!("cargo:rustc-check-cfg=cfg(soc_has_gpio)");
5468 println!("cargo:rustc-check-cfg=cfg(soc_has_gpio_sd)");
5469 println!("cargo:rustc-check-cfg=cfg(soc_has_hinf)");
5470 println!("cargo:rustc-check-cfg=cfg(soc_has_i2c0)");
5471 println!("cargo:rustc-check-cfg=cfg(soc_has_i2c1)");
5472 println!("cargo:rustc-check-cfg=cfg(soc_has_i2s0)");
5473 println!("cargo:rustc-check-cfg=cfg(soc_has_i2s1)");
5474 println!("cargo:rustc-check-cfg=cfg(soc_has_io_mux)");
5475 println!("cargo:rustc-check-cfg=cfg(soc_has_ledc)");
5476 println!("cargo:rustc-check-cfg=cfg(soc_has_mcpwm0)");
5477 println!("cargo:rustc-check-cfg=cfg(soc_has_mcpwm1)");
5478 println!("cargo:rustc-check-cfg=cfg(soc_has_nrx)");
5479 println!("cargo:rustc-check-cfg=cfg(soc_has_pcnt)");
5480 println!("cargo:rustc-check-cfg=cfg(soc_has_rmt)");
5481 println!("cargo:rustc-check-cfg=cfg(soc_has_rng)");
5482 println!("cargo:rustc-check-cfg=cfg(soc_has_rsa)");
5483 println!("cargo:rustc-check-cfg=cfg(soc_has_lpwr)");
5484 println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_i2c)");
5485 println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_io)");
5486 println!("cargo:rustc-check-cfg=cfg(soc_has_sdhost)");
5487 println!("cargo:rustc-check-cfg=cfg(soc_has_sens)");
5488 println!("cargo:rustc-check-cfg=cfg(soc_has_sha)");
5489 println!("cargo:rustc-check-cfg=cfg(soc_has_slc)");
5490 println!("cargo:rustc-check-cfg=cfg(soc_has_slchost)");
5491 println!("cargo:rustc-check-cfg=cfg(soc_has_spi0)");
5492 println!("cargo:rustc-check-cfg=cfg(soc_has_spi1)");
5493 println!("cargo:rustc-check-cfg=cfg(soc_has_spi2)");
5494 println!("cargo:rustc-check-cfg=cfg(soc_has_spi3)");
5495 println!("cargo:rustc-check-cfg=cfg(soc_has_timg0)");
5496 println!("cargo:rustc-check-cfg=cfg(soc_has_timg1)");
5497 println!("cargo:rustc-check-cfg=cfg(soc_has_twai0)");
5498 println!("cargo:rustc-check-cfg=cfg(soc_has_uart0)");
5499 println!("cargo:rustc-check-cfg=cfg(soc_has_uart1)");
5500 println!("cargo:rustc-check-cfg=cfg(soc_has_uart2)");
5501 println!("cargo:rustc-check-cfg=cfg(soc_has_uhci0)");
5502 println!("cargo:rustc-check-cfg=cfg(soc_has_uhci1)");
5503 println!("cargo:rustc-check-cfg=cfg(soc_has_wifi)");
5504 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_spi2)");
5505 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_spi3)");
5506 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_i2s0)");
5507 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_i2s1)");
5508 println!("cargo:rustc-check-cfg=cfg(soc_has_adc1)");
5509 println!("cargo:rustc-check-cfg=cfg(soc_has_adc2)");
5510 println!("cargo:rustc-check-cfg=cfg(soc_has_bt)");
5511 println!("cargo:rustc-check-cfg=cfg(soc_has_cpu_ctrl)");
5512 println!("cargo:rustc-check-cfg=cfg(soc_has_dac1)");
5513 println!("cargo:rustc-check-cfg=cfg(soc_has_dac2)");
5514 println!("cargo:rustc-check-cfg=cfg(soc_has_flash)");
5515 println!("cargo:rustc-check-cfg=cfg(soc_has_psram)");
5516 println!("cargo:rustc-check-cfg=cfg(soc_has_sw_interrupt)");
5517 println!("cargo:rustc-check-cfg=cfg(soc_has_touch)");
5518 println!("cargo:rustc-check-cfg=cfg(phy)");
5519 println!("cargo:rustc-check-cfg=cfg(touch)");
5520 println!("cargo:rustc-check-cfg=cfg(rom_crc_le)");
5521 println!("cargo:rustc-check-cfg=cfg(rom_crc_be)");
5522 println!("cargo:rustc-check-cfg=cfg(rom_md5_bsd)");
5523 println!("cargo:rustc-check-cfg=cfg(pm_support_ext0_wakeup)");
5524 println!("cargo:rustc-check-cfg=cfg(pm_support_ext1_wakeup)");
5525 println!("cargo:rustc-check-cfg=cfg(pm_support_touch_sensor_wakeup)");
5526 println!("cargo:rustc-check-cfg=cfg(ulp_supported)");
5527 println!("cargo:rustc-check-cfg=cfg(adc_driver_supported)");
5528 println!("cargo:rustc-check-cfg=cfg(aes_driver_supported)");
5529 println!("cargo:rustc-check-cfg=cfg(bt_driver_supported)");
5530 println!("cargo:rustc-check-cfg=cfg(dac_driver_supported)");
5531 println!("cargo:rustc-check-cfg=cfg(dma_driver_supported)");
5532 println!("cargo:rustc-check-cfg=cfg(gpio_driver_supported)");
5533 println!("cargo:rustc-check-cfg=cfg(i2c_master_driver_supported)");
5534 println!("cargo:rustc-check-cfg=cfg(i2s_driver_supported)");
5535 println!("cargo:rustc-check-cfg=cfg(interrupts_driver_supported)");
5536 println!("cargo:rustc-check-cfg=cfg(io_mux_driver_supported)");
5537 println!("cargo:rustc-check-cfg=cfg(ledc_driver_supported)");
5538 println!("cargo:rustc-check-cfg=cfg(mcpwm_driver_supported)");
5539 println!("cargo:rustc-check-cfg=cfg(pcnt_driver_supported)");
5540 println!("cargo:rustc-check-cfg=cfg(phy_driver_supported)");
5541 println!("cargo:rustc-check-cfg=cfg(psram_driver_supported)");
5542 println!("cargo:rustc-check-cfg=cfg(rgb_display_driver_supported)");
5543 println!("cargo:rustc-check-cfg=cfg(rmt_driver_supported)");
5544 println!("cargo:rustc-check-cfg=cfg(rng_driver_supported)");
5545 println!("cargo:rustc-check-cfg=cfg(rsa_driver_supported)");
5546 println!("cargo:rustc-check-cfg=cfg(lp_timer_driver_supported)");
5547 println!("cargo:rustc-check-cfg=cfg(sd_host_driver_supported)");
5548 println!("cargo:rustc-check-cfg=cfg(sd_slave_driver_supported)");
5549 println!("cargo:rustc-check-cfg=cfg(sha_driver_supported)");
5550 println!("cargo:rustc-check-cfg=cfg(sleep_driver_supported)");
5551 println!("cargo:rustc-check-cfg=cfg(soc_driver_supported)");
5552 println!("cargo:rustc-check-cfg=cfg(spi_master_driver_supported)");
5553 println!("cargo:rustc-check-cfg=cfg(spi_slave_driver_supported)");
5554 println!("cargo:rustc-check-cfg=cfg(temp_sensor_driver_supported)");
5555 println!("cargo:rustc-check-cfg=cfg(timergroup_driver_supported)");
5556 println!("cargo:rustc-check-cfg=cfg(touch_driver_supported)");
5557 println!("cargo:rustc-check-cfg=cfg(twai_driver_supported)");
5558 println!("cargo:rustc-check-cfg=cfg(uart_driver_supported)");
5559 println!("cargo:rustc-check-cfg=cfg(ulp_fsm_driver_supported)");
5560 println!("cargo:rustc-check-cfg=cfg(wifi_driver_supported)");
5561 println!("cargo:rustc-check-cfg=cfg(adc_adc1)");
5562 println!("cargo:rustc-check-cfg=cfg(adc_adc2)");
5563 println!("cargo:rustc-check-cfg=cfg(dac_dac1)");
5564 println!("cargo:rustc-check-cfg=cfg(dac_dac2)");
5565 println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c0)");
5566 println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c1)");
5567 println!("cargo:rustc-check-cfg=cfg(spi_master_spi2)");
5568 println!("cargo:rustc-check-cfg=cfg(spi_master_spi3)");
5569 println!("cargo:rustc-check-cfg=cfg(spi_slave_spi2)");
5570 println!("cargo:rustc-check-cfg=cfg(spi_slave_spi3)");
5571 println!("cargo:rustc-check-cfg=cfg(timergroup_timg0)");
5572 println!("cargo:rustc-check-cfg=cfg(timergroup_timg1)");
5573 println!("cargo:rustc-check-cfg=cfg(uart_uart0)");
5574 println!("cargo:rustc-check-cfg=cfg(uart_uart1)");
5575 println!("cargo:rustc-check-cfg=cfg(uart_uart2)");
5576 println!("cargo:rustc-check-cfg=cfg(aes_endianness_configurable)");
5577 println!("cargo:rustc-check-cfg=cfg(gpio_has_bank_1)");
5578 println!("cargo:rustc-check-cfg=cfg(gpio_remap_iomux_pin_registers)");
5579 println!("cargo:rustc-check-cfg=cfg(i2c_master_separate_filter_config_registers)");
5580 println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c0_data_register_ahb_address_is_set)");
5581 println!("cargo:rustc-check-cfg=cfg(phy_combo_module)");
5582 println!("cargo:rustc-check-cfg=cfg(rmt_has_per_channel_clock)");
5583 println!("cargo:rustc-check-cfg=cfg(rmt_supports_reftick_clock)");
5584 println!("cargo:rustc-check-cfg=cfg(rmt_supports_apb_clock)");
5585 println!("cargo:rustc-check-cfg=cfg(rng_trng_supported)");
5586 println!("cargo:rustc-check-cfg=cfg(sleep_light_sleep)");
5587 println!("cargo:rustc-check-cfg=cfg(sleep_deep_sleep)");
5588 println!("cargo:rustc-check-cfg=cfg(soc_multi_core_enabled)");
5589 println!("cargo:rustc-check-cfg=cfg(soc_rc_fast_clk_default_is_set)");
5590 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal_clk)");
5591 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_clk)");
5592 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apll_clk)");
5593 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_fast_clk)");
5594 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f160m_clk)");
5595 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_pll_div_in)");
5596 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_pll_div)");
5597 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_syscon_pre_div_in)");
5598 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_syscon_pre_div)");
5599 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_clk)");
5600 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_clk_cpu_div2)");
5601 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_clk_80m)");
5602 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_clk)");
5603 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_pll)");
5604 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_apll)");
5605 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_xtal)");
5606 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_fosc)");
5607 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick)");
5608 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal32k_clk)");
5609 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_slow_clk)");
5610 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_fast_div_clk)");
5611 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal_div_clk)");
5612 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rtc_slow_clk)");
5613 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rtc_fast_clk)");
5614 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_mem_clk)");
5615 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_timg_calibration_clock)");
5616 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mcpwm_function_clock)");
5617 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_function_clock)");
5618 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_mem_clock)");
5619 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_baud_rate_generator)");
5620 println!("cargo:rustc-check-cfg=cfg(has_dram_region)");
5621 println!("cargo:rustc-check-cfg=cfg(has_dram2_uninit_region)");
5622 println!("cargo:rustc-check-cfg=cfg(spi_master_supports_dma)");
5623 println!("cargo:rustc-check-cfg=cfg(spi_slave_supports_dma)");
5624 println!("cargo:rustc-check-cfg=cfg(timergroup_timg_has_timer1)");
5625 println!("cargo:rustc-check-cfg=cfg(timergroup_rc_fast_calibration_is_set)");
5626 println!("cargo:rustc-check-cfg=cfg(wifi_csi_supported)");
5627 println!("cargo:rustc-check-cfg=cfg(esp32c2)");
5628 println!("cargo:rustc-check-cfg=cfg(riscv)");
5629 println!("cargo:rustc-check-cfg=cfg(single_core)");
5630 println!("cargo:rustc-check-cfg=cfg(soc_has_apb_saradc)");
5631 println!("cargo:rustc-check-cfg=cfg(soc_has_assist_debug)");
5632 println!("cargo:rustc-check-cfg=cfg(soc_has_dma)");
5633 println!("cargo:rustc-check-cfg=cfg(soc_has_ecc)");
5634 println!("cargo:rustc-check-cfg=cfg(soc_has_extmem)");
5635 println!("cargo:rustc-check-cfg=cfg(soc_has_i2c_ana_mst)");
5636 println!("cargo:rustc-check-cfg=cfg(soc_has_interrupt_core0)");
5637 println!("cargo:rustc-check-cfg=cfg(soc_has_modem_clkrst)");
5638 println!("cargo:rustc-check-cfg=cfg(soc_has_sensitive)");
5639 println!("cargo:rustc-check-cfg=cfg(soc_has_systimer)");
5640 println!("cargo:rustc-check-cfg=cfg(soc_has_xts_aes)");
5641 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch0)");
5642 println!("cargo:rustc-check-cfg=cfg(soc_has_gpio_dedicated)");
5643 println!("cargo:rustc-check-cfg=cfg(swd)");
5644 println!("cargo:rustc-check-cfg=cfg(rom_md5_mbedtls)");
5645 println!("cargo:rustc-check-cfg=cfg(pm_support_wifi_wakeup)");
5646 println!("cargo:rustc-check-cfg=cfg(pm_support_bt_wakeup)");
5647 println!("cargo:rustc-check-cfg=cfg(uart_support_wakeup_int)");
5648 println!("cargo:rustc-check-cfg=cfg(gpio_support_deepsleep_wakeup)");
5649 println!("cargo:rustc-check-cfg=cfg(assist_debug_driver_supported)");
5650 println!("cargo:rustc-check-cfg=cfg(dedicated_gpio_driver_supported)");
5651 println!("cargo:rustc-check-cfg=cfg(ecc_driver_supported)");
5652 println!("cargo:rustc-check-cfg=cfg(systimer_driver_supported)");
5653 println!("cargo:rustc-check-cfg=cfg(assist_debug_has_sp_monitor)");
5654 println!("cargo:rustc-check-cfg=cfg(dma_supports_mem2mem)");
5655 println!("cargo:rustc-check-cfg=cfg(dma_max_priority_is_set)");
5656 println!("cargo:rustc-check-cfg=cfg(dma_gdma_version_is_set)");
5657 println!("cargo:rustc-check-cfg=cfg(ecc_zero_extend_writes)");
5658 println!("cargo:rustc-check-cfg=cfg(ecc_has_finite_field_division)");
5659 println!("cargo:rustc-check-cfg=cfg(ecc_has_curve_p192)");
5660 println!("cargo:rustc-check-cfg=cfg(ecc_has_curve_p256)");
5661 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_fsm_timeouts)");
5662 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_hw_bus_clear)");
5663 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_bus_timeout_enable)");
5664 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_conf_update)");
5665 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_arbitration_en)");
5666 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_tx_fifo_watermark)");
5667 println!("cargo:rustc-check-cfg=cfg(i2c_master_bus_timeout_is_exponential)");
5668 println!("cargo:rustc-check-cfg=cfg(sha_dma)");
5669 println!("cargo:rustc-check-cfg=cfg(soc_cpu_has_csr_pc)");
5670 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_osc_slow_clk)");
5671 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_system_pre_div_in)");
5672 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_system_pre_div)");
5673 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_40m)");
5674 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_60m)");
5675 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_80m)");
5676 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_div2)");
5677 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_crypto_clk)");
5678 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_clk)");
5679 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_fast_clk_div_n)");
5680 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_low_power_clk)");
5681 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_timg_function_clock)");
5682 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_timg_wdt_clock)");
5683 println!("cargo:rustc-check-cfg=cfg(spi_master_has_app_interrupts)");
5684 println!("cargo:rustc-check-cfg=cfg(spi_master_has_dma_segmented_transfer)");
5685 println!("cargo:rustc-check-cfg=cfg(timergroup_timg_has_divcnt_rst)");
5686 println!("cargo:rustc-check-cfg=cfg(uart_has_sclk_divider)");
5687 println!("cargo:rustc-check-cfg=cfg(esp32c3)");
5688 println!("cargo:rustc-check-cfg=cfg(soc_has_ds)");
5689 println!("cargo:rustc-check-cfg=cfg(soc_has_fe)");
5690 println!("cargo:rustc-check-cfg=cfg(soc_has_fe2)");
5691 println!("cargo:rustc-check-cfg=cfg(soc_has_hmac)");
5692 println!("cargo:rustc-check-cfg=cfg(soc_has_usb_device)");
5693 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch1)");
5694 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch2)");
5695 println!("cargo:rustc-check-cfg=cfg(soc_has_tsens)");
5696 println!("cargo:rustc-check-cfg=cfg(hmac_driver_supported)");
5697 println!("cargo:rustc-check-cfg=cfg(uhci_driver_supported)");
5698 println!("cargo:rustc-check-cfg=cfg(usb_serial_jtag_driver_supported)");
5699 println!("cargo:rustc-check-cfg=cfg(aes_dma)");
5700 println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_ecb)");
5701 println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_cbc)");
5702 println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_ofb)");
5703 println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_ctr)");
5704 println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_cfb8)");
5705 println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_cfb128)");
5706 println!("cargo:rustc-check-cfg=cfg(aes_has_split_text_registers)");
5707 println!("cargo:rustc-check-cfg=cfg(assist_debug_has_region_monitor)");
5708 println!("cargo:rustc-check-cfg=cfg(phy_backed_up_digital_register_count_is_set)");
5709 println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_immediate_stop)");
5710 println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_loop_count)");
5711 println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_carrier_data_only)");
5712 println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_sync)");
5713 println!("cargo:rustc-check-cfg=cfg(rmt_has_rx_wrap)");
5714 println!("cargo:rustc-check-cfg=cfg(rmt_has_rx_demodulation)");
5715 println!("cargo:rustc-check-cfg=cfg(rmt_supports_none_clock)");
5716 println!("cargo:rustc-check-cfg=cfg(rmt_supports_rcfast_clock)");
5717 println!("cargo:rustc-check-cfg=cfg(rmt_supports_xtal_clock)");
5718 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_pll_div_out)");
5719 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_160m)");
5720 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rmt_sclk)");
5721 println!("cargo:rustc-check-cfg=cfg(esp32c5)");
5722 println!("cargo:rustc-check-cfg=cfg(soc_has_cache)");
5723 println!("cargo:rustc-check-cfg=cfg(soc_has_clint)");
5724 println!("cargo:rustc-check-cfg=cfg(soc_has_ecdsa)");
5725 println!("cargo:rustc-check-cfg=cfg(soc_has_etm)");
5726 println!("cargo:rustc-check-cfg=cfg(soc_has_hp_apm)");
5727 println!("cargo:rustc-check-cfg=cfg(soc_has_hp_sys)");
5728 println!("cargo:rustc-check-cfg=cfg(soc_has_huk)");
5729 println!("cargo:rustc-check-cfg=cfg(soc_has_ieee802154)");
5730 println!("cargo:rustc-check-cfg=cfg(soc_has_intpri)");
5731 println!("cargo:rustc-check-cfg=cfg(soc_has_keymng)");
5732 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_ana)");
5733 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_aon)");
5734 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_apm0)");
5735 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_clkrst)");
5736 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_i2c_ana_mst)");
5737 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_io_mux)");
5738 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_peri)");
5739 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_tee)");
5740 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_timer)");
5741 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_uart)");
5742 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_wdt)");
5743 println!("cargo:rustc-check-cfg=cfg(soc_has_mem_monitor)");
5744 println!("cargo:rustc-check-cfg=cfg(soc_has_modem_lpcon)");
5745 println!("cargo:rustc-check-cfg=cfg(soc_has_modem_syscon)");
5746 println!("cargo:rustc-check-cfg=cfg(soc_has_parl_io)");
5747 println!("cargo:rustc-check-cfg=cfg(soc_has_pau)");
5748 println!("cargo:rustc-check-cfg=cfg(soc_has_pcr)");
5749 println!("cargo:rustc-check-cfg=cfg(soc_has_pmu)");
5750 println!("cargo:rustc-check-cfg=cfg(soc_has_pvt_monitor)");
5751 println!("cargo:rustc-check-cfg=cfg(soc_has_tee)");
5752 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_core)");
5753 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem0)");
5754 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem1)");
5755 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem2)");
5756 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem3)");
5757 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem4)");
5758 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem5)");
5759 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem6)");
5760 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem7)");
5761 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem8)");
5762 println!("cargo:rustc-check-cfg=cfg(ieee802154_driver_supported)");
5763 println!("cargo:rustc-check-cfg=cfg(lp_i2c_master_driver_supported)");
5764 println!("cargo:rustc-check-cfg=cfg(parl_io_driver_supported)");
5765 println!("cargo:rustc-check-cfg=cfg(dma_can_access_psram)");
5766 println!("cargo:rustc-check-cfg=cfg(dma_separate_in_out_interrupts)");
5767 println!("cargo:rustc-check-cfg=cfg(ecc_separate_jacobian_point_memory)");
5768 println!("cargo:rustc-check-cfg=cfg(ecc_has_memory_clock_gate)");
5769 println!("cargo:rustc-check-cfg=cfg(ecc_supports_enhanced_security)");
5770 println!("cargo:rustc-check-cfg=cfg(ecc_has_modular_arithmetic)");
5771 println!("cargo:rustc-check-cfg=cfg(ecc_has_point_addition)");
5772 println!("cargo:rustc-check-cfg=cfg(ecc_has_curve_p384)");
5773 println!("cargo:rustc-check-cfg=cfg(i2c_master_can_estimate_nack_reason)");
5774 println!("cargo:rustc-check-cfg=cfg(i2c_master_has_reliable_fsm_reset)");
5775 println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_loop_auto_stop)");
5776 println!("cargo:rustc-check-cfg=cfg(rmt_supports_pll80mhz_clock)");
5777 println!("cargo:rustc-check-cfg=cfg(soc_cpu_has_branch_predictor)");
5778 println!("cargo:rustc-check-cfg=cfg(soc_cpu_csr_prv_mode_is_set)");
5779 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f12m)");
5780 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f20m)");
5781 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f40m)");
5782 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f48m)");
5783 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f60m)");
5784 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f80m)");
5785 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f120m)");
5786 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f160m)");
5787 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f240m)");
5788 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_hp_root_clk)");
5789 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ahb_clk)");
5790 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal_d2_clk)");
5791 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_lp_fast_clk)");
5792 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_lp_slow_clk)");
5793 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_parl_io_rx_clock)");
5794 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_parl_io_tx_clock)");
5795 println!("cargo:rustc-check-cfg=cfg(spi_master_has_clk_pre_div)");
5796 println!("cargo:rustc-check-cfg=cfg(uart_peripheral_controls_mem_clk)");
5797 println!("cargo:rustc-check-cfg=cfg(uhci_combined_uart_selector_field)");
5798 println!("cargo:rustc-check-cfg=cfg(wifi_has_5g)");
5799 println!("cargo:rustc-check-cfg=cfg(esp32c6)");
5800 println!("cargo:rustc-check-cfg=cfg(soc_has_atomic)");
5801 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_apm)");
5802 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_i2c0)");
5803 println!("cargo:rustc-check-cfg=cfg(soc_has_lp_io)");
5804 println!("cargo:rustc-check-cfg=cfg(soc_has_otp_debug)");
5805 println!("cargo:rustc-check-cfg=cfg(soc_has_plic_mx)");
5806 println!("cargo:rustc-check-cfg=cfg(soc_has_trace0)");
5807 println!("cargo:rustc-check-cfg=cfg(soc_has_twai1)");
5808 println!("cargo:rustc-check-cfg=cfg(lp_core)");
5809 println!("cargo:rustc-check-cfg=cfg(pm_support_beacon_wakeup)");
5810 println!("cargo:rustc-check-cfg=cfg(etm_driver_supported)");
5811 println!("cargo:rustc-check-cfg=cfg(lp_uart_driver_supported)");
5812 println!("cargo:rustc-check-cfg=cfg(ulp_riscv_driver_supported)");
5813 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_soc_root_clk)");
5814 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_hs_div)");
5815 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_ls_div)");
5816 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ahb_hs_div)");
5817 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ahb_ls_div)");
5818 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_fast_hs_clk)");
5819 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_fast_ls_clk)");
5820 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_fast_clk)");
5821 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ledc_sclk)");
5822 println!("cargo:rustc-check-cfg=cfg(timergroup_rc_fast_calibration_divider)");
5823 println!("cargo:rustc-check-cfg=cfg(wifi_has_wifi6)");
5824 println!("cargo:rustc-check-cfg=cfg(esp32c61)");
5825 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem9)");
5826 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem10)");
5827 println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem11)");
5828 println!("cargo:rustc-check-cfg=cfg(esp32h2)");
5829 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f96m_clk)");
5830 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f64m_clk)");
5831 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f48m_clk)");
5832 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_lp_clk)");
5833 println!("cargo:rustc-check-cfg=cfg(timergroup_rc_fast_calibration_tick_enable)");
5834 println!("cargo:rustc-check-cfg=cfg(esp32s2)");
5835 println!("cargo:rustc-check-cfg=cfg(soc_has_dedicated_gpio)");
5836 println!("cargo:rustc-check-cfg=cfg(soc_has_pms)");
5837 println!("cargo:rustc-check-cfg=cfg(soc_has_syscon)");
5838 println!("cargo:rustc-check-cfg=cfg(soc_has_usb0)");
5839 println!("cargo:rustc-check-cfg=cfg(soc_has_usb_wrap)");
5840 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_crypto)");
5841 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_copy)");
5842 println!("cargo:rustc-check-cfg=cfg(soc_has_ulp_riscv_core)");
5843 println!("cargo:rustc-check-cfg=cfg(ulp_riscv_core)");
5844 println!("cargo:rustc-check-cfg=cfg(riscv_coproc_supported)");
5845 println!("cargo:rustc-check-cfg=cfg(usb_otg_driver_supported)");
5846 println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_gcm)");
5847 println!("cargo:rustc-check-cfg=cfg(dedicated_gpio_needs_initialization)");
5848 println!("cargo:rustc-check-cfg=cfg(dma_ext_mem_configurable_block_size)");
5849 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_ck8m)");
5850 println!("cargo:rustc-check-cfg=cfg(spi_master_has_octal)");
5851 println!("cargo:rustc-check-cfg=cfg(esp32s3)");
5852 println!("cargo:rustc-check-cfg=cfg(soc_has_interrupt_core1)");
5853 println!("cargo:rustc-check-cfg=cfg(soc_has_lcd_cam)");
5854 println!("cargo:rustc-check-cfg=cfg(soc_has_peri_backup)");
5855 println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_cntl)");
5856 println!("cargo:rustc-check-cfg=cfg(soc_has_wcl)");
5857 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch3)");
5858 println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch4)");
5859 println!("cargo:rustc-check-cfg=cfg(camera_driver_supported)");
5860 println!("cargo:rustc-check-cfg=cfg(psram_octal_spi)");
5861 println!("cargo:rustc-check-cfg=cfg(rmt_has_dma)");
5862 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_d2)");
5863 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_80m)");
5864 println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_crypto_pwm_clk)");
5865 println!("cargo:rustc-check-cfg=cfg(bt_controller, values(\"btdm\",\"npl\"))");
5866 println!("cargo:rustc-check-cfg=cfg(dma_kind, values(\"pdma\",\"gdma\"))");
5867 println!("cargo:rustc-check-cfg=cfg(gpio_gpio_function, values(\"2\",\"1\"))");
5868 println!(
5869 "cargo:rustc-check-cfg=cfg(gpio_constant_0_input, values(\"48\",\"31\",\"96\",\"60\"))"
5870 );
5871 println!("cargo:rustc-check-cfg=cfg(gpio_constant_1_input, values(\"56\",\"30\",\"64\"))");
5872 println!("cargo:rustc-check-cfg=cfg(gpio_func_in_sel_offset, values(\"0\"))");
5873 println!(
5874 "cargo:rustc-check-cfg=cfg(gpio_input_signal_max, \
5875 values(\"206\",\"100\",\"116\",\"124\",\"242\",\"255\"))"
5876 );
5877 println!("cargo:rustc-check-cfg=cfg(gpio_output_signal_max, values(\"256\",\"128\"))");
5878 println!(
5879 "cargo:rustc-check-cfg=cfg(i2c_master_i2c0_data_register_ahb_address, \
5880 values(\"1610690588\"))"
5881 );
5882 println!(
5883 "cargo:rustc-check-cfg=cfg(i2c_master_max_bus_timeout, \
5884 values(\"1048575\",\"31\",\"16777215\"))"
5885 );
5886 println!("cargo:rustc-check-cfg=cfg(i2c_master_ll_intr_mask, values(\"262143\",\"131071\"))");
5887 println!("cargo:rustc-check-cfg=cfg(i2c_master_fifo_size, values(\"32\",\"16\"))");
5888 println!("cargo:rustc-check-cfg=cfg(interrupts_status_registers, values(\"3\",\"2\",\"4\"))");
5889 println!(
5890 "cargo:rustc-check-cfg=cfg(interrupt_controller, \
5891 values(\"xtensa\",\"riscv_basic\",\"clic\",\"plic\"))"
5892 );
5893 println!(
5894 "cargo:rustc-check-cfg=cfg(psram_extmem_origin, \
5895 values(\"1065353216\",\"1107296256\",\"1062207488\",\"1006632960\"))"
5896 );
5897 println!(
5898 "cargo:rustc-check-cfg=cfg(rmt_ram_start, \
5899 values(\"1073047552\",\"1610703872\",\"1610638336\",\"1610642432\",\"1061250048\",\"\
5900 1610704896\"))"
5901 );
5902 println!("cargo:rustc-check-cfg=cfg(rmt_channel_ram_size, values(\"64\",\"48\"))");
5903 println!("cargo:rustc-check-cfg=cfg(rng_apb_cycle_wait_num, values(\"16\"))");
5904 println!("cargo:rustc-check-cfg=cfg(rsa_size_increment, values(\"512\",\"32\"))");
5905 println!("cargo:rustc-check-cfg=cfg(rsa_memory_size_bytes, values(\"512\",\"384\"))");
5906 println!(
5907 "cargo:rustc-check-cfg=cfg(soc_rc_fast_clk_default, values(\"8500000\",\"17500000\"))"
5908 );
5909 println!("cargo:rustc-check-cfg=cfg(uart_ram_size, values(\"128\"))");
5910 println!("cargo:rustc-check-cfg=cfg(wifi_mac_version, values(\"1\",\"3\",\"2\"))");
5911 println!("cargo:rustc-check-cfg=cfg(dma_max_priority, values(\"9\",\"5\"))");
5912 println!("cargo:rustc-check-cfg=cfg(dma_gdma_version, values(\"1\",\"2\"))");
5913 println!("cargo:rustc-check-cfg=cfg(phy_backed_up_digital_register_count, values(\"21\"))");
5914 println!("cargo:rustc-check-cfg=cfg(lp_i2c_master_fifo_size, values(\"16\"))");
5915 println!("cargo:rustc-check-cfg=cfg(lp_uart_ram_size, values(\"32\"))");
5916 println!("cargo:rustc-check-cfg=cfg(parl_io_version, values(\"2\",\"1\"))");
5917 println!("cargo:rustc-check-cfg=cfg(soc_cpu_csr_prv_mode, values(\"2064\",\"3088\"))");
5918}