]> Repositories - Adafruit_Blinka-hackapet.git/commitdiff
Add Clockwork Pi board
authorJohannes Lundberg <johalun0@gmail.com>
Mon, 13 Apr 2020 16:46:51 +0000 (09:46 -0700)
committerJohannes Lundberg <johalun0@gmail.com>
Tue, 14 Apr 2020 00:34:38 +0000 (17:34 -0700)
src/adafruit_blinka/board/clockworkcpi3.py [new file with mode: 0644]
src/adafruit_blinka/microcontroller/allwinner/a33/__init__.py [new file with mode: 0644]
src/adafruit_blinka/microcontroller/allwinner/a33/pin.py [new file with mode: 0644]
src/board.py
src/busio.py
src/digitalio.py
src/microcontroller/__init__.py
src/microcontroller/pin.py

diff --git a/src/adafruit_blinka/board/clockworkcpi3.py b/src/adafruit_blinka/board/clockworkcpi3.py
new file mode 100644 (file)
index 0000000..2e8a00b
--- /dev/null
@@ -0,0 +1,33 @@
+"""Pin definitions for the Clockwork Pi (CPI3) board."""
+
+from adafruit_blinka.microcontroller.allwinner.a33 import pin
+
+# Clockwork Pi GPIO port (DEBUG section in datasheet)
+
+# Type         Pin # (ext.)    Pin # (Package)         Function 1      Function 2      Pin # (sysfs)   Color
+# 3V0  1                                                                                       blue
+# GPIO         2               PB0                     UART0/2_TX      PB-EINT0        32              green
+# GPIO         3               PB1                     UART0/2_RX      PB-EINT1        33              yellow
+# GND  4                                                                                       white
+# GPIO         5               PH5                     I2C1-SDA                        229             red
+# GPIO         6               PH4                     I2C1-SCL                        228             brown
+# GND  7                                                                                       black
+# GPIO         8               PH6                     UART3-TX        SPI0-CS         230             blue
+# GPIO 9               PH7                     UART3-RX        SPI0-CLK        231             green
+# GPIO         10              PH9                     UART3-CTS       SPI0-MISO       233             yellow
+# GPIO         11              PH8                     UART3-RTS       SPI0-MOSI       232             white
+# GND  12                                                                                      red
+# 5V0  13                                                                                      brown
+# 5V0  14                                                                                      black
+
+PB0 = pin.PB0
+PB1 = pin.PB1
+TX = PB0
+RX = PB1
+
+SCL = pin.PH4
+SDA = pin.PH5
+
+SCLK = pin.PH7
+MOSI = pin.PH8
+MISO = pin.PH9
diff --git a/src/adafruit_blinka/microcontroller/allwinner/a33/__init__.py b/src/adafruit_blinka/microcontroller/allwinner/a33/__init__.py
new file mode 100644 (file)
index 0000000..bd5f1fe
--- /dev/null
@@ -0,0 +1 @@
+"""Definition for the AllWinner A33 chip"""
diff --git a/src/adafruit_blinka/microcontroller/allwinner/a33/pin.py b/src/adafruit_blinka/microcontroller/allwinner/a33/pin.py
new file mode 100644 (file)
index 0000000..b12331b
--- /dev/null
@@ -0,0 +1,49 @@
+from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
+
+PB0 = Pin(32) # PB0/UART2_TX/UART0_TX/PB_EINT0
+UART2_TX = PB0
+PB1 = Pin(33) # PB1/UART2_RX/UART0_RX/PB_EINT1
+UART2_RX = PB1
+
+PC0 = Pin(64) # PC0/ND_WE/SPI0_MOSI
+PC1 = Pin(65) # PC1/ND_ALE/SPI0_MISO
+PC2 = Pin(66) # PC2/ND_CLE/SPI0_CLK
+
+PH4 = Pin(228) # PH4/TWI1_SCK
+TWI1_SCL = PH4
+PH5 = Pin(229) # PH5/TWI1_SDA
+TWI1_SDA = PH5
+
+
+PH6 = Pin(230) # PH6/SPI0_CS/UART3_TX
+UART3_TX = PH6
+SPI0_CS = PH6
+
+PH7 = Pin(231) # PH7/SPI0_CLK/UART3_RX
+UART3_RX = PH7
+SPI0_SCLK = PH7
+
+PH8 = Pin(232) # PH8/SPI0_MOSI/UART3_RTS
+UART3_RTS = PH8
+SPI0_MOSI = PH8
+
+PH9 = Pin(233) # PH9/SPI0_MISO/UART3_CTS
+UART3_CTS = PH9
+SPI0_MISO = PH9
+
+
+# ordered as i2cId, sclId, sdaId
+i2cPorts = (
+    (0, TWI1_SCL, TWI1_SDA),
+)
+
+# ordered as spiId, sckId, mosiId, misoId
+spiPorts = (
+    (0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
+)
+
+# ordered as uartId, txId, rxId
+uartPorts = (
+    (2, UART2_TX, UART2_RX),
+    (3, UART3_TX, UART3_RX),
+)
index ddf008b0c6b39b8f3b0871690a5cdcbb9c0ec790..ac44458151c39efd2c34bca279b14e9c0dfdbf29 100755 (executable)
@@ -140,6 +140,9 @@ elif board_id == ap_board.SIFIVE_UNLEASHED:
 elif board_id == ap_board.PINE64:
     from adafruit_blinka.board.pine64 import *
 
+elif board_id == ap_board.CLOCKWORK_CPI3:
+    from adafruit_blinka.board.clockworkcpi3 import *
+
 elif "sphinx" in sys.modules:
     pass
 
index 4ae46919a0078be591a70e175b0749d2046c7441..160dd9b0f4b4973981fc02de684bb738076a7d0f 100755 (executable)
@@ -175,7 +175,9 @@ class SPI(Lockable):
         elif board_id == ap_board.PINE64 or board_id == ap_board.PINEBOOK or board_id == ap_board.PINEPHONE:
             from adafruit_blinka.microcontroller.allwinner.a64.pin import Pin
             from adafruit_blinka.microcontroller.generic_linux.spi import SPI as _SPI
-
+        elif board_id == ap_board.CLOCKWORK_CPI3:
+            from adafruit_blinka.microcontroller.allwinner.a33.pin import Pin
+            from adafruit_blinka.microcontroller.generic_linux.spi import SPI as _SPI
         else:
             from machine import SPI as _SPI
             from machine import Pin
index a29771cdf59dffbef9520bf1013cf4795c195214..56e005b7c4f03c7e8a645902b64cacc5cfac4164 100755 (executable)
@@ -39,6 +39,8 @@ elif detector.chip.HFU540:
     from adafruit_blinka.microcontroller.hfu540.pin import Pin
 elif detector.chip.A64:
     from adafruit_blinka.microcontroller.allwinner.a64.pin import Pin
+elif detector.chip.A33:
+    from adafruit_blinka.microcontroller.allwinner.a33.pin import Pin
 elif detector.board.ftdi_ft232h:
     from adafruit_blinka.microcontroller.ft232h.pin import Pin
 elif detector.board.binho_nova:
index a7ab0a38025d6434f4ecc7abb0548f33b9751492..528ae14f9469301ba0ced1b2025774f1d52a32fe 100755 (executable)
@@ -52,6 +52,8 @@ elif chip_id == ap_chip.APQ8016:
     from adafruit_blinka.microcontroller.snapdragon.apq8016.pin import *
 elif chip_id == ap_chip.A64:
     from adafruit_blinka.microcontroller.allwinner.a64.pin import *
+elif chip_id == ap_chip.A33:
+    from adafruit_blinka.microcontroller.allwinner.a33.pin import *
 elif chip_id == ap_chip.IMX8MX:
     from adafruit_blinka.microcontroller.nxp_imx8m import *
 elif chip_id == ap_chip.HFU540:
index 45b77030cd9d7cf0d24569c1c7466fddd29a8161..74149d8a98bc707ae0bdc7b6da597e42f2bbb147 100755 (executable)
@@ -44,6 +44,8 @@ elif chip_id == ap_chip.MCP2221:
     from adafruit_blinka.microcontroller.mcp2221.pin import *
 elif chip_id == ap_chip.A64:
     from adafruit_blinka.microcontroller.allwinner.a64.pin import *
+elif chip_id == ap_chip.A33:
+    from adafruit_blinka.microcontroller.allwinner.a33.pin import *
 elif chip_id == ap_chip.MIPS24KC:
     from adafruit_blinka.microcontroller.atheros.ar9331.pin import *
 else: