Zephyr API Documentation
4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
lpc84x-pinctrl.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2026 Aerlync Labs Inc.
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
11
12
#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_LPC84X_PINCTRL_H_
13
#define ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_LPC84X_PINCTRL_H_
14
21
23
24
#define LPC84X_PINMUX_M(func, pin) (((func) << 16) | (pin))
25
32
34
35
#define LPC84X_PINMUX_F(func, pin) ((1U << 23) | ((func) << 16) | (pin))
36
38
#define LPC84X_SWM_USART0_TXD 0U
39
#define LPC84X_SWM_USART0_RXD 1U
40
#define LPC84X_SWM_USART0_RTS 2U
41
#define LPC84X_SWM_USART0_CTS 3U
42
#define LPC84X_SWM_USART0_SCLK 4U
43
#define LPC84X_SWM_USART1_TXD 5U
44
#define LPC84X_SWM_USART1_RXD 6U
45
#define LPC84X_SWM_USART1_RTS 7U
46
#define LPC84X_SWM_USART1_CTS 8U
47
#define LPC84X_SWM_USART1_SCLK 9U
48
#define LPC84X_SWM_USART2_TXD 10U
49
#define LPC84X_SWM_USART2_RXD 11U
50
#define LPC84X_SWM_USART2_RTS 12U
51
#define LPC84X_SWM_USART2_CTS 13U
52
#define LPC84X_SWM_USART2_SCLK 14U
53
#define LPC84X_SWM_SPI0_SCK 15U
54
#define LPC84X_SWM_SPI0_MOSI 16U
55
#define LPC84X_SWM_SPI0_MISO 17U
56
#define LPC84X_SWM_SPI0_SSEL0 18U
57
#define LPC84X_SWM_SPI0_SSEL1 19U
58
#define LPC84X_SWM_SPI0_SSEL2 20U
59
#define LPC84X_SWM_SPI0_SSEL3 21U
60
#define LPC84X_SWM_SPI1_SCK 22U
61
#define LPC84X_SWM_SPI1_MOSI 23U
62
#define LPC84X_SWM_SPI1_MISO 24U
63
#define LPC84X_SWM_SPI1_SSEL0 25U
64
#define LPC84X_SWM_SPI1_SSEL1 26U
65
#define LPC84X_SWM_SCT_PIN0 27U
66
#define LPC84X_SWM_SCT_PIN1 28U
67
#define LPC84X_SWM_SCT_PIN2 29U
68
#define LPC84X_SWM_SCT_PIN3 30U
69
#define LPC84X_SWM_SCT_OUT0 31U
70
#define LPC84X_SWM_SCT_OUT1 32U
71
#define LPC84X_SWM_SCT_OUT2 33U
72
#define LPC84X_SWM_SCT_OUT3 34U
73
#define LPC84X_SWM_SCT_OUT4 35U
74
#define LPC84X_SWM_SCT_OUT5 36U
75
#define LPC84X_SWM_SCT_OUT6 37U
76
#define LPC84X_SWM_I2C1_SDA 38U
77
#define LPC84X_SWM_I2C1_SCL 39U
78
#define LPC84X_SWM_I2C2_SDA 40U
79
#define LPC84X_SWM_I2C2_SCL 41U
80
#define LPC84X_SWM_I2C3_SDA 42U
81
#define LPC84X_SWM_I2C3_SCL 43U
82
#define LPC84X_SWM_ACMP_OUT 44U
83
#define LPC84X_SWM_CLKOUT 45U
84
#define LPC84X_SWM_GPIO_INT_BMAT 46U
85
#define LPC84X_SWM_USART3_TXD 47U
86
#define LPC84X_SWM_USART3_RXD 48U
87
#define LPC84X_SWM_USART3_SCLK 49U
88
#define LPC84X_SWM_USART4_TXD 50U
89
#define LPC84X_SWM_USART4_RXD 51U
90
#define LPC84X_SWM_USART4_SCLK 52U
91
#define LPC84X_SWM_T0_MAT_CHN0 53U
92
#define LPC84X_SWM_T0_MAT_CHN1 54U
93
#define LPC84X_SWM_T0_MAT_CHN2 55U
94
#define LPC84X_SWM_T0_MAT_CHN3 56U
95
#define LPC84X_SWM_T0_CAP_CHN0 57U
96
#define LPC84X_SWM_T0_CAP_CHN1 58U
97
#define LPC84X_SWM_T0_CAP_CHN2 59U
98
99
/* SWM fixed pin selection */
100
#define LPC84X_SWM_ACMP_INPUT1 0U
101
#define LPC84X_SWM_ACMP_INPUT2 1U
102
#define LPC84X_SWM_ACMP_INPUT3 2U
103
#define LPC84X_SWM_ACMP_INPUT4 3U
104
#define LPC84X_SWM_ACMP_INPUT5 4U
105
#define LPC84X_SWM_SWCLK 5U
106
#define LPC84X_SWM_SWDIO 6U
107
#define LPC84X_SWM_XTALIN 7U
108
#define LPC84X_SWM_XTALOUT 8U
109
#define LPC84X_SWM_RESETN 9U
110
#define LPC84X_SWM_CLKIN 10U
111
#define LPC84X_SWM_VDDCMP 11U
112
#define LPC84X_SWM_I2C0_SDA 12U
113
#define LPC84X_SWM_I2C0_SCL 13U
114
#define LPC84X_SWM_ADC_CHN0 14U
115
#define LPC84X_SWM_ADC_CHN1 15U
116
#define LPC84X_SWM_ADC_CHN2 16U
117
#define LPC84X_SWM_ADC_CHN3 17U
118
#define LPC84X_SWM_ADC_CHN4 18U
119
#define LPC84X_SWM_ADC_CHN5 19U
120
#define LPC84X_SWM_ADC_CHN6 20U
121
#define LPC84X_SWM_ADC_CHN7 21U
122
#define LPC84X_SWM_ADC_CHN8 22U
123
#define LPC84X_SWM_ADC_CHN9 23U
124
#define LPC84X_SWM_ADC_CHN10 24U
125
#define LPC84X_SWM_ADC_CHN11 25U
126
#define LPC84X_SWM_DAC_OUT0 26U
127
#define LPC84X_SWM_DAC_OUT1 27U
128
#define LPC84X_SWM_CAPT_X0 28U
129
#define LPC84X_SWM_CAPT_X1 29U
130
#define LPC84X_SWM_CAPT_X2 30U
131
#define LPC84X_SWM_CAPT_X3 31U
132
#define LPC84X_SWM_CAPT_X4 32U
133
#define LPC84X_SWM_CAPT_X5 33U
134
#define LPC84X_SWM_CAPT_X6 34U
135
#define LPC84X_SWM_CAPT_X7 35U
136
#define LPC84X_SWM_CAPT_X8 36U
137
#define LPC84X_SWM_CAPT_YL 37U
138
#define LPC84X_SWM_CAPT_YH 38U
139
145
146
/* Port 0 */
147
#define LPC84X_PIN_P0_0 0U
148
#define LPC84X_PIN_P0_1 1U
149
#define LPC84X_PIN_P0_2 2U
150
#define LPC84X_PIN_P0_3 3U
151
#define LPC84X_PIN_P0_4 4U
152
#define LPC84X_PIN_P0_5 5U
153
#define LPC84X_PIN_P0_6 6U
154
#define LPC84X_PIN_P0_7 7U
155
#define LPC84X_PIN_P0_8 8U
156
#define LPC84X_PIN_P0_9 9U
157
#define LPC84X_PIN_P0_10 10U
158
#define LPC84X_PIN_P0_11 11U
159
#define LPC84X_PIN_P0_12 12U
160
#define LPC84X_PIN_P0_13 13U
161
#define LPC84X_PIN_P0_14 14U
162
#define LPC84X_PIN_P0_15 15U
163
#define LPC84X_PIN_P0_16 16U
164
#define LPC84X_PIN_P0_17 17U
165
#define LPC84X_PIN_P0_18 18U
166
#define LPC84X_PIN_P0_19 19U
167
#define LPC84X_PIN_P0_20 20U
168
#define LPC84X_PIN_P0_21 21U
169
#define LPC84X_PIN_P0_22 22U
170
#define LPC84X_PIN_P0_23 23U
171
#define LPC84X_PIN_P0_24 24U
172
#define LPC84X_PIN_P0_25 25U
173
#define LPC84X_PIN_P0_26 26U
174
#define LPC84X_PIN_P0_27 27U
175
#define LPC84X_PIN_P0_28 28U
176
#define LPC84X_PIN_P0_29 29U
177
#define LPC84X_PIN_P0_30 30U
178
#define LPC84X_PIN_P0_31 31U
179
180
/* Port 1 */
181
#define LPC84X_PIN_P1_0 32U
182
#define LPC84X_PIN_P1_1 33U
183
#define LPC84X_PIN_P1_2 34U
184
#define LPC84X_PIN_P1_3 35U
185
#define LPC84X_PIN_P1_4 36U
186
#define LPC84X_PIN_P1_5 37U
187
#define LPC84X_PIN_P1_6 38U
188
#define LPC84X_PIN_P1_7 39U
189
#define LPC84X_PIN_P1_8 40U
190
#define LPC84X_PIN_P1_9 41U
191
#define LPC84X_PIN_P1_10 42U
192
#define LPC84X_PIN_P1_11 43U
193
#define LPC84X_PIN_P1_12 44U
194
#define LPC84X_PIN_P1_13 45U
195
#define LPC84X_PIN_P1_14 46U
196
#define LPC84X_PIN_P1_15 47U
197
#define LPC84X_PIN_P1_16 48U
198
#define LPC84X_PIN_P1_17 49U
199
#define LPC84X_PIN_P1_18 50U
200
#define LPC84X_PIN_P1_19 51U
201
#define LPC84X_PIN_P1_20 52U
202
#define LPC84X_PIN_P1_21 53U
203
209
#define IOCON_INDEX_PIO0_17 0U
210
#define IOCON_INDEX_PIO0_13 1U
211
#define IOCON_INDEX_PIO0_12 2U
212
#define IOCON_INDEX_PIO0_5 3U
213
#define IOCON_INDEX_PIO0_4 4U
214
#define IOCON_INDEX_PIO0_3 5U
215
#define IOCON_INDEX_PIO0_2 6U
216
#define IOCON_INDEX_PIO0_11 7U
217
#define IOCON_INDEX_PIO0_10 8U
218
#define IOCON_INDEX_PIO0_16 9U
219
#define IOCON_INDEX_PIO0_15 10U
220
#define IOCON_INDEX_PIO0_1 11U
221
#define IOCON_INDEX_PIO0_9 13U
222
#define IOCON_INDEX_PIO0_8 14U
223
#define IOCON_INDEX_PIO0_7 15U
224
#define IOCON_INDEX_PIO0_6 16U
225
#define IOCON_INDEX_PIO0_0 17U
226
#define IOCON_INDEX_PIO0_14 18U
227
#define IOCON_INDEX_PIO0_28 20U
228
#define IOCON_INDEX_PIO0_27 21U
229
#define IOCON_INDEX_PIO0_26 22U
230
#define IOCON_INDEX_PIO0_25 23U
231
#define IOCON_INDEX_PIO0_24 24U
232
#define IOCON_INDEX_PIO0_23 25U
233
#define IOCON_INDEX_PIO0_22 26U
234
#define IOCON_INDEX_PIO0_21 27U
235
#define IOCON_INDEX_PIO0_20 28U
236
#define IOCON_INDEX_PIO0_19 29U
237
#define IOCON_INDEX_PIO0_18 30U
238
#define IOCON_INDEX_PIO1_8 31U
239
#define IOCON_INDEX_PIO1_9 32U
240
#define IOCON_INDEX_PIO1_12 33U
241
#define IOCON_INDEX_PIO1_13 34U
242
#define IOCON_INDEX_PIO0_31 35U
243
#define IOCON_INDEX_PIO1_0 36U
244
#define IOCON_INDEX_PIO1_1 37U
245
#define IOCON_INDEX_PIO1_2 38U
246
#define IOCON_INDEX_PIO1_14 39U
247
#define IOCON_INDEX_PIO1_15 40U
248
#define IOCON_INDEX_PIO1_3 41U
249
#define IOCON_INDEX_PIO1_4 42U
250
#define IOCON_INDEX_PIO1_5 43U
251
#define IOCON_INDEX_PIO1_16 44U
252
#define IOCON_INDEX_PIO1_17 45U
253
#define IOCON_INDEX_PIO1_6 46U
254
#define IOCON_INDEX_PIO1_18 47U
255
#define IOCON_INDEX_PIO1_19 48U
256
#define IOCON_INDEX_PIO1_7 49U
257
#define IOCON_INDEX_PIO0_29 50U
258
#define IOCON_INDEX_PIO0_30 51U
259
#define IOCON_INDEX_PIO1_20 52U
260
#define IOCON_INDEX_PIO1_21 53U
261
#define IOCON_INDEX_PIO1_11 54U
262
#define IOCON_INDEX_PIO1_10 55U
263
269
270
/* < Pin define encoder */
271
#define LPC84X_PIN_DEFINE(swm, iocon) ((((swm) & 0xFF) << 8) | ((iocon) & 0xFF))
272
279
280
#define P0_0 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_0, IOCON_INDEX_PIO0_0)
281
#define P0_1 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_1, IOCON_INDEX_PIO0_1)
282
#define P0_2 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_2, IOCON_INDEX_PIO0_2)
283
#define P0_3 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_3, IOCON_INDEX_PIO0_3)
284
#define P0_4 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_4, IOCON_INDEX_PIO0_4)
285
#define P0_5 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_5, IOCON_INDEX_PIO0_5)
286
#define P0_6 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_6, IOCON_INDEX_PIO0_6)
287
#define P0_7 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_7, IOCON_INDEX_PIO0_7)
288
#define P0_8 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_8, IOCON_INDEX_PIO0_8)
289
#define P0_9 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_9, IOCON_INDEX_PIO0_9)
290
#define P0_10 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_10, IOCON_INDEX_PIO0_10)
291
#define P0_11 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_11, IOCON_INDEX_PIO0_11)
292
#define P0_12 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_12, IOCON_INDEX_PIO0_12)
293
#define P0_13 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_13, IOCON_INDEX_PIO0_13)
294
#define P0_14 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_14, IOCON_INDEX_PIO0_14)
295
#define P0_15 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_15, IOCON_INDEX_PIO0_15)
296
#define P0_16 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_16, IOCON_INDEX_PIO0_16)
297
#define P0_17 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_17, IOCON_INDEX_PIO0_17)
298
#define P0_18 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_18, IOCON_INDEX_PIO0_18)
299
#define P0_19 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_19, IOCON_INDEX_PIO0_19)
300
#define P0_20 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_20, IOCON_INDEX_PIO0_20)
301
#define P0_21 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_21, IOCON_INDEX_PIO0_21)
302
#define P0_22 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_22, IOCON_INDEX_PIO0_22)
303
#define P0_23 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_23, IOCON_INDEX_PIO0_23)
304
#define P0_24 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_24, IOCON_INDEX_PIO0_24)
305
#define P0_25 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_25, IOCON_INDEX_PIO0_25)
306
#define P0_26 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_26, IOCON_INDEX_PIO0_26)
307
#define P0_27 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_27, IOCON_INDEX_PIO0_27)
308
#define P0_28 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_28, IOCON_INDEX_PIO0_28)
309
#define P0_29 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_29, IOCON_INDEX_PIO0_29)
310
#define P0_30 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_30, IOCON_INDEX_PIO0_30)
311
#define P0_31 LPC84X_PIN_DEFINE(LPC84X_PIN_P0_31, IOCON_INDEX_PIO0_31)
312
#define P1_0 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_0, IOCON_INDEX_PIO1_0)
313
#define P1_1 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_1, IOCON_INDEX_PIO1_1)
314
#define P1_2 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_2, IOCON_INDEX_PIO1_2)
315
#define P1_3 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_3, IOCON_INDEX_PIO1_3)
316
#define P1_4 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_4, IOCON_INDEX_PIO1_4)
317
#define P1_5 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_5, IOCON_INDEX_PIO1_5)
318
#define P1_6 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_6, IOCON_INDEX_PIO1_6)
319
#define P1_7 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_7, IOCON_INDEX_PIO1_7)
320
#define P1_8 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_8, IOCON_INDEX_PIO1_8)
321
#define P1_9 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_9, IOCON_INDEX_PIO1_9)
322
#define P1_10 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_10, IOCON_INDEX_PIO1_10)
323
#define P1_11 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_11, IOCON_INDEX_PIO1_11)
324
#define P1_12 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_12, IOCON_INDEX_PIO1_12)
325
#define P1_13 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_13, IOCON_INDEX_PIO1_13)
326
#define P1_14 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_14, IOCON_INDEX_PIO1_14)
327
#define P1_15 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_15, IOCON_INDEX_PIO1_15)
328
#define P1_16 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_16, IOCON_INDEX_PIO1_16)
329
#define P1_17 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_17, IOCON_INDEX_PIO1_17)
330
#define P1_18 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_18, IOCON_INDEX_PIO1_18)
331
#define P1_19 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_19, IOCON_INDEX_PIO1_19)
332
#define P1_20 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_20, IOCON_INDEX_PIO1_20)
333
#define P1_21 LPC84X_PIN_DEFINE(LPC84X_PIN_P1_21, IOCON_INDEX_PIO1_21)
334
335
#endif
/* ZEPHYR_INCLUDE_DT_BINDINGS_PINCTRL_LPC84X_PINCTRL_H_ */
zephyr
dt-bindings
pinctrl
lpc84x-pinctrl.h
Generated on
for Zephyr API Documentation by
1.16.1