From: Ryan L Date: Thu, 3 Nov 2022 15:28:23 +0000 (+0000) Subject: Merge remote-tracking branch 'adafruit/main' X-Git-Tag: 8.23.0~1^2~20 X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/commitdiff_plain/494fc9fb46873dd14c555664e14070a9e456c1df?hp=8f8094e85d0290b4b4fcb8e7d9f4cd8c6f99b95b Merge remote-tracking branch 'adafruit/main' --- diff --git a/src/adafruit_blinka/board/bananapi/bpim2plus.py b/src/adafruit_blinka/board/bananapi/bpim2plus.py new file mode 100644 index 0000000..d622d18 --- /dev/null +++ b/src/adafruit_blinka/board/bananapi/bpim2plus.py @@ -0,0 +1,82 @@ +# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries +# +# SPDX-License-Identifier: MIT +"""Pin definitions for the Banana Pi M2 Zero.""" + +# The Banana Pi M2 Plus uses the AllWinner H3 SoC, but pins +# are the same as the AllWinner H3 SoC, so we import those +from adafruit_blinka.microcontroller.allwinner.h3 import pin + +PA12 = pin.PA12 +SDA = pin.PA12 +PA11 = pin.PA11 +SCL = pin.PA11 +PA6 = pin.PA6 +PWM1 = pin.PA6 +PA1 = pin.PA1 +UART2_RX = pin.PA1 +PA0 = pin.PA0 +UART2_TX = pin.PA0 +PA3 = pin.PA3 +UART2_CTS = pin.PA3 +PA10 = pin.PA10 +PA12 = pin.PA12 +SDA = pin.PA12 +PA11 = pin.PA11 +SCL = pin.PA11 +PA6 = pin.PA6 +PWM1 = pin.PA6 +PA1 = pin.PA1 +UART2_RX = pin.PA1 +PA0 = pin.PA0 +UART2_TX = pin.PA0 +PA3 = pin.PA3 +UART2_CTS = pin.PA3 +PA7 = pin.PA7 +PA8 = pin.PA8 +PA9 = pin.PA9 +PA10 = pin.PA10 +PA17 = pin.PA17 +PA18 = pin.PA18 +PA19 = pin.PA19 +PA20 = pin.PA20 +PA21 = pin.PA21 +PC0 = pin.PC0 +PC1 = pin.PC1 +PC2 = pin.PC2 +PC3 = pin.PC3 +PC4 = pin.PC4 +PC7 = pin.PC7 + +PA13 = pin.PA13 +SPI1_CS = pin.PA13 +PA14 = pin.PA14 +SPI1_CLK = pin.PA14 +PA2 = pin.PA2 +UART2_RTS = pin.PA2 +PA18 = pin.PA18 +TWI1_SCK = pin.PA18 + +PL2 = pin.PL2 +PL4 = pin.PL4 + +SCLK = pin.PA14 +MOSI = pin.PA15 +MISO = pin.PA16 + +PA13 = pin.PA13 +SPI1_CS = pin.PA13 +PA14 = pin.PA14 +SPI1_CLK = pin.PA14 +PA2 = pin.PA2 +UART2_RTS = pin.PA2 +PA18 = pin.PA18 +TWI1_SCK = pin.PA18 +PG6 = pin.PG6 +UART1_TX = pin.PG6 +PG7 = pin.PG7 +UART1_RX = pin.PG7 + +SCLK = pin.PA14 +MOSI = pin.PA15 +MISO = pin.PA16 diff --git a/src/adafruit_blinka/board/librecomputer/__init__.py b/src/adafruit_blinka/board/librecomputer/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/adafruit_blinka/board/librecomputer/aml_s905x_cc_v1.py b/src/adafruit_blinka/board/librecomputer/aml_s905x_cc_v1.py new file mode 100644 index 0000000..e84812c --- /dev/null +++ b/src/adafruit_blinka/board/librecomputer/aml_s905x_cc_v1.py @@ -0,0 +1,63 @@ +# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries +# +# SPDX-License-Identifier: MIT +"""Pin definitions for the AML-S905X-CC-V1.""" + +from adafruit_blinka.microcontroller.amlogic.s905x import pin + +for it in pin.i2cPorts: + globals()["SCL" + str(it[0])] = it[1] + globals()["SDA" + str(it[0])] = it[2] + +SCL = pin.i2cPorts[0][1] +SDA = pin.i2cPorts[0][2] + +SCLK = pin.SPI1_SCLK +MOSI = pin.SPI1_MOSI +MISO = pin.SPI1_MISO +SPI_CS = pin.SPI1_CS + +# Pinout reference: +# https://github.com/libre-computer-project/libretech-wiring-tool/blob/master/libre-computer/aml-s905x-cc/gpio.map + +# 40 pin Header 7J1 +P3 = pin.GPIO105 +P5 = pin.GPIO104 +P7 = pin.GPIO289 +P8 = pin.GPIO291 +P10 = pin.GPIO292 +P12 = pin.GPIO106 +P13 = pin.GPIO109 +P15 = pin.GPIO110 +P16 = pin.GPIO293 +P18 = pin.GPIO294 +P19 = pin.GPIO287 +P21 = pin.GPIO288 +P22 = pin.GPIO279 +P23 = pin.GPIO290 +P24 = pin.GPIO289 +P26 = pin.GPIO280 +P27 = pin.GPIO275 +P28 = pin.GPIO276 +P29 = pin.GPIO296 +P31 = pin.GPIO297 +P32 = pin.GPIO295 +P33 = pin.GPIO285 +P35 = pin.GPIO286 +P36 = pin.GPIO281 +P37 = pin.GPIO284 +P38 = pin.GPIO282 +P40 = pin.GPIO283 + +# 8 Pin Header 2J3 +P2J33 = pin.GPIO225 +P2J34 = pin.GPIO224 +P2J35 = pin.GPIO223 +P2J36 = pin.GPIO222 + +# 3 Pin Header 2J1 +P2J12 = pin.GPIO100 +P2J13 = pin.GPIO101 + +# 3 Pin Header 9J1 +P9J12 = pin.GPIO220 diff --git a/src/adafruit_blinka/microcontroller/amlogic/s905x/__init__.py b/src/adafruit_blinka/microcontroller/amlogic/s905x/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/adafruit_blinka/microcontroller/amlogic/s905x/pin.py b/src/adafruit_blinka/microcontroller/amlogic/s905x/pin.py new file mode 100644 index 0000000..a2ff194 --- /dev/null +++ b/src/adafruit_blinka/microcontroller/amlogic/s905x/pin.py @@ -0,0 +1,71 @@ +# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries +# +# SPDX-License-Identifier: MIT +"""AmLogic s905x pin names""" +# pylint: disable=wildcard-import,unused-wildcard-import +from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin + +# Chip 0 +GPIO100 = Pin((0, 0)) +GPIO101 = Pin((0, 1)) +GPIO104 = Pin((0, 4)) +GPIO105 = Pin((0, 5)) +GPIO106 = Pin((0, 6)) +GPIO109 = Pin((0, 9)) +GPIO110 = Pin((0, 10)) + +# Chip 1 +GPIO220 = Pin((1, 20)) +GPIO222 = Pin((1, 22)) +GPIO223 = Pin((1, 23)) +GPIO224 = Pin((1, 24)) +GPIO225 = Pin((1, 25)) +GPIO275 = Pin((1, 75)) +GPIO276 = Pin((1, 76)) +GPIO279 = Pin((1, 79)) +GPIO280 = Pin((1, 80)) +GPIO281 = Pin((1, 81)) +GPIO282 = Pin((1, 82)) +GPIO283 = Pin((1, 83)) +GPIO284 = Pin((1, 84)) +GPIO285 = Pin((1, 85)) +GPIO286 = Pin((1, 86)) +GPIO287 = Pin((1, 87)) +GPIO288 = Pin((1, 88)) +GPIO289 = Pin((1, 89)) +GPIO290 = Pin((1, 90)) +GPIO291 = Pin((1, 91)) +GPIO292 = Pin((1, 92)) +GPIO293 = Pin((1, 93)) +GPIO294 = Pin((1, 94)) +GPIO295 = Pin((1, 95)) +GPIO296 = Pin((1, 96)) +GPIO297 = Pin((1, 97)) +GPIO298 = Pin((1, 98)) + +I2C0_SDA = GPIO105 +I2C0_SCK = GPIO104 +I2C1_SDA = GPIO275 +I2C1_SCK = GPIO276 + +UART1_RX = GPIO288 +UART1_TX = GPIO287 +UART2_RX = GPIO292 +UART2_TX = GPIO291 + +SPI1_SCLK = GPIO223 +SPI1_MISO = GPIO288 +SPI1_MOSI = GPIO287 +SPI1_CS = GPIO289 + +i2cPorts = ( + (0, I2C0_SCK, I2C0_SDA), + (1, I2C1_SCK, I2C1_SDA), +) + +spiPorts = (0, SPI1_SCLK, SPI1_MOSI, SPI1_MISO) + +uartPorts = ( + (1, UART1_TX, UART1_RX), + (2, UART2_TX, UART2_RX), +) diff --git a/src/adafruit_blinka/microcontroller/rockchip/rk3399/pin.py b/src/adafruit_blinka/microcontroller/rockchip/rk3399/pin.py index 9d6de08..3dd75e7 100644 --- a/src/adafruit_blinka/microcontroller/rockchip/rk3399/pin.py +++ b/src/adafruit_blinka/microcontroller/rockchip/rk3399/pin.py @@ -5,10 +5,18 @@ from adafruit_blinka.microcontroller.generic_linux.sysfs_pin import Pin +GPIO1_A1 = Pin(33) +GPIO1_A3 = Pin(35) GPIO1_A7 = Pin(39) GPIO1_B0 = Pin(40) GPIO1_B1 = Pin(41) GPIO1_B2 = Pin(42) +GPIO1_C2 = Pin(50) +GPIO1_C4 = Pin(52) +GPIO1_C5 = Pin(53) +GPIO1_C6 = Pin(54) +GPIO1_C7 = Pin(55) +GPIO1_D0 = Pin(56) GPIO2_A0 = Pin(64) GPIO2_A1 = Pin(65) GPIO2_A7 = Pin(71) @@ -17,12 +25,15 @@ GPIO2_B1 = Pin(73) GPIO2_B2 = Pin(74) GPIO2_B3 = Pin(75) GPIO2_B4 = Pin(76) +GPIO2_D4 = Pin(92) GPIO3_C0 = Pin(112) GPIO4_A3 = Pin(131) GPIO4_A4 = Pin(132) GPIO4_A5 = Pin(133) GPIO4_A6 = Pin(134) GPIO4_A7 = Pin(135) +GPIO4_C0 = Pin(144) +GPIO4_C1 = Pin(145) GPIO4_C2 = Pin(146) GPIO4_C3 = Pin(147) GPIO4_C4 = Pin(148) @@ -37,10 +48,14 @@ ADC_IN0 = 1 # I2C I2C2_SDA = GPIO2_A0 I2C2_SCL = GPIO2_A1 +I2C3_SDA = GPIO4_C0 +I2C3_SCL = GPIO4_C1 I2C6_SDA = GPIO2_B1 I2C6_SCL = GPIO2_B2 I2C7_SDA = GPIO2_A7 I2C7_SCL = GPIO2_B0 +I2C8_SDA = GPIO1_C4 +I2C8_SCL = GPIO1_C5 # SPI SPI1_CS = GPIO1_B2 diff --git a/src/board.py b/src/board.py index 83ad73c..70e6348 100644 --- a/src/board.py +++ b/src/board.py @@ -130,6 +130,9 @@ elif board_id == ap_board.ORANGE_PI_4_LTS: elif board_id == ap_board.BANANA_PI_M2_ZERO: from adafruit_blinka.board.bananapi.bpim2zero import * +elif board_id == ap_board.BANANA_PI_M2_PLUS: + from adafruit_blinka.board.bananapi.bpim2plus import * + elif board_id == ap_board.BANANA_PI_M5: from adafruit_blinka.board.bananapi.bpim5 import * @@ -286,6 +289,9 @@ elif board_id == ap_board.LICHEE_RV: elif board_id == ap_board.SIEMENS_SIMATIC_IOT2050_ADV: from adafruit_blinka.board.siemens.siemens_iot2050 import * +elif board_id == ap_board.AML_S905X_CC: + from adafruit_blinka.board.librecomputer.aml_s905x_cc_v1 import * + elif "sphinx" in sys.modules: pass diff --git a/src/digitalio.py b/src/digitalio.py index 2c14d80..2c6566a 100644 --- a/src/digitalio.py +++ b/src/digitalio.py @@ -42,6 +42,8 @@ elif detector.chip.T234: from adafruit_blinka.microcontroller.tegra.t234.pin import Pin elif detector.chip.S905: from adafruit_blinka.microcontroller.amlogic.s905.pin import Pin +elif detector.board.aml_s905x_cc: + from adafruit_blinka.microcontroller.amlogic.s905x.pin import Pin elif detector.chip.S905X3: from adafruit_blinka.microcontroller.amlogic.s905x3.pin import Pin elif detector.chip.S905Y2: diff --git a/src/microcontroller/__init__.py b/src/microcontroller/__init__.py index fac109e..d4dc4c4 100644 --- a/src/microcontroller/__init__.py +++ b/src/microcontroller/__init__.py @@ -72,6 +72,8 @@ elif chip_id == ap_chip.T234: from adafruit_blinka.microcontroller.tegra.t234 import * elif chip_id == ap_chip.S905: from adafruit_blinka.microcontroller.amlogic.s905 import * +elif chip_id == ap_chip.S905X: + from adafruit_blinka.microcontroller.amlogic.s905x import * elif chip_id == ap_chip.S905X3: from adafruit_blinka.microcontroller.amlogic.s905x3 import * elif chip_id == ap_chip.S905Y2: diff --git a/src/microcontroller/pin.py b/src/microcontroller/pin.py index 68e576a..7d57700 100644 --- a/src/microcontroller/pin.py +++ b/src/microcontroller/pin.py @@ -59,6 +59,8 @@ elif chip_id == ap_chip.T234: from adafruit_blinka.microcontroller.tegra.t234.pin import * elif chip_id == ap_chip.S905: from adafruit_blinka.microcontroller.amlogic.s905.pin import * +elif chip_id == ap_chip.S905X: + from adafruit_blinka.microcontroller.amlogic.s905x.pin import * elif chip_id == ap_chip.S905X3: from adafruit_blinka.microcontroller.amlogic.s905x3.pin import * elif chip_id == ap_chip.S905Y2: