]> Repositories - Adafruit_Blinka-hackapet.git/blob - src/adafruit_blinka/microcontroller/rockchip/rk3399/pin.py
Merge branch 'main' of github.com:janvolck/Adafruit_Blinka
[Adafruit_Blinka-hackapet.git] / src / adafruit_blinka / microcontroller / rockchip / rk3399 / pin.py
1 # SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
2 # See https://wiki.radxa.com/Rock4/hardware/gpio
3 #
4 # SPDX-License-Identifier: MIT
5 """A Pin class for use with Rockchip RK3399 and RK3399_T."""
6
7 from adafruit_blinka.microcontroller.generic_linux.sysfs_pin import Pin
8
9 GPIO1_A1 = Pin(33)
10 GPIO1_A3 = Pin(35)
11 GPIO1_A7 = Pin(39)
12 GPIO1_B0 = Pin(40)
13 GPIO1_B1 = Pin(41)
14 GPIO1_B2 = Pin(42)
15 GPIO1_C2 = Pin(50)
16 GPIO1_C4 = Pin(52)
17 GPIO1_C5 = Pin(53)
18 GPIO1_C6 = Pin(54)
19 GPIO1_C7 = Pin(55)
20 GPIO1_D0 = Pin(56)
21 GPIO2_A0 = Pin(64)
22 GPIO2_A1 = Pin(65)
23 GPIO2_A7 = Pin(71)
24 GPIO2_B0 = Pin(72)
25 GPIO2_B1 = Pin(73)
26 GPIO2_B2 = Pin(74)
27 GPIO2_B3 = Pin(75)
28 GPIO2_B4 = Pin(76)
29 GPIO2_D4 = Pin(92)
30 GPIO3_C0 = Pin(112)
31 GPIO4_A3 = Pin(131)
32 GPIO4_A4 = Pin(132)
33 GPIO4_A5 = Pin(133)
34 GPIO4_A6 = Pin(134)
35 GPIO4_A7 = Pin(135)
36 GPIO4_C0 = Pin(144)
37 GPIO4_C1 = Pin(145)
38 GPIO4_C2 = Pin(146)
39 GPIO4_C3 = Pin(147)
40 GPIO4_C4 = Pin(148)
41 GPIO4_C5 = Pin(149)
42 GPIO4_C6 = Pin(150)
43 GPIO4_D2 = Pin(154)
44 GPIO4_D4 = Pin(156)
45 GPIO4_D5 = Pin(157)
46 GPIO4_D6 = Pin(158)
47 ADC_IN0 = 1
48
49 # I2C
50 I2C2_SDA = GPIO2_A0
51 I2C2_SCL = GPIO2_A1
52 I2C3_SDA = GPIO4_C0
53 I2C3_SCL = GPIO4_C1
54 I2C6_SDA = GPIO2_B1
55 I2C6_SCL = GPIO2_B2
56 I2C7_SDA = GPIO2_A7
57 I2C7_SCL = GPIO2_B0
58 I2C8_SDA = GPIO1_C4
59 I2C8_SCL = GPIO1_C5
60
61 # SPI
62 SPI1_CS = GPIO1_B2
63 SPI1_SCLK = GPIO1_B1
64 SPI1_MISO = GPIO1_A7
65 SPI1_MOSI = GPIO1_B0
66 SPI2_CS = GPIO2_B4
67 SPI2_SCLK = GPIO2_B3
68 SPI2_MISO = GPIO2_B1
69 SPI2_MOSI = GPIO2_B2
70
71 # UART
72 UART2_TX = GPIO4_C4
73 UART2_RX = GPIO4_C3
74 UART4_TX = GPIO1_B0
75 UART4_RX = GPIO1_A7
76
77 # PWM
78 PWM0 = GPIO4_C2
79 PWM1 = GPIO4_C6
80
81 # ordered as i2cId, SCL, SDA
82 i2cPorts = (
83     (2, I2C2_SCL, I2C2_SDA),
84     (6, I2C6_SCL, I2C6_SDA),
85     (7, I2C7_SCL, I2C7_SDA),
86 )
87
88 # ordered as spiId, sckId, mosiId, misoId
89 spiPorts = (
90     (1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
91     (2, SPI2_SCLK, SPI2_MOSI, SPI2_MISO),
92 )
93
94 # SysFS pwm outputs, pwm channel and pin in first tuple
95 pwmOuts = (
96     ((0, 0), PWM0),
97     ((0, 0), PWM1),
98 )
99
100 # SysFS analog inputs, Ordered as analog analogInId, device, and channel
101 analogIns = ((ADC_IN0, 0, 0),)