I'm using gdb, openocd and stlink to debug an application running on STM32H7. When data cache (DCache) is enabled, debugger does not show correct values. For example if I run this:
int foo;
int main()
{
foo = 1234;
while(1);
}
debugger shows foo as 0. Apparently it is reading the values really in RAM, instead of the values in data cache like I would expect it to.