This patch takes the software SPI implementation from extmod/machine_spi.c and moves it to a dedicated file in drivers/bus/softspi.c. This allows the SPI driver to be used independently of the uPy runtime, making it a more general component.
A new directory drivers/bus/ is introduced, which can hold implementations of bus drivers. A software QSPI implementation is added.