Skip to content

Releases: espressif/qemu

esp-develop-9.0.0-20240606

06 Jun 19:12
esp-develop-9.0.0-20240606
abb5ce2
Compare
Choose a tag to compare
  • Rebased on top of QEMU v9.0.0, fixed breakage/deprecations
  • Added initial ESP32-S3 support (#42)
  • Added support for -bios and -kernel options for ESP32-C3
  • Fixed SDMMC emulation to be compatible with IDF v5.2
  • Lowered minimum required glibc version on Linux by using Ubuntu 18 in CI

Thanks to @dmitry1945, @o-marshmallow, @antmak for contributing to this release!

esp-develop-8.2.0-20240122

22 Jan 15:50
esp-develop-8.2.0-20240122
b335407
Compare
Choose a tag to compare
  • Rebased on top of QEMU v8.2.0, fixed breakage/deprecations
  • Added emulation of XTS_AES peripheral for ESP32-C3
  • Added Flash Encryption emulation for ESP32-C3
  • Added support for 16bpp color format for the virtual RGB panel
  • Fixed compilation warnings in several files
  • Fixed emulation of SPI flash read operations for ESP32-C3 when Flash Encryption is enabled
  • Fixed emulation of RTC_CNTL scratch registers for ESP32-C3
  • Fixed an issue with clearing Systimer comparator interrupts for ESP32-C3
  • Fixed an issue with reading stale values from eFuse for ESP32-C3
  • Fixed the two CPUs on the ESP32 not seeing the same state of variables in PSRAM

Thanks to @o-marshmallow, @Harshal5 and @horw for contributing to this release.

esp-develop-8.1.3-20231206

06 Dec 02:13
esp-develop-8.1.3-20231206
1c8a312
Compare
Choose a tag to compare
  • Rebased on top of QEMU 8.1.3
  • Added binary releases for Windows, Linux (x86_64 and arm64), macOS (x86_64 and arm64)
  • Fixed build for 32-bit platforms (#86)
  • Added virtual RGB display peripheral for ESP32 and ESP32-C3
  • Fixed emulation of ESP32-C3 eFuse
  • Added an option to disable the ESP32-C3 watchdog timer from command line

Thanks to @o-marshmallow, @greenaddress and @antmak for contributing to this release.

esp-develop-8.1.2-20231017

17 Oct 10:18
esp-develop-8.1.2-20231017
9f1e6f1
Compare
Choose a tag to compare
  • Rebased on top of QEMU 8.1.2
  • --version output now shows ESP-specific version name (esp-develop-8.1.2-20231017)
  • Made improvements and fixed bugs in the emulation of ESP32-C3 peripherals
    • UART (#79)
    • strapping mode (#75)
    • TGWDT
    • SPI, in particular the handling of dummy cycles
    • reset and RTC_CNTL
  • Added ESP32-C3 peripherals:
    • GDMA, including GDMA support in SHA and AES peripherals
    • RSA
    • HMAC
    • Digital Signature
    • Opencores Ethernet MAC emulation for ESP32-C3, via an unused portion of the address space. Requires the related IDF commit

Thanks to @o-marshmallow, @Harshal5 and @antmak for contributing to this release.

esp-develop-8.0.0-20230522

22 May 12:43
esp-develop-8.0.0-20230522
273c5c2
Compare
Choose a tag to compare
  • Rebased on top of QEMU 8.0.0
  • Added initial ESP32-C3 support (thanks @o-marshmallow)
  • Fixed issue with reading multiple bytes over I2C (#61, thanks @knw1)
  • Fixed loading of images with size other than 4 MB (#68, thanks @listout)
  • Fixed CPU clock setting (#72, thanks @lcgamboa)
  • Fixed initialization of SPI USER2 register (thanks @Harshal5)
  • Fixed incorrect error report when writing eFuses

esp-develop-7.2.0-20230223

23 Feb 08:59
1f88fe7
Compare
Choose a tag to compare
  • Rebased on top of QEMU 7.2.0.
  • Added LEDC controller emulation (thanks @KaryFeever)
  • Fixed key reversal in flash encryption emulation.
  • Fixed UART IRQ behavior (#55, thanks @andreyeltsov)
  • Fixed 100% CPU load when running a single-core application (#56, thanks @andreyeltsov)
  • Changed the OS version used to build release binaries to Ubuntu 18 (thanks @antmak)

esp-develop-20220919

19 Sep 14:54
esp-develop-20220919
0152246
Compare
Choose a tag to compare
  • Rebased on top of QEMU 7.1.0. Fixed breakage/deprecations.
  • Added no-op stubs for RMT, PCNT, and LEDC peripherals (#44).
  • Fixed implementation of the SHA peripheral, now multiple concurrent operations with different SHA algorithms are supported (thanks @KaryFeever)

esp-develop-20220802

02 Aug 14:27
686dadc
Compare
Choose a tag to compare
  • Rebased on top of QEMU 7.0.0. Fixed breakage/deprecations. This also fixes #35.
  • Fixed cache flush emulation (#46).
  • Fix trans_done not updated in the SPI peripheral (#39, #40, thanks @amirgon)
  • Fix loading of ELF files via the -kernel argument (thanks @Lapshin)
  • Added emulation of the AES peripheral (thanks @KaryFeever)

esp-develop-20220203

03 Feb 12:27
Compare
Choose a tag to compare
  • Rebased on top of QEMU 6.2.0. Fixed breakage/deprecations.
  • Fixed division by zero in UART emulation. (#24)
  • Fixed build errors under MSYS. (#31, thanks @smuehlst!)
  • ESP32 APP CPU now sees the correct ROM code. Previously PRO and APP CPUs in QEMU shared the same ROM code, which isn't the case on the real ESP32. This fixes, among other things, the location of APP CPU stack at boot time.

esp-develop-20210826

26 Aug 19:05
Compare
Choose a tag to compare
  • Rebased on top of QEMU 6.1.0. Upgraded build dependencies, fixed breakage/deprecations.
  • Added SDMMC (SD Host) peripheral emulation (#5).
  • Added basic PSRAM emulation (#4). Either 2 MB or 4 MB of PSRAM can be added to the machine using -M command line option. "Himem" feature in ESP-IDF doesn't work yet, as only a simple linear cache mapping is supported.
  • Two environment variables have been introduced for compatibility with existing versions of GDB. The upcoming toolchain release, esp-2021r2, will ship a version of GDB that fixes a number of issues observed on Xtensa architecture. This release of QEMU can work with the older toolchain releases, if the following environment variables are set. It can also benefit from the fixes in the new release of GDB, in this case these variables shouldn't be set.
    • If QEMU_XTENSA_CORE_REGS_ONLY=1 is set, QEMU will only send non-privileged registers to GDB. Setting this to 1 matches the behavior in previous versions of QEMU. Otherwise, all registers (including the privileged ones) will be sent.
    • If QEMU_XTENSA_COUNT_WINDOW_REGS=1 is set, a0-a15 registers (i.e. the current register window) will be sent to GDB. Setting this to 1 matches the behavior in the previous versions of QEMU. Otherwise, window registers will not be sent, and GDB will treat them as pseudo registers.
  • Fixed DIO flash mode support (#16). Switching to DOUT mode is no longer necessary.
  • Fixed handling of DP83848C PHYSTS register (#14).
  • Fixed detection of ESP32 ECO3 version via APB_CTRL_DATE_REG.
  • Fixed LACT timer interrupt emulation.
  • Fixed switch fallthrough bugs in I2C emulation.
  • Fixed race conditions in eFuse emulation.