|
2 | 2 | # |
3 | 3 | # SPDX-License-Identifier: MIT |
4 | 4 | """Quectel QCM6490 pin names""" |
5 | | -# from adafruit_blinka.microcontroller.generic_linux.sysfs_pin import Pin |
6 | | -# from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin |
7 | | -from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin as GenericLinuxPin |
8 | | - |
9 | | -import os |
10 | | - |
11 | | -# Release (unexport) all pins on init and set to INPUT mode |
12 | | -class Pin(GenericLinuxPin): |
13 | | - def __init__(self, pin_id): |
14 | | - self._release_sysfs_gpio(pin_id) |
15 | | - super().__init__(pin_id) |
16 | | - |
17 | | - def _release_sysfs_gpio(self, pin_id, base_offset=336): |
18 | | - # pin_id might be a tuple like (chip_id, line_number) |
19 | | - if isinstance(pin_id, tuple): |
20 | | - _, line_number = pin_id |
21 | | - else: |
22 | | - line_number = pin_id |
23 | | - |
24 | | - gpio_num = base_offset + int(line_number) |
25 | | - gpio_path = f"/sys/class/gpio/gpio{gpio_num}" |
26 | | - |
27 | | - try: |
28 | | - if not os.path.exists(gpio_path): |
29 | | - with open("/sys/class/gpio/export", "w") as f: |
30 | | - f.write(f"{gpio_num}") |
31 | | - with open(f"{gpio_path}/direction", "w") as f: |
32 | | - f.write("in") |
33 | | - with open("/sys/class/gpio/unexport", "w") as f: |
34 | | - f.write(f"{gpio_num}") |
35 | | - except Exception: |
36 | | - # fail silently if not allowed |
37 | | - pass |
38 | | - |
39 | | -# Use with sysfs_pin |
40 | | -# GPIO_BASE = 336 |
| 5 | + |
| 6 | +from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin |
41 | 7 |
|
42 | 8 | # Use with libgpiod_pin |
43 | 9 | GPIO_BASE = 0 |
44 | 10 |
|
45 | 11 | GPIO_6 = Pin(GPIO_BASE + 6) |
46 | 12 | UART01_TXD = GPIO_6 |
47 | 13 | PWM1 = GPIO_6 |
| 14 | + |
48 | 15 | GPIO_8 = Pin(GPIO_BASE + 8) |
49 | 16 | I2C02_SDA = GPIO_8 |
50 | 17 | SDA = GPIO_8 |
| 18 | + |
51 | 19 | GPIO_9 = Pin(GPIO_BASE + 9) |
52 | 20 | I2C02_SCL = GPIO_9 |
53 | 21 | SCL = GPIO_9 |
| 22 | + |
54 | 23 | GPIO_18 = Pin(GPIO_BASE + 18) |
55 | 24 | UART04_TXD = GPIO_18 |
56 | 25 | SPI04_CLK = GPIO_18 |
| 26 | + |
57 | 27 | GPIO_19 = Pin(GPIO_BASE + 19) |
58 | 28 | UART04_RXD = GPIO_19 |
59 | 29 | SPI04_CS0 = GPIO_19 |
| 30 | + |
60 | 31 | GPIO_24 = Pin(GPIO_BASE + 24) |
| 32 | + |
| 33 | +GPIO_32 = Pin(GPIO_BASE + 32) |
| 34 | +UART10_CTS = GPIO_32 |
| 35 | +CTS = GPIO_32 |
| 36 | + |
61 | 37 | GPIO_33 = Pin(GPIO_BASE + 33) |
62 | 38 | UART10_RTS = GPIO_33 |
63 | | -SPI10_MOSI = GPIO_33 |
64 | | -I2C10_SCL = GPIO_33 |
| 39 | +RTS = GPIO_33 |
| 40 | + |
65 | 41 | GPIO_34 = Pin(GPIO_BASE + 34) |
66 | 42 | UART10_TXD = GPIO_34 |
67 | | -SPI10_CLK = GPIO_34 |
| 43 | + |
| 44 | +GPIO_35 = Pin(GPIO_BASE + 35) |
| 45 | +UART10_RXD = GPIO_35 |
| 46 | + |
68 | 47 | GPIO_36 = Pin(GPIO_BASE + 36) |
69 | 48 | UART11_CTS = GPIO_36 |
70 | 49 | SPI11_MISO = GPIO_36 |
71 | 50 | I2C11_SDA = GPIO_36 |
72 | 51 | EEPROM_SDA = GPIO_36 |
| 52 | + |
73 | 53 | GPIO_37 = Pin(GPIO_BASE + 37) |
74 | 54 | UART11_RTS = GPIO_37 |
75 | 55 | SPI11_MOSI = GPIO_37 |
76 | 56 | I2C11_SCL = GPIO_37 |
77 | | -GPIO_48 = Pin(GPIO_BASE + 48) |
78 | | -UART14_CTS = GPIO_48 |
79 | | -I2C14_SDA = GPIO_48 |
80 | | -SPI14_MISO = GPIO_48 |
81 | | -CTS = GPIO_48 |
82 | | -GPIO_49 = Pin(GPIO_BASE + 49) |
83 | | -UART14_RTS = GPIO_49 |
84 | | -I2C14_SCL = GPIO_49 |
85 | | -SPI14_MOSI = GPIO_49 |
86 | | -RTS = GPIO_49 |
87 | | -GPIO_50 = Pin(GPIO_BASE + 50) |
88 | | -UART14_TXD = GPIO_50 |
89 | | -SPI14_CLK = GPIO_50 |
90 | | -SPI16_CS3 = GPIO_50 |
91 | | -TX = GPIO_50 |
92 | | -GPIO_51 = Pin(GPIO_BASE + 51) |
93 | | -UART14_RXD = GPIO_51 |
94 | | -SPI14_CS0 = GPIO_51 |
95 | | -RX = GPIO_51 |
| 57 | +EEPROM_SCL = GPIO_37 |
| 58 | + |
| 59 | +GPIO_40 = Pin(GPIO_BASE + 40) |
| 60 | +QWIIC_I2C12_SDA = GPIO_40 |
| 61 | + |
| 62 | +GPIO_41 = Pin(GPIO_BASE + 41) |
| 63 | +QWIIC_I2C12_SCL = GPIO_41 |
| 64 | + |
| 65 | +GPIO_44 = Pin(GPIO_BASE + 44) |
| 66 | + |
96 | 67 | GPIO_56 = Pin(GPIO_BASE + 56) |
| 68 | +SPI16_MISO = GPIO_56 |
| 69 | +I2C16_SDA = GPIO_56 |
| 70 | +UART16_CTS = GPIO_56 |
97 | 71 | MISO = GPIO_56 |
| 72 | + |
98 | 73 | GPIO_57 = Pin(GPIO_BASE + 57) |
99 | 74 | SPI16_MOSI = GPIO_57 |
100 | 75 | I2C16_SCL = GPIO_57 |
101 | 76 | UART16_RTS = GPIO_57 |
102 | | -SPI16_MISO = GPIO_57 |
103 | | -I2C16_SDA = GPIO_57 |
104 | | -UART16_CTS = GPIO_57 |
105 | 77 | MOSI = GPIO_57 |
| 78 | + |
106 | 79 | GPIO_58 = Pin(GPIO_BASE + 58) |
107 | 80 | SPI16_CLK = GPIO_58 |
108 | 81 | UART16_TXD = GPIO_58 |
109 | 82 | SCK = GPIO_58 |
| 83 | + |
110 | 84 | GPIO_59 = Pin(GPIO_BASE + 59) |
111 | 85 | SPI16_CS0 = GPIO_59 |
112 | 86 | UART16_RXD = GPIO_59 |
113 | | -GPIO_61 = Pin((0, GPIO_BASE + 61)) |
| 87 | +CE0 = GPIO_59 |
| 88 | + |
| 89 | +GPIO_61 = Pin(GPIO_BASE + 61) |
| 90 | + |
114 | 91 | GPIO_62 = Pin(GPIO_BASE + 62) |
115 | 92 | SPI16_CS1 = GPIO_62 |
| 93 | +CE1 = GPIO_62 |
| 94 | + |
| 95 | +GPIO_78 = Pin(GPIO_BASE + 78) |
| 96 | +PWM0 = GPIO_78 |
| 97 | + |
116 | 98 | GPIO_106 = Pin(GPIO_BASE + 106) |
117 | | -UART13_TXD = GPIO_106 |
118 | | -SPI13_CLK = GPIO_106 |
| 99 | +MI2S1_SCLK = GPIO_106 |
| 100 | +PWM = GPIO_106 |
| 101 | +PWM1 = GPIO_106 |
| 102 | + |
119 | 103 | GPIO_144 = Pin(GPIO_BASE + 144) |
120 | | -PRI_MI2S_MCLK = GPIO_144 |
| 104 | +LPI_MI2S_SCLK = GPIO_144 |
| 105 | + |
121 | 106 | GPIO_145 = Pin(GPIO_BASE + 145) |
122 | | -MI2S0_WS = GPIO_145 |
| 107 | +LPI_MI2S_WS = GPIO_145 |
123 | 108 | MISO1 = GPIO_145 |
| 109 | + |
124 | 110 | GPIO_146 = Pin(GPIO_BASE + 146) |
125 | | -MI2S0_DATA0 = GPIO_146 |
| 111 | +LPI_MI2S_DATA0 = GPIO_146 |
| 112 | +MOSI1 = GPIO_146 |
| 113 | + |
126 | 114 | GPIO_147 = Pin(GPIO_BASE + 147) |
127 | | -MI2S0_DATA1 = GPIO_147 |
| 115 | +LPI_MI2S_DATA1 = GPIO_147 |
| 116 | +SCK1 = GPIO_147 |
| 117 | + |
128 | 118 | GPIO_158 = Pin(GPIO_BASE + 158) |
| 119 | + |
129 | 120 | GPIO_165 = Pin(GPIO_BASE + 165) |
| 121 | + |
130 | 122 | GPIO_166 = Pin(GPIO_BASE + 166) |
131 | 123 |
|
132 | 124 | # ordered as i2cId, i2cSclId, i2cSdaId |
133 | | -i2cPorts = ((1, I2C02_SCL, I2C02_SDA),) |
| 125 | +i2cPorts = ( |
| 126 | + (1, I2C02_SCL, I2C02_SDA), |
| 127 | + (2, QWIIC_I2C12_SCL, QWIIC_I2C12_SDA), |
| 128 | +) |
134 | 129 |
|
135 | 130 | # ordered as spiId, sckId, mosiId, misoId |
136 | | -spiPorts = ((16, SPI16_CLK, SPI16_MOSI, SPI16_MISO),) |
| 131 | +spiPorts = ( |
| 132 | + (0, SPI16_CLK, SPI16_MOSI, SPI16_MISO), |
| 133 | + (1, SPI16_CLK, SPI16_MOSI, SPI16_MISO), |
| 134 | +) |
137 | 135 |
|
138 | 136 | # ordered as uartId, txId, rxId |
139 | | -uartPorts = ((14, UART14_TXD, UART14_RXD),) |
| 137 | +uartPorts = ((10, UART10_TXD, UART10_RXD),) |
140 | 138 |
|
141 | 139 | # ordered as pwmChipId, pwmChannelId, pwmId |
142 | 140 | pwmOuts = (((0, 0), PWM1),) |
0 commit comments