Hi Martin
Originally there was an SPI interface following the serial pattern (interrupt driven with input and output buffers). V1.2 probably still has this.
However the problem is that SPI rarely falls into this category. Often there are special requirements for the CS control, Tx and Rx can only take place together and many chips require certain formats (like addressing, command and then data, etc.). Therefore a generic SPI interface like UART didn't make that much sense.
Essentially I take an existing interface (SPI FLASH driver or the spi_sc16IS7xx.h as you suggest) and use the same tx and rx methods from it. SPI is usually fast and code will simply send an read a few bytes as fast as possible and using an interrupt driver wouldn't result in any improvement in efficiency. It is also simple code to write (just make sure you wait for complete Tx and Rx, depending on whether Rx is important [using the right flags])].
Regards
Mark