So, today I have enabled the cache and what I receive over UART when testing on device is garbage.
UART works fine when caching is disabled
Everything works - even with caching enabled - when running in Qemu
The only thing that appears to go wrong when running it on a Pi3 with caching enabled is my UART
output is a garbled mess. (The amount of garbage is proportional to the amount I try to send over UART)
Anyone have any idea what could be causing this?
Anyway of figuring out where it is going wrong? (I have tried a lot of stuff)
As a test, I tried enabling caching in this demo: https://github.com/bztsrc/raspi3-tutori ... tualmemory and did not see any output. Does it work for anyone else? (I use that as an example as my page tables + system registers are setup in an almost identical way)