From: Melissa LeBlanc-Williams Date: Mon, 18 Aug 2025 16:49:52 +0000 (-0700) Subject: Merge pull request #993 from avenstewart/add-orange-pi-5-pro X-Git-Tag: 8.64.0 X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/commitdiff_plain/9ccedd66093b69e606027d8bb1ab1e33788940e0?hp=d556ebd4688addd339a237a9cb8d5960823f18f3 Merge pull request #993 from avenstewart/add-orange-pi-5-pro Add support for Orange Pi 5 Pro board --- diff --git a/src/adafruit_blinka/board/orangepi/orangepi5pro.py b/src/adafruit_blinka/board/orangepi/orangepi5pro.py new file mode 100644 index 0000000..976a713 --- /dev/null +++ b/src/adafruit_blinka/board/orangepi/orangepi5pro.py @@ -0,0 +1,96 @@ +# SPDX-FileCopyrightText: 2022 Corebb +# +# SPDX-License-Identifier: MIT +"""Pin definitions for the Orange Pi 5 Pro""" + +from adafruit_blinka.microcontroller.rockchip.rk3588 import pin + +# D pin number is ordered by physical pin sequence + +# D1 = +3.3V +# D2 = +5V +D3 = pin.GPIO1_D3 +# D4 = +5V +D5 = pin.GPIO1_D2 +# D6 = GND +D7 = pin.GPIO1_B7 +D8 = pin.GPIO0_B5 +# D9 = GND +D10 = pin.GPIO0_B6 +D11 = pin.GPIO4_B2 +D12 = pin.GPIO1_A7 +D13 = pin.GPIO4_B3 +# D14 = GND +D15 = pin.GPIO1_B6 +D16 = pin.GPIO1_A1 +# D17 = +3.3V +D18 = pin.GPIO1_A0 +D19 = pin.GPIO1_B2 +# D20 = GND +D21 = pin.GPIO1_B1 +D22 = pin.GPIO1_B0 +D23 = pin.GPIO1_B3 +D24 = pin.GPIO1_B4 +# D25 = GND +D26 = pin.GPIO1_B5 +D27 = pin.GPIO1_A2 +D28 = pin.GPIO1_A3 +D29 = pin.GPIO1_A4 +# D30 = GND +D31 = pin.GPIO1_A6 +D32 = pin.GPIO1_D6 +D33 = pin.GPIO1_D7 +# D34 = GND +D35 = pin.GPIO4_A7 +D36 = pin.GPIO4_A3 +D37 = pin.GPIO4_A6 +D38 = pin.GPIO4_A4 +# D39 = GND +D40 = pin.GPIO4_A5 + +# UART +UART0_TX = pin.GPIO4_A3 +UART0_RX = pin.GPIO4_A4 +UART1_TX = pin.GPIO1_B6 +UART1_RX = pin.GPIO1_B7 +UART3_TX = pin.GPIO4_A5 +UART3_RX = pin.GPIO4_A6 +UART4_TX = pin.GPIO1_D2 +UART4_RX = pin.GPIO1_D3 + +# Default UART +TX = UART0_TX +RX = UART0_RX +TXD = UART0_TX +RXD = UART0_RX + +# I2C +I2C1_SCL = pin.GPIO1_D2 +I2C1_SDA = pin.GPIO1_D3 +I2C4_SCL = pin.GPIO1_A3 +I2C4_SDA = pin.GPIO1_A2 +I2C5_SCL = pin.GPIO1_B6 +I2C5_SDA = pin.GPIO1_B7 +I2C8_SCL = pin.GPIO1_D6 +I2C8_SDA = pin.GPIO1_D7 + +# Default I2C +SCL = I2C1_SCL +SDA = I2C1_SDA + +# SPI +SPI0_MISO = pin.GPIO1_B1 +SPI0_MOSI = pin.GPIO1_B2 +SPI0_CLK = pin.GPIO1_B3 +SPI0_CS0 = pin.GPIO1_B4 +SPI0_CS1 = pin.GPIO1_B5 +SPI4_MISO = pin.GPIO1_A0 +SPI4_MOSI = pin.GPIO1_A1 +SPI4_CLK = pin.GPIO1_A2 +SPI4_CS0 = pin.GPIO1_A3 + +# Default SPI +MOSI = SPI0_MOSI +MISO = SPI0_MISO +SCLK = SPI0_CLK +CS = SPI0_CS1 diff --git a/src/adafruit_blinka/microcontroller/rockchip/rk3588s/pin.py b/src/adafruit_blinka/microcontroller/rockchip/rk3588s/pin.py index 91483d3..b2a690e 100644 --- a/src/adafruit_blinka/microcontroller/rockchip/rk3588s/pin.py +++ b/src/adafruit_blinka/microcontroller/rockchip/rk3588s/pin.py @@ -209,8 +209,8 @@ uartPorts = ( # I2C0_SDA_M1 = GPIO4_C6 I2C1_SCL_M0 = GPIO0_B5 I2C1_SDA_M0 = GPIO0_B6 -# I2C1_SCL_M4 = GPIO1_B1 -# I2C1_SDA_M4 = GPIO1_B2 +I2C1_SCL_M4 = GPIO1_D2 +I2C1_SDA_M4 = GPIO1_D3 I2C2_SCL_M4 = GPIO1_A1 I2C2_SDA_M4 = GPIO1_A0 # I2C3_SCL_M1 = GPIO3_B7 @@ -228,7 +228,7 @@ I2C8_SDA_M2 = GPIO1_D7 # ordered as i2cId, sclId, sdaId i2cPorts = ( - (1, I2C1_SCL_M0, I2C1_SDA_M0), + (1, I2C1_SCL_M4, I2C1_SDA_M4), (2, I2C2_SCL_M4, I2C2_SDA_M4), (4, I2C4_SCL_M3, I2C4_SDA_M3), (6, I2C6_SCL_M3, I2C6_SDA_M3), diff --git a/src/analogio.py b/src/analogio.py index 02a41b2..89c82be 100644 --- a/src/analogio.py +++ b/src/analogio.py @@ -32,6 +32,8 @@ elif detector.chip.RK3399: from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn elif detector.chip.RK3588: from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn +elif detector.chip.RK3588S: + from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn elif detector.chip.RK3568: from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn elif detector.chip.RK3566: diff --git a/src/board.py b/src/board.py index 5d51a69..34a54b5 100644 --- a/src/board.py +++ b/src/board.py @@ -146,6 +146,9 @@ elif board_id == ap_board.ORANGE_PI_4_LTS: elif board_id in (ap_board.ORANGE_PI_5, ap_board.ORANGE_PI_5_MAX): from adafruit_blinka.board.orangepi.orangepi5 import * +elif board_id == ap_board.ORANGE_PI_5_PRO: + from adafruit_blinka.board.orangepi.orangepi5pro import * + elif board_id == ap_board.ORANGE_PI_5_PLUS: from adafruit_blinka.board.orangepi.orangepi5plus import * diff --git a/src/digitalio.py b/src/digitalio.py index d23fce0..ed9e4e0 100644 --- a/src/digitalio.py +++ b/src/digitalio.py @@ -87,6 +87,8 @@ elif detector.chip.RK3399_T: from adafruit_blinka.microcontroller.rockchip.rk3399.pin import Pin elif detector.chip.RK3588: from adafruit_blinka.microcontroller.rockchip.rk3588.pin import Pin +elif detector.chip.RK3588S: + from adafruit_blinka.microcontroller.rockchip.rk3588s.pin import Pin elif detector.chip.RK3328: from adafruit_blinka.microcontroller.rockchip.rk3328.pin import Pin elif detector.chip.RK3566: diff --git a/src/microcontroller/__init__.py b/src/microcontroller/__init__.py index ea66e10..0b76f71 100644 --- a/src/microcontroller/__init__.py +++ b/src/microcontroller/__init__.py @@ -109,6 +109,8 @@ elif chip_id == ap_chip.RK3399_T: from adafruit_blinka.microcontroller.rockchip.rk3399 import * elif chip_id == ap_chip.RK3588: from adafruit_blinka.microcontroller.rockchip.rk3588 import * +elif chip_id == ap_chip.RK3588S: + from adafruit_blinka.microcontroller.rockchip.rk3588s import * elif chip_id == ap_chip.RK3328: from adafruit_blinka.microcontroller.rockchip.rk3328 import * elif chip_id == ap_chip.RK3566: diff --git a/src/microcontroller/pin.py b/src/microcontroller/pin.py index b40a511..9dfa15f 100644 --- a/src/microcontroller/pin.py +++ b/src/microcontroller/pin.py @@ -118,6 +118,8 @@ elif chip_id == ap_chip.RK3399_T: from adafruit_blinka.microcontroller.rockchip.rk3399.pin import * elif chip_id == ap_chip.RK3588: from adafruit_blinka.microcontroller.rockchip.rk3588.pin import * +elif chip_id == ap_chip.RK3588S: + from adafruit_blinka.microcontroller.rockchip.rk3588s.pin import * elif chip_id == ap_chip.RK3328: from adafruit_blinka.microcontroller.rockchip.rk3328.pin import * elif chip_id == ap_chip.RK3566: