I kind of gave up using SPI on Linux SoC because I always ran into trouble using multiple devices on the SPI bus (chipselect control, DMA transfer issues), sometimes only high clock rates available (without changing a lot of the parent clocks) and general issues with IRQ triggered transfers. For my hobby projects I use MCUs now to do SPI and sometimes also I2C and other real-time critical tasks, kind of like the sensor hub controller in most mobile devices and then send the aggregated data to/from the Linux SoC...
Come have a chat in the Pine IRC channel >>