]> Repositories - Adafruit_Blinka-hackapet.git/commitdiff
Merge remote-tracking branch 'adafruit/main'
authorRyan L <ryestar101@gmail.com>
Thu, 3 Nov 2022 15:28:23 +0000 (15:28 +0000)
committerRyan L <ryestar101@gmail.com>
Thu, 3 Nov 2022 15:28:23 +0000 (15:28 +0000)
src/adafruit_blinka/board/linksprite/__init__.py [new file with mode: 0644]
src/adafruit_blinka/board/linksprite/pcduino2.py [new file with mode: 0644]
src/adafruit_blinka/board/linksprite/pcduino3.py [new file with mode: 0644]
src/adafruit_blinka/microcontroller/allwinner/a10/__init__.py [new file with mode: 0644]
src/adafruit_blinka/microcontroller/allwinner/a10/pin.py [new file with mode: 0644]
src/analogio.py
src/board.py
src/digitalio.py
src/microcontroller/__init__.py
src/microcontroller/pin.py
src/pwmio.py

diff --git a/src/adafruit_blinka/board/linksprite/__init__.py b/src/adafruit_blinka/board/linksprite/__init__.py
new file mode 100644 (file)
index 0000000..333c1b1
--- /dev/null
@@ -0,0 +1 @@
+"""Boards definition from Linksprite Pcduino based boards"""
diff --git a/src/adafruit_blinka/board/linksprite/pcduino2.py b/src/adafruit_blinka/board/linksprite/pcduino2.py
new file mode 100644 (file)
index 0000000..908844d
--- /dev/null
@@ -0,0 +1,63 @@
+"""Pin definitions for the Pcduino2."""
+from adafruit_blinka.microcontroller.allwinner.a10 import pin
+
+#J11 Header
+D0 = pin.PI19
+D1 = pin.PI18
+D2 = pin.PH7
+D3 = pin.PH6
+D4 = pin.PH8
+D5 = pin.PB2
+D6 = pin.PI3
+D7 = pin.PH9
+
+#J8 Header
+D8 = pin.PH10
+D9 = pin.PH5
+D10 = pin.PI10
+D11 = pin.PI12
+D12 = pin.PI13
+D13 = pin.PI11
+SDA = pin.PB21
+SCL = pin.PB20
+
+#J9 Header
+#A0 & A1 are LRADC pins with only 6-bit resolution and unlike other pins are only limited to 2v
+A2 = pin.XP_TP
+A3 = pin.XN_TP
+A4 = pin.YP_TP
+A5 = pin.YN_TP
+
+#P7 Header
+SCLK = D13
+SCK = SCLK
+MOSI = D11
+MISO = D12
+CS = D10
+
+
+#P6 Header
+SCLK2 = pin.PC20
+SCK2 = SCLK2
+MOSI2 = pin.PC21
+MISO2 = pin.PC22
+CS2 = pin.PC19
+
+#P10 Header
+D14 = pin.PH11
+D15 = pin.PH12
+D16 = pin.PH13
+D17 = pin.PH14
+
+UART2_TX = D1
+UART2_RX = D0
+UART5_TX = D3
+UART5_RX = D2
+
+PWM0 = D5
+PWM1 = D6
+
+#Misc
+BACK_SW = pin.PH17 #Three buttons featured on the board
+HOME_SW = pin.PH18
+MENU_SW = pin.PH19
diff --git a/src/adafruit_blinka/board/linksprite/pcduino3.py b/src/adafruit_blinka/board/linksprite/pcduino3.py
new file mode 100644 (file)
index 0000000..1c71275
--- /dev/null
@@ -0,0 +1,65 @@
+"""Pin definitions for the Pcduino3."""
+from adafruit_blinka.microcontroller.allwinner.a10 import pin
+
+#Pin wise this is the same as the Pcduino2 but features a daul core A20 rather than a single core A10
+
+#J11 Header
+D0 = pin.PI19
+D1 = pin.PI18
+D2 = pin.PH7
+D3 = pin.PH6
+D4 = pin.PH8
+D5 = pin.PB2
+D6 = pin.PI3
+D7 = pin.PH9
+
+#J8 Header
+D8 = pin.PH10
+D9 = pin.PH5
+D10 = pin.PI10
+D11 = pin.PI12
+D12 = pin.PI13
+D13 = pin.PI11
+SDA = pin.PB21
+SCL = pin.PB20
+
+#J9 Header
+#A0 & A1 are LRADC pins with only 6-bit resolution and unlike other pins are only limited to 2v
+A2 = pin.XP_TP
+A3 = pin.XN_TP
+A4 = pin.YP_TP
+A5 = pin.YN_TP
+
+#P7 Header
+SCLK = D13
+SCK = SCLK
+MOSI = D11
+MISO = D12
+CS = D10
+
+
+#P6 Header
+SCLK2 = pin.PC20
+SCK2 = SCLK2
+MOSI2 = pin.PC21
+MISO2 = pin.PC22
+CS2 = pin.PC19
+
+#P10 Header
+D14 = pin.PH11
+D15 = pin.PH12
+D16 = pin.PH13
+D17 = pin.PH14
+
+UART2_TX = D1
+UART2_RX = D0
+UART5_TX = D3
+UART5_RX = D2
+
+PWM0 = D5
+PWM1 = D6
+
+#Misc
+BACK_SW = pin.PH17 #Three buttons featured on the board
+HOME_SW = pin.PH18
+MENU_SW = pin.PH19
diff --git a/src/adafruit_blinka/microcontroller/allwinner/a10/__init__.py b/src/adafruit_blinka/microcontroller/allwinner/a10/__init__.py
new file mode 100644 (file)
index 0000000..24786e4
--- /dev/null
@@ -0,0 +1 @@
+"""Definition for the AllWinner A10 chip"""
diff --git a/src/adafruit_blinka/microcontroller/allwinner/a10/pin.py b/src/adafruit_blinka/microcontroller/allwinner/a10/pin.py
new file mode 100644 (file)
index 0000000..b4c3f47
--- /dev/null
@@ -0,0 +1,84 @@
+"""Allwinner A10 pin names"""
+from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
+
+PB2 = Pin(34) #PB2/PWM0 
+PWM0 = PB2
+PB20 = Pin(52) #PB20/TWI2_SDL
+TWI2_SCL = PB20
+PB21 = Pin(53) #PB20/TWI2_SDA
+TWI2_SDA = PB21
+
+PC19 = Pin(83) #PC19/SPI2_CS
+SPI2_CS = PC19
+PC20 = Pin(84) #PC20/SPI2_SCLK
+SPI2_SCLK = PC20
+PC21 = Pin(85) #PC21/SPI2_MOSI
+SPI2_MOSI = PC21
+PC22 = Pin(86) #PC22/SPI2_MISO
+SPI2_MISO = PC22
+
+PH5 = Pin(229)
+PH6 = Pin(230) #PH6/UART5_TX
+UART5_TX = PH6
+PH7 = Pin(231) #PH7/UART5_RX
+UART5_RX = PH7
+PH8 = Pin(232)
+PH9 = Pin(233)
+PH10 = Pin(234)
+PH11 = Pin(235)
+PH12 = Pin(236)
+PH13 = Pin(237)
+PH14 = Pin(238)
+PH15 = Pin(239)
+PH16 = Pin(240)
+PH17 = Pin(241)
+PH18 = Pin(242)
+PH19 = Pin(243)
+
+PI3 = Pin(259) #PI3/PWM1
+PWM1 = PI3
+PI10 = Pin(266) #PI10/SPI0_CS/UART5_TX
+SPI0_CS = PI10 
+PI11 = Pin(267) #PI11/SPI0_SCLK/UART5_RX
+SPI0_SCLK = PI11
+PI12 = Pin(268)
+SPI0_MOSI = PI12
+UART6_TX = PI12
+PI13 = Pin(269)
+SPI0_MISO = PI13
+UART6_RX = PI13
+PI18 = Pin(274) #PI18/UART2_TX
+UART2_TX = PI18
+PI19 = Pin(275) #PI19/UART2_RX
+UART2_RX = PI19
+
+XP_TP = 1 #Allwinner touch panel controller as able to operate as four seperate adc chanels
+XN_TP = 2 #offering 12-bit resolution.
+YP_TP = 3
+YN_TP = 4 
+
+# Ordered as i2cId, SCL, SDA
+i2cPorts =((2, TWI2_SCL, TWI2_SDA),)
+
+# Ordered as spiId, clkId, mosiId, misoId
+spiPorts =((0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
+           (2, SPI2_SCLK, SPI2_MOSI, SPI2_MISO),
+)
+
+# ordered as uartId, txId, rxId
+uartPorts = (
+    (2, UART2_TX, UART2_RX),
+    (5, UART5_TX, UART5_RX),
+    (6, UART6_TX, UART6_RX),
+)
+# sysFs pwm outputs, pwm channel and pin first tuple
+pwmOuts = (((0,0), PWM0),
+           ((0,1), PWM1),
+)
+
+#sysFs analog inputs, Ordered as analogInId, device, and channel
+analogIns = ((XP_TP, 0, 0),
+             (XN_TP, 0, 1),
+             (YP_TP, 0, 2),
+             (YN_TP, 0, 3),
+)
index 4b7f9b06615dc33176557f4c024ac1cbb14ae025..87852de190c986222824b3c6ebddba5baeeddb5f 100644 (file)
@@ -33,6 +33,8 @@ elif detector.chip.IMX6ULL:
     from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
 elif detector.chip.STM32MP157:
     from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
+elif detector.chip.A10:
+    from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
 elif "sphinx" in sys.modules:
     pass
 elif detector.board.pico_u2if:
index c21ed309471a051f19d5a4728e1bf0c620387e96..70e6348e9c871983a53635fc53c60c94253c59be 100644 (file)
@@ -211,6 +211,12 @@ elif board_id == ap_board.PINE64:
 elif board_id == ap_board.PINEH64:
     from adafruit_blinka.board.pineH64 import *
 
+elif board_id == ap_board.PCDUINO2:
+    from adafruit_blinka.board.linksprite.pcduino2 import *
+
+elif board_id == ap_board.PCDUINO3:
+    from adafruit_blinka.board.linksprite.pcduino3 import *
+
 elif board_id == ap_board.SOPINE:
     from adafruit_blinka.board.soPine import *
 
index 30327062a6f85b131c435d40e1cf680e6334a3f0..2c6566a79a7059505228c3533046d95615a9afa2 100644 (file)
@@ -24,6 +24,10 @@ elif detector.chip.JH71x0:
     from adafruit_blinka.microcontroller.starfive.JH71x0.pin import Pin
 elif detector.chip.DRA74X:
     from adafruit_blinka.microcontroller.dra74x.pin import Pin
+elif detector.chip.SUN4I:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import Pin
+elif detector.chip.SUN7I:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import Pin
 elif detector.chip.SUN8I:
     from adafruit_blinka.microcontroller.allwinner.h3.pin import Pin
 elif detector.chip.SAMA5:
@@ -58,6 +62,10 @@ elif detector.chip.IMX6ULL:
     from adafruit_blinka.microcontroller.nxp_imx6ull.pin import Pin
 elif detector.chip.HFU540:
     from adafruit_blinka.microcontroller.hfu540.pin import Pin
+elif detector.chip.A10:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import Pin
+elif detector.chip.A30:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import Pin
 elif detector.chip.A64:
     from adafruit_blinka.microcontroller.allwinner.a64.pin import Pin
 elif detector.chip.A33:
index 5858481073a82f6741f2fe6c9047a648772320e0..d4dc4c47353e8db9b50edc9027112faa337c1f7a 100644 (file)
@@ -48,6 +48,10 @@ elif chip_id == ap_chip.AM65XX:
     from adafruit_blinka.microcontroller.am65xx import *
 elif chip_id == ap_chip.JH71x0:
     from adafruit_blinka.microcontroller.starfive.JH71x0 import *
+elif chip_id == ap_chip.SUN4I:
+    from adafruit_blinka.microcontroller.allwinner.a10 import *
+elif chip_id == ap_chip.SUN7I:
+    from adafruit_blinka.microcontroller.allwinner.a10 import *
 elif chip_id == ap_chip.SUN8I:
     from adafruit_blinka.microcontroller.allwinner.h3 import *
 elif chip_id == ap_chip.H5:
@@ -82,6 +86,10 @@ elif chip_id == ap_chip.EXYNOS5422:
     from adafruit_blinka.microcontroller.samsung.exynos5422 import *
 elif chip_id == ap_chip.APQ8016:
     from adafruit_blinka.microcontroller.snapdragon.apq8016 import *
+elif chip_id == ap_chip.A10:
+    from adafruit_blinka.microcontroller.allwinner.a10 import *
+elif chip_id == ap_chip.A20:
+    from adafruit_blinka.microcontroller.allwinner.a10 import *
 elif chip_id == ap_chip.A64:
     from adafruit_blinka.microcontroller.allwinner.a64 import *
 elif chip_id == ap_chip.A33:
index d21ccb2fda5bd037333bc75e818081316c724fcb..7d577001efb751a9868fa8474c13551f76948d24 100644 (file)
@@ -33,6 +33,10 @@ elif chip_id == ap_chip.AM65XX:
     from adafruit_blinka.microcontroller.am65xx.pin import *
 elif chip_id == ap_chip.JH71x0:
     from adafruit_blinka.microcontroller.starfive.JH71x0.pin import *
+elif chip_id == ap_chip.SUN4I:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import *
+elif chip_id == ap_chip.SUN7I:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import *
 elif chip_id == ap_chip.SUN8I:
     from adafruit_blinka.microcontroller.allwinner.h3.pin import *
 elif chip_id == ap_chip.H3:
@@ -85,6 +89,10 @@ elif chip_id == ap_chip.LPC4330:
     from adafruit_blinka.microcontroller.nxp_lpc4330.pin import *
 elif chip_id == ap_chip.MCP2221:
     from adafruit_blinka.microcontroller.mcp2221.pin import *
+elif chip_id == ap_chip.A10:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import *
+elif chip_id == ap_chip.A20:
+    from adafruit_blinka.microcontroller.allwinner.a10.pin import *
 elif chip_id == ap_chip.A64:
     from adafruit_blinka.microcontroller.allwinner.a64.pin import *
 elif chip_id == ap_chip.A33:
index ccf44209647be4c9e2987951a4fefc8d897cdc56..e2832975c7eca0136e994c527d56d315971177f1 100644 (file)
@@ -22,6 +22,8 @@ elif detector.board.any_coral_board:
     from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
 elif detector.board.any_giant_board:
     from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
+elif detector.board.any_pcduino_board:
+    from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PMWOut
 elif detector.board.any_beaglebone:
     from adafruit_blinka.microcontroller.am335x.sysfs_pwmout import PWMOut
 elif detector.board.any_siemens_simatic_iot2000: