When implementing the port for the CC3200 Wi-Fi controller, the team encountered a couple drawbacks of the TI implemented file system – no file listing capability and predeclaring the size of the file before creating it. To overcome this, they created a wrapper/container around the TI file system using SPIFSS.
We examined suitable full feature file systems that would work on Flash. One of them is the SPI Flash File System (SPIFFS). This system is designed for raw Flash access and we use it on other platforms where no file system interface is provided by the SDK.
This is where we came up against the hurdle that TI doesn’t provide access to raw Flash. The only way to access Flash storage is through the TI file system. At this point a shout out to the TI forum engineers who always provide answers to our queries! Unfortunately, in his response a TI engineer confirmed that there is no way to access the SPI flash directly.
In light of this, we decided to try to implement SPIFFS in a TIFS file container. This way, a single large TIFS file would contain a whole SPIFFS file system and we’d have POSIX API mapped to SPIFFS file functions.
The end result is a full feature POSIX file system on TI CC3200.