Skip to content

Commit ba75eff

Browse files
authored
Merge pull request #853 from mmontol/main
Add support for lubancat-5
2 parents 261df33 + 3649f08 commit ba75eff

File tree

3 files changed

+107
-0
lines changed

3 files changed

+107
-0
lines changed
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# SPDX-FileCopyrightText: 2024 mmontol
2+
#
3+
# SPDX-License-Identifier: MIT
4+
"""Pin definitions for the LubanCat-5."""
5+
6+
from adafruit_blinka.microcontroller.rockchip.rk3588 import pin
7+
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
8+
9+
# GPIO1 = +3.3V
10+
# GPIO2 = +5V
11+
GPIO3 = pin.GPIO1_C0
12+
# GPIO4 = +5V
13+
GPIO5 = pin.GPIO1_C1
14+
# GPIO6 = GND
15+
GPIO7 = Pin((6, 0))
16+
GPIO8 = pin.GPIO1_B6
17+
# GPIO9 = GND
18+
GPIO10 = pin.GPIO1_B7
19+
GPIO11 = Pin((6, 1))
20+
GPIO12 = Pin((6, 4))
21+
GPIO13 = Pin((6, 2))
22+
# GPIO14 = GND
23+
GPIO15 = Pin((6, 3))
24+
GPIO16 = Pin((6, 5))
25+
# GPIO17 = +3.3V
26+
GPIO18 = Pin((6, 6))
27+
GPIO19 = pin.GPIO4_A1
28+
# GPIO20 = GND
29+
GPIO21 = pin.GPIO4_A0
30+
GPIO22 = Pin((6, 7))
31+
GPIO23 = pin.GPIO4_A2
32+
GPIO24 = pin.GPIO4_B2
33+
# GPIO25 = GND
34+
GPIO26 = Pin((7, 5))
35+
GPIO27 = pin.GPIO1_A2
36+
GPIO28 = pin.GPIO1_A3
37+
GPIO29 = pin.GPIO2_C3
38+
# GPIO30 = GND
39+
GPIO31 = Pin((7, 0))
40+
GPIO32 = pin.GPIO4_B6
41+
GPIO33 = pin.GPIO1_D6
42+
# GPIO34 = GND
43+
GPIO35 = pin.GPIO1_D7
44+
GPIO36 = Pin((7, 4))
45+
GPIO37 = Pin((7, 1))
46+
GPIO38 = Pin((7, 3))
47+
# GPIO39 = GND
48+
GPIO40 = Pin((7, 2))
49+
50+
# I2C
51+
I2C3_SCL = pin.I2C3_SCL_M0
52+
I2C3_SDA = pin.I2C3_SDA_M0
53+
I2C4_SCL = pin.I2C4_SCL_M3
54+
I2C4_SDA = pin.I2C4_SDA_M3
55+
I2C8_SCL = pin.I2C8_SCL_M2
56+
I2C8_SDA = pin.I2C8_SDA_M2
57+
58+
# UART
59+
UART1_TX = pin.UART1_TX_M1
60+
UART1_RX = pin.UART1_RX_M1
61+
UART3_TX = pin.UART3_TX_M0
62+
UART3_RX = pin.UART3_RX_M0
63+
64+
# Default SPI
65+
MOSI = pin.SPI0_MOSI_M1
66+
MISO = pin.SPI0_MISO_M1
67+
SCLK = pin.SPI0_SCLK_M1
68+
CS0 = pin.SPI0_CS0_M1
69+
70+
# PWM
71+
PWM0 = pin.PWM0_M2
72+
PWM1 = pin.PWM1_M2
73+
PWM13_M1 = pin.PWM13_M1
74+
PWM13_M2 = pin.PWM13_M2
75+
PWM14_M1 = pin.PWM14_M1
76+
PWM14_M2 = pin.PWM14_M2
77+
PWM15 = pin.PWM15_IR_M3

src/adafruit_blinka/microcontroller/rockchip/rk3588/pin.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,10 +177,14 @@
177177
# UART
178178
UART0_TX_M2 = GPIO4_A3
179179
UART0_RX_M2 = GPIO4_A4
180+
UART1_TX_M1 = GPIO1_B6
181+
UART1_RX_M1 = GPIO1_B7
180182
UART2_TX_M0 = GPIO0_B5
181183
UART2_RX_M0 = GPIO0_B6
182184
UART2_TX_M2 = GPIO3_B1
183185
UART2_RX_M2 = GPIO3_B2
186+
UART3_TX_M0 = GPIO1_C1
187+
UART3_RX_M0 = GPIO1_C0
184188
UART3_TX_M1 = GPIO3_B5
185189
UART3_RX_M1 = GPIO3_B6
186190
UART4_TX_M2 = GPIO1_B3
@@ -193,8 +197,10 @@
193197
# ordered as uartId, txId, rxId
194198
uartPorts = (
195199
(0, UART0_TX_M2, UART0_RX_M2),
200+
(1, UART1_TX_M1, UART1_RX_M1),
196201
(2, UART2_TX_M0, UART2_RX_M0),
197202
(2, UART2_TX_M2, UART2_RX_M2),
203+
(3, UART3_TX_M0, UART3_RX_M0),
198204
(3, UART3_TX_M1, UART3_RX_M1),
199205
(4, UART4_TX_M2, UART4_RX_M2),
200206
(7, UART7_TX_M1, UART7_RX_M1),
@@ -209,12 +215,18 @@
209215
I2C1_SDA_M0 = GPIO0_B6
210216
I2C1_SCL_M4 = GPIO1_B1
211217
I2C1_SDA_M4 = GPIO1_B2
218+
I2C3_SCL_M0 = GPIO1_C1
219+
I2C3_SDA_M0 = GPIO1_C0
212220
I2C3_SCL_M1 = GPIO3_B7
213221
I2C3_SDA_M1 = GPIO3_C0
222+
I2C4_SCL_M3 = GPIO1_A3
223+
I2C4_SDA_M3 = GPIO1_A2
214224
I2C6_SCL_M3 = GPIO4_B1
215225
I2C6_SDA_M3 = GPIO4_B0
216226
I2C7_SCL_M3 = GPIO4_B2
217227
I2C7_SDA_M3 = GPIO4_B3
228+
I2C8_SCL_M2 = GPIO1_D6
229+
I2C8_SDA_M2 = GPIO1_D7
218230
I2C8_SCL_M4 = GPIO3_C2
219231
I2C8_SDA_M4 = GPIO3_C3
220232
I2C5_SDA_M3 = GPIO1_B7
@@ -225,9 +237,12 @@
225237
(0, I2C0_SCL_M1, I2C0_SDA_M1),
226238
(1, I2C1_SCL_M0, I2C1_SDA_M0),
227239
(1, I2C1_SCL_M4, I2C1_SDA_M4),
240+
(3, I2C3_SCL_M0, I2C3_SDA_M0),
228241
(3, I2C3_SCL_M1, I2C3_SDA_M1),
242+
(4, I2C4_SCL_M3, I2C4_SDA_M3),
229243
(5, I2C5_SCL_M3, I2C5_SDA_M3),
230244
(7, I2C7_SCL_M3, I2C7_SDA_M3),
245+
(8, I2C8_SCL_M2, I2C8_SDA_M2),
231246
(8, I2C8_SCL_M4, I2C8_SDA_M4),
232247
)
233248

@@ -239,6 +254,11 @@
239254
SPI0_CS0_M2 = GPIO1_B4
240255
SPI0_CS1_M2 = GPIO1_B5
241256

257+
SPI0_MOSI_M1 = GPIO4_A1
258+
SPI0_MISO_M1 = GPIO4_A0
259+
SPI0_SCLK_M1 = GPIO4_A2
260+
SPI0_CS0_M1 = GPIO4_B2
261+
242262
SPI1_MOSI_M1 = GPIO3_B7
243263
SPI1_MISO_M1 = GPIO3_C0
244264
SPI1_CLK_M1 = GPIO3_C1
@@ -259,12 +279,15 @@
259279
# ordered as spiId, sckId, mosiId, misoId
260280
spiPorts = (
261281
(0, SPI0_SCLK_M2, SPI0_MOSI_M2, SPI0_MISO_M2),
282+
(0, SPI0_SCLK_M1, SPI0_MOSI_M1, SPI0_MISO_M1),
262283
(1, SPI1_SCLK_M1, SPI1_MOSI_M1, SPI1_MISO_M1),
263284
(3, SPI3_SCLK_M0, SPI3_MOSI_M0, SPI3_MISO_M0),
264285
(4, SPI4_SCLK_M0, SPI4_MOSI_M0, SPI4_MISO_M0),
265286
)
266287

267288
# PWM
289+
PWM0_M2 = GPIO1_A2
290+
PWM1_M2 = GPIO1_A3
268291
PWM2_M1 = GPIO3_B1
269292
PWM3_IR_M1 = GPIO3_B2
270293
PWM5_M2 = GPIO4_C4
@@ -274,6 +297,7 @@
274297
PWM10_M2 = GPIO3_D3
275298
PWM11_IR_M3 = GPIO3_D5
276299
PWM12_M0 = GPIO3_B5
300+
PWM13_M1 = GPIO4_B6
277301
PWM13_M0 = GPIO3_B6
278302
PWM13_M2 = GPIO1_B7
279303
PWM14_M0 = GPIO3_C2
@@ -286,6 +310,8 @@
286310

287311
# SysFS pwm outputs, pwm channel and pin in first tuple
288312
pwmOuts = (
313+
((0, 0), PWM0_M2),
314+
((0, 1), PWM1_M2),
289315
((0, 2), PWM2_M1),
290316
((0, 3), PWM3_IR_M1),
291317
((0, 5), PWM5_M2),
@@ -296,6 +322,7 @@
296322
((0, 11), PWM11_IR_M3),
297323
((0, 12), PWM12_M0),
298324
((0, 13), PWM13_M0),
325+
((0, 13), PWM13_M1),
299326
((0, 13), PWM13_M2),
300327
((0, 14), PWM14_M0),
301328
((0, 14), PWM14_M1),

src/board.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -327,6 +327,9 @@
327327
elif board_id == ap_board.LUBANCAT4:
328328
from adafruit_blinka.board.lubancat.lubancat4 import *
329329

330+
elif board_id == ap_board.LUBANCAT5:
331+
from adafruit_blinka.board.lubancat.lubancat5 import *
332+
330333
elif board_id == ap_board.NANOPI_NEO_AIR:
331334
from adafruit_blinka.board.nanopi.neoair import *
332335

0 commit comments

Comments
 (0)