I built Regdrift, a CLI and GitHub Action for detecting breaking CMSIS-SVD changes
I've been working on Regdrift, my first open-source project. It's a CLI and GitHub Action that compares two CMSIS-SVD files to check whether there are any register-map changes that could affect firmware functionality.
It catches changes such as moved registers, interrupt renumbering, access changes, and altered read/write behavior. It then classifies those changes as BREAKING, WARNING, or SAFE so the tool can act as a CI gate.
I'm looking for feedback from people who maintain SVDs, HALs, PACs, SDKs, or firmware repositories. If possible, I'd like to test it against real old/new SVD pairs and learn where the classifications produce false positives, miss important changes, or are unclear.
For people who work frequently with CMSIS-SVD files: which types of register-map changes are most detrimental to firmware or cause the most difficult code-related problems?
Resources
- GitHub: https://github.com/Pranav-s79/regdrift
- Install:
pip install regdrift - Usage:
regdrift check old.svd new.svd
Comments
No comments yet. Start the discussion.