1 /*
2 * Copyright (c) 2011-2017, Texas Instruments Incorporated
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions\r
7 * are met:\r
8 *\r
9 * * Redistributions of source code must retain the above copyright\r
10 * notice, this list of conditions and the following disclaimer.\r
11 *\r
12 * * Redistributions in binary form must reproduce the above copyright\r
13 * notice, this list of conditions and the following disclaimer in the\r
14 * documentation and/or other materials provided with the distribution.\r
15 *\r
16 * * Neither the name of Texas Instruments Incorporated nor the names of\r
17 * its contributors may be used to endorse or promote products derived\r
18 * from this software without specific prior written permission.\r
19 *\r
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"\r
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\r
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\r
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\r
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\r
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;\r
27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r
28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR\r
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\r
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
31 *\r
32 */\r
33 \r
34 /**\r
35 *\r
36 * \file evmc66x_gpio.h\r
37 *\r
38 * \brief This file is the header file for GPIO module\r
39 *\r
40 ******************************************************************************/\r
41 \r
42 #ifndef _EVMC66X_GPIO_H_
43 #define _EVMC66X_GPIO_H_
45 #ifdef __cplusplus
46 extern "C" {
47 #endif
49 /************************
50 * Defines and Macros
51 ************************/
52 \r
53 /** GPIO port 0 */\r
54 #define GPIO_PORT_0 (CSL_GPIO_0)\r
55 /** GPIO port 1 */\r
56 #define GPIO_PORT_1 (CSL_GPIO_1)\r
57 \r
58 /** GPIO pin number 0 */\r
59 #define GPIO_PIN_0 (0)\r
60 /** GPIO pin number 1 */\r
61 #define GPIO_PIN_1 (1)\r
62 /** GPIO pin number 2 */\r
63 #define GPIO_PIN_2 (2)\r
64 /** GPIO pin number 3 */\r
65 #define GPIO_PIN_3 (3)\r
66 /** GPIO pin number 4 */\r
67 #define GPIO_PIN_4 (4)\r
68 /** GPIO pin number 5 */\r
69 #define GPIO_PIN_5 (5)\r
70 /** GPIO pin number 6 */\r
71 #define GPIO_PIN_6 (6)\r
72 /** GPIO pin number 7 */\r
73 #define GPIO_PIN_7 (7)\r
74 /** GPIO pin number 8 */\r
75 #define GPIO_PIN_8 (8)\r
76 /** GPIO pin number 9 */\r
77 #define GPIO_PIN_9 (9)\r
78 /** GPIO pin number 10 */\r
79 #define GPIO_PIN_10 (10)\r
80 /** GPIO pin number 11 */\r
81 #define GPIO_PIN_11 (11)\r
82 /** GPIO pin number 12 */\r
83 #define GPIO_PIN_12 (12)\r
84 /** GPIO pin number 13 */\r
85 #define GPIO_PIN_13 (13)\r
86 /** GPIO pin number 14 */\r
87 #define GPIO_PIN_14 (14)\r
88 /** GPIO pin number 15 */\r
89 #define GPIO_PIN_15 (15)\r
90 /** GPIO pin number 16 */\r
91 #define GPIO_PIN_16 (16)\r
92 /** GPIO pin number 17 */\r
93 #define GPIO_PIN_17 (17)\r
94 /** GPIO pin number 18 */\r
95 #define GPIO_PIN_18 (18)\r
96 /** GPIO pin number 19 */\r
97 #define GPIO_PIN_19 (19)\r
98 /** GPIO pin number 20 */\r
99 #define GPIO_PIN_20 (20)\r
100 /** GPIO pin number 21 */\r
101 #define GPIO_PIN_21 (21)\r
102 /** GPIO pin number 22 */\r
103 #define GPIO_PIN_22 (22)\r
104 /** GPIO pin number 23 */\r
105 #define GPIO_PIN_23 (23)\r
106 /** GPIO pin number 24 */\r
107 #define GPIO_PIN_24 (24)\r
108 /** GPIO pin number 25 */\r
109 #define GPIO_PIN_25 (25)\r
110 /** GPIO pin number 26 */\r
111 #define GPIO_PIN_26 (26)\r
112 /** GPIO pin number 27 */\r
113 #define GPIO_PIN_27 (27)\r
114 /** GPIO pin number 28 */\r
115 #define GPIO_PIN_28 (28)\r
116 /** GPIO pin number 29 */\r
117 #define GPIO_PIN_29 (29)\r
118 /** GPIO pin number 30 */\r
119 #define GPIO_PIN_30 (30)\r
120 /** GPIO pin number 31 */\r
121 #define GPIO_PIN_31 (31)\r
122 /** GPIO pin number 32 */\r
123 #define GPIO_PIN_32 (32)\r
124 /** GPIO pin number 33 */\r
125 #define GPIO_PIN_33 (33)\r
126 /** GPIO pin number 34 */\r
127 #define GPIO_PIN_34 (34)\r
128 /** GPIO pin number 35 */\r
129 #define GPIO_PIN_35 (35)\r
130 /** GPIO pin number 36 */\r
131 #define GPIO_PIN_36 (36)\r
132 /** GPIO pin number 37 */\r
133 #define GPIO_PIN_37 (37)\r
134 /** GPIO pin number 38 */\r
135 #define GPIO_PIN_38 (38)\r
136 /** GPIO pin number 39 */\r
137 #define GPIO_PIN_39 (39)\r
138 /** GPIO pin number 40 */\r
139 #define GPIO_PIN_40 (40)\r
140 /** GPIO pin number 41 */\r
141 #define GPIO_PIN_41 (41)\r
142 /** GPIO pin number 42 */\r
143 #define GPIO_PIN_42 (42)\r
144 /** GPIO pin number 43 */\r
145 #define GPIO_PIN_43 (43)\r
146 /** GPIO pin number 44 */\r
147 #define GPIO_PIN_44 (44)\r
148 /** GPIO pin number 45 */\r
149 #define GPIO_PIN_45 (45)\r
150 /** GPIO pin number 46 */\r
151 #define GPIO_PIN_46 (46)\r
152 /** GPIO pin number 47 */\r
153 #define GPIO_PIN_47 (47)\r
154 /** GPIO pin number 48 */\r
155 #define GPIO_PIN_48 (48)\r
156 /** GPIO pin number 49 */\r
157 #define GPIO_PIN_49 (49)\r
158 /** GPIO pin number 50 */\r
159 #define GPIO_PIN_50 (50)\r
160 /** GPIO pin number 51 */\r
161 #define GPIO_PIN_51 (51)\r
162 /** GPIO pin number 52 */\r
163 #define GPIO_PIN_52 (52)\r
164 /** GPIO pin number 53 */\r
165 #define GPIO_PIN_53 (53)\r
166 /** GPIO pin number 54 */\r
167 #define GPIO_PIN_54 (54)\r
168 /** GPIO pin number 55 */\r
169 #define GPIO_PIN_55 (55)\r
170 /** GPIO pin number 56 */\r
171 #define GPIO_PIN_56 (56)\r
172 /** GPIO pin number 57 */\r
173 #define GPIO_PIN_57 (57)\r
174 /** GPIO pin number 58 */\r
175 #define GPIO_PIN_58 (58)\r
176 /** GPIO pin number 59 */\r
177 #define GPIO_PIN_59 (59)\r
178 /** GPIO pin number 60 */\r
179 #define GPIO_PIN_60 (60)\r
180 /** GPIO pin number 61 */\r
181 #define GPIO_PIN_61 (61)\r
182 /** GPIO pin number 62 */\r
183 #define GPIO_PIN_62 (62)\r
184 /** GPIO pin number 63 */\r
185 #define GPIO_PIN_63 (63)\r
186 /** GPIO pin number 64 */\r
187 #define GPIO_PIN_64 (64)\r
188 /** GPIO pin number 65 */\r
189 #define GPIO_PIN_65 (65)\r
190 /** GPIO pin number 66 */\r
191 #define GPIO_PIN_66 (66)\r
192 /** GPIO pin number 67 */\r
193 #define GPIO_PIN_67 (67)\r
194 /** GPIO pin number 68 */\r
195 #define GPIO_PIN_68 (68)\r
196 /** GPIO pin number 69 */\r
197 #define GPIO_PIN_69 (69)\r
198 /** GPIO pin number 70 */\r
199 #define GPIO_PIN_70 (70)\r
200 /** GPIO pin number 71 */\r
201 #define GPIO_PIN_71 (71)\r
202 /** GPIO pin number 72 */\r
203 #define GPIO_PIN_72 (72)\r
204 /** GPIO pin number 73 */\r
205 #define GPIO_PIN_73 (73)\r
206 /** GPIO pin number 74 */\r
207 #define GPIO_PIN_74 (74)\r
208 /** GPIO pin number 75 */\r
209 #define GPIO_PIN_75 (75)\r
210 /** GPIO pin number 76 */\r
211 #define GPIO_PIN_76 (76)\r
212 /** GPIO pin number 77 */\r
213 #define GPIO_PIN_77 (77)\r
214 /** GPIO pin number 78 */\r
215 #define GPIO_PIN_78 (78)\r
216 /** GPIO pin number 79 */\r
217 #define GPIO_PIN_79 (79)\r
218 /** GPIO pin number 80 */\r
219 #define GPIO_PIN_80 (80)\r
220 /** GPIO pin number 81 */\r
221 #define GPIO_PIN_81 (81)\r
222 /** GPIO pin number 82 */\r
223 #define GPIO_PIN_82 (82)\r
224 /** GPIO pin number 83 */\r
225 #define GPIO_PIN_83 (83)\r
226 /** GPIO pin number 84 */\r
227 #define GPIO_PIN_84 (84)\r
228 /** GPIO pin number 85 */\r
229 #define GPIO_PIN_85 (85)\r
230 /** GPIO pin number 86 */\r
231 #define GPIO_PIN_86 (86)\r
232 /** GPIO pin number 87 */\r
233 #define GPIO_PIN_87 (87)\r
234 /** GPIO pin number 88 */\r
235 #define GPIO_PIN_88 (88)\r
236 /** GPIO pin number 89 */\r
237 #define GPIO_PIN_89 (89)\r
238 /** GPIO pin number 90 */\r
239 #define GPIO_PIN_90 (90)\r
240 /** GPIO pin number 91 */\r
241 #define GPIO_PIN_91 (91)\r
242 /** GPIO pin number 92 */\r
243 #define GPIO_PIN_92 (92)\r
244 /** GPIO pin number 93 */\r
245 #define GPIO_PIN_93 (93)\r
246 /** GPIO pin number 94 */\r
247 #define GPIO_PIN_94 (94)\r
248 /** GPIO pin number 95 */\r
249 #define GPIO_PIN_95 (95)\r
250 /** GPIO pin number 96 */\r
251 #define GPIO_PIN_96 (96)\r
252 /** GPIO pin number 97 */\r
253 #define GPIO_PIN_97 (97)\r
254 /** GPIO pin number 98 */\r
255 #define GPIO_PIN_98 (98)\r
256 /** GPIO pin number 99 */\r
257 #define GPIO_PIN_99 (99)\r
258 /** GPIO pin number 100 */\r
259 #define GPIO_PIN_100 (100)\r
260 /** GPIO pin number 101 */\r
261 #define GPIO_PIN_101 (101)\r
262 /** GPIO pin number 102 */\r
263 #define GPIO_PIN_102 (102)\r
264 /** GPIO pin number 103 */\r
265 #define GPIO_PIN_103 (103)\r
266 /** GPIO pin number 104 */\r
267 #define GPIO_PIN_104 (104)\r
268 /** GPIO pin number 105 */\r
269 #define GPIO_PIN_105 (105)\r
270 /** GPIO pin number 106 */\r
271 #define GPIO_PIN_106 (106)\r
272 /** GPIO pin number 107 */\r
273 #define GPIO_PIN_107 (107)\r
274 /** GPIO pin number 108 */\r
275 #define GPIO_PIN_108 (108)\r
276 /** GPIO pin number 109 */\r
277 #define GPIO_PIN_109 (109)\r
278 /** GPIO pin number 110 */\r
279 #define GPIO_PIN_110 (110)\r
280 /** GPIO pin number 111 */\r
281 #define GPIO_PIN_111 (111)\r
282 /** GPIO pin number 112 */\r
283 #define GPIO_PIN_112 (112)\r
284 /** GPIO pin number 113 */\r
285 #define GPIO_PIN_113 (113)\r
286 /** GPIO pin number 114 */\r
287 #define GPIO_PIN_114 (114)\r
288 /** GPIO pin number 115 */\r
289 #define GPIO_PIN_115 (115)\r
290 /** GPIO pin number 116 */\r
291 #define GPIO_PIN_116 (116)\r
292 /** GPIO pin number 117 */\r
293 #define GPIO_PIN_117 (117)\r
294 /** GPIO pin number 118 */\r
295 #define GPIO_PIN_118 (118)\r
296 /** GPIO pin number 119 */\r
297 #define GPIO_PIN_119 (119)\r
298 /** GPIO pin number 120 */\r
299 #define GPIO_PIN_120 (120)\r
300 /** GPIO pin number 121 */\r
301 #define GPIO_PIN_121 (121)\r
302 /** GPIO pin number 122 */\r
303 #define GPIO_PIN_122 (122)\r
304 /** GPIO pin number 123 */\r
305 #define GPIO_PIN_123 (123)\r
306 /** GPIO pin number 124 */\r
307 #define GPIO_PIN_124 (124)\r
308 /** GPIO pin number 125 */\r
309 #define GPIO_PIN_125 (125)\r
310 /** GPIO pin number 126 */\r
311 #define GPIO_PIN_126 (126)\r
312 /** GPIO pin number 127 */\r
313 #define GPIO_PIN_127 (127)\r
314 /** GPIO pin number 128 */\r
315 #define GPIO_PIN_128 (128)\r
316 /** GPIO pin number 129 */\r
317 #define GPIO_PIN_129 (129)\r
318 /** GPIO pin number 130 */\r
319 #define GPIO_PIN_130 (130)\r
320 /** GPIO pin number 131 */\r
321 #define GPIO_PIN_131 (131)\r
322 /** GPIO pin number 132 */\r
323 #define GPIO_PIN_132 (132)\r
324 /** GPIO pin number 133 */\r
325 #define GPIO_PIN_133 (133)\r
326 /** GPIO pin number 134 */\r
327 #define GPIO_PIN_134 (134)\r
328 /** GPIO pin number 135 */\r
329 #define GPIO_PIN_135 (135)\r
330 /** GPIO pin number 136 */\r
331 #define GPIO_PIN_136 (136)\r
332 /** GPIO pin number 137 */\r
333 #define GPIO_PIN_137 (137)\r
334 /** GPIO pin number 138 */\r
335 #define GPIO_PIN_138 (138)\r
336 /** GPIO pin number 139 */\r
337 #define GPIO_PIN_139 (139)\r
338 /** GPIO pin number 140 */\r
339 #define GPIO_PIN_140 (140)\r
340 /** GPIO pin number 141 */\r
341 #define GPIO_PIN_141 (141)\r
342 /** GPIO pin number 142 */\r
343 #define GPIO_PIN_142 (142)\r
344 /** GPIO pin number 143 */\r
345 #define GPIO_PIN_143 (143)\r
346 \r
347 /** Number of GPIO pins per bank */\r
348 #define GPIO_PINS_PER_BANK (32)\r
349 /** Maximum number of GPIO banks */\r
350 #define GPIO_MAX_BANKS (5)\r
351 \r
352 /** Maximum number of GPIO pins supported per instance */\r
353 #define GPIO_MAX_NUMBER ((GPIO_MAX_BANKS) * (GPIO_PINS_PER_BANK))\r
354 \r
355 /*\r
356 * \brief GPIO function returned result\r
357 */\r
358 /** GPIO pin value is low */\r
359 #define GPIO_LOW (0)\r
360 /** GPIO pin value is high */\r
361 #define GPIO_HIGH (1)\r
362 /** Requested operation is successful */\r
363 #define GPIO_RET_OK (0)\r
364 /** Requested operation is failed */\r
365 #define GPIO_RET_FAIL (1)\r
366 /** Invalid GPIO pin/bank number error */\r
367 #define INVALID_GPIO_NUMBER (2)\r
368 /** Invalid GPIO direction error */\r
369 #define INVALID_GPIO_DIRECTION (3)\r
370 /** Invalid GPIO state error */\r
371 #define INVALID_GPIO_STATE (4)\r
372 /** Invalid GPIO port number error */\r
373 #define INVALID_GPIO_PORT (5)\r
374 \r
375 /** Command to set GPIO pin direction */\r
376 #define GPIO_CTRL_SET_DIR (0)\r
377 /** Command to set GPIO pin output */\r
378 #define GPIO_CTRL_SET_OUTPUT (1)\r
379 /** Command to clear GPIO pin output */\r
380 #define GPIO_CTRL_CLEAR_OUTPUT (2)\r
381 /** Command to read GPIO pin input */\r
382 #define GPIO_CTRL_READ_INPUT (3)\r
383 /** Command to set rising edge interrupt */\r
384 #define GPIO_CTRL_SET_RE_INTR (4)\r
385 /** Command to clear rising edge interrupt */\r
386 #define GPIO_CTRL_CLEAR_RE_INTR (5)\r
387 /** Command to set falling edge interrupt */\r
388 #define GPIO_CTRL_SET_FE_INTR (6)\r
389 /** Command to clear falling edge interrupt */\r
390 #define GPIO_CTRL_CLEAR_FE_INTR (7)\r
391 \r
392 /** GPIO function return type */\r
393 typedef uint16_t GPIO_RET;\r
394 \r
395 /**\r
396 * \brief Options to configure GPIO pin direction\r
397 */\r
398 typedef enum _GpioDirection\r
399 {\r
400 GPIO_OUT = 0, /**< Configures GPIO pin as output */\r
401 GPIO_IN /**< Configures GPIO pin as input */\r
402 } GpioDirection;\r
403 \r
404 /************************\r
405 * Function declarations\r
406 ************************/\r
407 /**\r
408 * \brief Returns base address of given GPIO port number.\r
409 *\r
410 * \param gpioPortNumber [IN] GPIO port number\r
411 *\r
412 * \return CSL_GpioHandle\n\r
413 *\r
414 */\r
415 CSL_GpioHandle gpioGetRegBaseAddr(uint8_t gpioPortNumber);\r
416 \r
417 /**\r
418 * \brief Initializes the GPIO peripheral\r
419 *\r
420 * \param gpioPortNumber [IN] GPIO port number\r
421 *\r
422 * \return\r
423 * \n GPIO_RET_OK - Requested operation is successful\r
424 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
425 *\r
426 */\r
427 GPIO_RET gpioInit(uint8_t gpioPortNumber);\r
428 \r
429 /**\r
430 * \brief This function configures the specified GPIO's direction\r
431 *\r
432 * \param gpioPortNumber [IN] GPIO port number\r
433 * \param pinNum [IN] GPIO pin number\r
434 * \param direction [IN] GPIO pin direction\r
435 *\r
436 * \return\r
437 * \n GPIO_RET_OK - Requested operation is successful\r
438 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
439 * \n INVALID_GPIO_NUMBER - Invalid GPIO pin number\r
440 *\r
441 */\r
442 GPIO_RET gpioSetDirection(uint8_t gpioPortNumber, uint8_t pinNum,\r
443 GpioDirection direction);\r
444 \r
445 /**\r
446 * \brief This function sets the specified GPIO's pin state to 1\r
447 *\r
448 * \param gpioPortNumber [IN] GPIO port number\r
449 * \param pinNum [IN] GPIO pin number\r
450 *\r
451 * \return\r
452 * \n GPIO_RET_OK - Requested operation is successful\r
453 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
454 * \n INVALID_GPIO_NUMBER - Invalid GPIO pin number\r
455 *\r
456 */\r
457 GPIO_RET gpioSetOutput(uint8_t gpioPortNumber, uint8_t pinNum);\r
458 \r
459 /**\r
460 * \brief This function Clears the specified GPIO's pin state to 0\r
461 *\r
462 * \param gpioPortNumber [IN] GPIO port number\r
463 * \param pinNum [IN] GPIO pin number\r
464 *\r
465 * \return\r
466 * \n GPIO_RET_OK - Requested operation is successful\r
467 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
468 * \n INVALID_GPIO_NUMBER - Invalid GPIO pin number\r
469 *\r
470 */\r
471 GPIO_RET gpioClearOutput(uint8_t gpioPortNumber, uint8_t pinNum);\r
472 \r
473 /**\r
474 * \brief This function gets the specified GPIO's pin state\r
475 *\r
476 * The specified GPIO should be configured as input\r
477 *\r
478 * \param gpioPortNumber [IN] GPIO port number\r
479 * \param pinNum [IN] GPIO pin number\r
480 *\r
481 * \return\r
482 * \n uint32_t - Input state of GPIO if success\r
483 * \n - else GPIO status\r
484 */\r
485 uint32_t gpioReadInput(uint8_t gpioPortNumber, uint8_t pinNum);\r
486 \r
487 /**\r
488 * \brief This function Enables GPIO interrupts to CPU\r
489 *\r
490 * \param gpioPortNumber [IN] GPIO port number\r
491 * \param bankNum [IN] GPIO bank number\r
492 *\r
493 * \return\r
494 * \n GPIO_RET_OK - Requested operation is successful\r
495 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
496 * \n INVALID_GPIO_NUMBER - Invalid GPIO bank number\r
497 */\r
498 GPIO_RET gpioEnableGlobalInterrupt(uint8_t gpioPortNumber, uint8_t bankNum);\r
499 \r
500 /**\r
501 * \brief This function Disables GPIO interrupts to CPU\r
502 *\r
503 * \param gpioPortNumber [IN] GPIO port number\r
504 * \param bankNum [IN] GPIO bank number\r
505 *\r
506 * \return\r
507 * \n GPIO_RET_OK - Requested operation is successful\r
508 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
509 * \n INVALID_GPIO_NUMBER - Invalid GPIO bank number\r
510 */\r
511 GPIO_RET gpioDisableGlobalInterrupt(uint8_t gpioPortNumber, uint8_t bankNum);\r
512 \r
513 /**\r
514 * \brief This function sets specified GPIO's rising edge interrupt\r
515 *\r
516 * \param gpioPortNumber [IN] GPIO port number\r
517 * \param pinNum [IN] GPIO pin number\r
518 *\r
519 * \return\r
520 * \n GPIO_RET_OK - Requested operation is successful\r
521 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
522 * \n INVALID_GPIO_NUMBER - Invalid GPIO pin number\r
523 */\r
524 GPIO_RET gpioSetRisingEdgeInterrupt(uint8_t gpioPortNumber, uint8_t pinNum);\r
525 \r
526 /**\r
527 * \brief This function clears specified GPIO's rising edge interrupt\r
528 *\r
529 * \param gpioPortNumber [IN] GPIO port number\r
530 * \param pinNum [IN] GPIO pin number\r
531 *\r
532 * \return\r
533 * \n GPIO_RET_OK - Requested operation is successful\r
534 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
535 * \n INVALID_GPIO_NUMBER - Invalid GPIO pin number\r
536 */\r
537 GPIO_RET gpioClearRisingEdgeInterrupt(uint8_t gpioPortNumber, uint8_t pinNum);\r
538 \r
539 /**\r
540 * \brief This function sets specified GPIO's falling edge interrupt\r
541 *\r
542 * \param gpioPortNumber [IN] GPIO port number\r
543 * \param pinNum [IN] GPIO pin number\r
544 *\r
545 * \return\r
546 * \n GPIO_RET_OK - Requested operation is successful\r
547 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
548 * \n INVALID_GPIO_NUMBER - Invalid GPIO pin number\r
549 */\r
550 GPIO_RET gpioSetFallingEdgeInterrupt(uint8_t gpioPortNumber, uint8_t pinNum);\r
551 \r
552 /**\r
553 * \brief This function clears specified GPIO's falling edge interrupt\r
554 *\r
555 * \param gpioPortNumber [IN] GPIO port number\r
556 * \param pinNum [IN] GPIO pin number\r
557 *\r
558 * \return\r
559 * \n GPIO_RET_OK - Requested operation is successful\r
560 * \n INVALID_GPIO_PORT - Invalid GPIO port number\r
561 * \n INVALID_GPIO_NUMBER - Invalid GPIO pin number\r
562 */
563 GPIO_RET gpioClearFallingEdgeInterrupt(uint8_t gpioPortNumber, uint8_t pinNum);
565 #ifdef __cplusplus
566 }
567 #endif
569 #endif /* _EVMC66X_GPIO_H_ */
571 /* Nothing past this point */