Surely most of this file is superseded by spi_common_all.h?  I guess that landed after you'd already started this work?