Dear OpenOCD developers, I believe there are two issues in the current implementation of the register cache (struct reg_cache):
1) The user has no control over flush & invalidation of the cache items. Having the control over when the actual register read and write from/to the hardware happens is needed when OpenOCD is used for HW testing. 2) Issuing force-read (command `get_reg -force <reg_name>`) causes dirty (unwritten) cached values to get silently dropped. This issue is demonstrated in [1]. In [2], there are three solutions proposed that address both the issues above. To whom it concerns - could you please see the comment [2] and let me know what solution you prefer. I am happy to implement either solution, but would like to know the reviewers' opinion before starting (or continuing) the work. Thank you! Regards, Jan [1] https://review.openocd.org/c/openocd/+/8070/comments/374cda98_a6de0898 [2] https://review.openocd.org/c/openocd/+/8070/comments/be8d6e4e_edb92c2f <http://www.codasip.com>