This has the significant disadvantage of requiring application code writers to be too familar with the low-level synchronization assumptions for the interface and runs a significant risk of leading to flawed code. We could add the select GPIO pin as a (pair) of parameters to the SPI interface as in: