+ if detector.board.greatfet_one:
+ from adafruit_blinka.microcontroller.nxp_lpc4330.spi import SPI as _SPI
+ from adafruit_blinka.microcontroller.nxp_lpc4330.pin import SCK, MOSI, MISO
+
+ self._spi = _SPI()
+ self._pins = (SCK, MOSI, MISO)
+ return
+ if detector.board.pico_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import SPI_Pico as _SPI
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.feather_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import (
+ SPI_Feather as _SPI,
+ )
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.feather_can_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import (
+ SPI_Feather_CAN as _SPI,
+ )
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.feather_epd_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import (
+ SPI_Feather_EPD as _SPI,
+ )
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.feather_rfm_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import (
+ SPI_Feather_RFM as _SPI,
+ )
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.itsybitsy_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import (
+ SPI_ItsyBitsy as _SPI,
+ )
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.macropad_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import (
+ SPI_MacroPad as _SPI,
+ )
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.qtpy_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import SPI_QTPY as _SPI
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.kb2040_u2if:
+ from adafruit_blinka.microcontroller.rp2040_u2if.spi import (
+ SPI_KB2040 as _SPI,
+ )
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.chip.id == ap_chip.RP2040:
+ from adafruit_blinka.microcontroller.rp2040.spi import SPI as _SPI
+
+ self._spi = _SPI(clock, MOSI, MISO) # Pins configured on instantiation
+ self._pins = (clock, clock, clock) # These don't matter, they're discarded
+ return
+ if detector.board.any_siemens_iot2000:
+ from adafruit_blinka.microcontroller.am65xx.spi import SPI as _SPI
+
+ self._spi = _SPI(clock) # this is really all that's needed
+ self._pins = (clock, clock, clock) # will determine MOSI/MISO from clock
+ return
+ if detector.board.any_embedded_linux: