]> Repositories - Adafruit_Blinka-hackapet.git/blob - src/adafruit_blinka/microcontroller/rockchip/rk3399/pin.py
5436a3720390b2b845f65557846af477f3096de6
[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_A7 = Pin(39)
10 GPIO1_B0 = Pin(40)
11 GPIO1_B1 = Pin(41)
12 GPIO1_B2 = Pin(42)
13 GPIO2_A0 = Pin(64)
14 GPIO2_A1 = Pin(65)
15 GPIO2_A7 = Pin(71)
16 GPIO2_B0 = Pin(72)
17 GPIO2_B1 = Pin(73)
18 GPIO2_B2 = Pin(74)
19 GPIO2_B3 = Pin(75)
20 GPIO2_B4 = Pin(76)
21 GPIO3_C0 = Pin(112)
22 GPIO4_A3 = Pin(131)
23 GPIO4_A4 = Pin(132)
24 GPIO4_A5 = Pin(133)
25 GPIO4_A6 = Pin(134)
26 GPIO4_A7 = Pin(135)
27 GPIO4_C2 = Pin(146)
28 GPIO4_C3 = Pin(147)
29 GPIO4_C4 = Pin(148)
30 GPIO4_C5 = Pin(149)
31 GPIO4_C6 = Pin(150)
32 GPIO4_D2 = Pin(154)
33 GPIO4_D4 = Pin(156)
34 GPIO4_D5 = Pin(157)
35 GPIO4_D6 = Pin(158)
36 ADC_IN0 = 1
37
38 # I2C
39 I2C2_SDA = GPIO2_A0
40 I2C2_SCL = GPIO2_A1
41 I2C6_SDA = GPIO2_B1
42 I2C6_SCL = GPIO2_B2
43 I2C7_SDA = GPIO2_A7
44 I2C7_SCL = GPIO2_B0
45
46 # SPI
47 SPI1_CS = GPIO1_B2
48 SPI1_SCLK = GPIO1_B1
49 SPI1_MISO = GPIO1_A7
50 SPI1_MOSI = GPIO1_B0
51 SPI2_CS = GPIO2_B4
52 SPI2_SCLK = GPIO2_B3
53 SPI2_MISO = GPIO2_B1
54 SPI2_MOSI = GPIO2_B2
55
56 # UART
57 UART2_TX = GPIO4_C4
58 UART2_RX = GPIO4_C3
59 UART4_TX = GPIO1_B0
60 UART4_RX = GPIO1_A7
61
62 # PWM
63 PWM0 = GPIO4_C2
64 PWM1 = GPIO4_C6
65
66 # ordered as i2cId, SCL, SDA
67 i2cPorts = (
68     (2, I2C2_SCL, I2C2_SDA),
69     (6, I2C6_SCL, I2C6_SDA),
70     (7, I2C7_SCL, I2C7_SDA),
71 )
72
73 # ordered as spiId, sckId, mosiId, misoId
74 spiPorts = (
75     (1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
76     (2, SPI2_SCLK, SPI2_MOSI, SPI2_MISO),
77 )
78
79 # SysFS pwm outputs, pwm channel and pin in first tuple
80 pwmOuts = (
81     ((0, 0), PWM0),
82     ((0, 0), PWM1),
83 )
84
85 # SysFS analog inputs, Ordered as analog analogInId, device, and channel
86 analogIns = ((ADC_IN0, 0, 0),)