Hello:
I am using the QSPI example on the NRF52840 dev board with the objective of implementing SPIFFS. After a lot of tinkering I believe this is not possible due to the fact that the QSPI seems to fail for reads/writes of less than 4 bytes. I found this forum post https://devzone.nordicsemi.com/f/nordic-q-a/53405/write-1-2-3-bytes-into-serial-flash-by-qspi but I have not been able to find more info.
I wanted to ask, what is the reason behind it? I just want to understand and poissibly to see if it is a HW restriction, SW restriction, has to do something with the DMA, etc. SPIFFS is sadly not word aligned (however I fixed that) and also uses the last two bytes of a page to keep track of a page use (and here is where it is failing! I get failures when SPIFFS tries to update the # of times a page has been erased, and the write never concludes since it sends 2 bytes).
If there is no solution we can try normal SPI, which has worked before. But I wanted to raise the question to understand more. Also, has somebody been able to implement SPIFFS on an NRF52 using QSPI?
Thank you!