Custom zero board- mux 3 spi ports, 1 i2s

hello:

I'm on a project involving 1 i2s for audio stream, 1 oled on spi, 1 slave device on spi and 1 sd card on spi, on a samd21G18a custom zero type board.

my slave device and oled are working, though i ran into a problem using the u8x8 library. didn't realize that everything on the same spi bus has to run hardware spi, which my board wasn't wired as. So i'm onto a new revision and rethinking how to set up my 3 spi ports.

Currently thinking each device is going to get its own spi bus. I know this sort of defeats the purpose of spi but I don't want to run into any more conflicts down the line and my software spi seems to work well.

I would appreciate another set of eyes on my pin choices to see if I got this all right.

samd.pdf (36.7 KB)

SPI is a bus intended for several periferals. Each periferal is activated by a device/chip select line. One such line per SPI device is needed.
You can post the pdf here. Many helpers don't download files filling up their computers.