SPI is a family of device-specific serial contracts — CPOL, CPHA, chip-select timing, word format and shift order must agree.
Mode 0-3: CPOL (idle clock level) × CPHA (sample edge).
Chip select: active level, setup/hold time relative to clock.
Full-duplex: MOSI and MISO shift simultaneously.
Another serial timing contract — mode mismatch produces garbage data, not protocol errors.
No. It must already satisfy setup before that sample; later bits are prepared on the opposite edge.