]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/board.py
add I2C and SPI singletons for some drivers
[Adafruit_Blinka-hackapet.git] / src / board.py
index a706400e4539392efe0fa66d4235676a6704c3ae..c89fd43ddcb0fa3a141fbadef00b7f2747f8a817 100755 (executable)
@@ -29,20 +29,62 @@ See `CircuitPython:board` in CircuitPython for more details.
 """
 import sys
 
-from adafruit_blinka.agnostic import board_id
+from adafruit_blinka.agnostic import board_id, detector
+import adafruit_platformdetect.board as ap_board
 
-if board_id == "feather_huzzah":
+# pylint: disable=wildcard-import,unused-wildcard-import,ungrouped-imports
+
+if board_id == ap_board.FEATHER_HUZZAH:
     from adafruit_blinka.board.feather_huzzah import *
-elif board_id == "nodemcu":
+
+elif board_id == ap_board.NODEMCU:
     from adafruit_blinka.board.nodemcu import *
-elif board_id == "pyboard":
+
+elif board_id == ap_board.PYBOARD:
     from adafruit_blinka.board.pyboard import *
-elif board_id == "raspi_2" or board_id == "raspi_3":
-    from adafruit_blinka.board.raspi_23 import *
-elif board_id == "beaglebone_black":
+
+elif detector.board.any_raspberry_pi_40_pin:
+    from adafruit_blinka.board.raspi_40pin import *
+
+elif detector.board.RASPBERRY_PI_B_REV1:
+    from adafruit_blinka.board.raspi_1b_rev1 import *
+
+elif detector.board.RASPBERRY_PI_B_REV2:
+    from adafruit_blinka.board.raspi_1b_rev2 import *
+
+elif board_id == ap_board.BEAGLEBONE_BLACK:
     from adafruit_blinka.board.beaglebone_black import *
+
+elif board_id == ap_board.ORANGE_PI_PC:
+    from adafruit_blinka.board.orangepipc import *
+
+elif board_id == ap_board.GIANT_BOARD:
+    from adafruit_blinka.board.giantboard import *
+
+elif board_id == ap_board.JETSON_TX1:
+    from adafruit_blinka.board.jetson_tx1 import *
+
+elif board_id == ap_board.JETSON_TX2:
+    from adafruit_blinka.board.jetson_tx2 import *
+
+elif board_id == ap_board.JETSON_XAVIER:
+    from adafruit_blinka.board.jetson_xavier import *
+
+elif board_id == ap_board.JETSON_TXX:
+    from adafruit_blinka.board.jetson_txx import *
+
 elif "sphinx" in sys.modules:
     pass
+
 else:
-    print("board.py: board not supported")
     raise NotImplementedError("Board not supported")
+
+def I2C():
+    """The singleton I2C interface"""
+    import busio
+    return busio.I2C(SCL, SDA)
+
+def SPI():
+    """The singleton SPI interface"""
+    import busio
+    return busio.SPI(SCLK, MOSI, MISO)