You are right, XIP cache is meant to be used for eXecute In Place. Mixing types of read will only pollute the cache with not so useful data.Well, the bottleneck is going to be the QSPI flash read, as the data you are trying to access is not likely in the cache. If the data you are reading from the virtual filesystem is small enough to fit in the 16kB cache, you're probably better of putting it in RAM.
My point is: the XIP cache is probably best left to its actual purpose: caching program data to be eXecuted In Place. I can't see a use case where you'd want to use it for virtual filesystems.
And keep in mid that writes to Flash are not working through XIP cache like it does with PSRAM.
Better to have a RAM based cache (as I've seen in some implementations), and do larger sequential reads/writes, where QSPI is more efficient than short random accesses.
Statistics: Posted by gmx — Tue Sep 02, 2025 5:52 pm