Hi Jorge,
Yes, concatenating buffers will work but I'm not a fan of (1) allocating memory and (2) spending operations on copying chunks.
I could modify the master driver as you suggest, but again not a fan because as you guys provide updates to the SDK, I have to remember to go in and change your API.
So perhaps this can be seen as a feature request to support a last_transaction flag in the API.
As a side, I think this is a regression in the API as looking at old code (MQX 4.2 era), the spi_memory.c would call fflush(spifd) at the end of the multi-block transfer to deassert the Chip Select. (But perhaps internally, the fwrites were allocating memory!)
-Raj