chips/README.md
The /chips folder contains the list of microcontrollers supported by Tock.
Each MCU folder contains the hardware peripheral drivers for that MCU.
| HIL | apollo3 | arty_e21_chip | e310_g002 | e310_g003 | earlgrey | esp32-c3 | imxrt10xx | litex_vexriscv | lowrisc | msp432 | nrf52832 | nrf52833 | nrf52840 | qemu_rv32_virt_chip | rp2040 | sam4l | segger | stm32f303xc | stm32f401cc | stm32f412g | stm32f429zi | stm32f446re | veer_el2 | i486 | lpc55s6x |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| adc::Adc | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||
| adc::AdcHighSpeed | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||||||
| analog_comparator::AnalogComparator | ✓ | ✓ | ✓ | ✓ | |||||||||||||||||||||
| ble_advertising::BleAdvertisementDriver | ✓ | ✓ | ✓ | ✓ | |||||||||||||||||||||
| ble_advertising::BleConfig | ✓ | ✓ | ✓ | ✓ | |||||||||||||||||||||
| bus8080::Bus8080 | ✓ | ✓ | ✓ | ✓ | |||||||||||||||||||||
| crc::Crc | ✓ | ||||||||||||||||||||||||
| dac::DacChannel | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||||||||
| date_time::DateTime | ✓ | ✓ | |||||||||||||||||||||||
| digest::Digest | ✓ | ||||||||||||||||||||||||
| digest::DigestData | ✓ | ||||||||||||||||||||||||
| digest::DigestHash | ✓ | ||||||||||||||||||||||||
| digest::DigestVerify | ✓ | ||||||||||||||||||||||||
| digest::HmacSha256 | ✓ | ||||||||||||||||||||||||
| digest::HmacSha384 | ✓ | ||||||||||||||||||||||||
| digest::HmacSha512 | ✓ | ||||||||||||||||||||||||
| digest::Sha256 | ✓ | ||||||||||||||||||||||||
| digest::Sha384 | ✓ | ||||||||||||||||||||||||
| digest::Sha512 | ✓ | ||||||||||||||||||||||||
| eic::ExternalInterruptController | ✓ | ||||||||||||||||||||||||
| entropy::Entropy32 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||||||
| flash::Flash | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||||||||
| gpio::Input | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||
| gpio::Interrupt | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||
| gpio::Output | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||
| gpio::Pin | ✓ | ✓ | ✓ | ||||||||||||||||||||||
| i2c::I2CMaster | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||
| i2c::I2CMasterSlave | ✓ | ✓ | ✓ | ||||||||||||||||||||||
| i2c::I2CSlave | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||||||||
| i2c::SMBusMaster | ✓ | ||||||||||||||||||||||||
| led::Led | ✓ | ✓ | |||||||||||||||||||||||
| mod::Controller | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||||||||
| pwm::Pwm | ✓ | ✓ | ✓ | ✓ | |||||||||||||||||||||
| pwm::PwmPin | ✓ | ||||||||||||||||||||||||
| radio::RadioConfig | ✓ | ||||||||||||||||||||||||
| radio::RadioData | ✓ | ||||||||||||||||||||||||
| rng::Rng | ✓ | ||||||||||||||||||||||||
| rsa_math::RsaCryptoBase | ✓ | ||||||||||||||||||||||||
| sensors::TemperatureDriver | ✓ | ✓ | ✓ | ||||||||||||||||||||||
| spi::SpiMaster | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||||
| spi::SpiSlave | ✓ | ||||||||||||||||||||||||
| symmetric_encryption::AES128 | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||||||||
| symmetric_encryption::AES128CBC | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||||||||
| symmetric_encryption::AES128CCM | ✓ | ✓ | ✓ | ||||||||||||||||||||||
| symmetric_encryption::AES128Ctr | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||||||||
| symmetric_encryption::AES128ECB | ✓ | ✓ | ✓ | ✓ | ✓ | ||||||||||||||||||||
| time::Alarm | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||
| time::Counter | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||
| time::Frequency | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||||||
| time::Time | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||
| time::Timer | ✓ | ✓ | |||||||||||||||||||||||
| uart::Configure | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| uart::Receive | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| uart::ReceiveAdvanced | ✓ | ✓ | ✓ | ||||||||||||||||||||||
| uart::Transmit | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| usb::UsbController | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |