use core::ops::Range;
extern crate alloc;
#[cfg(docsrs)]
macro_rules! println {
($($any:tt)*) => {};
}
#[doc(hidden)]
#[macro_export]
macro_rules! __assert_features_logic {
($op:tt, $limit:expr, $msg:literal, $($feature:literal),+ $(,)?) => {
{ let enabled : Vec < & str > = [$(if cfg!(feature = $feature) { Some($feature) }
else { None },)+].into_iter().flatten().collect(); assert!(enabled.len() $op
$limit, concat!($msg,
": {}.\nCurrently enabled: {}. This might be caused by enabled default features.\n"),
[$($feature),+].join(", "), if enabled.is_empty() { "none".to_string() } else {
enabled.join(", ") }); }
};
}
#[macro_export]
macro_rules! assert_unique_features {
($($f:literal),+ $(,)?) => {
$crate::__assert_features_logic!(<=, 1,
"\nAt most one of the following features must be enabled", $($f),+);
};
}
#[macro_export]
macro_rules! assert_unique_used_features {
($($f:literal),+ $(,)?) => {
$crate::__assert_features_logic!(==, 1,
"\nExactly one of the following features must be enabled", $($f),+);
};
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
#[cfg_attr(docsrs, doc(cfg(feature = "build-script")))]
pub enum Chip {
Esp32,
Esp32c2,
Esp32c3,
Esp32c5,
Esp32c6,
Esp32c61,
Esp32h2,
Esp32s2,
Esp32s3,
}
impl core::str::FromStr for Chip {
type Err = alloc::string::String;
fn from_str(s: &str) -> Result<Self, Self::Err> {
match s {
"esp32" => Ok(Self::Esp32),
"esp32c2" => Ok(Self::Esp32c2),
"esp32c3" => Ok(Self::Esp32c3),
"esp32c5" => Ok(Self::Esp32c5),
"esp32c6" => Ok(Self::Esp32c6),
"esp32c61" => Ok(Self::Esp32c61),
"esp32h2" => Ok(Self::Esp32h2),
"esp32s2" => Ok(Self::Esp32s2),
"esp32s3" => Ok(Self::Esp32s3),
_ => Err(alloc::format!(
"Unknown chip {s}. Possible options: esp32, esp32c2, esp32c3, esp32c5, esp32c6, \
esp32c61, esp32h2, esp32s2, esp32s3"
)),
}
}
}
impl Chip {
pub fn from_cargo_feature() -> Result<Self, &'static str> {
let all_chips = [
("CARGO_FEATURE_ESP32", Self::Esp32),
("CARGO_FEATURE_ESP32C2", Self::Esp32c2),
("CARGO_FEATURE_ESP32C3", Self::Esp32c3),
("CARGO_FEATURE_ESP32C5", Self::Esp32c5),
("CARGO_FEATURE_ESP32C6", Self::Esp32c6),
("CARGO_FEATURE_ESP32C61", Self::Esp32c61),
("CARGO_FEATURE_ESP32H2", Self::Esp32h2),
("CARGO_FEATURE_ESP32S2", Self::Esp32s2),
("CARGO_FEATURE_ESP32S3", Self::Esp32s3),
];
let mut chip = None;
for (env, c) in all_chips {
if std::env::var(env).is_ok() {
if chip.is_some() {
return Err(
"Expected exactly one of the following features to be enabled: esp32, \
esp32c2, esp32c3, esp32c5, esp32c6, esp32c61, esp32h2, esp32s2, esp32s3",
);
}
chip = Some(c);
}
}
match chip {
Some(chip) => Ok(chip),
None => Err(
"Expected exactly one of the following features to be enabled: esp32, esp32c2, \
esp32c3, esp32c5, esp32c6, esp32c61, esp32h2, esp32s2, esp32s3",
),
}
}
pub fn is_xtensa(self) -> bool {
self.config().architecture == "xtensa"
}
pub fn target(self) -> &'static str {
self.config().target
}
pub fn name(self) -> &'static str {
match self {
Self::Esp32 => "esp32",
Self::Esp32c2 => "esp32c2",
Self::Esp32c3 => "esp32c3",
Self::Esp32c5 => "esp32c5",
Self::Esp32c6 => "esp32c6",
Self::Esp32c61 => "esp32c61",
Self::Esp32h2 => "esp32h2",
Self::Esp32s2 => "esp32s2",
Self::Esp32s3 => "esp32s3",
}
}
pub fn contains(self, symbol: &str) -> bool {
self.all_symbols().contains(&symbol)
}
pub fn define_cfgs(self) {
self.config().define_cfgs()
}
pub fn all_symbols(&self) -> &'static [&'static str] {
self.config().symbols
}
pub fn memory_layout(&self) -> &'static MemoryLayout {
self.config().memory_layout
}
pub fn pins(&self) -> &'static [PinInfo] {
self.config().pins
}
pub fn iter() -> impl Iterator<Item = Chip> {
[
Self::Esp32,
Self::Esp32c2,
Self::Esp32c3,
Self::Esp32c5,
Self::Esp32c6,
Self::Esp32c61,
Self::Esp32h2,
Self::Esp32s2,
Self::Esp32s3,
]
.into_iter()
}
fn config(self) -> Config {
match self {
Self::Esp32 => Config {
architecture: "xtensa",
target: "xtensa-esp32-none-elf",
symbols: &[
"esp32",
"xtensa",
"multi_core",
"soc_has_aes",
"soc_has_apb_ctrl",
"soc_has_bb",
"soc_has_dport",
"soc_has_system",
"soc_has_efuse",
"soc_has_emac_dma",
"soc_has_emac_ext",
"soc_has_emac_mac",
"soc_has_flash_encryption",
"soc_has_frc_timer",
"soc_has_gpio",
"soc_has_gpio_sd",
"soc_has_hinf",
"soc_has_i2c0",
"soc_has_i2c1",
"soc_has_i2s0",
"soc_has_i2s1",
"soc_has_io_mux",
"soc_has_ledc",
"soc_has_mcpwm0",
"soc_has_mcpwm1",
"soc_has_nrx",
"soc_has_pcnt",
"soc_has_rmt",
"soc_has_rng",
"soc_has_rsa",
"soc_has_lpwr",
"soc_has_rtc_i2c",
"soc_has_rtc_io",
"soc_has_sdhost",
"soc_has_sens",
"soc_has_sha",
"soc_has_slc",
"soc_has_slchost",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_spi3",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_twai0",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_uart2",
"soc_has_uhci0",
"soc_has_uhci1",
"soc_has_wifi",
"soc_has_dma_spi2",
"soc_has_dma_spi3",
"soc_has_dma_i2s0",
"soc_has_dma_i2s1",
"soc_has_adc1",
"soc_has_adc2",
"soc_has_bt",
"soc_has_cpu_ctrl",
"soc_has_dac1",
"soc_has_dac2",
"soc_has_flash",
"soc_has_psram",
"soc_has_sw_interrupt",
"soc_has_touch",
"phy",
"touch",
"rom_crc_le",
"rom_crc_be",
"rom_md5_bsd",
"pm_support_ext0_wakeup",
"pm_support_ext1_wakeup",
"pm_support_touch_sensor_wakeup",
"ulp_supported",
"adc_driver_supported",
"aes_driver_supported",
"bt_driver_supported",
"dac_driver_supported",
"dma_driver_supported",
"gpio_driver_supported",
"i2c_master_driver_supported",
"i2s_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"ledc_driver_supported",
"mcpwm_driver_supported",
"pcnt_driver_supported",
"phy_driver_supported",
"psram_driver_supported",
"rgb_display_driver_supported",
"rmt_driver_supported",
"rng_driver_supported",
"rsa_driver_supported",
"lp_timer_driver_supported",
"sd_host_driver_supported",
"sd_slave_driver_supported",
"sha_driver_supported",
"sleep_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"temp_sensor_driver_supported",
"timergroup_driver_supported",
"touch_driver_supported",
"twai_driver_supported",
"uart_driver_supported",
"ulp_fsm_driver_supported",
"wifi_driver_supported",
"adc_adc1",
"adc_adc2",
"dac_dac1",
"dac_dac2",
"i2c_master_i2c0",
"i2c_master_i2c1",
"spi_master_spi2",
"spi_master_spi3",
"spi_slave_spi2",
"spi_slave_spi3",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"uart_uart2",
"aes_endianness_configurable",
"bt_controller=\"btdm\"",
"dma_kind=\"pdma\"",
"gpio_has_bank_1",
"gpio_gpio_function=\"2\"",
"gpio_constant_0_input=\"48\"",
"gpio_constant_1_input=\"56\"",
"gpio_remap_iomux_pin_registers",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"206\"",
"gpio_output_signal_max=\"256\"",
"i2c_master_separate_filter_config_registers",
"i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
"i2c_master_i2c0_data_register_ahb_address_is_set",
"i2c_master_max_bus_timeout=\"1048575\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"3\"",
"interrupt_controller=\"xtensa\"",
"phy_combo_module",
"psram_extmem_origin=\"1065353216\"",
"rmt_ram_start=\"1073047552\"",
"rmt_channel_ram_size=\"64\"",
"rmt_has_per_channel_clock",
"rmt_supports_reftick_clock",
"rmt_supports_apb_clock",
"rng_apb_cycle_wait_num=\"16\"",
"rng_trng_supported",
"rsa_size_increment=\"512\"",
"rsa_memory_size_bytes=\"512\"",
"sleep_light_sleep",
"sleep_deep_sleep",
"soc_multi_core_enabled",
"soc_rc_fast_clk_default=\"8500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_apll_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_pll_f160m_clk",
"soc_has_clock_node_cpu_pll_div_in",
"soc_has_clock_node_cpu_pll_div",
"soc_has_clock_node_syscon_pre_div_in",
"soc_has_clock_node_syscon_pre_div",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_apb_clk_cpu_div2",
"soc_has_clock_node_apb_clk_80m",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_ref_tick_pll",
"soc_has_clock_node_ref_tick_apll",
"soc_has_clock_node_ref_tick_xtal",
"soc_has_clock_node_ref_tick_fosc",
"soc_has_clock_node_ref_tick",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_rc_fast_div_clk",
"soc_has_clock_node_xtal_div_clk",
"soc_has_clock_node_rtc_slow_clk",
"soc_has_clock_node_rtc_fast_clk",
"soc_has_clock_node_uart_mem_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_mcpwm_function_clock",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_mem_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_slave_supports_dma",
"timergroup_timg_has_timer1",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"wifi_mac_version=\"1\"",
"wifi_csi_supported",
],
cfgs: &[
"cargo:rustc-cfg=esp32",
"cargo:rustc-cfg=xtensa",
"cargo:rustc-cfg=multi_core",
"cargo:rustc-cfg=soc_has_aes",
"cargo:rustc-cfg=soc_has_apb_ctrl",
"cargo:rustc-cfg=soc_has_bb",
"cargo:rustc-cfg=soc_has_dport",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_emac_dma",
"cargo:rustc-cfg=soc_has_emac_ext",
"cargo:rustc-cfg=soc_has_emac_mac",
"cargo:rustc-cfg=soc_has_flash_encryption",
"cargo:rustc-cfg=soc_has_frc_timer",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_gpio_sd",
"cargo:rustc-cfg=soc_has_hinf",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2c1",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_i2s1",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_ledc",
"cargo:rustc-cfg=soc_has_mcpwm0",
"cargo:rustc-cfg=soc_has_mcpwm1",
"cargo:rustc-cfg=soc_has_nrx",
"cargo:rustc-cfg=soc_has_pcnt",
"cargo:rustc-cfg=soc_has_rmt",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_rsa",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_rtc_i2c",
"cargo:rustc-cfg=soc_has_rtc_io",
"cargo:rustc-cfg=soc_has_sdhost",
"cargo:rustc-cfg=soc_has_sens",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_slc",
"cargo:rustc-cfg=soc_has_slchost",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_spi3",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_twai0",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_uart2",
"cargo:rustc-cfg=soc_has_uhci0",
"cargo:rustc-cfg=soc_has_uhci1",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=soc_has_dma_spi2",
"cargo:rustc-cfg=soc_has_dma_spi3",
"cargo:rustc-cfg=soc_has_dma_i2s0",
"cargo:rustc-cfg=soc_has_dma_i2s1",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_adc2",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_cpu_ctrl",
"cargo:rustc-cfg=soc_has_dac1",
"cargo:rustc-cfg=soc_has_dac2",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_psram",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_touch",
"cargo:rustc-cfg=phy",
"cargo:rustc-cfg=touch",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=pm_support_ext0_wakeup",
"cargo:rustc-cfg=pm_support_ext1_wakeup",
"cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
"cargo:rustc-cfg=ulp_supported",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=aes_driver_supported",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=dac_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=i2s_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=ledc_driver_supported",
"cargo:rustc-cfg=mcpwm_driver_supported",
"cargo:rustc-cfg=pcnt_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=psram_driver_supported",
"cargo:rustc-cfg=rgb_display_driver_supported",
"cargo:rustc-cfg=rmt_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=rsa_driver_supported",
"cargo:rustc-cfg=lp_timer_driver_supported",
"cargo:rustc-cfg=sd_host_driver_supported",
"cargo:rustc-cfg=sd_slave_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=sleep_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=temp_sensor_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=touch_driver_supported",
"cargo:rustc-cfg=twai_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=ulp_fsm_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=adc_adc2",
"cargo:rustc-cfg=dac_dac1",
"cargo:rustc-cfg=dac_dac2",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=i2c_master_i2c1",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_master_spi3",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=spi_slave_spi3",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=uart_uart2",
"cargo:rustc-cfg=aes_endianness_configurable",
"cargo:rustc-cfg=bt_controller=\"btdm\"",
"cargo:rustc-cfg=dma_kind=\"pdma\"",
"cargo:rustc-cfg=gpio_has_bank_1",
"cargo:rustc-cfg=gpio_gpio_function=\"2\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"48\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
"cargo:rustc-cfg=gpio_remap_iomux_pin_registers",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"206\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
"cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
"cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
"cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address_is_set",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"1048575\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"3\"",
"cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
"cargo:rustc-cfg=phy_combo_module",
"cargo:rustc-cfg=psram_extmem_origin=\"1065353216\"",
"cargo:rustc-cfg=rmt_ram_start=\"1073047552\"",
"cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
"cargo:rustc-cfg=rmt_has_per_channel_clock",
"cargo:rustc-cfg=rmt_supports_reftick_clock",
"cargo:rustc-cfg=rmt_supports_apb_clock",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rng_trng_supported",
"cargo:rustc-cfg=rsa_size_increment=\"512\"",
"cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
"cargo:rustc-cfg=sleep_light_sleep",
"cargo:rustc-cfg=sleep_deep_sleep",
"cargo:rustc-cfg=soc_multi_core_enabled",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"8500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_apll_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_f160m_clk",
"cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_in",
"cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
"cargo:rustc-cfg=soc_has_clock_node_syscon_pre_div_in",
"cargo:rustc-cfg=soc_has_clock_node_syscon_pre_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk_cpu_div2",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk_80m",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick_pll",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick_apll",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick_xtal",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick_fosc",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_slave_supports_dma",
"cargo:rustc-cfg=timergroup_timg_has_timer1",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=wifi_mac_version=\"1\"",
"cargo:rustc-cfg=wifi_csi_supported",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x3FFAE000..0x40000000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x3FFE7E30..0x40000000,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &["strapping"],
},
PinInfo {
pin: 1,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 2,
limitations: &["strapping"],
},
PinInfo {
pin: 3,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 4,
limitations: &[],
},
PinInfo {
pin: 5,
limitations: &["strapping"],
},
PinInfo {
pin: 6,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 7,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 8,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 9,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 10,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 11,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 12,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 13,
limitations: &["jtag"],
},
PinInfo {
pin: 14,
limitations: &["jtag"],
},
PinInfo {
pin: 15,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 16,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 17,
limitations: &["spi_psram"],
},
PinInfo {
pin: 18,
limitations: &[],
},
PinInfo {
pin: 19,
limitations: &[],
},
PinInfo {
pin: 20,
limitations: &["esp32_pico_v3"],
},
PinInfo {
pin: 21,
limitations: &[],
},
PinInfo {
pin: 22,
limitations: &[],
},
PinInfo {
pin: 23,
limitations: &[],
},
PinInfo {
pin: 25,
limitations: &[],
},
PinInfo {
pin: 26,
limitations: &[],
},
PinInfo {
pin: 27,
limitations: &[],
},
PinInfo {
pin: 32,
limitations: &[],
},
PinInfo {
pin: 33,
limitations: &[],
},
PinInfo {
pin: 34,
limitations: &["input_only"],
},
PinInfo {
pin: 35,
limitations: &["input_only"],
},
PinInfo {
pin: 36,
limitations: &["input_only"],
},
PinInfo {
pin: 37,
limitations: &["input_only"],
},
PinInfo {
pin: 38,
limitations: &["input_only"],
},
PinInfo {
pin: 39,
limitations: &["input_only"],
},
],
},
Self::Esp32c2 => Config {
architecture: "riscv",
target: "riscv32imc-unknown-none-elf",
symbols: &[
"esp32c2",
"riscv",
"single_core",
"soc_has_apb_ctrl",
"soc_has_apb_saradc",
"soc_has_bb",
"soc_has_assist_debug",
"soc_has_dma",
"soc_has_ecc",
"soc_has_efuse",
"soc_has_extmem",
"soc_has_gpio",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_interrupt_core0",
"soc_has_io_mux",
"soc_has_ledc",
"soc_has_rng",
"soc_has_lpwr",
"soc_has_modem_clkrst",
"soc_has_sensitive",
"soc_has_sha",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_system",
"soc_has_systimer",
"soc_has_timg0",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_xts_aes",
"soc_has_dma_ch0",
"soc_has_adc1",
"soc_has_bt",
"soc_has_flash",
"soc_has_gpio_dedicated",
"soc_has_sw_interrupt",
"soc_has_wifi",
"phy",
"swd",
"rom_crc_le",
"rom_crc_be",
"rom_md5_mbedtls",
"pm_support_wifi_wakeup",
"pm_support_bt_wakeup",
"uart_support_wakeup_int",
"gpio_support_deepsleep_wakeup",
"adc_driver_supported",
"assist_debug_driver_supported",
"bt_driver_supported",
"dedicated_gpio_driver_supported",
"dma_driver_supported",
"ecc_driver_supported",
"gpio_driver_supported",
"i2c_master_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"ledc_driver_supported",
"phy_driver_supported",
"rng_driver_supported",
"lp_timer_driver_supported",
"sha_driver_supported",
"sleep_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"temp_sensor_driver_supported",
"timergroup_driver_supported",
"uart_driver_supported",
"wifi_driver_supported",
"adc_adc1",
"i2c_master_i2c0",
"spi_master_spi2",
"spi_slave_spi2",
"timergroup_timg0",
"uart_uart0",
"uart_uart1",
"assist_debug_has_sp_monitor",
"bt_controller=\"npl\"",
"dma_kind=\"gdma\"",
"dma_supports_mem2mem",
"dma_max_priority=\"9\"",
"dma_max_priority_is_set",
"dma_gdma_version=\"1\"",
"dma_gdma_version_is_set",
"ecc_zero_extend_writes",
"ecc_has_finite_field_division",
"ecc_has_curve_p192",
"ecc_has_curve_p256",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"31\"",
"gpio_constant_1_input=\"30\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"100\"",
"gpio_output_signal_max=\"128\"",
"i2c_master_has_fsm_timeouts",
"i2c_master_has_hw_bus_clear",
"i2c_master_has_bus_timeout_enable",
"i2c_master_has_conf_update",
"i2c_master_has_arbitration_en",
"i2c_master_has_tx_fifo_watermark",
"i2c_master_bus_timeout_is_exponential",
"i2c_master_max_bus_timeout=\"31\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"16\"",
"interrupts_status_registers=\"2\"",
"interrupt_controller=\"riscv_basic\"",
"phy_combo_module",
"rng_apb_cycle_wait_num=\"16\"",
"rng_trng_supported",
"sha_dma",
"sleep_light_sleep",
"sleep_deep_sleep",
"soc_cpu_has_csr_pc",
"soc_rc_fast_clk_default=\"17500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_osc_slow_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_rc_fast_div_clk",
"soc_has_clock_node_system_pre_div_in",
"soc_has_clock_node_system_pre_div",
"soc_has_clock_node_cpu_pll_div",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_pll_40m",
"soc_has_clock_node_pll_60m",
"soc_has_clock_node_pll_80m",
"soc_has_clock_node_cpu_div2",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_crypto_clk",
"soc_has_clock_node_mspi_clk",
"soc_has_clock_node_rc_fast_clk_div_n",
"soc_has_clock_node_xtal_div_clk",
"soc_has_clock_node_rtc_slow_clk",
"soc_has_clock_node_rtc_fast_clk",
"soc_has_clock_node_low_power_clk",
"soc_has_clock_node_uart_mem_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_timg_wdt_clock",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_mem_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_app_interrupts",
"spi_master_has_dma_segmented_transfer",
"spi_slave_supports_dma",
"timergroup_timg_has_divcnt_rst",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"uart_has_sclk_divider",
"wifi_mac_version=\"1\"",
],
cfgs: &[
"cargo:rustc-cfg=esp32c2",
"cargo:rustc-cfg=riscv",
"cargo:rustc-cfg=single_core",
"cargo:rustc-cfg=soc_has_apb_ctrl",
"cargo:rustc-cfg=soc_has_apb_saradc",
"cargo:rustc-cfg=soc_has_bb",
"cargo:rustc-cfg=soc_has_assist_debug",
"cargo:rustc-cfg=soc_has_dma",
"cargo:rustc-cfg=soc_has_ecc",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_extmem",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_ledc",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_modem_clkrst",
"cargo:rustc-cfg=soc_has_sensitive",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_xts_aes",
"cargo:rustc-cfg=soc_has_dma_ch0",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_gpio_dedicated",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=phy",
"cargo:rustc-cfg=swd",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_mbedtls",
"cargo:rustc-cfg=pm_support_wifi_wakeup",
"cargo:rustc-cfg=pm_support_bt_wakeup",
"cargo:rustc-cfg=uart_support_wakeup_int",
"cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=assist_debug_driver_supported",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=dedicated_gpio_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=ecc_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=ledc_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=lp_timer_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=sleep_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=temp_sensor_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=assist_debug_has_sp_monitor",
"cargo:rustc-cfg=bt_controller=\"npl\"",
"cargo:rustc-cfg=dma_kind=\"gdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_max_priority=\"9\"",
"cargo:rustc-cfg=dma_max_priority_is_set",
"cargo:rustc-cfg=dma_gdma_version=\"1\"",
"cargo:rustc-cfg=dma_gdma_version_is_set",
"cargo:rustc-cfg=ecc_zero_extend_writes",
"cargo:rustc-cfg=ecc_has_finite_field_division",
"cargo:rustc-cfg=ecc_has_curve_p192",
"cargo:rustc-cfg=ecc_has_curve_p256",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
"cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
"cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_has_conf_update",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
"cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"16\"",
"cargo:rustc-cfg=interrupts_status_registers=\"2\"",
"cargo:rustc-cfg=interrupt_controller=\"riscv_basic\"",
"cargo:rustc-cfg=phy_combo_module",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rng_trng_supported",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=sleep_light_sleep",
"cargo:rustc-cfg=sleep_deep_sleep",
"cargo:rustc-cfg=soc_cpu_has_csr_pc",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_40m",
"cargo:rustc-cfg=soc_has_clock_node_pll_60m",
"cargo:rustc-cfg=soc_has_clock_node_pll_80m",
"cargo:rustc-cfg=soc_has_clock_node_cpu_div2",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
"cargo:rustc-cfg=soc_has_clock_node_mspi_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
"cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_app_interrupts",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_slave_supports_dma",
"cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=uart_has_sclk_divider",
"cargo:rustc-cfg=wifi_mac_version=\"1\"",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x3FCA0000..0x3FCE0000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x3FCCE800..0x3FCDEB70,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &[],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &[],
},
PinInfo {
pin: 3,
limitations: &[],
},
PinInfo {
pin: 4,
limitations: &["jtag"],
},
PinInfo {
pin: 5,
limitations: &["jtag"],
},
PinInfo {
pin: 6,
limitations: &["jtag"],
},
PinInfo {
pin: 7,
limitations: &["jtag"],
},
PinInfo {
pin: 8,
limitations: &["strapping"],
},
PinInfo {
pin: 9,
limitations: &["strapping"],
},
PinInfo {
pin: 10,
limitations: &[],
},
PinInfo {
pin: 11,
limitations: &["spi_flash"],
},
PinInfo {
pin: 12,
limitations: &["spi_flash"],
},
PinInfo {
pin: 13,
limitations: &["spi_flash"],
},
PinInfo {
pin: 14,
limitations: &["spi_flash"],
},
PinInfo {
pin: 15,
limitations: &["spi_flash"],
},
PinInfo {
pin: 16,
limitations: &["spi_flash"],
},
PinInfo {
pin: 17,
limitations: &["spi_flash"],
},
PinInfo {
pin: 18,
limitations: &[],
},
PinInfo {
pin: 19,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 20,
limitations: &["bootloader_uart"],
},
],
},
Self::Esp32c3 => Config {
architecture: "riscv",
target: "riscv32imc-unknown-none-elf",
symbols: &[
"esp32c3",
"riscv",
"single_core",
"soc_has_aes",
"soc_has_apb_ctrl",
"soc_has_apb_saradc",
"soc_has_assist_debug",
"soc_has_bb",
"soc_has_dma",
"soc_has_ds",
"soc_has_efuse",
"soc_has_extmem",
"soc_has_fe",
"soc_has_fe2",
"soc_has_gpio",
"soc_has_gpio_sd",
"soc_has_hmac",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_i2s0",
"soc_has_interrupt_core0",
"soc_has_io_mux",
"soc_has_ledc",
"soc_has_nrx",
"soc_has_rmt",
"soc_has_rng",
"soc_has_rsa",
"soc_has_lpwr",
"soc_has_sensitive",
"soc_has_sha",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_system",
"soc_has_systimer",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_twai0",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_uhci0",
"soc_has_usb_device",
"soc_has_xts_aes",
"soc_has_dma_ch0",
"soc_has_dma_ch1",
"soc_has_dma_ch2",
"soc_has_adc1",
"soc_has_adc2",
"soc_has_bt",
"soc_has_flash",
"soc_has_gpio_dedicated",
"soc_has_sw_interrupt",
"soc_has_tsens",
"soc_has_wifi",
"phy",
"swd",
"rom_crc_le",
"rom_crc_be",
"rom_md5_bsd",
"pm_support_wifi_wakeup",
"pm_support_bt_wakeup",
"uart_support_wakeup_int",
"gpio_support_deepsleep_wakeup",
"adc_driver_supported",
"aes_driver_supported",
"assist_debug_driver_supported",
"bt_driver_supported",
"dedicated_gpio_driver_supported",
"dma_driver_supported",
"gpio_driver_supported",
"hmac_driver_supported",
"i2c_master_driver_supported",
"i2s_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"ledc_driver_supported",
"phy_driver_supported",
"rmt_driver_supported",
"rng_driver_supported",
"rsa_driver_supported",
"lp_timer_driver_supported",
"sha_driver_supported",
"sleep_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"temp_sensor_driver_supported",
"timergroup_driver_supported",
"twai_driver_supported",
"uart_driver_supported",
"uhci_driver_supported",
"usb_serial_jtag_driver_supported",
"wifi_driver_supported",
"adc_adc1",
"adc_adc2",
"i2c_master_i2c0",
"spi_master_spi2",
"spi_slave_spi2",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"aes_dma",
"aes_dma_mode_ecb",
"aes_dma_mode_cbc",
"aes_dma_mode_ofb",
"aes_dma_mode_ctr",
"aes_dma_mode_cfb8",
"aes_dma_mode_cfb128",
"aes_has_split_text_registers",
"assist_debug_has_sp_monitor",
"assist_debug_has_region_monitor",
"bt_controller=\"btdm\"",
"dma_kind=\"gdma\"",
"dma_supports_mem2mem",
"dma_max_priority=\"9\"",
"dma_max_priority_is_set",
"dma_gdma_version=\"1\"",
"dma_gdma_version_is_set",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"31\"",
"gpio_constant_1_input=\"30\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"100\"",
"gpio_output_signal_max=\"128\"",
"i2c_master_has_fsm_timeouts",
"i2c_master_has_hw_bus_clear",
"i2c_master_has_bus_timeout_enable",
"i2c_master_has_conf_update",
"i2c_master_has_arbitration_en",
"i2c_master_has_tx_fifo_watermark",
"i2c_master_bus_timeout_is_exponential",
"i2c_master_max_bus_timeout=\"31\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"2\"",
"interrupt_controller=\"riscv_basic\"",
"phy_combo_module",
"phy_backed_up_digital_register_count=\"21\"",
"phy_backed_up_digital_register_count_is_set",
"rmt_ram_start=\"1610703872\"",
"rmt_channel_ram_size=\"48\"",
"rmt_has_tx_immediate_stop",
"rmt_has_tx_loop_count",
"rmt_has_tx_carrier_data_only",
"rmt_has_tx_sync",
"rmt_has_rx_wrap",
"rmt_has_rx_demodulation",
"rmt_supports_none_clock",
"rmt_supports_apb_clock",
"rmt_supports_rcfast_clock",
"rmt_supports_xtal_clock",
"rng_apb_cycle_wait_num=\"16\"",
"rng_trng_supported",
"rsa_size_increment=\"32\"",
"rsa_memory_size_bytes=\"384\"",
"sha_dma",
"sleep_light_sleep",
"sleep_deep_sleep",
"soc_cpu_has_csr_pc",
"soc_rc_fast_clk_default=\"17500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_rc_fast_div_clk",
"soc_has_clock_node_system_pre_div_in",
"soc_has_clock_node_system_pre_div",
"soc_has_clock_node_cpu_pll_div_out",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_pll_80m",
"soc_has_clock_node_pll_160m",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_crypto_clk",
"soc_has_clock_node_rc_fast_clk_div_n",
"soc_has_clock_node_xtal_div_clk",
"soc_has_clock_node_rtc_slow_clk",
"soc_has_clock_node_rtc_fast_clk",
"soc_has_clock_node_low_power_clk",
"soc_has_clock_node_uart_mem_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_timg_wdt_clock",
"soc_has_clock_node_rmt_sclk",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_mem_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_app_interrupts",
"spi_master_has_dma_segmented_transfer",
"spi_slave_supports_dma",
"timergroup_timg_has_divcnt_rst",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"uart_has_sclk_divider",
"wifi_mac_version=\"1\"",
"wifi_csi_supported",
],
cfgs: &[
"cargo:rustc-cfg=esp32c3",
"cargo:rustc-cfg=riscv",
"cargo:rustc-cfg=single_core",
"cargo:rustc-cfg=soc_has_aes",
"cargo:rustc-cfg=soc_has_apb_ctrl",
"cargo:rustc-cfg=soc_has_apb_saradc",
"cargo:rustc-cfg=soc_has_assist_debug",
"cargo:rustc-cfg=soc_has_bb",
"cargo:rustc-cfg=soc_has_dma",
"cargo:rustc-cfg=soc_has_ds",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_extmem",
"cargo:rustc-cfg=soc_has_fe",
"cargo:rustc-cfg=soc_has_fe2",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_gpio_sd",
"cargo:rustc-cfg=soc_has_hmac",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_ledc",
"cargo:rustc-cfg=soc_has_nrx",
"cargo:rustc-cfg=soc_has_rmt",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_rsa",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_sensitive",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_twai0",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_uhci0",
"cargo:rustc-cfg=soc_has_usb_device",
"cargo:rustc-cfg=soc_has_xts_aes",
"cargo:rustc-cfg=soc_has_dma_ch0",
"cargo:rustc-cfg=soc_has_dma_ch1",
"cargo:rustc-cfg=soc_has_dma_ch2",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_adc2",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_gpio_dedicated",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_tsens",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=phy",
"cargo:rustc-cfg=swd",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=pm_support_wifi_wakeup",
"cargo:rustc-cfg=pm_support_bt_wakeup",
"cargo:rustc-cfg=uart_support_wakeup_int",
"cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=aes_driver_supported",
"cargo:rustc-cfg=assist_debug_driver_supported",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=dedicated_gpio_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=hmac_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=i2s_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=ledc_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=rmt_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=rsa_driver_supported",
"cargo:rustc-cfg=lp_timer_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=sleep_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=temp_sensor_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=twai_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=uhci_driver_supported",
"cargo:rustc-cfg=usb_serial_jtag_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=adc_adc2",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=aes_dma",
"cargo:rustc-cfg=aes_dma_mode_ecb",
"cargo:rustc-cfg=aes_dma_mode_cbc",
"cargo:rustc-cfg=aes_dma_mode_ofb",
"cargo:rustc-cfg=aes_dma_mode_ctr",
"cargo:rustc-cfg=aes_dma_mode_cfb8",
"cargo:rustc-cfg=aes_dma_mode_cfb128",
"cargo:rustc-cfg=aes_has_split_text_registers",
"cargo:rustc-cfg=assist_debug_has_sp_monitor",
"cargo:rustc-cfg=assist_debug_has_region_monitor",
"cargo:rustc-cfg=bt_controller=\"btdm\"",
"cargo:rustc-cfg=dma_kind=\"gdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_max_priority=\"9\"",
"cargo:rustc-cfg=dma_max_priority_is_set",
"cargo:rustc-cfg=dma_gdma_version=\"1\"",
"cargo:rustc-cfg=dma_gdma_version_is_set",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"31\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"30\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
"cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
"cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_has_conf_update",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
"cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"2\"",
"cargo:rustc-cfg=interrupt_controller=\"riscv_basic\"",
"cargo:rustc-cfg=phy_combo_module",
"cargo:rustc-cfg=phy_backed_up_digital_register_count=\"21\"",
"cargo:rustc-cfg=phy_backed_up_digital_register_count_is_set",
"cargo:rustc-cfg=rmt_ram_start=\"1610703872\"",
"cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
"cargo:rustc-cfg=rmt_has_tx_immediate_stop",
"cargo:rustc-cfg=rmt_has_tx_loop_count",
"cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
"cargo:rustc-cfg=rmt_has_tx_sync",
"cargo:rustc-cfg=rmt_has_rx_wrap",
"cargo:rustc-cfg=rmt_has_rx_demodulation",
"cargo:rustc-cfg=rmt_supports_none_clock",
"cargo:rustc-cfg=rmt_supports_apb_clock",
"cargo:rustc-cfg=rmt_supports_rcfast_clock",
"cargo:rustc-cfg=rmt_supports_xtal_clock",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rng_trng_supported",
"cargo:rustc-cfg=rsa_size_increment=\"32\"",
"cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=sleep_light_sleep",
"cargo:rustc-cfg=sleep_deep_sleep",
"cargo:rustc-cfg=soc_cpu_has_csr_pc",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_out",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_80m",
"cargo:rustc-cfg=soc_has_clock_node_pll_160m",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
"cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
"cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_app_interrupts",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_slave_supports_dma",
"cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=uart_has_sclk_divider",
"cargo:rustc-cfg=wifi_mac_version=\"1\"",
"cargo:rustc-cfg=wifi_csi_supported",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x3FC80000..0x3FCE0000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x3FCCE400..0x3FCDE710,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &[],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &["strapping"],
},
PinInfo {
pin: 3,
limitations: &[],
},
PinInfo {
pin: 4,
limitations: &["jtag"],
},
PinInfo {
pin: 5,
limitations: &["jtag"],
},
PinInfo {
pin: 6,
limitations: &["jtag"],
},
PinInfo {
pin: 7,
limitations: &["jtag"],
},
PinInfo {
pin: 8,
limitations: &["strapping"],
},
PinInfo {
pin: 9,
limitations: &["strapping"],
},
PinInfo {
pin: 10,
limitations: &[],
},
PinInfo {
pin: 11,
limitations: &["spi_flash"],
},
PinInfo {
pin: 12,
limitations: &["spi_flash"],
},
PinInfo {
pin: 13,
limitations: &["spi_flash"],
},
PinInfo {
pin: 14,
limitations: &["spi_flash"],
},
PinInfo {
pin: 15,
limitations: &["spi_flash"],
},
PinInfo {
pin: 16,
limitations: &["spi_flash"],
},
PinInfo {
pin: 17,
limitations: &["spi_flash"],
},
PinInfo {
pin: 18,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 19,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 20,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 21,
limitations: &["bootloader_uart"],
},
],
},
Self::Esp32c5 => Config {
architecture: "riscv",
target: "riscv32imac-unknown-none-elf",
symbols: &[
"esp32c5",
"riscv",
"single_core",
"soc_has_aes",
"soc_has_assist_debug",
"soc_has_apb_saradc",
"soc_has_cache",
"soc_has_clint",
"soc_has_dma",
"soc_has_ds",
"soc_has_ecc",
"soc_has_ecdsa",
"soc_has_efuse",
"soc_has_etm",
"soc_has_gpio",
"soc_has_gpio_sd",
"soc_has_hmac",
"soc_has_hp_apm",
"soc_has_hp_sys",
"soc_has_huk",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_i2s0",
"soc_has_ieee802154",
"soc_has_interrupt_core0",
"soc_has_intpri",
"soc_has_io_mux",
"soc_has_keymng",
"soc_has_lp_ana",
"soc_has_lp_aon",
"soc_has_lp_apm0",
"soc_has_lp_clkrst",
"soc_has_lp_i2c_ana_mst",
"soc_has_lp_io_mux",
"soc_has_lp_peri",
"soc_has_lp_tee",
"soc_has_lp_timer",
"soc_has_lp_uart",
"soc_has_lp_wdt",
"soc_has_lpwr",
"soc_has_mcpwm0",
"soc_has_mem_monitor",
"soc_has_modem_lpcon",
"soc_has_modem_syscon",
"soc_has_parl_io",
"soc_has_pau",
"soc_has_pcnt",
"soc_has_pcr",
"soc_has_pmu",
"soc_has_pvt_monitor",
"soc_has_rmt",
"soc_has_rng",
"soc_has_rsa",
"soc_has_sha",
"soc_has_slc",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_system",
"soc_has_systimer",
"soc_has_tee",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_uhci0",
"soc_has_usb_device",
"soc_has_dma_ch0",
"soc_has_dma_ch1",
"soc_has_dma_ch2",
"soc_has_adc1",
"soc_has_bt",
"soc_has_flash",
"soc_has_gpio_dedicated",
"soc_has_lp_core",
"soc_has_sw_interrupt",
"soc_has_wifi",
"soc_has_mem2mem0",
"soc_has_mem2mem1",
"soc_has_mem2mem2",
"soc_has_mem2mem3",
"soc_has_mem2mem4",
"soc_has_mem2mem5",
"soc_has_mem2mem6",
"soc_has_mem2mem7",
"soc_has_mem2mem8",
"soc_has_psram",
"rom_crc_le",
"rom_crc_be",
"rom_md5_bsd",
"adc_driver_supported",
"aes_driver_supported",
"assist_debug_driver_supported",
"bt_driver_supported",
"dedicated_gpio_driver_supported",
"dma_driver_supported",
"ecc_driver_supported",
"gpio_driver_supported",
"i2c_master_driver_supported",
"ieee802154_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"lp_i2c_master_driver_supported",
"parl_io_driver_supported",
"pcnt_driver_supported",
"phy_driver_supported",
"psram_driver_supported",
"rmt_driver_supported",
"rng_driver_supported",
"rsa_driver_supported",
"sha_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"timergroup_driver_supported",
"uart_driver_supported",
"uhci_driver_supported",
"usb_serial_jtag_driver_supported",
"wifi_driver_supported",
"adc_adc1",
"i2c_master_i2c0",
"spi_master_spi2",
"spi_slave_spi2",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"aes_dma",
"aes_dma_mode_ecb",
"aes_dma_mode_cbc",
"aes_dma_mode_ofb",
"aes_dma_mode_ctr",
"aes_dma_mode_cfb8",
"aes_dma_mode_cfb128",
"aes_has_split_text_registers",
"assist_debug_has_sp_monitor",
"assist_debug_has_region_monitor",
"bt_controller=\"npl\"",
"dma_kind=\"gdma\"",
"dma_supports_mem2mem",
"dma_can_access_psram",
"dma_separate_in_out_interrupts",
"dma_max_priority=\"5\"",
"dma_max_priority_is_set",
"dma_gdma_version=\"2\"",
"dma_gdma_version_is_set",
"ecc_separate_jacobian_point_memory",
"ecc_has_memory_clock_gate",
"ecc_supports_enhanced_security",
"ecc_has_modular_arithmetic",
"ecc_has_point_addition",
"ecc_has_curve_p192",
"ecc_has_curve_p256",
"ecc_has_curve_p384",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"96\"",
"gpio_constant_1_input=\"64\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"116\"",
"gpio_output_signal_max=\"256\"",
"i2c_master_has_fsm_timeouts",
"i2c_master_has_hw_bus_clear",
"i2c_master_has_bus_timeout_enable",
"i2c_master_can_estimate_nack_reason",
"i2c_master_has_conf_update",
"i2c_master_has_reliable_fsm_reset",
"i2c_master_has_arbitration_en",
"i2c_master_has_tx_fifo_watermark",
"i2c_master_bus_timeout_is_exponential",
"i2c_master_max_bus_timeout=\"31\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"3\"",
"interrupt_controller=\"clic\"",
"lp_i2c_master_fifo_size=\"16\"",
"lp_uart_ram_size=\"32\"",
"parl_io_version=\"2\"",
"phy_combo_module",
"psram_extmem_origin=\"1107296256\"",
"rmt_ram_start=\"1610638336\"",
"rmt_channel_ram_size=\"48\"",
"rmt_has_tx_immediate_stop",
"rmt_has_tx_loop_count",
"rmt_has_tx_loop_auto_stop",
"rmt_has_tx_carrier_data_only",
"rmt_has_tx_sync",
"rmt_has_rx_wrap",
"rmt_has_rx_demodulation",
"rmt_supports_xtal_clock",
"rmt_supports_rcfast_clock",
"rmt_supports_pll80mhz_clock",
"rng_apb_cycle_wait_num=\"16\"",
"rsa_size_increment=\"32\"",
"rsa_memory_size_bytes=\"384\"",
"sha_dma",
"soc_cpu_has_branch_predictor",
"soc_cpu_csr_prv_mode=\"2064\"",
"soc_cpu_csr_prv_mode_is_set",
"soc_rc_fast_clk_default=\"17500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_osc_slow_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_pll_f12m",
"soc_has_clock_node_pll_f20m",
"soc_has_clock_node_pll_f40m",
"soc_has_clock_node_pll_f48m",
"soc_has_clock_node_pll_f60m",
"soc_has_clock_node_pll_f80m",
"soc_has_clock_node_pll_f120m",
"soc_has_clock_node_pll_f160m",
"soc_has_clock_node_pll_f240m",
"soc_has_clock_node_hp_root_clk",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_ahb_clk",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_xtal_d2_clk",
"soc_has_clock_node_lp_fast_clk",
"soc_has_clock_node_lp_slow_clk",
"soc_has_clock_node_crypto_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_timg_wdt_clock",
"soc_has_clock_node_rmt_sclk",
"soc_has_clock_node_parl_io_rx_clock",
"soc_has_clock_node_parl_io_tx_clock",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_app_interrupts",
"spi_master_has_dma_segmented_transfer",
"spi_master_has_clk_pre_div",
"timergroup_timg_has_divcnt_rst",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"uart_peripheral_controls_mem_clk",
"uhci_combined_uart_selector_field",
"wifi_mac_version=\"3\"",
"wifi_has_5g",
"wifi_csi_supported",
],
cfgs: &[
"cargo:rustc-cfg=esp32c5",
"cargo:rustc-cfg=riscv",
"cargo:rustc-cfg=single_core",
"cargo:rustc-cfg=soc_has_aes",
"cargo:rustc-cfg=soc_has_assist_debug",
"cargo:rustc-cfg=soc_has_apb_saradc",
"cargo:rustc-cfg=soc_has_cache",
"cargo:rustc-cfg=soc_has_clint",
"cargo:rustc-cfg=soc_has_dma",
"cargo:rustc-cfg=soc_has_ds",
"cargo:rustc-cfg=soc_has_ecc",
"cargo:rustc-cfg=soc_has_ecdsa",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_etm",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_gpio_sd",
"cargo:rustc-cfg=soc_has_hmac",
"cargo:rustc-cfg=soc_has_hp_apm",
"cargo:rustc-cfg=soc_has_hp_sys",
"cargo:rustc-cfg=soc_has_huk",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_ieee802154",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_intpri",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_keymng",
"cargo:rustc-cfg=soc_has_lp_ana",
"cargo:rustc-cfg=soc_has_lp_aon",
"cargo:rustc-cfg=soc_has_lp_apm0",
"cargo:rustc-cfg=soc_has_lp_clkrst",
"cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_lp_io_mux",
"cargo:rustc-cfg=soc_has_lp_peri",
"cargo:rustc-cfg=soc_has_lp_tee",
"cargo:rustc-cfg=soc_has_lp_timer",
"cargo:rustc-cfg=soc_has_lp_uart",
"cargo:rustc-cfg=soc_has_lp_wdt",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_mcpwm0",
"cargo:rustc-cfg=soc_has_mem_monitor",
"cargo:rustc-cfg=soc_has_modem_lpcon",
"cargo:rustc-cfg=soc_has_modem_syscon",
"cargo:rustc-cfg=soc_has_parl_io",
"cargo:rustc-cfg=soc_has_pau",
"cargo:rustc-cfg=soc_has_pcnt",
"cargo:rustc-cfg=soc_has_pcr",
"cargo:rustc-cfg=soc_has_pmu",
"cargo:rustc-cfg=soc_has_pvt_monitor",
"cargo:rustc-cfg=soc_has_rmt",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_rsa",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_slc",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_tee",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_uhci0",
"cargo:rustc-cfg=soc_has_usb_device",
"cargo:rustc-cfg=soc_has_dma_ch0",
"cargo:rustc-cfg=soc_has_dma_ch1",
"cargo:rustc-cfg=soc_has_dma_ch2",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_gpio_dedicated",
"cargo:rustc-cfg=soc_has_lp_core",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=soc_has_mem2mem0",
"cargo:rustc-cfg=soc_has_mem2mem1",
"cargo:rustc-cfg=soc_has_mem2mem2",
"cargo:rustc-cfg=soc_has_mem2mem3",
"cargo:rustc-cfg=soc_has_mem2mem4",
"cargo:rustc-cfg=soc_has_mem2mem5",
"cargo:rustc-cfg=soc_has_mem2mem6",
"cargo:rustc-cfg=soc_has_mem2mem7",
"cargo:rustc-cfg=soc_has_mem2mem8",
"cargo:rustc-cfg=soc_has_psram",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=aes_driver_supported",
"cargo:rustc-cfg=assist_debug_driver_supported",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=dedicated_gpio_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=ecc_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=ieee802154_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=lp_i2c_master_driver_supported",
"cargo:rustc-cfg=parl_io_driver_supported",
"cargo:rustc-cfg=pcnt_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=psram_driver_supported",
"cargo:rustc-cfg=rmt_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=rsa_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=uhci_driver_supported",
"cargo:rustc-cfg=usb_serial_jtag_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=aes_dma",
"cargo:rustc-cfg=aes_dma_mode_ecb",
"cargo:rustc-cfg=aes_dma_mode_cbc",
"cargo:rustc-cfg=aes_dma_mode_ofb",
"cargo:rustc-cfg=aes_dma_mode_ctr",
"cargo:rustc-cfg=aes_dma_mode_cfb8",
"cargo:rustc-cfg=aes_dma_mode_cfb128",
"cargo:rustc-cfg=aes_has_split_text_registers",
"cargo:rustc-cfg=assist_debug_has_sp_monitor",
"cargo:rustc-cfg=assist_debug_has_region_monitor",
"cargo:rustc-cfg=bt_controller=\"npl\"",
"cargo:rustc-cfg=dma_kind=\"gdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_can_access_psram",
"cargo:rustc-cfg=dma_separate_in_out_interrupts",
"cargo:rustc-cfg=dma_max_priority=\"5\"",
"cargo:rustc-cfg=dma_max_priority_is_set",
"cargo:rustc-cfg=dma_gdma_version=\"2\"",
"cargo:rustc-cfg=dma_gdma_version_is_set",
"cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
"cargo:rustc-cfg=ecc_has_memory_clock_gate",
"cargo:rustc-cfg=ecc_supports_enhanced_security",
"cargo:rustc-cfg=ecc_has_modular_arithmetic",
"cargo:rustc-cfg=ecc_has_point_addition",
"cargo:rustc-cfg=ecc_has_curve_p192",
"cargo:rustc-cfg=ecc_has_curve_p256",
"cargo:rustc-cfg=ecc_has_curve_p384",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"96\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"64\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"116\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
"cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
"cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
"cargo:rustc-cfg=i2c_master_has_conf_update",
"cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
"cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"3\"",
"cargo:rustc-cfg=interrupt_controller=\"clic\"",
"cargo:rustc-cfg=lp_i2c_master_fifo_size=\"16\"",
"cargo:rustc-cfg=lp_uart_ram_size=\"32\"",
"cargo:rustc-cfg=parl_io_version=\"2\"",
"cargo:rustc-cfg=phy_combo_module",
"cargo:rustc-cfg=psram_extmem_origin=\"1107296256\"",
"cargo:rustc-cfg=rmt_ram_start=\"1610638336\"",
"cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
"cargo:rustc-cfg=rmt_has_tx_immediate_stop",
"cargo:rustc-cfg=rmt_has_tx_loop_count",
"cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
"cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
"cargo:rustc-cfg=rmt_has_tx_sync",
"cargo:rustc-cfg=rmt_has_rx_wrap",
"cargo:rustc-cfg=rmt_has_rx_demodulation",
"cargo:rustc-cfg=rmt_supports_xtal_clock",
"cargo:rustc-cfg=rmt_supports_rcfast_clock",
"cargo:rustc-cfg=rmt_supports_pll80mhz_clock",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rsa_size_increment=\"32\"",
"cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=soc_cpu_has_branch_predictor",
"cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"2064\"",
"cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_f12m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f40m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f60m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
"cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_crypto_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
"cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
"cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
"cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_app_interrupts",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_master_has_clk_pre_div",
"cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
"cargo:rustc-cfg=uhci_combined_uart_selector_field",
"cargo:rustc-cfg=wifi_mac_version=\"3\"",
"cargo:rustc-cfg=wifi_has_5g",
"cargo:rustc-cfg=wifi_csi_supported",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x40800000..0x40860000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x4084E5A0..0x4085E5A0,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &[],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 3,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 4,
limitations: &["jtag"],
},
PinInfo {
pin: 5,
limitations: &["jtag"],
},
PinInfo {
pin: 6,
limitations: &[],
},
PinInfo {
pin: 7,
limitations: &["strapping"],
},
PinInfo {
pin: 8,
limitations: &[],
},
PinInfo {
pin: 9,
limitations: &[],
},
PinInfo {
pin: 10,
limitations: &[],
},
PinInfo {
pin: 11,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 12,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 13,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 14,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 23,
limitations: &[],
},
PinInfo {
pin: 24,
limitations: &[],
},
PinInfo {
pin: 25,
limitations: &["strapping"],
},
PinInfo {
pin: 26,
limitations: &["strapping"],
},
PinInfo {
pin: 27,
limitations: &["strapping"],
},
PinInfo {
pin: 28,
limitations: &["strapping"],
},
],
},
Self::Esp32c6 => Config {
architecture: "riscv",
target: "riscv32imac-unknown-none-elf",
symbols: &[
"esp32c6",
"riscv",
"single_core",
"soc_has_aes",
"soc_has_apb_saradc",
"soc_has_assist_debug",
"soc_has_atomic",
"soc_has_dma",
"soc_has_ds",
"soc_has_ecc",
"soc_has_efuse",
"soc_has_extmem",
"soc_has_gpio",
"soc_has_gpio_sd",
"soc_has_hinf",
"soc_has_hmac",
"soc_has_hp_apm",
"soc_has_hp_sys",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_i2s0",
"soc_has_ieee802154",
"soc_has_interrupt_core0",
"soc_has_intpri",
"soc_has_io_mux",
"soc_has_ledc",
"soc_has_lp_ana",
"soc_has_lp_aon",
"soc_has_lp_apm",
"soc_has_lp_apm0",
"soc_has_lp_clkrst",
"soc_has_lp_i2c0",
"soc_has_lp_i2c_ana_mst",
"soc_has_lp_io",
"soc_has_lp_peri",
"soc_has_lp_tee",
"soc_has_lp_timer",
"soc_has_lp_uart",
"soc_has_lp_wdt",
"soc_has_lpwr",
"soc_has_mcpwm0",
"soc_has_mem_monitor",
"soc_has_modem_lpcon",
"soc_has_modem_syscon",
"soc_has_otp_debug",
"soc_has_parl_io",
"soc_has_pau",
"soc_has_pcnt",
"soc_has_pcr",
"soc_has_plic_mx",
"soc_has_pmu",
"soc_has_rmt",
"soc_has_rng",
"soc_has_rsa",
"soc_has_sha",
"soc_has_slchost",
"soc_has_etm",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_system",
"soc_has_systimer",
"soc_has_tee",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_trace0",
"soc_has_twai0",
"soc_has_twai1",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_uhci0",
"soc_has_usb_device",
"soc_has_dma_ch0",
"soc_has_dma_ch1",
"soc_has_dma_ch2",
"soc_has_adc1",
"soc_has_bt",
"soc_has_flash",
"soc_has_gpio_dedicated",
"soc_has_lp_core",
"soc_has_sw_interrupt",
"soc_has_tsens",
"soc_has_wifi",
"soc_has_mem2mem0",
"soc_has_mem2mem1",
"soc_has_mem2mem2",
"soc_has_mem2mem3",
"soc_has_mem2mem4",
"soc_has_mem2mem5",
"soc_has_mem2mem6",
"soc_has_mem2mem7",
"soc_has_mem2mem8",
"phy",
"lp_core",
"swd",
"rom_crc_le",
"rom_crc_be",
"rom_md5_bsd",
"pm_support_wifi_wakeup",
"pm_support_beacon_wakeup",
"pm_support_bt_wakeup",
"gpio_support_deepsleep_wakeup",
"uart_support_wakeup_int",
"pm_support_ext1_wakeup",
"adc_driver_supported",
"aes_driver_supported",
"assist_debug_driver_supported",
"bt_driver_supported",
"dedicated_gpio_driver_supported",
"dma_driver_supported",
"ecc_driver_supported",
"etm_driver_supported",
"gpio_driver_supported",
"hmac_driver_supported",
"i2c_master_driver_supported",
"i2s_driver_supported",
"ieee802154_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"ledc_driver_supported",
"lp_i2c_master_driver_supported",
"lp_uart_driver_supported",
"mcpwm_driver_supported",
"parl_io_driver_supported",
"pcnt_driver_supported",
"phy_driver_supported",
"rmt_driver_supported",
"rng_driver_supported",
"rsa_driver_supported",
"lp_timer_driver_supported",
"sd_slave_driver_supported",
"sha_driver_supported",
"sleep_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"temp_sensor_driver_supported",
"timergroup_driver_supported",
"twai_driver_supported",
"uart_driver_supported",
"uhci_driver_supported",
"ulp_riscv_driver_supported",
"usb_serial_jtag_driver_supported",
"wifi_driver_supported",
"adc_adc1",
"i2c_master_i2c0",
"spi_master_spi2",
"spi_slave_spi2",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"aes_dma",
"aes_dma_mode_ecb",
"aes_dma_mode_cbc",
"aes_dma_mode_ofb",
"aes_dma_mode_ctr",
"aes_dma_mode_cfb8",
"aes_dma_mode_cfb128",
"aes_has_split_text_registers",
"assist_debug_has_sp_monitor",
"assist_debug_has_region_monitor",
"bt_controller=\"npl\"",
"dma_kind=\"gdma\"",
"dma_supports_mem2mem",
"dma_separate_in_out_interrupts",
"dma_max_priority=\"9\"",
"dma_max_priority_is_set",
"dma_gdma_version=\"1\"",
"dma_gdma_version_is_set",
"ecc_zero_extend_writes",
"ecc_has_memory_clock_gate",
"ecc_has_curve_p192",
"ecc_has_curve_p256",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"60\"",
"gpio_constant_1_input=\"56\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"124\"",
"gpio_output_signal_max=\"128\"",
"i2c_master_has_fsm_timeouts",
"i2c_master_has_hw_bus_clear",
"i2c_master_has_bus_timeout_enable",
"i2c_master_can_estimate_nack_reason",
"i2c_master_has_conf_update",
"i2c_master_has_reliable_fsm_reset",
"i2c_master_has_arbitration_en",
"i2c_master_has_tx_fifo_watermark",
"i2c_master_bus_timeout_is_exponential",
"i2c_master_max_bus_timeout=\"31\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"3\"",
"interrupt_controller=\"plic\"",
"lp_i2c_master_fifo_size=\"16\"",
"lp_uart_ram_size=\"32\"",
"parl_io_version=\"1\"",
"phy_combo_module",
"rmt_ram_start=\"1610638336\"",
"rmt_channel_ram_size=\"48\"",
"rmt_has_tx_immediate_stop",
"rmt_has_tx_loop_count",
"rmt_has_tx_loop_auto_stop",
"rmt_has_tx_carrier_data_only",
"rmt_has_tx_sync",
"rmt_has_rx_wrap",
"rmt_has_rx_demodulation",
"rmt_supports_none_clock",
"rmt_supports_pll80mhz_clock",
"rmt_supports_rcfast_clock",
"rmt_supports_xtal_clock",
"rng_apb_cycle_wait_num=\"16\"",
"rng_trng_supported",
"rsa_size_increment=\"32\"",
"rsa_memory_size_bytes=\"384\"",
"sha_dma",
"sleep_light_sleep",
"sleep_deep_sleep",
"soc_cpu_has_csr_pc",
"soc_cpu_csr_prv_mode=\"3088\"",
"soc_cpu_csr_prv_mode_is_set",
"soc_rc_fast_clk_default=\"17500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_osc_slow_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_soc_root_clk",
"soc_has_clock_node_hp_root_clk",
"soc_has_clock_node_cpu_hs_div",
"soc_has_clock_node_cpu_ls_div",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_ahb_hs_div",
"soc_has_clock_node_ahb_ls_div",
"soc_has_clock_node_ahb_clk",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_mspi_fast_hs_clk",
"soc_has_clock_node_mspi_fast_ls_clk",
"soc_has_clock_node_mspi_fast_clk",
"soc_has_clock_node_pll_f48m",
"soc_has_clock_node_pll_f80m",
"soc_has_clock_node_pll_f160m",
"soc_has_clock_node_pll_f240m",
"soc_has_clock_node_ledc_sclk",
"soc_has_clock_node_xtal_d2_clk",
"soc_has_clock_node_lp_fast_clk",
"soc_has_clock_node_lp_slow_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"soc_has_clock_node_rmt_sclk",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_timg_wdt_clock",
"soc_has_clock_node_mcpwm_function_clock",
"soc_has_clock_node_parl_io_rx_clock",
"soc_has_clock_node_parl_io_tx_clock",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_app_interrupts",
"spi_master_has_dma_segmented_transfer",
"spi_slave_supports_dma",
"timergroup_timg_has_divcnt_rst",
"timergroup_rc_fast_calibration_divider",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"uart_peripheral_controls_mem_clk",
"wifi_has_wifi6",
"wifi_mac_version=\"2\"",
"wifi_csi_supported",
],
cfgs: &[
"cargo:rustc-cfg=esp32c6",
"cargo:rustc-cfg=riscv",
"cargo:rustc-cfg=single_core",
"cargo:rustc-cfg=soc_has_aes",
"cargo:rustc-cfg=soc_has_apb_saradc",
"cargo:rustc-cfg=soc_has_assist_debug",
"cargo:rustc-cfg=soc_has_atomic",
"cargo:rustc-cfg=soc_has_dma",
"cargo:rustc-cfg=soc_has_ds",
"cargo:rustc-cfg=soc_has_ecc",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_extmem",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_gpio_sd",
"cargo:rustc-cfg=soc_has_hinf",
"cargo:rustc-cfg=soc_has_hmac",
"cargo:rustc-cfg=soc_has_hp_apm",
"cargo:rustc-cfg=soc_has_hp_sys",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_ieee802154",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_intpri",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_ledc",
"cargo:rustc-cfg=soc_has_lp_ana",
"cargo:rustc-cfg=soc_has_lp_aon",
"cargo:rustc-cfg=soc_has_lp_apm",
"cargo:rustc-cfg=soc_has_lp_apm0",
"cargo:rustc-cfg=soc_has_lp_clkrst",
"cargo:rustc-cfg=soc_has_lp_i2c0",
"cargo:rustc-cfg=soc_has_lp_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_lp_io",
"cargo:rustc-cfg=soc_has_lp_peri",
"cargo:rustc-cfg=soc_has_lp_tee",
"cargo:rustc-cfg=soc_has_lp_timer",
"cargo:rustc-cfg=soc_has_lp_uart",
"cargo:rustc-cfg=soc_has_lp_wdt",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_mcpwm0",
"cargo:rustc-cfg=soc_has_mem_monitor",
"cargo:rustc-cfg=soc_has_modem_lpcon",
"cargo:rustc-cfg=soc_has_modem_syscon",
"cargo:rustc-cfg=soc_has_otp_debug",
"cargo:rustc-cfg=soc_has_parl_io",
"cargo:rustc-cfg=soc_has_pau",
"cargo:rustc-cfg=soc_has_pcnt",
"cargo:rustc-cfg=soc_has_pcr",
"cargo:rustc-cfg=soc_has_plic_mx",
"cargo:rustc-cfg=soc_has_pmu",
"cargo:rustc-cfg=soc_has_rmt",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_rsa",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_slchost",
"cargo:rustc-cfg=soc_has_etm",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_tee",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_trace0",
"cargo:rustc-cfg=soc_has_twai0",
"cargo:rustc-cfg=soc_has_twai1",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_uhci0",
"cargo:rustc-cfg=soc_has_usb_device",
"cargo:rustc-cfg=soc_has_dma_ch0",
"cargo:rustc-cfg=soc_has_dma_ch1",
"cargo:rustc-cfg=soc_has_dma_ch2",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_gpio_dedicated",
"cargo:rustc-cfg=soc_has_lp_core",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_tsens",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=soc_has_mem2mem0",
"cargo:rustc-cfg=soc_has_mem2mem1",
"cargo:rustc-cfg=soc_has_mem2mem2",
"cargo:rustc-cfg=soc_has_mem2mem3",
"cargo:rustc-cfg=soc_has_mem2mem4",
"cargo:rustc-cfg=soc_has_mem2mem5",
"cargo:rustc-cfg=soc_has_mem2mem6",
"cargo:rustc-cfg=soc_has_mem2mem7",
"cargo:rustc-cfg=soc_has_mem2mem8",
"cargo:rustc-cfg=phy",
"cargo:rustc-cfg=lp_core",
"cargo:rustc-cfg=swd",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=pm_support_wifi_wakeup",
"cargo:rustc-cfg=pm_support_beacon_wakeup",
"cargo:rustc-cfg=pm_support_bt_wakeup",
"cargo:rustc-cfg=gpio_support_deepsleep_wakeup",
"cargo:rustc-cfg=uart_support_wakeup_int",
"cargo:rustc-cfg=pm_support_ext1_wakeup",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=aes_driver_supported",
"cargo:rustc-cfg=assist_debug_driver_supported",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=dedicated_gpio_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=ecc_driver_supported",
"cargo:rustc-cfg=etm_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=hmac_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=i2s_driver_supported",
"cargo:rustc-cfg=ieee802154_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=ledc_driver_supported",
"cargo:rustc-cfg=lp_i2c_master_driver_supported",
"cargo:rustc-cfg=lp_uart_driver_supported",
"cargo:rustc-cfg=mcpwm_driver_supported",
"cargo:rustc-cfg=parl_io_driver_supported",
"cargo:rustc-cfg=pcnt_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=rmt_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=rsa_driver_supported",
"cargo:rustc-cfg=lp_timer_driver_supported",
"cargo:rustc-cfg=sd_slave_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=sleep_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=temp_sensor_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=twai_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=uhci_driver_supported",
"cargo:rustc-cfg=ulp_riscv_driver_supported",
"cargo:rustc-cfg=usb_serial_jtag_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=aes_dma",
"cargo:rustc-cfg=aes_dma_mode_ecb",
"cargo:rustc-cfg=aes_dma_mode_cbc",
"cargo:rustc-cfg=aes_dma_mode_ofb",
"cargo:rustc-cfg=aes_dma_mode_ctr",
"cargo:rustc-cfg=aes_dma_mode_cfb8",
"cargo:rustc-cfg=aes_dma_mode_cfb128",
"cargo:rustc-cfg=aes_has_split_text_registers",
"cargo:rustc-cfg=assist_debug_has_sp_monitor",
"cargo:rustc-cfg=assist_debug_has_region_monitor",
"cargo:rustc-cfg=bt_controller=\"npl\"",
"cargo:rustc-cfg=dma_kind=\"gdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_separate_in_out_interrupts",
"cargo:rustc-cfg=dma_max_priority=\"9\"",
"cargo:rustc-cfg=dma_max_priority_is_set",
"cargo:rustc-cfg=dma_gdma_version=\"1\"",
"cargo:rustc-cfg=dma_gdma_version_is_set",
"cargo:rustc-cfg=ecc_zero_extend_writes",
"cargo:rustc-cfg=ecc_has_memory_clock_gate",
"cargo:rustc-cfg=ecc_has_curve_p192",
"cargo:rustc-cfg=ecc_has_curve_p256",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
"cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
"cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
"cargo:rustc-cfg=i2c_master_has_conf_update",
"cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
"cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"3\"",
"cargo:rustc-cfg=interrupt_controller=\"plic\"",
"cargo:rustc-cfg=lp_i2c_master_fifo_size=\"16\"",
"cargo:rustc-cfg=lp_uart_ram_size=\"32\"",
"cargo:rustc-cfg=parl_io_version=\"1\"",
"cargo:rustc-cfg=phy_combo_module",
"cargo:rustc-cfg=rmt_ram_start=\"1610638336\"",
"cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
"cargo:rustc-cfg=rmt_has_tx_immediate_stop",
"cargo:rustc-cfg=rmt_has_tx_loop_count",
"cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
"cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
"cargo:rustc-cfg=rmt_has_tx_sync",
"cargo:rustc-cfg=rmt_has_rx_wrap",
"cargo:rustc-cfg=rmt_has_rx_demodulation",
"cargo:rustc-cfg=rmt_supports_none_clock",
"cargo:rustc-cfg=rmt_supports_pll80mhz_clock",
"cargo:rustc-cfg=rmt_supports_rcfast_clock",
"cargo:rustc-cfg=rmt_supports_xtal_clock",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rng_trng_supported",
"cargo:rustc-cfg=rsa_size_increment=\"32\"",
"cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=sleep_light_sleep",
"cargo:rustc-cfg=sleep_deep_sleep",
"cargo:rustc-cfg=soc_cpu_has_csr_pc",
"cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"3088\"",
"cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_soc_root_clk",
"cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
"cargo:rustc-cfg=soc_has_clock_node_cpu_hs_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_ls_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_ahb_hs_div",
"cargo:rustc-cfg=soc_has_clock_node_ahb_ls_div",
"cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_mspi_fast_hs_clk",
"cargo:rustc-cfg=soc_has_clock_node_mspi_fast_ls_clk",
"cargo:rustc-cfg=soc_has_clock_node_mspi_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f240m",
"cargo:rustc-cfg=soc_has_clock_node_ledc_sclk",
"cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
"cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
"cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_app_interrupts",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_slave_supports_dma",
"cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
"cargo:rustc-cfg=wifi_has_wifi6",
"cargo:rustc-cfg=wifi_mac_version=\"2\"",
"cargo:rustc-cfg=wifi_csi_supported",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x40800000..0x40880000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x4086E610..0x4087E610,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &[],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &[],
},
PinInfo {
pin: 3,
limitations: &[],
},
PinInfo {
pin: 4,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 5,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 6,
limitations: &["jtag"],
},
PinInfo {
pin: 7,
limitations: &["jtag"],
},
PinInfo {
pin: 8,
limitations: &["strapping"],
},
PinInfo {
pin: 9,
limitations: &["strapping"],
},
PinInfo {
pin: 10,
limitations: &[],
},
PinInfo {
pin: 11,
limitations: &[],
},
PinInfo {
pin: 12,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 13,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 14,
limitations: &[],
},
PinInfo {
pin: 15,
limitations: &["strapping"],
},
PinInfo {
pin: 16,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 17,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 18,
limitations: &[],
},
PinInfo {
pin: 19,
limitations: &[],
},
PinInfo {
pin: 20,
limitations: &[],
},
PinInfo {
pin: 21,
limitations: &[],
},
PinInfo {
pin: 22,
limitations: &[],
},
PinInfo {
pin: 23,
limitations: &[],
},
PinInfo {
pin: 24,
limitations: &["spi_flash"],
},
PinInfo {
pin: 25,
limitations: &["spi_flash"],
},
PinInfo {
pin: 26,
limitations: &["spi_flash"],
},
PinInfo {
pin: 27,
limitations: &["spi_flash"],
},
PinInfo {
pin: 28,
limitations: &["spi_flash"],
},
PinInfo {
pin: 29,
limitations: &["spi_flash"],
},
PinInfo {
pin: 30,
limitations: &["spi_flash"],
},
],
},
Self::Esp32c61 => Config {
architecture: "riscv",
target: "riscv32imac-unknown-none-elf",
symbols: &[
"esp32c61",
"riscv",
"single_core",
"soc_has_assist_debug",
"soc_has_clint",
"soc_has_cache",
"soc_has_dma",
"soc_has_ecc",
"soc_has_ecdsa",
"soc_has_efuse",
"soc_has_etm",
"soc_has_gpio",
"soc_has_hp_apm",
"soc_has_hp_sys",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_i2s0",
"soc_has_interrupt_core0",
"soc_has_intpri",
"soc_has_io_mux",
"soc_has_lp_ana",
"soc_has_lp_aon",
"soc_has_lp_apm",
"soc_has_lp_clkrst",
"soc_has_lpwr",
"soc_has_lp_io_mux",
"soc_has_lp_peri",
"soc_has_lp_tee",
"soc_has_lp_timer",
"soc_has_lp_wdt",
"soc_has_mem_monitor",
"soc_has_modem_lpcon",
"soc_has_modem_syscon",
"soc_has_pau",
"soc_has_pcr",
"soc_has_pmu",
"soc_has_rng",
"soc_has_sha",
"soc_has_slc",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_system",
"soc_has_systimer",
"soc_has_tee",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_usb_device",
"soc_has_dma_ch0",
"soc_has_dma_ch1",
"soc_has_bt",
"soc_has_flash",
"soc_has_lp_core",
"soc_has_sw_interrupt",
"soc_has_wifi",
"soc_has_mem2mem0",
"soc_has_mem2mem1",
"soc_has_mem2mem2",
"soc_has_mem2mem3",
"soc_has_mem2mem4",
"soc_has_mem2mem5",
"soc_has_mem2mem6",
"soc_has_mem2mem7",
"soc_has_mem2mem8",
"soc_has_mem2mem9",
"soc_has_mem2mem10",
"soc_has_mem2mem11",
"soc_has_psram",
"swd",
"rom_crc_le",
"rom_crc_be",
"rom_md5_bsd",
"bt_driver_supported",
"dma_driver_supported",
"ecc_driver_supported",
"gpio_driver_supported",
"i2c_master_driver_supported",
"interrupts_driver_supported",
"psram_driver_supported",
"rng_driver_supported",
"sha_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"timergroup_driver_supported",
"uart_driver_supported",
"wifi_driver_supported",
"i2c_master_i2c0",
"spi_master_spi2",
"spi_slave_spi2",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"bt_controller=\"npl\"",
"dma_kind=\"gdma\"",
"dma_supports_mem2mem",
"dma_separate_in_out_interrupts",
"dma_max_priority=\"5\"",
"dma_max_priority_is_set",
"dma_gdma_version=\"2\"",
"dma_gdma_version_is_set",
"ecc_zero_extend_writes",
"ecc_separate_jacobian_point_memory",
"ecc_has_memory_clock_gate",
"ecc_supports_enhanced_security",
"ecc_has_modular_arithmetic",
"ecc_has_point_addition",
"ecc_has_curve_p192",
"ecc_has_curve_p256",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"96\"",
"gpio_constant_1_input=\"64\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"100\"",
"gpio_output_signal_max=\"256\"",
"i2c_master_has_fsm_timeouts",
"i2c_master_has_hw_bus_clear",
"i2c_master_has_bus_timeout_enable",
"i2c_master_can_estimate_nack_reason",
"i2c_master_has_conf_update",
"i2c_master_has_reliable_fsm_reset",
"i2c_master_has_arbitration_en",
"i2c_master_has_tx_fifo_watermark",
"i2c_master_bus_timeout_is_exponential",
"i2c_master_max_bus_timeout=\"31\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"3\"",
"interrupt_controller=\"clic\"",
"psram_extmem_origin=\"1107296256\"",
"rng_apb_cycle_wait_num=\"16\"",
"sha_dma",
"soc_rc_fast_clk_default=\"17500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_osc_slow_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_pll_f20m",
"soc_has_clock_node_pll_f40m",
"soc_has_clock_node_pll_f48m",
"soc_has_clock_node_pll_f60m",
"soc_has_clock_node_pll_f80m",
"soc_has_clock_node_pll_f120m",
"soc_has_clock_node_pll_f160m",
"soc_has_clock_node_hp_root_clk",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_ahb_clk",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_xtal_d2_clk",
"soc_has_clock_node_lp_fast_clk",
"soc_has_clock_node_lp_slow_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_timg_wdt_clock",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_app_interrupts",
"spi_master_has_dma_segmented_transfer",
"spi_master_has_clk_pre_div",
"timergroup_timg_has_divcnt_rst",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"uart_peripheral_controls_mem_clk",
"wifi_has_wifi6",
"wifi_mac_version=\"3\"",
"wifi_csi_supported",
],
cfgs: &[
"cargo:rustc-cfg=esp32c61",
"cargo:rustc-cfg=riscv",
"cargo:rustc-cfg=single_core",
"cargo:rustc-cfg=soc_has_assist_debug",
"cargo:rustc-cfg=soc_has_clint",
"cargo:rustc-cfg=soc_has_cache",
"cargo:rustc-cfg=soc_has_dma",
"cargo:rustc-cfg=soc_has_ecc",
"cargo:rustc-cfg=soc_has_ecdsa",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_etm",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_hp_apm",
"cargo:rustc-cfg=soc_has_hp_sys",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_intpri",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_lp_ana",
"cargo:rustc-cfg=soc_has_lp_aon",
"cargo:rustc-cfg=soc_has_lp_apm",
"cargo:rustc-cfg=soc_has_lp_clkrst",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_lp_io_mux",
"cargo:rustc-cfg=soc_has_lp_peri",
"cargo:rustc-cfg=soc_has_lp_tee",
"cargo:rustc-cfg=soc_has_lp_timer",
"cargo:rustc-cfg=soc_has_lp_wdt",
"cargo:rustc-cfg=soc_has_mem_monitor",
"cargo:rustc-cfg=soc_has_modem_lpcon",
"cargo:rustc-cfg=soc_has_modem_syscon",
"cargo:rustc-cfg=soc_has_pau",
"cargo:rustc-cfg=soc_has_pcr",
"cargo:rustc-cfg=soc_has_pmu",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_slc",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_tee",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_usb_device",
"cargo:rustc-cfg=soc_has_dma_ch0",
"cargo:rustc-cfg=soc_has_dma_ch1",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_lp_core",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=soc_has_mem2mem0",
"cargo:rustc-cfg=soc_has_mem2mem1",
"cargo:rustc-cfg=soc_has_mem2mem2",
"cargo:rustc-cfg=soc_has_mem2mem3",
"cargo:rustc-cfg=soc_has_mem2mem4",
"cargo:rustc-cfg=soc_has_mem2mem5",
"cargo:rustc-cfg=soc_has_mem2mem6",
"cargo:rustc-cfg=soc_has_mem2mem7",
"cargo:rustc-cfg=soc_has_mem2mem8",
"cargo:rustc-cfg=soc_has_mem2mem9",
"cargo:rustc-cfg=soc_has_mem2mem10",
"cargo:rustc-cfg=soc_has_mem2mem11",
"cargo:rustc-cfg=soc_has_psram",
"cargo:rustc-cfg=swd",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=ecc_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=psram_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=bt_controller=\"npl\"",
"cargo:rustc-cfg=dma_kind=\"gdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_separate_in_out_interrupts",
"cargo:rustc-cfg=dma_max_priority=\"5\"",
"cargo:rustc-cfg=dma_max_priority_is_set",
"cargo:rustc-cfg=dma_gdma_version=\"2\"",
"cargo:rustc-cfg=dma_gdma_version_is_set",
"cargo:rustc-cfg=ecc_zero_extend_writes",
"cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
"cargo:rustc-cfg=ecc_has_memory_clock_gate",
"cargo:rustc-cfg=ecc_supports_enhanced_security",
"cargo:rustc-cfg=ecc_has_modular_arithmetic",
"cargo:rustc-cfg=ecc_has_point_addition",
"cargo:rustc-cfg=ecc_has_curve_p192",
"cargo:rustc-cfg=ecc_has_curve_p256",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"96\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"64\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"100\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
"cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
"cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
"cargo:rustc-cfg=i2c_master_has_conf_update",
"cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
"cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"3\"",
"cargo:rustc-cfg=interrupt_controller=\"clic\"",
"cargo:rustc-cfg=psram_extmem_origin=\"1107296256\"",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_f20m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f40m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f48m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f60m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f80m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f120m",
"cargo:rustc-cfg=soc_has_clock_node_pll_f160m",
"cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_app_interrupts",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_master_has_clk_pre_div",
"cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
"cargo:rustc-cfg=wifi_has_wifi6",
"cargo:rustc-cfg=wifi_mac_version=\"3\"",
"cargo:rustc-cfg=wifi_csi_supported",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x40800000..0x40850000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x4083EA70..0x4084EA70,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &[],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &[],
},
PinInfo {
pin: 3,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 4,
limitations: &["strapping", "jtag"],
},
PinInfo {
pin: 5,
limitations: &["jtag"],
},
PinInfo {
pin: 6,
limitations: &["jtag"],
},
PinInfo {
pin: 7,
limitations: &["strapping"],
},
PinInfo {
pin: 8,
limitations: &["strapping"],
},
PinInfo {
pin: 9,
limitations: &["strapping"],
},
PinInfo {
pin: 10,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 11,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 12,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 13,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 14,
limitations: &["spi_flash"],
},
PinInfo {
pin: 15,
limitations: &["spi_flash"],
},
PinInfo {
pin: 16,
limitations: &["spi_flash"],
},
PinInfo {
pin: 17,
limitations: &["spi_flash"],
},
PinInfo {
pin: 18,
limitations: &["spi_flash"],
},
PinInfo {
pin: 19,
limitations: &["spi_flash"],
},
PinInfo {
pin: 20,
limitations: &["spi_flash"],
},
PinInfo {
pin: 21,
limitations: &["spi_flash"],
},
PinInfo {
pin: 22,
limitations: &[],
},
PinInfo {
pin: 23,
limitations: &[],
},
PinInfo {
pin: 24,
limitations: &[],
},
PinInfo {
pin: 25,
limitations: &[],
},
PinInfo {
pin: 26,
limitations: &[],
},
PinInfo {
pin: 27,
limitations: &[],
},
PinInfo {
pin: 28,
limitations: &[],
},
PinInfo {
pin: 29,
limitations: &[],
},
],
},
Self::Esp32h2 => Config {
architecture: "riscv",
target: "riscv32imac-unknown-none-elf",
symbols: &[
"esp32h2",
"riscv",
"single_core",
"soc_has_aes",
"soc_has_apb_saradc",
"soc_has_assist_debug",
"soc_has_dma",
"soc_has_ds",
"soc_has_ecc",
"soc_has_efuse",
"soc_has_gpio",
"soc_has_gpio_sd",
"soc_has_hmac",
"soc_has_hp_apm",
"soc_has_hp_sys",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_i2c1",
"soc_has_i2s0",
"soc_has_ieee802154",
"soc_has_interrupt_core0",
"soc_has_intpri",
"soc_has_io_mux",
"soc_has_ledc",
"soc_has_lpwr",
"soc_has_lp_ana",
"soc_has_lp_aon",
"soc_has_lp_apm",
"soc_has_lp_apm0",
"soc_has_lp_clkrst",
"soc_has_lp_peri",
"soc_has_lp_timer",
"soc_has_lp_wdt",
"soc_has_mcpwm0",
"soc_has_mem_monitor",
"soc_has_modem_lpcon",
"soc_has_modem_syscon",
"soc_has_otp_debug",
"soc_has_parl_io",
"soc_has_pau",
"soc_has_pcnt",
"soc_has_pcr",
"soc_has_plic_mx",
"soc_has_pmu",
"soc_has_rmt",
"soc_has_rng",
"soc_has_rsa",
"soc_has_sha",
"soc_has_etm",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_system",
"soc_has_systimer",
"soc_has_tee",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_trace0",
"soc_has_twai0",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_uhci0",
"soc_has_usb_device",
"soc_has_dma_ch0",
"soc_has_dma_ch1",
"soc_has_dma_ch2",
"soc_has_adc1",
"soc_has_bt",
"soc_has_flash",
"soc_has_gpio_dedicated",
"soc_has_sw_interrupt",
"soc_has_mem2mem0",
"soc_has_mem2mem1",
"soc_has_mem2mem2",
"soc_has_mem2mem3",
"soc_has_mem2mem4",
"soc_has_mem2mem5",
"soc_has_mem2mem6",
"soc_has_mem2mem7",
"soc_has_mem2mem8",
"phy",
"swd",
"rom_crc_le",
"rom_crc_be",
"rom_md5_bsd",
"adc_driver_supported",
"aes_driver_supported",
"assist_debug_driver_supported",
"bt_driver_supported",
"dedicated_gpio_driver_supported",
"dma_driver_supported",
"ecc_driver_supported",
"etm_driver_supported",
"gpio_driver_supported",
"hmac_driver_supported",
"i2c_master_driver_supported",
"i2s_driver_supported",
"ieee802154_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"ledc_driver_supported",
"mcpwm_driver_supported",
"parl_io_driver_supported",
"pcnt_driver_supported",
"phy_driver_supported",
"rmt_driver_supported",
"rng_driver_supported",
"rsa_driver_supported",
"lp_timer_driver_supported",
"sha_driver_supported",
"sleep_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"temp_sensor_driver_supported",
"timergroup_driver_supported",
"twai_driver_supported",
"uart_driver_supported",
"uhci_driver_supported",
"usb_serial_jtag_driver_supported",
"adc_adc1",
"i2c_master_i2c0",
"i2c_master_i2c1",
"spi_master_spi2",
"spi_slave_spi2",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"aes_dma",
"aes_dma_mode_ecb",
"aes_dma_mode_cbc",
"aes_dma_mode_ofb",
"aes_dma_mode_ctr",
"aes_dma_mode_cfb8",
"aes_dma_mode_cfb128",
"aes_has_split_text_registers",
"assist_debug_has_sp_monitor",
"assist_debug_has_region_monitor",
"bt_controller=\"npl\"",
"dma_kind=\"gdma\"",
"dma_supports_mem2mem",
"dma_separate_in_out_interrupts",
"dma_max_priority=\"5\"",
"dma_max_priority_is_set",
"dma_gdma_version=\"1\"",
"dma_gdma_version_is_set",
"ecc_zero_extend_writes",
"ecc_separate_jacobian_point_memory",
"ecc_has_memory_clock_gate",
"ecc_supports_enhanced_security",
"ecc_has_modular_arithmetic",
"ecc_has_point_addition",
"ecc_has_curve_p192",
"ecc_has_curve_p256",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"60\"",
"gpio_constant_1_input=\"56\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"124\"",
"gpio_output_signal_max=\"128\"",
"i2c_master_has_fsm_timeouts",
"i2c_master_has_hw_bus_clear",
"i2c_master_has_bus_timeout_enable",
"i2c_master_can_estimate_nack_reason",
"i2c_master_has_conf_update",
"i2c_master_has_reliable_fsm_reset",
"i2c_master_has_arbitration_en",
"i2c_master_has_tx_fifo_watermark",
"i2c_master_bus_timeout_is_exponential",
"i2c_master_max_bus_timeout=\"31\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"2\"",
"interrupt_controller=\"plic\"",
"parl_io_version=\"2\"",
"rmt_ram_start=\"1610642432\"",
"rmt_channel_ram_size=\"48\"",
"rmt_has_tx_immediate_stop",
"rmt_has_tx_loop_count",
"rmt_has_tx_loop_auto_stop",
"rmt_has_tx_carrier_data_only",
"rmt_has_tx_sync",
"rmt_has_rx_wrap",
"rmt_has_rx_demodulation",
"rmt_supports_xtal_clock",
"rmt_supports_rcfast_clock",
"rng_apb_cycle_wait_num=\"16\"",
"rng_trng_supported",
"rsa_size_increment=\"32\"",
"rsa_memory_size_bytes=\"384\"",
"sha_dma",
"sleep_light_sleep",
"sleep_deep_sleep",
"soc_cpu_has_csr_pc",
"soc_cpu_csr_prv_mode=\"3088\"",
"soc_cpu_csr_prv_mode_is_set",
"soc_rc_fast_clk_default=\"8500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_f96m_clk",
"soc_has_clock_node_pll_f64m_clk",
"soc_has_clock_node_pll_f48m_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_osc_slow_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_pll_lp_clk",
"soc_has_clock_node_hp_root_clk",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_ahb_clk",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_xtal_d2_clk",
"soc_has_clock_node_lp_fast_clk",
"soc_has_clock_node_lp_slow_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"soc_has_clock_node_rmt_sclk",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_timg_wdt_clock",
"soc_has_clock_node_mcpwm_function_clock",
"soc_has_clock_node_parl_io_rx_clock",
"soc_has_clock_node_parl_io_tx_clock",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_app_interrupts",
"spi_master_has_dma_segmented_transfer",
"spi_slave_supports_dma",
"timergroup_timg_has_divcnt_rst",
"timergroup_rc_fast_calibration_divider",
"timergroup_rc_fast_calibration_tick_enable",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"uart_peripheral_controls_mem_clk",
],
cfgs: &[
"cargo:rustc-cfg=esp32h2",
"cargo:rustc-cfg=riscv",
"cargo:rustc-cfg=single_core",
"cargo:rustc-cfg=soc_has_aes",
"cargo:rustc-cfg=soc_has_apb_saradc",
"cargo:rustc-cfg=soc_has_assist_debug",
"cargo:rustc-cfg=soc_has_dma",
"cargo:rustc-cfg=soc_has_ds",
"cargo:rustc-cfg=soc_has_ecc",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_gpio_sd",
"cargo:rustc-cfg=soc_has_hmac",
"cargo:rustc-cfg=soc_has_hp_apm",
"cargo:rustc-cfg=soc_has_hp_sys",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2c1",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_ieee802154",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_intpri",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_ledc",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_lp_ana",
"cargo:rustc-cfg=soc_has_lp_aon",
"cargo:rustc-cfg=soc_has_lp_apm",
"cargo:rustc-cfg=soc_has_lp_apm0",
"cargo:rustc-cfg=soc_has_lp_clkrst",
"cargo:rustc-cfg=soc_has_lp_peri",
"cargo:rustc-cfg=soc_has_lp_timer",
"cargo:rustc-cfg=soc_has_lp_wdt",
"cargo:rustc-cfg=soc_has_mcpwm0",
"cargo:rustc-cfg=soc_has_mem_monitor",
"cargo:rustc-cfg=soc_has_modem_lpcon",
"cargo:rustc-cfg=soc_has_modem_syscon",
"cargo:rustc-cfg=soc_has_otp_debug",
"cargo:rustc-cfg=soc_has_parl_io",
"cargo:rustc-cfg=soc_has_pau",
"cargo:rustc-cfg=soc_has_pcnt",
"cargo:rustc-cfg=soc_has_pcr",
"cargo:rustc-cfg=soc_has_plic_mx",
"cargo:rustc-cfg=soc_has_pmu",
"cargo:rustc-cfg=soc_has_rmt",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_rsa",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_etm",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_tee",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_trace0",
"cargo:rustc-cfg=soc_has_twai0",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_uhci0",
"cargo:rustc-cfg=soc_has_usb_device",
"cargo:rustc-cfg=soc_has_dma_ch0",
"cargo:rustc-cfg=soc_has_dma_ch1",
"cargo:rustc-cfg=soc_has_dma_ch2",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_gpio_dedicated",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_mem2mem0",
"cargo:rustc-cfg=soc_has_mem2mem1",
"cargo:rustc-cfg=soc_has_mem2mem2",
"cargo:rustc-cfg=soc_has_mem2mem3",
"cargo:rustc-cfg=soc_has_mem2mem4",
"cargo:rustc-cfg=soc_has_mem2mem5",
"cargo:rustc-cfg=soc_has_mem2mem6",
"cargo:rustc-cfg=soc_has_mem2mem7",
"cargo:rustc-cfg=soc_has_mem2mem8",
"cargo:rustc-cfg=phy",
"cargo:rustc-cfg=swd",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=aes_driver_supported",
"cargo:rustc-cfg=assist_debug_driver_supported",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=dedicated_gpio_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=ecc_driver_supported",
"cargo:rustc-cfg=etm_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=hmac_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=i2s_driver_supported",
"cargo:rustc-cfg=ieee802154_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=ledc_driver_supported",
"cargo:rustc-cfg=mcpwm_driver_supported",
"cargo:rustc-cfg=parl_io_driver_supported",
"cargo:rustc-cfg=pcnt_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=rmt_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=rsa_driver_supported",
"cargo:rustc-cfg=lp_timer_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=sleep_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=temp_sensor_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=twai_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=uhci_driver_supported",
"cargo:rustc-cfg=usb_serial_jtag_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=i2c_master_i2c1",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=aes_dma",
"cargo:rustc-cfg=aes_dma_mode_ecb",
"cargo:rustc-cfg=aes_dma_mode_cbc",
"cargo:rustc-cfg=aes_dma_mode_ofb",
"cargo:rustc-cfg=aes_dma_mode_ctr",
"cargo:rustc-cfg=aes_dma_mode_cfb8",
"cargo:rustc-cfg=aes_dma_mode_cfb128",
"cargo:rustc-cfg=aes_has_split_text_registers",
"cargo:rustc-cfg=assist_debug_has_sp_monitor",
"cargo:rustc-cfg=assist_debug_has_region_monitor",
"cargo:rustc-cfg=bt_controller=\"npl\"",
"cargo:rustc-cfg=dma_kind=\"gdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_separate_in_out_interrupts",
"cargo:rustc-cfg=dma_max_priority=\"5\"",
"cargo:rustc-cfg=dma_max_priority_is_set",
"cargo:rustc-cfg=dma_gdma_version=\"1\"",
"cargo:rustc-cfg=dma_gdma_version_is_set",
"cargo:rustc-cfg=ecc_zero_extend_writes",
"cargo:rustc-cfg=ecc_separate_jacobian_point_memory",
"cargo:rustc-cfg=ecc_has_memory_clock_gate",
"cargo:rustc-cfg=ecc_supports_enhanced_security",
"cargo:rustc-cfg=ecc_has_modular_arithmetic",
"cargo:rustc-cfg=ecc_has_point_addition",
"cargo:rustc-cfg=ecc_has_curve_p192",
"cargo:rustc-cfg=ecc_has_curve_p256",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"124\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"128\"",
"cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
"cargo:rustc-cfg=i2c_master_has_hw_bus_clear",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
"cargo:rustc-cfg=i2c_master_has_conf_update",
"cargo:rustc-cfg=i2c_master_has_reliable_fsm_reset",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
"cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"2\"",
"cargo:rustc-cfg=interrupt_controller=\"plic\"",
"cargo:rustc-cfg=parl_io_version=\"2\"",
"cargo:rustc-cfg=rmt_ram_start=\"1610642432\"",
"cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
"cargo:rustc-cfg=rmt_has_tx_immediate_stop",
"cargo:rustc-cfg=rmt_has_tx_loop_count",
"cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
"cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
"cargo:rustc-cfg=rmt_has_tx_sync",
"cargo:rustc-cfg=rmt_has_rx_wrap",
"cargo:rustc-cfg=rmt_has_rx_demodulation",
"cargo:rustc-cfg=rmt_supports_xtal_clock",
"cargo:rustc-cfg=rmt_supports_rcfast_clock",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rng_trng_supported",
"cargo:rustc-cfg=rsa_size_increment=\"32\"",
"cargo:rustc-cfg=rsa_memory_size_bytes=\"384\"",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=sleep_light_sleep",
"cargo:rustc-cfg=sleep_deep_sleep",
"cargo:rustc-cfg=soc_cpu_has_csr_pc",
"cargo:rustc-cfg=soc_cpu_csr_prv_mode=\"3088\"",
"cargo:rustc-cfg=soc_cpu_csr_prv_mode_is_set",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"8500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_f96m_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_f64m_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_f48m_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_osc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_lp_clk",
"cargo:rustc-cfg=soc_has_clock_node_hp_root_clk",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_ahb_clk",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal_d2_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_lp_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_wdt_clock",
"cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_parl_io_rx_clock",
"cargo:rustc-cfg=soc_has_clock_node_parl_io_tx_clock",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_app_interrupts",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_slave_supports_dma",
"cargo:rustc-cfg=timergroup_timg_has_divcnt_rst",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_divider",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_tick_enable",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=uart_peripheral_controls_mem_clk",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x40800000..0x40850000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x4083EFD0..0x4084FEE0,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &[],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &["jtag"],
},
PinInfo {
pin: 3,
limitations: &["jtag"],
},
PinInfo {
pin: 4,
limitations: &["jtag"],
},
PinInfo {
pin: 5,
limitations: &["jtag"],
},
PinInfo {
pin: 6,
limitations: &["spi_flash"],
},
PinInfo {
pin: 7,
limitations: &["spi_flash"],
},
PinInfo {
pin: 8,
limitations: &["strapping"],
},
PinInfo {
pin: 9,
limitations: &["strapping"],
},
PinInfo {
pin: 10,
limitations: &[],
},
PinInfo {
pin: 11,
limitations: &[],
},
PinInfo {
pin: 12,
limitations: &[],
},
PinInfo {
pin: 13,
limitations: &[],
},
PinInfo {
pin: 14,
limitations: &[],
},
PinInfo {
pin: 22,
limitations: &[],
},
PinInfo {
pin: 23,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 24,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 25,
limitations: &["strapping"],
},
PinInfo {
pin: 26,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 27,
limitations: &["usb_jtag"],
},
],
},
Self::Esp32s2 => Config {
architecture: "xtensa",
target: "xtensa-esp32s2-none-elf",
symbols: &[
"esp32s2",
"xtensa",
"single_core",
"soc_has_aes",
"soc_has_apb_saradc",
"soc_has_dedicated_gpio",
"soc_has_ds",
"soc_has_efuse",
"soc_has_extmem",
"soc_has_fe",
"soc_has_fe2",
"soc_has_gpio",
"soc_has_gpio_sd",
"soc_has_hmac",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_i2c1",
"soc_has_i2s0",
"soc_has_interrupt_core0",
"soc_has_io_mux",
"soc_has_ledc",
"soc_has_nrx",
"soc_has_pcnt",
"soc_has_pms",
"soc_has_rmt",
"soc_has_rng",
"soc_has_rsa",
"soc_has_lpwr",
"soc_has_rtc_i2c",
"soc_has_rtc_io",
"soc_has_sens",
"soc_has_sha",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_spi3",
"soc_has_syscon",
"soc_has_system",
"soc_has_systimer",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_twai0",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_uhci0",
"soc_has_usb0",
"soc_has_usb_wrap",
"soc_has_xts_aes",
"soc_has_wifi",
"soc_has_dma_spi2",
"soc_has_dma_spi3",
"soc_has_dma_i2s0",
"soc_has_dma_crypto",
"soc_has_dma_copy",
"soc_has_adc1",
"soc_has_adc2",
"soc_has_dac1",
"soc_has_dac2",
"soc_has_flash",
"soc_has_gpio_dedicated",
"soc_has_psram",
"soc_has_sw_interrupt",
"soc_has_ulp_riscv_core",
"phy",
"ulp_riscv_core",
"rom_crc_le",
"rom_md5_bsd",
"pm_support_ext0_wakeup",
"pm_support_ext1_wakeup",
"pm_support_touch_sensor_wakeup",
"pm_support_wifi_wakeup",
"uart_support_wakeup_int",
"ulp_supported",
"riscv_coproc_supported",
"adc_driver_supported",
"aes_driver_supported",
"dac_driver_supported",
"dedicated_gpio_driver_supported",
"dma_driver_supported",
"gpio_driver_supported",
"hmac_driver_supported",
"i2c_master_driver_supported",
"i2s_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"ledc_driver_supported",
"pcnt_driver_supported",
"phy_driver_supported",
"psram_driver_supported",
"rmt_driver_supported",
"rng_driver_supported",
"rsa_driver_supported",
"lp_timer_driver_supported",
"sha_driver_supported",
"sleep_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"temp_sensor_driver_supported",
"timergroup_driver_supported",
"twai_driver_supported",
"uart_driver_supported",
"ulp_fsm_driver_supported",
"ulp_riscv_driver_supported",
"usb_otg_driver_supported",
"wifi_driver_supported",
"adc_adc1",
"adc_adc2",
"dac_dac1",
"dac_dac2",
"i2c_master_i2c0",
"i2c_master_i2c1",
"spi_master_spi2",
"spi_master_spi3",
"spi_slave_spi2",
"spi_slave_spi3",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"aes_dma",
"aes_dma_mode_ecb",
"aes_dma_mode_cbc",
"aes_dma_mode_ofb",
"aes_dma_mode_ctr",
"aes_dma_mode_cfb8",
"aes_dma_mode_cfb128",
"aes_dma_mode_gcm",
"aes_has_split_text_registers",
"aes_endianness_configurable",
"dedicated_gpio_needs_initialization",
"dma_kind=\"pdma\"",
"dma_supports_mem2mem",
"dma_can_access_psram",
"dma_ext_mem_configurable_block_size",
"gpio_has_bank_1",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"60\"",
"gpio_constant_1_input=\"56\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"242\"",
"gpio_output_signal_max=\"256\"",
"i2c_master_has_bus_timeout_enable",
"i2c_master_separate_filter_config_registers",
"i2c_master_has_arbitration_en",
"i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
"i2c_master_i2c0_data_register_ahb_address_is_set",
"i2c_master_max_bus_timeout=\"16777215\"",
"i2c_master_ll_intr_mask=\"131071\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"3\"",
"interrupt_controller=\"xtensa\"",
"psram_extmem_origin=\"1062207488\"",
"rmt_ram_start=\"1061250048\"",
"rmt_channel_ram_size=\"64\"",
"rmt_has_tx_immediate_stop",
"rmt_has_tx_loop_count",
"rmt_has_tx_carrier_data_only",
"rmt_has_tx_sync",
"rmt_has_rx_demodulation",
"rmt_has_per_channel_clock",
"rmt_supports_reftick_clock",
"rmt_supports_apb_clock",
"rng_apb_cycle_wait_num=\"16\"",
"rng_trng_supported",
"rsa_size_increment=\"32\"",
"rsa_memory_size_bytes=\"512\"",
"sha_dma",
"sleep_light_sleep",
"sleep_deep_sleep",
"soc_rc_fast_clk_default=\"8500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_apll_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_cpu_pll_div_in",
"soc_has_clock_node_cpu_pll_div",
"soc_has_clock_node_system_pre_div_in",
"soc_has_clock_node_system_pre_div",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_apb_clk_cpu_div2",
"soc_has_clock_node_apb_clk_80m",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_ref_tick_xtal",
"soc_has_clock_node_ref_tick_ck8m",
"soc_has_clock_node_ref_tick",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_rc_fast_div_clk",
"soc_has_clock_node_xtal_div_clk",
"soc_has_clock_node_rtc_slow_clk",
"soc_has_clock_node_rtc_fast_clk",
"soc_has_clock_node_uart_mem_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"soc_has_clock_node_uart_mem_clock",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_octal",
"spi_master_has_dma_segmented_transfer",
"spi_slave_supports_dma",
"timergroup_timg_has_timer1",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"wifi_mac_version=\"1\"",
"wifi_csi_supported",
],
cfgs: &[
"cargo:rustc-cfg=esp32s2",
"cargo:rustc-cfg=xtensa",
"cargo:rustc-cfg=single_core",
"cargo:rustc-cfg=soc_has_aes",
"cargo:rustc-cfg=soc_has_apb_saradc",
"cargo:rustc-cfg=soc_has_dedicated_gpio",
"cargo:rustc-cfg=soc_has_ds",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_extmem",
"cargo:rustc-cfg=soc_has_fe",
"cargo:rustc-cfg=soc_has_fe2",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_gpio_sd",
"cargo:rustc-cfg=soc_has_hmac",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2c1",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_ledc",
"cargo:rustc-cfg=soc_has_nrx",
"cargo:rustc-cfg=soc_has_pcnt",
"cargo:rustc-cfg=soc_has_pms",
"cargo:rustc-cfg=soc_has_rmt",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_rsa",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_rtc_i2c",
"cargo:rustc-cfg=soc_has_rtc_io",
"cargo:rustc-cfg=soc_has_sens",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_spi3",
"cargo:rustc-cfg=soc_has_syscon",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_twai0",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_uhci0",
"cargo:rustc-cfg=soc_has_usb0",
"cargo:rustc-cfg=soc_has_usb_wrap",
"cargo:rustc-cfg=soc_has_xts_aes",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=soc_has_dma_spi2",
"cargo:rustc-cfg=soc_has_dma_spi3",
"cargo:rustc-cfg=soc_has_dma_i2s0",
"cargo:rustc-cfg=soc_has_dma_crypto",
"cargo:rustc-cfg=soc_has_dma_copy",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_adc2",
"cargo:rustc-cfg=soc_has_dac1",
"cargo:rustc-cfg=soc_has_dac2",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_gpio_dedicated",
"cargo:rustc-cfg=soc_has_psram",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_ulp_riscv_core",
"cargo:rustc-cfg=phy",
"cargo:rustc-cfg=ulp_riscv_core",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=pm_support_ext0_wakeup",
"cargo:rustc-cfg=pm_support_ext1_wakeup",
"cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
"cargo:rustc-cfg=pm_support_wifi_wakeup",
"cargo:rustc-cfg=uart_support_wakeup_int",
"cargo:rustc-cfg=ulp_supported",
"cargo:rustc-cfg=riscv_coproc_supported",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=aes_driver_supported",
"cargo:rustc-cfg=dac_driver_supported",
"cargo:rustc-cfg=dedicated_gpio_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=hmac_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=i2s_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=ledc_driver_supported",
"cargo:rustc-cfg=pcnt_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=psram_driver_supported",
"cargo:rustc-cfg=rmt_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=rsa_driver_supported",
"cargo:rustc-cfg=lp_timer_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=sleep_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=temp_sensor_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=twai_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=ulp_fsm_driver_supported",
"cargo:rustc-cfg=ulp_riscv_driver_supported",
"cargo:rustc-cfg=usb_otg_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=adc_adc2",
"cargo:rustc-cfg=dac_dac1",
"cargo:rustc-cfg=dac_dac2",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=i2c_master_i2c1",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_master_spi3",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=spi_slave_spi3",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=aes_dma",
"cargo:rustc-cfg=aes_dma_mode_ecb",
"cargo:rustc-cfg=aes_dma_mode_cbc",
"cargo:rustc-cfg=aes_dma_mode_ofb",
"cargo:rustc-cfg=aes_dma_mode_ctr",
"cargo:rustc-cfg=aes_dma_mode_cfb8",
"cargo:rustc-cfg=aes_dma_mode_cfb128",
"cargo:rustc-cfg=aes_dma_mode_gcm",
"cargo:rustc-cfg=aes_has_split_text_registers",
"cargo:rustc-cfg=aes_endianness_configurable",
"cargo:rustc-cfg=dedicated_gpio_needs_initialization",
"cargo:rustc-cfg=dma_kind=\"pdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_can_access_psram",
"cargo:rustc-cfg=dma_ext_mem_configurable_block_size",
"cargo:rustc-cfg=gpio_has_bank_1",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"242\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_separate_filter_config_registers",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address=\"1610690588\"",
"cargo:rustc-cfg=i2c_master_i2c0_data_register_ahb_address_is_set",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"16777215\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"131071\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"3\"",
"cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
"cargo:rustc-cfg=psram_extmem_origin=\"1062207488\"",
"cargo:rustc-cfg=rmt_ram_start=\"1061250048\"",
"cargo:rustc-cfg=rmt_channel_ram_size=\"64\"",
"cargo:rustc-cfg=rmt_has_tx_immediate_stop",
"cargo:rustc-cfg=rmt_has_tx_loop_count",
"cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
"cargo:rustc-cfg=rmt_has_tx_sync",
"cargo:rustc-cfg=rmt_has_rx_demodulation",
"cargo:rustc-cfg=rmt_has_per_channel_clock",
"cargo:rustc-cfg=rmt_supports_reftick_clock",
"cargo:rustc-cfg=rmt_supports_apb_clock",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rng_trng_supported",
"cargo:rustc-cfg=rsa_size_increment=\"32\"",
"cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=sleep_light_sleep",
"cargo:rustc-cfg=sleep_deep_sleep",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"8500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_apll_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_in",
"cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk_cpu_div2",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk_80m",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick_xtal",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick_ck8m",
"cargo:rustc-cfg=soc_has_clock_node_ref_tick",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_octal",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_slave_supports_dma",
"cargo:rustc-cfg=timergroup_timg_has_timer1",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=wifi_mac_version=\"1\"",
"cargo:rustc-cfg=wifi_csi_supported",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x3FFB0000..0x40000000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x3FFDE000..0x40000000,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &["strapping"],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &[],
},
PinInfo {
pin: 3,
limitations: &[],
},
PinInfo {
pin: 4,
limitations: &[],
},
PinInfo {
pin: 5,
limitations: &[],
},
PinInfo {
pin: 6,
limitations: &[],
},
PinInfo {
pin: 7,
limitations: &[],
},
PinInfo {
pin: 8,
limitations: &[],
},
PinInfo {
pin: 9,
limitations: &[],
},
PinInfo {
pin: 10,
limitations: &[],
},
PinInfo {
pin: 11,
limitations: &[],
},
PinInfo {
pin: 12,
limitations: &[],
},
PinInfo {
pin: 13,
limitations: &[],
},
PinInfo {
pin: 14,
limitations: &[],
},
PinInfo {
pin: 15,
limitations: &[],
},
PinInfo {
pin: 16,
limitations: &[],
},
PinInfo {
pin: 17,
limitations: &[],
},
PinInfo {
pin: 18,
limitations: &[],
},
PinInfo {
pin: 19,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 20,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 21,
limitations: &[],
},
PinInfo {
pin: 26,
limitations: &["spi_psram"],
},
PinInfo {
pin: 27,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 28,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 29,
limitations: &["spi_flash"],
},
PinInfo {
pin: 30,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 31,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 32,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 33,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 34,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 35,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 36,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 37,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 38,
limitations: &[],
},
PinInfo {
pin: 39,
limitations: &["jtag"],
},
PinInfo {
pin: 40,
limitations: &["jtag"],
},
PinInfo {
pin: 41,
limitations: &["jtag"],
},
PinInfo {
pin: 42,
limitations: &["jtag"],
},
PinInfo {
pin: 43,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 44,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 45,
limitations: &["strapping"],
},
PinInfo {
pin: 46,
limitations: &["strapping"],
},
],
},
Self::Esp32s3 => Config {
architecture: "xtensa",
target: "xtensa-esp32s3-none-elf",
symbols: &[
"esp32s3",
"xtensa",
"multi_core",
"soc_has_aes",
"soc_has_apb_ctrl",
"soc_has_apb_saradc",
"soc_has_assist_debug",
"soc_has_dma",
"soc_has_ds",
"soc_has_efuse",
"soc_has_extmem",
"soc_has_gpio",
"soc_has_gpio_sd",
"soc_has_hmac",
"soc_has_i2c_ana_mst",
"soc_has_i2c0",
"soc_has_i2c1",
"soc_has_i2s0",
"soc_has_i2s1",
"soc_has_interrupt_core0",
"soc_has_interrupt_core1",
"soc_has_io_mux",
"soc_has_lcd_cam",
"soc_has_ledc",
"soc_has_lpwr",
"soc_has_mcpwm0",
"soc_has_mcpwm1",
"soc_has_pcnt",
"soc_has_peri_backup",
"soc_has_rmt",
"soc_has_rng",
"soc_has_rsa",
"soc_has_rtc_cntl",
"soc_has_rtc_i2c",
"soc_has_rtc_io",
"soc_has_sdhost",
"soc_has_sens",
"soc_has_sensitive",
"soc_has_sha",
"soc_has_spi0",
"soc_has_spi1",
"soc_has_spi2",
"soc_has_spi3",
"soc_has_system",
"soc_has_systimer",
"soc_has_timg0",
"soc_has_timg1",
"soc_has_twai0",
"soc_has_uart0",
"soc_has_uart1",
"soc_has_uart2",
"soc_has_uhci0",
"soc_has_usb0",
"soc_has_usb_device",
"soc_has_usb_wrap",
"soc_has_wcl",
"soc_has_xts_aes",
"soc_has_dma_ch0",
"soc_has_dma_ch1",
"soc_has_dma_ch2",
"soc_has_dma_ch3",
"soc_has_dma_ch4",
"soc_has_adc1",
"soc_has_adc2",
"soc_has_bt",
"soc_has_cpu_ctrl",
"soc_has_flash",
"soc_has_gpio_dedicated",
"soc_has_psram",
"soc_has_sw_interrupt",
"soc_has_ulp_riscv_core",
"soc_has_wifi",
"phy",
"swd",
"ulp_riscv_core",
"rom_crc_le",
"rom_crc_be",
"rom_md5_bsd",
"pm_support_ext0_wakeup",
"pm_support_ext1_wakeup",
"pm_support_touch_sensor_wakeup",
"pm_support_wifi_wakeup",
"pm_support_bt_wakeup",
"uart_support_wakeup_int",
"ulp_supported",
"riscv_coproc_supported",
"adc_driver_supported",
"aes_driver_supported",
"assist_debug_driver_supported",
"bt_driver_supported",
"camera_driver_supported",
"dedicated_gpio_driver_supported",
"dma_driver_supported",
"gpio_driver_supported",
"hmac_driver_supported",
"i2c_master_driver_supported",
"i2s_driver_supported",
"interrupts_driver_supported",
"io_mux_driver_supported",
"ledc_driver_supported",
"mcpwm_driver_supported",
"pcnt_driver_supported",
"phy_driver_supported",
"psram_driver_supported",
"rgb_display_driver_supported",
"rmt_driver_supported",
"rng_driver_supported",
"rsa_driver_supported",
"lp_timer_driver_supported",
"sd_host_driver_supported",
"sha_driver_supported",
"sleep_driver_supported",
"soc_driver_supported",
"spi_master_driver_supported",
"spi_slave_driver_supported",
"systimer_driver_supported",
"temp_sensor_driver_supported",
"timergroup_driver_supported",
"twai_driver_supported",
"uart_driver_supported",
"uhci_driver_supported",
"ulp_fsm_driver_supported",
"ulp_riscv_driver_supported",
"usb_otg_driver_supported",
"usb_serial_jtag_driver_supported",
"wifi_driver_supported",
"adc_adc1",
"adc_adc2",
"i2c_master_i2c0",
"i2c_master_i2c1",
"spi_master_spi2",
"spi_master_spi3",
"spi_slave_spi2",
"spi_slave_spi3",
"timergroup_timg0",
"timergroup_timg1",
"uart_uart0",
"uart_uart1",
"uart_uart2",
"aes_dma",
"aes_dma_mode_ecb",
"aes_dma_mode_cbc",
"aes_dma_mode_ofb",
"aes_dma_mode_ctr",
"aes_dma_mode_cfb8",
"aes_dma_mode_cfb128",
"aes_has_split_text_registers",
"assist_debug_has_region_monitor",
"bt_controller=\"btdm\"",
"dedicated_gpio_needs_initialization",
"dma_kind=\"gdma\"",
"dma_supports_mem2mem",
"dma_can_access_psram",
"dma_ext_mem_configurable_block_size",
"dma_separate_in_out_interrupts",
"dma_max_priority=\"9\"",
"dma_max_priority_is_set",
"dma_gdma_version=\"1\"",
"dma_gdma_version_is_set",
"gpio_has_bank_1",
"gpio_gpio_function=\"1\"",
"gpio_constant_0_input=\"60\"",
"gpio_constant_1_input=\"56\"",
"gpio_func_in_sel_offset=\"0\"",
"gpio_input_signal_max=\"255\"",
"gpio_output_signal_max=\"256\"",
"i2c_master_has_fsm_timeouts",
"i2c_master_has_bus_timeout_enable",
"i2c_master_can_estimate_nack_reason",
"i2c_master_has_conf_update",
"i2c_master_has_arbitration_en",
"i2c_master_has_tx_fifo_watermark",
"i2c_master_bus_timeout_is_exponential",
"i2c_master_max_bus_timeout=\"31\"",
"i2c_master_ll_intr_mask=\"262143\"",
"i2c_master_fifo_size=\"32\"",
"interrupts_status_registers=\"4\"",
"interrupt_controller=\"xtensa\"",
"phy_combo_module",
"phy_backed_up_digital_register_count=\"21\"",
"phy_backed_up_digital_register_count_is_set",
"psram_octal_spi",
"psram_extmem_origin=\"1006632960\"",
"rmt_ram_start=\"1610704896\"",
"rmt_channel_ram_size=\"48\"",
"rmt_has_tx_immediate_stop",
"rmt_has_tx_loop_count",
"rmt_has_tx_loop_auto_stop",
"rmt_has_tx_carrier_data_only",
"rmt_has_tx_sync",
"rmt_has_rx_wrap",
"rmt_has_rx_demodulation",
"rmt_has_dma",
"rmt_supports_none_clock",
"rmt_supports_apb_clock",
"rmt_supports_rcfast_clock",
"rmt_supports_xtal_clock",
"rng_apb_cycle_wait_num=\"16\"",
"rng_trng_supported",
"rsa_size_increment=\"32\"",
"rsa_memory_size_bytes=\"512\"",
"sha_dma",
"sleep_light_sleep",
"sleep_deep_sleep",
"soc_multi_core_enabled",
"soc_rc_fast_clk_default=\"17500000\"",
"soc_rc_fast_clk_default_is_set",
"soc_has_clock_node_xtal_clk",
"soc_has_clock_node_pll_clk",
"soc_has_clock_node_rc_fast_clk",
"soc_has_clock_node_xtal32k_clk",
"soc_has_clock_node_rc_slow_clk",
"soc_has_clock_node_rc_fast_div_clk",
"soc_has_clock_node_system_pre_div_in",
"soc_has_clock_node_system_pre_div",
"soc_has_clock_node_cpu_pll_div_out",
"soc_has_clock_node_cpu_clk",
"soc_has_clock_node_pll_d2",
"soc_has_clock_node_pll_160m",
"soc_has_clock_node_apb_80m",
"soc_has_clock_node_apb_clk",
"soc_has_clock_node_crypto_pwm_clk",
"soc_has_clock_node_rc_fast_clk_div_n",
"soc_has_clock_node_xtal_div_clk",
"soc_has_clock_node_rtc_slow_clk",
"soc_has_clock_node_rtc_fast_clk",
"soc_has_clock_node_low_power_clk",
"soc_has_clock_node_uart_mem_clk",
"soc_has_clock_node_timg_calibration_clock",
"soc_has_clock_node_mcpwm_function_clock",
"soc_has_clock_node_timg_function_clock",
"soc_has_clock_node_rmt_sclk",
"soc_has_clock_node_uart_function_clock",
"soc_has_clock_node_uart_baud_rate_generator",
"soc_has_clock_node_uart_mem_clock",
"has_dram_region",
"has_dram2_uninit_region",
"spi_master_supports_dma",
"spi_master_has_octal",
"spi_master_has_app_interrupts",
"spi_master_has_dma_segmented_transfer",
"spi_slave_supports_dma",
"timergroup_timg_has_timer1",
"timergroup_rc_fast_calibration_is_set",
"uart_ram_size=\"128\"",
"uart_has_sclk_divider",
"wifi_mac_version=\"1\"",
"wifi_csi_supported",
],
cfgs: &[
"cargo:rustc-cfg=esp32s3",
"cargo:rustc-cfg=xtensa",
"cargo:rustc-cfg=multi_core",
"cargo:rustc-cfg=soc_has_aes",
"cargo:rustc-cfg=soc_has_apb_ctrl",
"cargo:rustc-cfg=soc_has_apb_saradc",
"cargo:rustc-cfg=soc_has_assist_debug",
"cargo:rustc-cfg=soc_has_dma",
"cargo:rustc-cfg=soc_has_ds",
"cargo:rustc-cfg=soc_has_efuse",
"cargo:rustc-cfg=soc_has_extmem",
"cargo:rustc-cfg=soc_has_gpio",
"cargo:rustc-cfg=soc_has_gpio_sd",
"cargo:rustc-cfg=soc_has_hmac",
"cargo:rustc-cfg=soc_has_i2c_ana_mst",
"cargo:rustc-cfg=soc_has_i2c0",
"cargo:rustc-cfg=soc_has_i2c1",
"cargo:rustc-cfg=soc_has_i2s0",
"cargo:rustc-cfg=soc_has_i2s1",
"cargo:rustc-cfg=soc_has_interrupt_core0",
"cargo:rustc-cfg=soc_has_interrupt_core1",
"cargo:rustc-cfg=soc_has_io_mux",
"cargo:rustc-cfg=soc_has_lcd_cam",
"cargo:rustc-cfg=soc_has_ledc",
"cargo:rustc-cfg=soc_has_lpwr",
"cargo:rustc-cfg=soc_has_mcpwm0",
"cargo:rustc-cfg=soc_has_mcpwm1",
"cargo:rustc-cfg=soc_has_pcnt",
"cargo:rustc-cfg=soc_has_peri_backup",
"cargo:rustc-cfg=soc_has_rmt",
"cargo:rustc-cfg=soc_has_rng",
"cargo:rustc-cfg=soc_has_rsa",
"cargo:rustc-cfg=soc_has_rtc_cntl",
"cargo:rustc-cfg=soc_has_rtc_i2c",
"cargo:rustc-cfg=soc_has_rtc_io",
"cargo:rustc-cfg=soc_has_sdhost",
"cargo:rustc-cfg=soc_has_sens",
"cargo:rustc-cfg=soc_has_sensitive",
"cargo:rustc-cfg=soc_has_sha",
"cargo:rustc-cfg=soc_has_spi0",
"cargo:rustc-cfg=soc_has_spi1",
"cargo:rustc-cfg=soc_has_spi2",
"cargo:rustc-cfg=soc_has_spi3",
"cargo:rustc-cfg=soc_has_system",
"cargo:rustc-cfg=soc_has_systimer",
"cargo:rustc-cfg=soc_has_timg0",
"cargo:rustc-cfg=soc_has_timg1",
"cargo:rustc-cfg=soc_has_twai0",
"cargo:rustc-cfg=soc_has_uart0",
"cargo:rustc-cfg=soc_has_uart1",
"cargo:rustc-cfg=soc_has_uart2",
"cargo:rustc-cfg=soc_has_uhci0",
"cargo:rustc-cfg=soc_has_usb0",
"cargo:rustc-cfg=soc_has_usb_device",
"cargo:rustc-cfg=soc_has_usb_wrap",
"cargo:rustc-cfg=soc_has_wcl",
"cargo:rustc-cfg=soc_has_xts_aes",
"cargo:rustc-cfg=soc_has_dma_ch0",
"cargo:rustc-cfg=soc_has_dma_ch1",
"cargo:rustc-cfg=soc_has_dma_ch2",
"cargo:rustc-cfg=soc_has_dma_ch3",
"cargo:rustc-cfg=soc_has_dma_ch4",
"cargo:rustc-cfg=soc_has_adc1",
"cargo:rustc-cfg=soc_has_adc2",
"cargo:rustc-cfg=soc_has_bt",
"cargo:rustc-cfg=soc_has_cpu_ctrl",
"cargo:rustc-cfg=soc_has_flash",
"cargo:rustc-cfg=soc_has_gpio_dedicated",
"cargo:rustc-cfg=soc_has_psram",
"cargo:rustc-cfg=soc_has_sw_interrupt",
"cargo:rustc-cfg=soc_has_ulp_riscv_core",
"cargo:rustc-cfg=soc_has_wifi",
"cargo:rustc-cfg=phy",
"cargo:rustc-cfg=swd",
"cargo:rustc-cfg=ulp_riscv_core",
"cargo:rustc-cfg=rom_crc_le",
"cargo:rustc-cfg=rom_crc_be",
"cargo:rustc-cfg=rom_md5_bsd",
"cargo:rustc-cfg=pm_support_ext0_wakeup",
"cargo:rustc-cfg=pm_support_ext1_wakeup",
"cargo:rustc-cfg=pm_support_touch_sensor_wakeup",
"cargo:rustc-cfg=pm_support_wifi_wakeup",
"cargo:rustc-cfg=pm_support_bt_wakeup",
"cargo:rustc-cfg=uart_support_wakeup_int",
"cargo:rustc-cfg=ulp_supported",
"cargo:rustc-cfg=riscv_coproc_supported",
"cargo:rustc-cfg=adc_driver_supported",
"cargo:rustc-cfg=aes_driver_supported",
"cargo:rustc-cfg=assist_debug_driver_supported",
"cargo:rustc-cfg=bt_driver_supported",
"cargo:rustc-cfg=camera_driver_supported",
"cargo:rustc-cfg=dedicated_gpio_driver_supported",
"cargo:rustc-cfg=dma_driver_supported",
"cargo:rustc-cfg=gpio_driver_supported",
"cargo:rustc-cfg=hmac_driver_supported",
"cargo:rustc-cfg=i2c_master_driver_supported",
"cargo:rustc-cfg=i2s_driver_supported",
"cargo:rustc-cfg=interrupts_driver_supported",
"cargo:rustc-cfg=io_mux_driver_supported",
"cargo:rustc-cfg=ledc_driver_supported",
"cargo:rustc-cfg=mcpwm_driver_supported",
"cargo:rustc-cfg=pcnt_driver_supported",
"cargo:rustc-cfg=phy_driver_supported",
"cargo:rustc-cfg=psram_driver_supported",
"cargo:rustc-cfg=rgb_display_driver_supported",
"cargo:rustc-cfg=rmt_driver_supported",
"cargo:rustc-cfg=rng_driver_supported",
"cargo:rustc-cfg=rsa_driver_supported",
"cargo:rustc-cfg=lp_timer_driver_supported",
"cargo:rustc-cfg=sd_host_driver_supported",
"cargo:rustc-cfg=sha_driver_supported",
"cargo:rustc-cfg=sleep_driver_supported",
"cargo:rustc-cfg=soc_driver_supported",
"cargo:rustc-cfg=spi_master_driver_supported",
"cargo:rustc-cfg=spi_slave_driver_supported",
"cargo:rustc-cfg=systimer_driver_supported",
"cargo:rustc-cfg=temp_sensor_driver_supported",
"cargo:rustc-cfg=timergroup_driver_supported",
"cargo:rustc-cfg=twai_driver_supported",
"cargo:rustc-cfg=uart_driver_supported",
"cargo:rustc-cfg=uhci_driver_supported",
"cargo:rustc-cfg=ulp_fsm_driver_supported",
"cargo:rustc-cfg=ulp_riscv_driver_supported",
"cargo:rustc-cfg=usb_otg_driver_supported",
"cargo:rustc-cfg=usb_serial_jtag_driver_supported",
"cargo:rustc-cfg=wifi_driver_supported",
"cargo:rustc-cfg=adc_adc1",
"cargo:rustc-cfg=adc_adc2",
"cargo:rustc-cfg=i2c_master_i2c0",
"cargo:rustc-cfg=i2c_master_i2c1",
"cargo:rustc-cfg=spi_master_spi2",
"cargo:rustc-cfg=spi_master_spi3",
"cargo:rustc-cfg=spi_slave_spi2",
"cargo:rustc-cfg=spi_slave_spi3",
"cargo:rustc-cfg=timergroup_timg0",
"cargo:rustc-cfg=timergroup_timg1",
"cargo:rustc-cfg=uart_uart0",
"cargo:rustc-cfg=uart_uart1",
"cargo:rustc-cfg=uart_uart2",
"cargo:rustc-cfg=aes_dma",
"cargo:rustc-cfg=aes_dma_mode_ecb",
"cargo:rustc-cfg=aes_dma_mode_cbc",
"cargo:rustc-cfg=aes_dma_mode_ofb",
"cargo:rustc-cfg=aes_dma_mode_ctr",
"cargo:rustc-cfg=aes_dma_mode_cfb8",
"cargo:rustc-cfg=aes_dma_mode_cfb128",
"cargo:rustc-cfg=aes_has_split_text_registers",
"cargo:rustc-cfg=assist_debug_has_region_monitor",
"cargo:rustc-cfg=bt_controller=\"btdm\"",
"cargo:rustc-cfg=dedicated_gpio_needs_initialization",
"cargo:rustc-cfg=dma_kind=\"gdma\"",
"cargo:rustc-cfg=dma_supports_mem2mem",
"cargo:rustc-cfg=dma_can_access_psram",
"cargo:rustc-cfg=dma_ext_mem_configurable_block_size",
"cargo:rustc-cfg=dma_separate_in_out_interrupts",
"cargo:rustc-cfg=dma_max_priority=\"9\"",
"cargo:rustc-cfg=dma_max_priority_is_set",
"cargo:rustc-cfg=dma_gdma_version=\"1\"",
"cargo:rustc-cfg=dma_gdma_version_is_set",
"cargo:rustc-cfg=gpio_has_bank_1",
"cargo:rustc-cfg=gpio_gpio_function=\"1\"",
"cargo:rustc-cfg=gpio_constant_0_input=\"60\"",
"cargo:rustc-cfg=gpio_constant_1_input=\"56\"",
"cargo:rustc-cfg=gpio_func_in_sel_offset=\"0\"",
"cargo:rustc-cfg=gpio_input_signal_max=\"255\"",
"cargo:rustc-cfg=gpio_output_signal_max=\"256\"",
"cargo:rustc-cfg=i2c_master_has_fsm_timeouts",
"cargo:rustc-cfg=i2c_master_has_bus_timeout_enable",
"cargo:rustc-cfg=i2c_master_can_estimate_nack_reason",
"cargo:rustc-cfg=i2c_master_has_conf_update",
"cargo:rustc-cfg=i2c_master_has_arbitration_en",
"cargo:rustc-cfg=i2c_master_has_tx_fifo_watermark",
"cargo:rustc-cfg=i2c_master_bus_timeout_is_exponential",
"cargo:rustc-cfg=i2c_master_max_bus_timeout=\"31\"",
"cargo:rustc-cfg=i2c_master_ll_intr_mask=\"262143\"",
"cargo:rustc-cfg=i2c_master_fifo_size=\"32\"",
"cargo:rustc-cfg=interrupts_status_registers=\"4\"",
"cargo:rustc-cfg=interrupt_controller=\"xtensa\"",
"cargo:rustc-cfg=phy_combo_module",
"cargo:rustc-cfg=phy_backed_up_digital_register_count=\"21\"",
"cargo:rustc-cfg=phy_backed_up_digital_register_count_is_set",
"cargo:rustc-cfg=psram_octal_spi",
"cargo:rustc-cfg=psram_extmem_origin=\"1006632960\"",
"cargo:rustc-cfg=rmt_ram_start=\"1610704896\"",
"cargo:rustc-cfg=rmt_channel_ram_size=\"48\"",
"cargo:rustc-cfg=rmt_has_tx_immediate_stop",
"cargo:rustc-cfg=rmt_has_tx_loop_count",
"cargo:rustc-cfg=rmt_has_tx_loop_auto_stop",
"cargo:rustc-cfg=rmt_has_tx_carrier_data_only",
"cargo:rustc-cfg=rmt_has_tx_sync",
"cargo:rustc-cfg=rmt_has_rx_wrap",
"cargo:rustc-cfg=rmt_has_rx_demodulation",
"cargo:rustc-cfg=rmt_has_dma",
"cargo:rustc-cfg=rmt_supports_none_clock",
"cargo:rustc-cfg=rmt_supports_apb_clock",
"cargo:rustc-cfg=rmt_supports_rcfast_clock",
"cargo:rustc-cfg=rmt_supports_xtal_clock",
"cargo:rustc-cfg=rng_apb_cycle_wait_num=\"16\"",
"cargo:rustc-cfg=rng_trng_supported",
"cargo:rustc-cfg=rsa_size_increment=\"32\"",
"cargo:rustc-cfg=rsa_memory_size_bytes=\"512\"",
"cargo:rustc-cfg=sha_dma",
"cargo:rustc-cfg=sleep_light_sleep",
"cargo:rustc-cfg=sleep_deep_sleep",
"cargo:rustc-cfg=soc_multi_core_enabled",
"cargo:rustc-cfg=soc_rc_fast_clk_default=\"17500000\"",
"cargo:rustc-cfg=soc_rc_fast_clk_default_is_set",
"cargo:rustc-cfg=soc_has_clock_node_xtal_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_xtal32k_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div_in",
"cargo:rustc-cfg=soc_has_clock_node_system_pre_div",
"cargo:rustc-cfg=soc_has_clock_node_cpu_pll_div_out",
"cargo:rustc-cfg=soc_has_clock_node_cpu_clk",
"cargo:rustc-cfg=soc_has_clock_node_pll_d2",
"cargo:rustc-cfg=soc_has_clock_node_pll_160m",
"cargo:rustc-cfg=soc_has_clock_node_apb_80m",
"cargo:rustc-cfg=soc_has_clock_node_apb_clk",
"cargo:rustc-cfg=soc_has_clock_node_crypto_pwm_clk",
"cargo:rustc-cfg=soc_has_clock_node_rc_fast_clk_div_n",
"cargo:rustc-cfg=soc_has_clock_node_xtal_div_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_slow_clk",
"cargo:rustc-cfg=soc_has_clock_node_rtc_fast_clk",
"cargo:rustc-cfg=soc_has_clock_node_low_power_clk",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clk",
"cargo:rustc-cfg=soc_has_clock_node_timg_calibration_clock",
"cargo:rustc-cfg=soc_has_clock_node_mcpwm_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_timg_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_rmt_sclk",
"cargo:rustc-cfg=soc_has_clock_node_uart_function_clock",
"cargo:rustc-cfg=soc_has_clock_node_uart_baud_rate_generator",
"cargo:rustc-cfg=soc_has_clock_node_uart_mem_clock",
"cargo:rustc-cfg=has_dram_region",
"cargo:rustc-cfg=has_dram2_uninit_region",
"cargo:rustc-cfg=spi_master_supports_dma",
"cargo:rustc-cfg=spi_master_has_octal",
"cargo:rustc-cfg=spi_master_has_app_interrupts",
"cargo:rustc-cfg=spi_master_has_dma_segmented_transfer",
"cargo:rustc-cfg=spi_slave_supports_dma",
"cargo:rustc-cfg=timergroup_timg_has_timer1",
"cargo:rustc-cfg=timergroup_rc_fast_calibration_is_set",
"cargo:rustc-cfg=uart_ram_size=\"128\"",
"cargo:rustc-cfg=uart_has_sclk_divider",
"cargo:rustc-cfg=wifi_mac_version=\"1\"",
"cargo:rustc-cfg=wifi_csi_supported",
],
memory_layout: &MemoryLayout {
regions: &[
(
"dram",
MemoryRegion {
address_range: 0x3FC88000..0x3FD00000,
},
),
(
"dram2_uninit",
MemoryRegion {
address_range: 0x3FCDB700..0x3FCED710,
},
),
],
},
pins: &[
PinInfo {
pin: 0,
limitations: &["strapping"],
},
PinInfo {
pin: 1,
limitations: &[],
},
PinInfo {
pin: 2,
limitations: &[],
},
PinInfo {
pin: 3,
limitations: &["strapping"],
},
PinInfo {
pin: 4,
limitations: &[],
},
PinInfo {
pin: 5,
limitations: &[],
},
PinInfo {
pin: 6,
limitations: &[],
},
PinInfo {
pin: 7,
limitations: &[],
},
PinInfo {
pin: 8,
limitations: &[],
},
PinInfo {
pin: 9,
limitations: &[],
},
PinInfo {
pin: 10,
limitations: &[],
},
PinInfo {
pin: 11,
limitations: &[],
},
PinInfo {
pin: 12,
limitations: &[],
},
PinInfo {
pin: 13,
limitations: &[],
},
PinInfo {
pin: 14,
limitations: &[],
},
PinInfo {
pin: 15,
limitations: &[],
},
PinInfo {
pin: 16,
limitations: &[],
},
PinInfo {
pin: 17,
limitations: &[],
},
PinInfo {
pin: 18,
limitations: &[],
},
PinInfo {
pin: 19,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 20,
limitations: &["usb_jtag"],
},
PinInfo {
pin: 21,
limitations: &[],
},
PinInfo {
pin: 26,
limitations: &["spi_psram"],
},
PinInfo {
pin: 27,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 28,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 29,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 30,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 31,
limitations: &["spi_flash", "spi_psram"],
},
PinInfo {
pin: 32,
limitations: &["spi_flash"],
},
PinInfo {
pin: 33,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 34,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 35,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 36,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 37,
limitations: &["octal_flash", "octal_psram"],
},
PinInfo {
pin: 38,
limitations: &[],
},
PinInfo {
pin: 39,
limitations: &["jtag"],
},
PinInfo {
pin: 40,
limitations: &["jtag"],
},
PinInfo {
pin: 41,
limitations: &["jtag"],
},
PinInfo {
pin: 42,
limitations: &["jtag"],
},
PinInfo {
pin: 43,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 44,
limitations: &["bootloader_uart"],
},
PinInfo {
pin: 45,
limitations: &["strapping"],
},
PinInfo {
pin: 46,
limitations: &["strapping"],
},
PinInfo {
pin: 47,
limitations: &[],
},
PinInfo {
pin: 48,
limitations: &[],
},
],
},
}
}
}
pub struct MemoryRegion {
address_range: Range<u32>,
}
impl MemoryRegion {
pub fn range(&self) -> Range<u32> {
self.address_range.clone()
}
pub fn size(&self) -> u32 {
self.address_range.end - self.address_range.start
}
}
pub struct MemoryLayout {
regions: &'static [(&'static str, MemoryRegion)],
}
impl MemoryLayout {
pub fn region(&self, name: &str) -> Option<&'static MemoryRegion> {
self.regions
.iter()
.find_map(|(n, r)| if *n == name { Some(r) } else { None })
}
}
#[non_exhaustive]
pub struct PinInfo {
pub pin: usize,
pub limitations: &'static [&'static str],
}
struct Config {
architecture: &'static str,
target: &'static str,
symbols: &'static [&'static str],
cfgs: &'static [&'static str],
memory_layout: &'static MemoryLayout,
pins: &'static [PinInfo],
}
impl Config {
fn define_cfgs(&self) {
emit_check_cfg_directives();
for cfg in self.cfgs {
println!("{cfg}");
}
}
}
pub fn emit_check_cfg_directives() {
println!("cargo:rustc-check-cfg=cfg(not_really_docsrs)");
println!("cargo:rustc-check-cfg=cfg(semver_checks)");
println!("cargo:rustc-check-cfg=cfg(esp32)");
println!("cargo:rustc-check-cfg=cfg(xtensa)");
println!("cargo:rustc-check-cfg=cfg(multi_core)");
println!("cargo:rustc-check-cfg=cfg(soc_has_aes)");
println!("cargo:rustc-check-cfg=cfg(soc_has_apb_ctrl)");
println!("cargo:rustc-check-cfg=cfg(soc_has_bb)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dport)");
println!("cargo:rustc-check-cfg=cfg(soc_has_system)");
println!("cargo:rustc-check-cfg=cfg(soc_has_efuse)");
println!("cargo:rustc-check-cfg=cfg(soc_has_emac_dma)");
println!("cargo:rustc-check-cfg=cfg(soc_has_emac_ext)");
println!("cargo:rustc-check-cfg=cfg(soc_has_emac_mac)");
println!("cargo:rustc-check-cfg=cfg(soc_has_flash_encryption)");
println!("cargo:rustc-check-cfg=cfg(soc_has_frc_timer)");
println!("cargo:rustc-check-cfg=cfg(soc_has_gpio)");
println!("cargo:rustc-check-cfg=cfg(soc_has_gpio_sd)");
println!("cargo:rustc-check-cfg=cfg(soc_has_hinf)");
println!("cargo:rustc-check-cfg=cfg(soc_has_i2c0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_i2c1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_i2s0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_i2s1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_io_mux)");
println!("cargo:rustc-check-cfg=cfg(soc_has_ledc)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mcpwm0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mcpwm1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_nrx)");
println!("cargo:rustc-check-cfg=cfg(soc_has_pcnt)");
println!("cargo:rustc-check-cfg=cfg(soc_has_rmt)");
println!("cargo:rustc-check-cfg=cfg(soc_has_rng)");
println!("cargo:rustc-check-cfg=cfg(soc_has_rsa)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lpwr)");
println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_i2c)");
println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_io)");
println!("cargo:rustc-check-cfg=cfg(soc_has_sdhost)");
println!("cargo:rustc-check-cfg=cfg(soc_has_sens)");
println!("cargo:rustc-check-cfg=cfg(soc_has_sha)");
println!("cargo:rustc-check-cfg=cfg(soc_has_slc)");
println!("cargo:rustc-check-cfg=cfg(soc_has_slchost)");
println!("cargo:rustc-check-cfg=cfg(soc_has_spi0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_spi1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_spi2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_spi3)");
println!("cargo:rustc-check-cfg=cfg(soc_has_timg0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_timg1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_twai0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_uart0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_uart1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_uart2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_uhci0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_uhci1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_wifi)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_spi2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_spi3)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_i2s0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_i2s1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_adc1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_adc2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_bt)");
println!("cargo:rustc-check-cfg=cfg(soc_has_cpu_ctrl)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dac1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dac2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_flash)");
println!("cargo:rustc-check-cfg=cfg(soc_has_psram)");
println!("cargo:rustc-check-cfg=cfg(soc_has_sw_interrupt)");
println!("cargo:rustc-check-cfg=cfg(soc_has_touch)");
println!("cargo:rustc-check-cfg=cfg(phy)");
println!("cargo:rustc-check-cfg=cfg(touch)");
println!("cargo:rustc-check-cfg=cfg(rom_crc_le)");
println!("cargo:rustc-check-cfg=cfg(rom_crc_be)");
println!("cargo:rustc-check-cfg=cfg(rom_md5_bsd)");
println!("cargo:rustc-check-cfg=cfg(pm_support_ext0_wakeup)");
println!("cargo:rustc-check-cfg=cfg(pm_support_ext1_wakeup)");
println!("cargo:rustc-check-cfg=cfg(pm_support_touch_sensor_wakeup)");
println!("cargo:rustc-check-cfg=cfg(ulp_supported)");
println!("cargo:rustc-check-cfg=cfg(adc_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(aes_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(bt_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(dac_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(dma_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(gpio_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(i2s_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(interrupts_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(io_mux_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(ledc_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(mcpwm_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(pcnt_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(phy_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(psram_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(rgb_display_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(rmt_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(rng_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(rsa_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(lp_timer_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(sd_host_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(sd_slave_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(sha_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(sleep_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(soc_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(spi_master_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(spi_slave_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(temp_sensor_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(timergroup_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(touch_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(twai_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(uart_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(ulp_fsm_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(wifi_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(adc_adc1)");
println!("cargo:rustc-check-cfg=cfg(adc_adc2)");
println!("cargo:rustc-check-cfg=cfg(dac_dac1)");
println!("cargo:rustc-check-cfg=cfg(dac_dac2)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c0)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c1)");
println!("cargo:rustc-check-cfg=cfg(spi_master_spi2)");
println!("cargo:rustc-check-cfg=cfg(spi_master_spi3)");
println!("cargo:rustc-check-cfg=cfg(spi_slave_spi2)");
println!("cargo:rustc-check-cfg=cfg(spi_slave_spi3)");
println!("cargo:rustc-check-cfg=cfg(timergroup_timg0)");
println!("cargo:rustc-check-cfg=cfg(timergroup_timg1)");
println!("cargo:rustc-check-cfg=cfg(uart_uart0)");
println!("cargo:rustc-check-cfg=cfg(uart_uart1)");
println!("cargo:rustc-check-cfg=cfg(uart_uart2)");
println!("cargo:rustc-check-cfg=cfg(aes_endianness_configurable)");
println!("cargo:rustc-check-cfg=cfg(gpio_has_bank_1)");
println!("cargo:rustc-check-cfg=cfg(gpio_remap_iomux_pin_registers)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_separate_filter_config_registers)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_i2c0_data_register_ahb_address_is_set)");
println!("cargo:rustc-check-cfg=cfg(phy_combo_module)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_per_channel_clock)");
println!("cargo:rustc-check-cfg=cfg(rmt_supports_reftick_clock)");
println!("cargo:rustc-check-cfg=cfg(rmt_supports_apb_clock)");
println!("cargo:rustc-check-cfg=cfg(rng_trng_supported)");
println!("cargo:rustc-check-cfg=cfg(sleep_light_sleep)");
println!("cargo:rustc-check-cfg=cfg(sleep_deep_sleep)");
println!("cargo:rustc-check-cfg=cfg(soc_multi_core_enabled)");
println!("cargo:rustc-check-cfg=cfg(soc_rc_fast_clk_default_is_set)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apll_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_fast_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f160m_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_pll_div_in)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_pll_div)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_syscon_pre_div_in)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_syscon_pre_div)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_clk_cpu_div2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_clk_80m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_pll)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_apll)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_xtal)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_fosc)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal32k_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_slow_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_fast_div_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal_div_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rtc_slow_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rtc_fast_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_mem_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_timg_calibration_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mcpwm_function_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_function_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_mem_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_uart_baud_rate_generator)");
println!("cargo:rustc-check-cfg=cfg(has_dram_region)");
println!("cargo:rustc-check-cfg=cfg(has_dram2_uninit_region)");
println!("cargo:rustc-check-cfg=cfg(spi_master_supports_dma)");
println!("cargo:rustc-check-cfg=cfg(spi_slave_supports_dma)");
println!("cargo:rustc-check-cfg=cfg(timergroup_timg_has_timer1)");
println!("cargo:rustc-check-cfg=cfg(timergroup_rc_fast_calibration_is_set)");
println!("cargo:rustc-check-cfg=cfg(wifi_csi_supported)");
println!("cargo:rustc-check-cfg=cfg(esp32c2)");
println!("cargo:rustc-check-cfg=cfg(riscv)");
println!("cargo:rustc-check-cfg=cfg(single_core)");
println!("cargo:rustc-check-cfg=cfg(soc_has_apb_saradc)");
println!("cargo:rustc-check-cfg=cfg(soc_has_assist_debug)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma)");
println!("cargo:rustc-check-cfg=cfg(soc_has_ecc)");
println!("cargo:rustc-check-cfg=cfg(soc_has_extmem)");
println!("cargo:rustc-check-cfg=cfg(soc_has_i2c_ana_mst)");
println!("cargo:rustc-check-cfg=cfg(soc_has_interrupt_core0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_modem_clkrst)");
println!("cargo:rustc-check-cfg=cfg(soc_has_sensitive)");
println!("cargo:rustc-check-cfg=cfg(soc_has_systimer)");
println!("cargo:rustc-check-cfg=cfg(soc_has_xts_aes)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_gpio_dedicated)");
println!("cargo:rustc-check-cfg=cfg(swd)");
println!("cargo:rustc-check-cfg=cfg(rom_md5_mbedtls)");
println!("cargo:rustc-check-cfg=cfg(pm_support_wifi_wakeup)");
println!("cargo:rustc-check-cfg=cfg(pm_support_bt_wakeup)");
println!("cargo:rustc-check-cfg=cfg(uart_support_wakeup_int)");
println!("cargo:rustc-check-cfg=cfg(gpio_support_deepsleep_wakeup)");
println!("cargo:rustc-check-cfg=cfg(assist_debug_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(dedicated_gpio_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(ecc_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(systimer_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(assist_debug_has_sp_monitor)");
println!("cargo:rustc-check-cfg=cfg(dma_supports_mem2mem)");
println!("cargo:rustc-check-cfg=cfg(dma_max_priority_is_set)");
println!("cargo:rustc-check-cfg=cfg(dma_gdma_version_is_set)");
println!("cargo:rustc-check-cfg=cfg(ecc_zero_extend_writes)");
println!("cargo:rustc-check-cfg=cfg(ecc_has_finite_field_division)");
println!("cargo:rustc-check-cfg=cfg(ecc_has_curve_p192)");
println!("cargo:rustc-check-cfg=cfg(ecc_has_curve_p256)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_has_fsm_timeouts)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_has_hw_bus_clear)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_has_bus_timeout_enable)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_has_conf_update)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_has_arbitration_en)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_has_tx_fifo_watermark)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_bus_timeout_is_exponential)");
println!("cargo:rustc-check-cfg=cfg(sha_dma)");
println!("cargo:rustc-check-cfg=cfg(soc_cpu_has_csr_pc)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_osc_slow_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_system_pre_div_in)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_system_pre_div)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_40m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_60m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_80m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_div2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_crypto_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rc_fast_clk_div_n)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_low_power_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_timg_function_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_timg_wdt_clock)");
println!("cargo:rustc-check-cfg=cfg(spi_master_has_app_interrupts)");
println!("cargo:rustc-check-cfg=cfg(spi_master_has_dma_segmented_transfer)");
println!("cargo:rustc-check-cfg=cfg(timergroup_timg_has_divcnt_rst)");
println!("cargo:rustc-check-cfg=cfg(uart_has_sclk_divider)");
println!("cargo:rustc-check-cfg=cfg(esp32c3)");
println!("cargo:rustc-check-cfg=cfg(soc_has_ds)");
println!("cargo:rustc-check-cfg=cfg(soc_has_fe)");
println!("cargo:rustc-check-cfg=cfg(soc_has_fe2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_hmac)");
println!("cargo:rustc-check-cfg=cfg(soc_has_usb_device)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_tsens)");
println!("cargo:rustc-check-cfg=cfg(hmac_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(uhci_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(usb_serial_jtag_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(aes_dma)");
println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_ecb)");
println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_cbc)");
println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_ofb)");
println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_ctr)");
println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_cfb8)");
println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_cfb128)");
println!("cargo:rustc-check-cfg=cfg(aes_has_split_text_registers)");
println!("cargo:rustc-check-cfg=cfg(assist_debug_has_region_monitor)");
println!("cargo:rustc-check-cfg=cfg(phy_backed_up_digital_register_count_is_set)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_immediate_stop)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_loop_count)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_carrier_data_only)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_sync)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_rx_wrap)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_rx_demodulation)");
println!("cargo:rustc-check-cfg=cfg(rmt_supports_none_clock)");
println!("cargo:rustc-check-cfg=cfg(rmt_supports_rcfast_clock)");
println!("cargo:rustc-check-cfg=cfg(rmt_supports_xtal_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_pll_div_out)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_160m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_rmt_sclk)");
println!("cargo:rustc-check-cfg=cfg(esp32c5)");
println!("cargo:rustc-check-cfg=cfg(soc_has_cache)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clint)");
println!("cargo:rustc-check-cfg=cfg(soc_has_ecdsa)");
println!("cargo:rustc-check-cfg=cfg(soc_has_etm)");
println!("cargo:rustc-check-cfg=cfg(soc_has_hp_apm)");
println!("cargo:rustc-check-cfg=cfg(soc_has_hp_sys)");
println!("cargo:rustc-check-cfg=cfg(soc_has_huk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_ieee802154)");
println!("cargo:rustc-check-cfg=cfg(soc_has_intpri)");
println!("cargo:rustc-check-cfg=cfg(soc_has_keymng)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_ana)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_aon)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_apm0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_clkrst)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_i2c_ana_mst)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_io_mux)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_peri)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_tee)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_timer)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_uart)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_wdt)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem_monitor)");
println!("cargo:rustc-check-cfg=cfg(soc_has_modem_lpcon)");
println!("cargo:rustc-check-cfg=cfg(soc_has_modem_syscon)");
println!("cargo:rustc-check-cfg=cfg(soc_has_parl_io)");
println!("cargo:rustc-check-cfg=cfg(soc_has_pau)");
println!("cargo:rustc-check-cfg=cfg(soc_has_pcr)");
println!("cargo:rustc-check-cfg=cfg(soc_has_pmu)");
println!("cargo:rustc-check-cfg=cfg(soc_has_pvt_monitor)");
println!("cargo:rustc-check-cfg=cfg(soc_has_tee)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_core)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem3)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem4)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem5)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem6)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem7)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem8)");
println!("cargo:rustc-check-cfg=cfg(ieee802154_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(lp_i2c_master_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(parl_io_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(dma_can_access_psram)");
println!("cargo:rustc-check-cfg=cfg(dma_separate_in_out_interrupts)");
println!("cargo:rustc-check-cfg=cfg(ecc_separate_jacobian_point_memory)");
println!("cargo:rustc-check-cfg=cfg(ecc_has_memory_clock_gate)");
println!("cargo:rustc-check-cfg=cfg(ecc_supports_enhanced_security)");
println!("cargo:rustc-check-cfg=cfg(ecc_has_modular_arithmetic)");
println!("cargo:rustc-check-cfg=cfg(ecc_has_point_addition)");
println!("cargo:rustc-check-cfg=cfg(ecc_has_curve_p384)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_can_estimate_nack_reason)");
println!("cargo:rustc-check-cfg=cfg(i2c_master_has_reliable_fsm_reset)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_tx_loop_auto_stop)");
println!("cargo:rustc-check-cfg=cfg(rmt_supports_pll80mhz_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_cpu_has_branch_predictor)");
println!("cargo:rustc-check-cfg=cfg(soc_cpu_csr_prv_mode_is_set)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f12m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f20m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f40m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f48m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f60m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f80m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f120m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f160m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f240m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_hp_root_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ahb_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_xtal_d2_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_lp_fast_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_lp_slow_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_parl_io_rx_clock)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_parl_io_tx_clock)");
println!("cargo:rustc-check-cfg=cfg(spi_master_has_clk_pre_div)");
println!("cargo:rustc-check-cfg=cfg(uart_peripheral_controls_mem_clk)");
println!("cargo:rustc-check-cfg=cfg(uhci_combined_uart_selector_field)");
println!("cargo:rustc-check-cfg=cfg(wifi_has_5g)");
println!("cargo:rustc-check-cfg=cfg(esp32c6)");
println!("cargo:rustc-check-cfg=cfg(soc_has_atomic)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_apm)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_i2c0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lp_io)");
println!("cargo:rustc-check-cfg=cfg(soc_has_otp_debug)");
println!("cargo:rustc-check-cfg=cfg(soc_has_plic_mx)");
println!("cargo:rustc-check-cfg=cfg(soc_has_trace0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_twai1)");
println!("cargo:rustc-check-cfg=cfg(lp_core)");
println!("cargo:rustc-check-cfg=cfg(pm_support_beacon_wakeup)");
println!("cargo:rustc-check-cfg=cfg(etm_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(lp_uart_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(ulp_riscv_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_soc_root_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_hs_div)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_cpu_ls_div)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ahb_hs_div)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ahb_ls_div)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_fast_hs_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_fast_ls_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_mspi_fast_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ledc_sclk)");
println!("cargo:rustc-check-cfg=cfg(timergroup_rc_fast_calibration_divider)");
println!("cargo:rustc-check-cfg=cfg(wifi_has_wifi6)");
println!("cargo:rustc-check-cfg=cfg(esp32c61)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem9)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem10)");
println!("cargo:rustc-check-cfg=cfg(soc_has_mem2mem11)");
println!("cargo:rustc-check-cfg=cfg(esp32h2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f96m_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f64m_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_f48m_clk)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_lp_clk)");
println!("cargo:rustc-check-cfg=cfg(timergroup_rc_fast_calibration_tick_enable)");
println!("cargo:rustc-check-cfg=cfg(esp32s2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dedicated_gpio)");
println!("cargo:rustc-check-cfg=cfg(soc_has_pms)");
println!("cargo:rustc-check-cfg=cfg(soc_has_syscon)");
println!("cargo:rustc-check-cfg=cfg(soc_has_usb0)");
println!("cargo:rustc-check-cfg=cfg(soc_has_usb_wrap)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_crypto)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_copy)");
println!("cargo:rustc-check-cfg=cfg(soc_has_ulp_riscv_core)");
println!("cargo:rustc-check-cfg=cfg(ulp_riscv_core)");
println!("cargo:rustc-check-cfg=cfg(riscv_coproc_supported)");
println!("cargo:rustc-check-cfg=cfg(usb_otg_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(aes_dma_mode_gcm)");
println!("cargo:rustc-check-cfg=cfg(dedicated_gpio_needs_initialization)");
println!("cargo:rustc-check-cfg=cfg(dma_ext_mem_configurable_block_size)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_ref_tick_ck8m)");
println!("cargo:rustc-check-cfg=cfg(spi_master_has_octal)");
println!("cargo:rustc-check-cfg=cfg(esp32s3)");
println!("cargo:rustc-check-cfg=cfg(soc_has_interrupt_core1)");
println!("cargo:rustc-check-cfg=cfg(soc_has_lcd_cam)");
println!("cargo:rustc-check-cfg=cfg(soc_has_peri_backup)");
println!("cargo:rustc-check-cfg=cfg(soc_has_rtc_cntl)");
println!("cargo:rustc-check-cfg=cfg(soc_has_wcl)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch3)");
println!("cargo:rustc-check-cfg=cfg(soc_has_dma_ch4)");
println!("cargo:rustc-check-cfg=cfg(camera_driver_supported)");
println!("cargo:rustc-check-cfg=cfg(psram_octal_spi)");
println!("cargo:rustc-check-cfg=cfg(rmt_has_dma)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_pll_d2)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_apb_80m)");
println!("cargo:rustc-check-cfg=cfg(soc_has_clock_node_crypto_pwm_clk)");
println!("cargo:rustc-check-cfg=cfg(bt_controller, values(\"btdm\",\"npl\"))");
println!("cargo:rustc-check-cfg=cfg(dma_kind, values(\"pdma\",\"gdma\"))");
println!("cargo:rustc-check-cfg=cfg(gpio_gpio_function, values(\"2\",\"1\"))");
println!(
"cargo:rustc-check-cfg=cfg(gpio_constant_0_input, values(\"48\",\"31\",\"96\",\"60\"))"
);
println!("cargo:rustc-check-cfg=cfg(gpio_constant_1_input, values(\"56\",\"30\",\"64\"))");
println!("cargo:rustc-check-cfg=cfg(gpio_func_in_sel_offset, values(\"0\"))");
println!(
"cargo:rustc-check-cfg=cfg(gpio_input_signal_max, \
values(\"206\",\"100\",\"116\",\"124\",\"242\",\"255\"))"
);
println!("cargo:rustc-check-cfg=cfg(gpio_output_signal_max, values(\"256\",\"128\"))");
println!(
"cargo:rustc-check-cfg=cfg(i2c_master_i2c0_data_register_ahb_address, \
values(\"1610690588\"))"
);
println!(
"cargo:rustc-check-cfg=cfg(i2c_master_max_bus_timeout, \
values(\"1048575\",\"31\",\"16777215\"))"
);
println!("cargo:rustc-check-cfg=cfg(i2c_master_ll_intr_mask, values(\"262143\",\"131071\"))");
println!("cargo:rustc-check-cfg=cfg(i2c_master_fifo_size, values(\"32\",\"16\"))");
println!("cargo:rustc-check-cfg=cfg(interrupts_status_registers, values(\"3\",\"2\",\"4\"))");
println!(
"cargo:rustc-check-cfg=cfg(interrupt_controller, \
values(\"xtensa\",\"riscv_basic\",\"clic\",\"plic\"))"
);
println!(
"cargo:rustc-check-cfg=cfg(psram_extmem_origin, \
values(\"1065353216\",\"1107296256\",\"1062207488\",\"1006632960\"))"
);
println!(
"cargo:rustc-check-cfg=cfg(rmt_ram_start, \
values(\"1073047552\",\"1610703872\",\"1610638336\",\"1610642432\",\"1061250048\",\"\
1610704896\"))"
);
println!("cargo:rustc-check-cfg=cfg(rmt_channel_ram_size, values(\"64\",\"48\"))");
println!("cargo:rustc-check-cfg=cfg(rng_apb_cycle_wait_num, values(\"16\"))");
println!("cargo:rustc-check-cfg=cfg(rsa_size_increment, values(\"512\",\"32\"))");
println!("cargo:rustc-check-cfg=cfg(rsa_memory_size_bytes, values(\"512\",\"384\"))");
println!(
"cargo:rustc-check-cfg=cfg(soc_rc_fast_clk_default, values(\"8500000\",\"17500000\"))"
);
println!("cargo:rustc-check-cfg=cfg(uart_ram_size, values(\"128\"))");
println!("cargo:rustc-check-cfg=cfg(wifi_mac_version, values(\"1\",\"3\",\"2\"))");
println!("cargo:rustc-check-cfg=cfg(dma_max_priority, values(\"9\",\"5\"))");
println!("cargo:rustc-check-cfg=cfg(dma_gdma_version, values(\"1\",\"2\"))");
println!("cargo:rustc-check-cfg=cfg(phy_backed_up_digital_register_count, values(\"21\"))");
println!("cargo:rustc-check-cfg=cfg(lp_i2c_master_fifo_size, values(\"16\"))");
println!("cargo:rustc-check-cfg=cfg(lp_uart_ram_size, values(\"32\"))");
println!("cargo:rustc-check-cfg=cfg(parl_io_version, values(\"2\",\"1\"))");
println!("cargo:rustc-check-cfg=cfg(soc_cpu_csr_prv_mode, values(\"2064\",\"3088\"))");
}