]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/adafruit_blinka/microcontroller/rp2040_u2if/spi.py
Untangle code and remove pylint disables
[Adafruit_Blinka-hackapet.git] / src / adafruit_blinka / microcontroller / rp2040_u2if / spi.py
index 4d0bf86d46076a72244771e8e969b62a87085c2f..0acc5e62fcde6ad86b5f5fc70f5c607a3dc82a40 100644 (file)
@@ -1,6 +1,10 @@
+# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
+#
+# SPDX-License-Identifier: MIT
 """SPI Classes for RP2040s with u2if firmware"""
 from .rp2040_u2if import rp2040_u2if
 
+
 # pylint: disable=protected-access, no-self-use
 class SPI:
     """SPI Base Class for RP2040 u2if"""
@@ -63,7 +67,9 @@ class SPI:
 
     # pylint: enable=too-many-arguments
 
+
 class SPI_Pico(SPI):
+    """SPI Class for Pico u2if"""
 
     def __init__(self, clock, *, baudrate=100000):
         index = None
@@ -75,7 +81,71 @@ class SPI_Pico(SPI):
             raise ValueError("No SPI port on specified pin.")
         super().__init__(index, baudrate=baudrate)
 
+
 class SPI_Feather(SPI):
+    """SPI Class for Feather u2if"""
+
+    def __init__(self, clock, *, baudrate=100000):
+        index = None
+        if clock.id == 18:
+            index = 0
+        if index is None:
+            raise ValueError("No SPI port on specified pin.")
+        super().__init__(index, baudrate=baudrate)
+
+
+class SPI_Feather_CAN(SPI):
+    """SPI Class for Feather EPD u2if"""
+
+    def __init__(self, clock, *, baudrate=100000):
+        index = None
+        if clock.id == 14:
+            index = 1
+        if index is None:
+            raise ValueError("No SPI port on specified pin.")
+        super().__init__(index, baudrate=baudrate)
+
+
+class SPI_Feather_EPD(SPI):
+    """SPI Class for Feather EPD u2if"""
+
+    def __init__(self, clock, *, baudrate=100000):
+        index = None
+        if clock.id == 22:
+            index = 0
+        if clock.id == 14:
+            index = 1
+        if index is None:
+            raise ValueError("No SPI port on specified pin.")
+        super().__init__(index, baudrate=baudrate)
+
+
+class SPI_Feather_RFM(SPI):
+    """SPI Class for Feather EPD u2if"""
+
+    def __init__(self, clock, *, baudrate=100000):
+        index = None
+        if clock.id == 14:
+            index = 1
+        if index is None:
+            raise ValueError("No SPI port on specified pin.")
+        super().__init__(index, baudrate=baudrate)
+
+
+class SPI_QTPY(SPI):
+    """SPI Class for QT Py u2if"""
+
+    def __init__(self, clock, *, baudrate=100000):
+        index = None
+        if clock.id == 6:
+            index = 0
+        if index is None:
+            raise ValueError("No SPI port on specified pin.")
+        super().__init__(index, baudrate=baudrate)
+
+
+class SPI_ItsyBitsy(SPI):
+    """SPI Class for ItsyBitsy u2if"""
 
     def __init__(self, clock, *, baudrate=100000):
         index = None
@@ -83,4 +153,28 @@ class SPI_Feather(SPI):
             index = 0
         if index is None:
             raise ValueError("No SPI port on specified pin.")
-        super().__init__(index, baudrate=baudrate)
\ No newline at end of file
+        super().__init__(index, baudrate=baudrate)
+
+
+class SPI_MacroPad(SPI):
+    """SPI Class for MacroPad u2if"""
+
+    def __init__(self, clock, *, baudrate=100000):
+        index = None
+        if clock.id == 26:
+            index = 1
+        if index is None:
+            raise ValueError("No SPI port on specified pin.")
+        super().__init__(index, baudrate=baudrate)
+
+
+class SPI_KB2040(SPI):
+    """SPI Class for KB2040 u2if"""
+
+    def __init__(self, clock, *, baudrate=100000):
+        index = None
+        if clock.id == 18:
+            index = 0
+        if index is None:
+            raise ValueError("No SPI port on specified pin.")
+        super().__init__(index, baudrate=baudrate)