http://www.keil.com/pack/doc/CMSIS_Dev/SVD/html/index.html
Arm defines a System View Description file that documents the memory mapped registers of peripherals. Many tools can consume this *.svd file and significantly ease debugging. While an Arm thing, I believe it would be possible for Espressif to create an *.svd for the ESP32 and include it in the esp-idf. The entire CMSIS spec is licensed under Apache 2.
This may also allow a boost to support Rust and that would be totally awesome.
Not just Rust, this is very important to all non-C languages. For example, having SVD files would be very useful for the TinyGo project (as soon as the LLVM Xtensa backend lands upstream) because it avoids having to convert all these register descriptors manually.
As another example, this is what someone from Ada/SPARK said about SVD support (in relation to RISC-V):
The SVD format was really a game changer for us in terms of support for ARM microcontrollers. [...] I think the RISC-V community should take inspiration from this [...].
In other words, adding support for non-C languages becomes significantly easier with a machine-readable file (preferably SVD) of all the register definitions. SVD is lacking in some areas (for example, it doesn't specify memory layout) but at least having the registers gets you there most of the way.
Are there any updates on this?
Most helpful comment
Not just Rust, this is very important to all non-C languages. For example, having SVD files would be very useful for the TinyGo project (as soon as the LLVM Xtensa backend lands upstream) because it avoids having to convert all these register descriptors manually.
As another example, this is what someone from Ada/SPARK said about SVD support (in relation to RISC-V):
In other words, adding support for non-C languages becomes significantly easier with a machine-readable file (preferably SVD) of all the register definitions. SVD is lacking in some areas (for example, it doesn't specify memory layout) but at least having the registers gets you there most of the way.