~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/riscv/boot/dts/starfive/jh7110-pinfunc.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0 OR MIT */
  2 /*
  3  * Copyright (C) 2022 Emil Renner Berthing <kernel@esmil.dk>
  4  * Copyright (C) 2022 StarFive Technology Co., Ltd.
  5  */
  6 
  7 #ifndef __JH7110_PINFUNC_H__
  8 #define __JH7110_PINFUNC_H__
  9 
 10 /*
 11  * mux bits:
 12  *  | 31 - 24 | 23 - 16 | 15 - 10 |  9 - 8   |  7 - 0  |
 13  *  |  din    |  dout   |  doen   | function | gpio nr |
 14  *
 15  * dout:     output signal
 16  * doen:     output enable signal
 17  * din:      optional input signal, 0xff = none
 18  * function: function selector
 19  * gpio nr:  gpio number, 0 - 63
 20  */
 21 #define GPIOMUX(n, dout, doen, din) ( \
 22                 (((din)  & 0xff) << 24) | \
 23                 (((dout) & 0xff) << 16) | \
 24                 (((doen) & 0x3f) << 10) | \
 25                 ((n) & 0x3f))
 26 
 27 #define PINMUX(n, func) ((1 << 10) | (((func) & 0x3) << 8) | ((n) & 0xff))
 28 
 29 /* sys_iomux dout */
 30 #define GPOUT_LOW                               0
 31 #define GPOUT_HIGH                              1
 32 #define GPOUT_SYS_WAVE511_UART_TX               2
 33 #define GPOUT_SYS_CAN0_STBY                     3
 34 #define GPOUT_SYS_CAN0_TST_NEXT_BIT             4
 35 #define GPOUT_SYS_CAN0_TST_SAMPLE_POINT         5
 36 #define GPOUT_SYS_CAN0_TXD                      6
 37 #define GPOUT_SYS_USB_DRIVE_VBUS                7
 38 #define GPOUT_SYS_QSPI_CS1                      8
 39 #define GPOUT_SYS_SPDIF                         9
 40 #define GPOUT_SYS_HDMI_CEC_SDA                  10
 41 #define GPOUT_SYS_HDMI_DDC_SCL                  11
 42 #define GPOUT_SYS_HDMI_DDC_SDA                  12
 43 #define GPOUT_SYS_WATCHDOG                      13
 44 #define GPOUT_SYS_I2C0_CLK                      14
 45 #define GPOUT_SYS_I2C0_DATA                     15
 46 #define GPOUT_SYS_SDIO0_BACK_END_POWER          16
 47 #define GPOUT_SYS_SDIO0_CARD_POWER_EN           17
 48 #define GPOUT_SYS_SDIO0_CCMD_OD_PULLUP_EN       18
 49 #define GPOUT_SYS_SDIO0_RST                     19
 50 #define GPOUT_SYS_UART0_TX                      20
 51 #define GPOUT_SYS_HIFI4_JTAG_TDO                21
 52 #define GPOUT_SYS_JTAG_TDO                      22
 53 #define GPOUT_SYS_PDM_MCLK                      23
 54 #define GPOUT_SYS_PWM_CHANNEL0                  24
 55 #define GPOUT_SYS_PWM_CHANNEL1                  25
 56 #define GPOUT_SYS_PWM_CHANNEL2                  26
 57 #define GPOUT_SYS_PWM_CHANNEL3                  27
 58 #define GPOUT_SYS_PWMDAC_LEFT                   28
 59 #define GPOUT_SYS_PWMDAC_RIGHT                  29
 60 #define GPOUT_SYS_SPI0_CLK                      30
 61 #define GPOUT_SYS_SPI0_FSS                      31
 62 #define GPOUT_SYS_SPI0_TXD                      32
 63 #define GPOUT_SYS_GMAC_PHYCLK                   33
 64 #define GPOUT_SYS_I2SRX_BCLK                    34
 65 #define GPOUT_SYS_I2SRX_LRCK                    35
 66 #define GPOUT_SYS_I2STX0_BCLK                   36
 67 #define GPOUT_SYS_I2STX0_LRCK                   37
 68 #define GPOUT_SYS_MCLK                          38
 69 #define GPOUT_SYS_TDM_CLK                       39
 70 #define GPOUT_SYS_TDM_SYNC                      40
 71 #define GPOUT_SYS_TDM_TXD                       41
 72 #define GPOUT_SYS_TRACE_DATA0                   42
 73 #define GPOUT_SYS_TRACE_DATA1                   43
 74 #define GPOUT_SYS_TRACE_DATA2                   44
 75 #define GPOUT_SYS_TRACE_DATA3                   45
 76 #define GPOUT_SYS_TRACE_REF                     46
 77 #define GPOUT_SYS_CAN1_STBY                     47
 78 #define GPOUT_SYS_CAN1_TST_NEXT_BIT             48
 79 #define GPOUT_SYS_CAN1_TST_SAMPLE_POINT         49
 80 #define GPOUT_SYS_CAN1_TXD                      50
 81 #define GPOUT_SYS_I2C1_CLK                      51
 82 #define GPOUT_SYS_I2C1_DATA                     52
 83 #define GPOUT_SYS_SDIO1_BACK_END_POWER          53
 84 #define GPOUT_SYS_SDIO1_CARD_POWER_EN           54
 85 #define GPOUT_SYS_SDIO1_CLK                     55
 86 #define GPOUT_SYS_SDIO1_CMD_OD_PULLUP_EN        56
 87 #define GPOUT_SYS_SDIO1_CMD                     57
 88 #define GPOUT_SYS_SDIO1_DATA0                   58
 89 #define GPOUT_SYS_SDIO1_DATA1                   59
 90 #define GPOUT_SYS_SDIO1_DATA2                   60
 91 #define GPOUT_SYS_SDIO1_DATA3                   61
 92 #define GPOUT_SYS_SDIO1_DATA4                   63
 93 #define GPOUT_SYS_SDIO1_DATA5                   63
 94 #define GPOUT_SYS_SDIO1_DATA6                   64
 95 #define GPOUT_SYS_SDIO1_DATA7                   65
 96 #define GPOUT_SYS_SDIO1_RST                     66
 97 #define GPOUT_SYS_UART1_RTS                     67
 98 #define GPOUT_SYS_UART1_TX                      68
 99 #define GPOUT_SYS_I2STX1_SDO0                   69
100 #define GPOUT_SYS_I2STX1_SDO1                   70
101 #define GPOUT_SYS_I2STX1_SDO2                   71
102 #define GPOUT_SYS_I2STX1_SDO3                   72
103 #define GPOUT_SYS_SPI1_CLK                      73
104 #define GPOUT_SYS_SPI1_FSS                      74
105 #define GPOUT_SYS_SPI1_TXD                      75
106 #define GPOUT_SYS_I2C2_CLK                      76
107 #define GPOUT_SYS_I2C2_DATA                     77
108 #define GPOUT_SYS_UART2_RTS                     78
109 #define GPOUT_SYS_UART2_TX                      79
110 #define GPOUT_SYS_SPI2_CLK                      80
111 #define GPOUT_SYS_SPI2_FSS                      81
112 #define GPOUT_SYS_SPI2_TXD                      82
113 #define GPOUT_SYS_I2C3_CLK                      83
114 #define GPOUT_SYS_I2C3_DATA                     84
115 #define GPOUT_SYS_UART3_TX                      85
116 #define GPOUT_SYS_SPI3_CLK                      86
117 #define GPOUT_SYS_SPI3_FSS                      87
118 #define GPOUT_SYS_SPI3_TXD                      88
119 #define GPOUT_SYS_I2C4_CLK                      89
120 #define GPOUT_SYS_I2C4_DATA                     90
121 #define GPOUT_SYS_UART4_RTS                     91
122 #define GPOUT_SYS_UART4_TX                      92
123 #define GPOUT_SYS_SPI4_CLK                      93
124 #define GPOUT_SYS_SPI4_FSS                      94
125 #define GPOUT_SYS_SPI4_TXD                      95
126 #define GPOUT_SYS_I2C5_CLK                      96
127 #define GPOUT_SYS_I2C5_DATA                     97
128 #define GPOUT_SYS_UART5_RTS                     98
129 #define GPOUT_SYS_UART5_TX                      99
130 #define GPOUT_SYS_SPI5_CLK                      100
131 #define GPOUT_SYS_SPI5_FSS                      101
132 #define GPOUT_SYS_SPI5_TXD                      102
133 #define GPOUT_SYS_I2C6_CLK                      103
134 #define GPOUT_SYS_I2C6_DATA                     104
135 #define GPOUT_SYS_SPI6_CLK                      105
136 #define GPOUT_SYS_SPI6_FSS                      106
137 #define GPOUT_SYS_SPI6_TXD                      107
138 
139 /* aon_iomux dout */
140 #define GPOUT_AON_CLK_32K_OUT                   2
141 #define GPOUT_AON_PTC0_PWM4                     3
142 #define GPOUT_AON_PTC0_PWM5                     4
143 #define GPOUT_AON_PTC0_PWM6                     5
144 #define GPOUT_AON_PTC0_PWM7                     6
145 #define GPOUT_AON_CLK_GCLK0                     7
146 #define GPOUT_AON_CLK_GCLK1                     8
147 #define GPOUT_AON_CLK_GCLK2                     9
148 
149 /* sys_iomux doen */
150 #define GPOEN_ENABLE                            0
151 #define GPOEN_DISABLE                           1
152 #define GPOEN_SYS_HDMI_CEC_SDA                  2
153 #define GPOEN_SYS_HDMI_DDC_SCL                  3
154 #define GPOEN_SYS_HDMI_DDC_SDA                  4
155 #define GPOEN_SYS_I2C0_CLK                      5
156 #define GPOEN_SYS_I2C0_DATA                     6
157 #define GPOEN_SYS_HIFI4_JTAG_TDO                7
158 #define GPOEN_SYS_JTAG_TDO                      8
159 #define GPOEN_SYS_PWM0_CHANNEL0                 9
160 #define GPOEN_SYS_PWM0_CHANNEL1                 10
161 #define GPOEN_SYS_PWM0_CHANNEL2                 11
162 #define GPOEN_SYS_PWM0_CHANNEL3                 12
163 #define GPOEN_SYS_SPI0_NSSPCTL                  13
164 #define GPOEN_SYS_SPI0_NSSP                     14
165 #define GPOEN_SYS_TDM_SYNC                      15
166 #define GPOEN_SYS_TDM_TXD                       16
167 #define GPOEN_SYS_I2C1_CLK                      17
168 #define GPOEN_SYS_I2C1_DATA                     18
169 #define GPOEN_SYS_SDIO1_CMD                     19
170 #define GPOEN_SYS_SDIO1_DATA0                   20
171 #define GPOEN_SYS_SDIO1_DATA1                   21
172 #define GPOEN_SYS_SDIO1_DATA2                   22
173 #define GPOEN_SYS_SDIO1_DATA3                   23
174 #define GPOEN_SYS_SDIO1_DATA4                   24
175 #define GPOEN_SYS_SDIO1_DATA5                   25
176 #define GPOEN_SYS_SDIO1_DATA6                   26
177 #define GPOEN_SYS_SDIO1_DATA7                   27
178 #define GPOEN_SYS_SPI1_NSSPCTL                  28
179 #define GPOEN_SYS_SPI1_NSSP                     29
180 #define GPOEN_SYS_I2C2_CLK                      30
181 #define GPOEN_SYS_I2C2_DATA                     31
182 #define GPOEN_SYS_SPI2_NSSPCTL                  32
183 #define GPOEN_SYS_SPI2_NSSP                     33
184 #define GPOEN_SYS_I2C3_CLK                      34
185 #define GPOEN_SYS_I2C3_DATA                     35
186 #define GPOEN_SYS_SPI3_NSSPCTL                  36
187 #define GPOEN_SYS_SPI3_NSSP                     37
188 #define GPOEN_SYS_I2C4_CLK                      38
189 #define GPOEN_SYS_I2C4_DATA                     39
190 #define GPOEN_SYS_SPI4_NSSPCTL                  40
191 #define GPOEN_SYS_SPI4_NSSP                     41
192 #define GPOEN_SYS_I2C5_CLK                      42
193 #define GPOEN_SYS_I2C5_DATA                     43
194 #define GPOEN_SYS_SPI5_NSSPCTL                  44
195 #define GPOEN_SYS_SPI5_NSSP                     45
196 #define GPOEN_SYS_I2C6_CLK                      46
197 #define GPOEN_SYS_I2C6_DATA                     47
198 #define GPOEN_SYS_SPI6_NSSPCTL                  48
199 #define GPOEN_SYS_SPI6_NSSP                     49
200 
201 /* aon_iomux doen */
202 #define GPOEN_AON_PTC0_OE_N_4                   2
203 #define GPOEN_AON_PTC0_OE_N_5                   3
204 #define GPOEN_AON_PTC0_OE_N_6                   4
205 #define GPOEN_AON_PTC0_OE_N_7                   5
206 
207 /* sys_iomux gin */
208 #define GPI_NONE                                255
209 
210 #define GPI_SYS_WAVE511_UART_RX                 0
211 #define GPI_SYS_CAN0_RXD                        1
212 #define GPI_SYS_USB_OVERCURRENT                 2
213 #define GPI_SYS_SPDIF                           3
214 #define GPI_SYS_JTAG_RST                        4
215 #define GPI_SYS_HDMI_CEC_SDA                    5
216 #define GPI_SYS_HDMI_DDC_SCL                    6
217 #define GPI_SYS_HDMI_DDC_SDA                    7
218 #define GPI_SYS_HDMI_HPD                        8
219 #define GPI_SYS_I2C0_CLK                        9
220 #define GPI_SYS_I2C0_DATA                       10
221 #define GPI_SYS_SDIO0_CD                        11
222 #define GPI_SYS_SDIO0_INT                       12
223 #define GPI_SYS_SDIO0_WP                        13
224 #define GPI_SYS_UART0_RX                        14
225 #define GPI_SYS_HIFI4_JTAG_TCK                  15
226 #define GPI_SYS_HIFI4_JTAG_TDI                  16
227 #define GPI_SYS_HIFI4_JTAG_TMS                  17
228 #define GPI_SYS_HIFI4_JTAG_RST                  18
229 #define GPI_SYS_JTAG_TDI                        19
230 #define GPI_SYS_JTAG_TMS                        20
231 #define GPI_SYS_PDM_DMIC0                       21
232 #define GPI_SYS_PDM_DMIC1                       22
233 #define GPI_SYS_I2SRX_SDIN0                     23
234 #define GPI_SYS_I2SRX_SDIN1                     24
235 #define GPI_SYS_I2SRX_SDIN2                     25
236 #define GPI_SYS_SPI0_CLK                        26
237 #define GPI_SYS_SPI0_FSS                        27
238 #define GPI_SYS_SPI0_RXD                        28
239 #define GPI_SYS_JTAG_TCK                        29
240 #define GPI_SYS_MCLK_EXT                        30
241 #define GPI_SYS_I2SRX_BCLK                      31
242 #define GPI_SYS_I2SRX_LRCK                      32
243 #define GPI_SYS_I2STX1_BCLK                     33
244 #define GPI_SYS_I2STX1_LRCK                     34
245 #define GPI_SYS_TDM_CLK                         35
246 #define GPI_SYS_TDM_RXD                         36
247 #define GPI_SYS_TDM_SYNC                        37
248 #define GPI_SYS_CAN1_RXD                        38
249 #define GPI_SYS_I2C1_CLK                        39
250 #define GPI_SYS_I2C1_DATA                       40
251 #define GPI_SYS_SDIO1_CD                        41
252 #define GPI_SYS_SDIO1_INT                       42
253 #define GPI_SYS_SDIO1_WP                        43
254 #define GPI_SYS_SDIO1_CMD                       44
255 #define GPI_SYS_SDIO1_DATA0                     45
256 #define GPI_SYS_SDIO1_DATA1                     46
257 #define GPI_SYS_SDIO1_DATA2                     47
258 #define GPI_SYS_SDIO1_DATA3                     48
259 #define GPI_SYS_SDIO1_DATA4                     49
260 #define GPI_SYS_SDIO1_DATA5                     50
261 #define GPI_SYS_SDIO1_DATA6                     51
262 #define GPI_SYS_SDIO1_DATA7                     52
263 #define GPI_SYS_SDIO1_STRB                      53
264 #define GPI_SYS_UART1_CTS                       54
265 #define GPI_SYS_UART1_RX                        55
266 #define GPI_SYS_SPI1_CLK                        56
267 #define GPI_SYS_SPI1_FSS                        57
268 #define GPI_SYS_SPI1_RXD                        58
269 #define GPI_SYS_I2C2_CLK                        59
270 #define GPI_SYS_I2C2_DATA                       60
271 #define GPI_SYS_UART2_CTS                       61
272 #define GPI_SYS_UART2_RX                        62
273 #define GPI_SYS_SPI2_CLK                        63
274 #define GPI_SYS_SPI2_FSS                        64
275 #define GPI_SYS_SPI2_RXD                        65
276 #define GPI_SYS_I2C3_CLK                        66
277 #define GPI_SYS_I2C3_DATA                       67
278 #define GPI_SYS_UART3_RX                        68
279 #define GPI_SYS_SPI3_CLK                        69
280 #define GPI_SYS_SPI3_FSS                        70
281 #define GPI_SYS_SPI3_RXD                        71
282 #define GPI_SYS_I2C4_CLK                        72
283 #define GPI_SYS_I2C4_DATA                       73
284 #define GPI_SYS_UART4_CTS                       74
285 #define GPI_SYS_UART4_RX                        75
286 #define GPI_SYS_SPI4_CLK                        76
287 #define GPI_SYS_SPI4_FSS                        77
288 #define GPI_SYS_SPI4_RXD                        78
289 #define GPI_SYS_I2C5_CLK                        79
290 #define GPI_SYS_I2C5_DATA                       80
291 #define GPI_SYS_UART5_CTS                       81
292 #define GPI_SYS_UART5_RX                        82
293 #define GPI_SYS_SPI5_CLK                        83
294 #define GPI_SYS_SPI5_FSS                        84
295 #define GPI_SYS_SPI5_RXD                        85
296 #define GPI_SYS_I2C6_CLK                        86
297 #define GPI_SYS_I2C6_DATA                       87
298 #define GPI_SYS_SPI6_CLK                        88
299 #define GPI_SYS_SPI6_FSS                        89
300 #define GPI_SYS_SPI6_RXD                        90
301 
302 /* aon_iomux gin */
303 #define GPI_AON_PMU_GPIO_WAKEUP_0               0
304 #define GPI_AON_PMU_GPIO_WAKEUP_1               1
305 #define GPI_AON_PMU_GPIO_WAKEUP_2               2
306 #define GPI_AON_PMU_GPIO_WAKEUP_3               3
307 
308 #endif
309 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php