Skip to main content

esp_metadata_generated/
_build_script_utils.rs

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