mirror of
https://github.com/esp-rs/esp-hal.git
synced 2025-09-27 04:10:28 +00:00

* Define more i2c metadata * Remove I2C1 AHB base address * Encode address in metadata * Extract timeout value calculation
141 lines
2.4 KiB
TOML
141 lines
2.4 KiB
TOML
# ESP32-C3 Device Metadata
|
|
#
|
|
# Empty [`device.driver`] tables imply `partial` support status.
|
|
#
|
|
# If you modify a driver support status, run `cargo xtask update-chip-support-table` to
|
|
# update the table in the esp-hal README.
|
|
|
|
[device]
|
|
name = "esp32c3"
|
|
arch = "riscv"
|
|
cores = 1
|
|
trm = "https://www.espressif.com/sites/default/files/documentation/esp32-c3_technical_reference_manual_en.pdf"
|
|
|
|
peripherals = [
|
|
# Peripherals available in the PAC:
|
|
"aes",
|
|
"apb_ctrl",
|
|
"apb_saradc",
|
|
"assist_debug",
|
|
"dma",
|
|
"ds",
|
|
"efuse",
|
|
"extmem",
|
|
"gpio",
|
|
"gpio_sd",
|
|
"hmac",
|
|
"i2c0",
|
|
"i2s0",
|
|
"interrupt_core0",
|
|
"io_mux",
|
|
"ledc",
|
|
"rmt",
|
|
"rng",
|
|
"rsa",
|
|
"rtc_cntl",
|
|
"sensitive",
|
|
"sha",
|
|
"spi0",
|
|
"spi1",
|
|
"spi2",
|
|
"system",
|
|
"systimer",
|
|
"timg0",
|
|
"timg1",
|
|
"twai0",
|
|
"uart0",
|
|
"uart1",
|
|
"uhci0",
|
|
"uhci1",
|
|
"usb_device",
|
|
"xts_aes",
|
|
]
|
|
|
|
symbols = [
|
|
# Additional peripherals defined by us (the developers):
|
|
"adc1",
|
|
"adc2",
|
|
"assist_debug_sp_monitor",
|
|
"assist_debug_region_monitor",
|
|
"gdma",
|
|
"phy",
|
|
"bt",
|
|
"wifi",
|
|
"tsens",
|
|
|
|
# ROM capabilities
|
|
"rom_crc_le",
|
|
"rom_crc_be",
|
|
"rom_md5_bsd",
|
|
|
|
# Wakeup SOC based on ESP-IDF:
|
|
"pm_support_wifi_wakeup",
|
|
"pm_support_bt_wakeup",
|
|
"uart_support_wakeup_int",
|
|
"gpio_support_deepsleep_wakeup",
|
|
]
|
|
|
|
memory = [{ name = "dram", start = 0x3FC8_0000, end = 0x3FCE_0000 }]
|
|
|
|
|
|
[device.gpio]
|
|
status = "supported"
|
|
|
|
[device.i2c_master]
|
|
status = "supported"
|
|
has_fsm_timeouts = true
|
|
has_hw_bus_clear = true
|
|
ll_intr_mask = 0x3ffff
|
|
fifo_size = 32
|
|
has_bus_timeout_enable = true
|
|
max_bus_timeout = 0x1F
|
|
has_conf_update = true
|
|
has_arbitration_en = true
|
|
has_tx_fifo_watermark = true
|
|
bus_timeout_is_exponential = true
|
|
|
|
[device.rmt]
|
|
status = "partial"
|
|
ram_start = 0x60016400
|
|
channel_ram_size = 48
|
|
|
|
[device.spi_master]
|
|
status = "supported"
|
|
|
|
[device.uart]
|
|
status = "supported"
|
|
|
|
[device.ds]
|
|
status = "not_supported"
|
|
|
|
# Other drivers which are partially supported but have no other configuration:
|
|
|
|
## Crypto
|
|
[device.aes]
|
|
[device.rsa]
|
|
[device.sha]
|
|
[device.hmac]
|
|
[device.rng]
|
|
|
|
## Interfaces
|
|
[device.i2s]
|
|
[device.ledc]
|
|
[device.spi_slave]
|
|
[device.twai]
|
|
[device.usb_serial_jtag]
|
|
|
|
## Miscellaneous
|
|
[device.adc]
|
|
[device.assist_debug]
|
|
[device.dma]
|
|
[device.interrupts]
|
|
[device.io_mux]
|
|
[device.temp_sensor]
|
|
[device.timers]
|
|
[device.sleep]
|
|
[device.systimer]
|
|
|
|
## Radio
|
|
[device.wifi]
|
|
[device.bt]
|