spi: move more spi_setup() functionality into core