RTEMS: bsps/arm/altera-cyclone-v/include/bsp/alt_generalpurpose_io.h Source File

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
alt_generalpurpose_io.h
Go to the documentation of this file.
1
11/******************************************************************************
12*
13* Copyright 2013 Altera Corporation. All Rights Reserved.
14*
15* Redistribution and use in source and binary forms, with or without
16* modification, are permitted provided that the following conditions are met:
17*
18* 1. Redistributions of source code must retain the above copyright notice,
19* this list of conditions and the following disclaimer.
20*
21* 2. Redistributions in binary form must reproduce the above copyright notice,
22* this list of conditions and the following disclaimer in the documentation
23* and/or other materials provided with the distribution.
24*
25* 3. The name of the author may not be used to endorse or promote products
26* derived from this software without specific prior written permission.
27*
28* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY EXPRESS OR
29* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
30* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED. IN NO
31* EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
32* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
33* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
36* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
37* OF SUCH DAMAGE.
38*
39******************************************************************************/
40
41#ifndef __ALT_GPIO_H__
42#define __ALT_GPIO_H__
43
44#include <stdint.h>
45#include "hwlib.h"
46
47#ifdef __cplusplus
48extern "C" {
49#endif /* __cplusplus */
50
51#define ALT_GPIO_BITMASK 0x1FFFFFFF
52
53/* If the GPIO special test mode flag was not defined in the makefile, */
54 /* set the ALT_GPIO_DATAREAD_TEST_MODE flag to false to specify that */
55 /* the production code version of alt_gpio_port_data_read() is included. */
56 /* If the flag is defined as true in the makefile, then the test version */
57 /* located in the test code file is substituted instead of the version */
58 /* in this file. */
59#ifndef ALT_GPIO_DATAREAD_TEST_MODE
60#define ALT_GPIO_DATAREAD_TEST_MODE false
61#endif
62
63/******************************************************************************/
81/******************************************************************************/
107/******************************************************************************/
113 typedef enum ALT_GPIO_PIN_DIR_e
114{
116 ALT_GPIO_PIN_INPUT,
118 ALT_GPIO_PIN_OUTPUT
119} ALT_GPIO_PIN_DIR_t;
120
121/******************************************************************************/
127 typedef enum ALT_GPIO_PIN_TYPE_e
128{
130 ALT_GPIO_PIN_LEVEL_TRIG_INT,
132 ALT_GPIO_PIN_EDGE_TRIG_INT
133} ALT_GPIO_PIN_TYPE_t;
134
135/******************************************************************************/
142 typedef enum ALT_GPIO_PIN_POL_e
143{
146 ALT_GPIO_PIN_ACTIVE_LOW,
147
150 ALT_GPIO_PIN_ACTIVE_HIGH
151} ALT_GPIO_PIN_POL_t;
152
153/******************************************************************************/
162 typedef enum ALT_GPIO_PIN_DEBOUNCE_e
163{
165 ALT_GPIO_PIN_NODEBOUNCE,
167 ALT_GPIO_PIN_DEBOUNCE
168} ALT_GPIO_PIN_DEBOUNCE_t;
169
170/******************************************************************************/
178 typedef enum ALT_GPIO_PIN_SYNC_e
179{
181 ALT_GPIO_PIN_NOSYNC,
183 ALT_GPIO_PIN_SYNC
184} ALT_GPIO_PIN_SYNC_t;
185
186/******************************************************************************/
191 typedef enum ALT_GPIO_PIN_DATA_e
192{
194 ALT_GPIO_PIN_DATAZERO,
196 ALT_GPIO_PIN_DATAONE
197} ALT_GPIO_PIN_DATA_t;
198
199
200/******************************************************************************/
206 typedef enum ALT_GPIO_PORT_e
207{
211 ALT_GPIO_PORTA,
212
216 ALT_GPIO_PORTB,
217
225 ALT_GPIO_PORTC,
226
230 ALT_GPIO_PORT_UNKNOWN
231} ALT_GPIO_PORT_t;
232
233
234/******************************************************************************/
246 typedef enum ALT_GPIO_PORTBIT_e
247{
249 ALT_GPIO_BIT0 = ALT_TWO_TO_POW0,
251 ALT_GPIO_BIT1 = ALT_TWO_TO_POW1,
253 ALT_GPIO_BIT2 = ALT_TWO_TO_POW2,
255 ALT_GPIO_BIT3 = ALT_TWO_TO_POW3,
257 ALT_GPIO_BIT4 = ALT_TWO_TO_POW4,
259 ALT_GPIO_BIT5 = ALT_TWO_TO_POW5,
261 ALT_GPIO_BIT6 = ALT_TWO_TO_POW6,
263 ALT_GPIO_BIT7 = ALT_TWO_TO_POW7,
265 ALT_GPIO_BIT8 = ALT_TWO_TO_POW8,
267 ALT_GPIO_BIT9 = ALT_TWO_TO_POW9,
269 ALT_GPIO_BIT10 = ALT_TWO_TO_POW10,
271 ALT_GPIO_BIT11 = ALT_TWO_TO_POW11,
273 ALT_GPIO_BIT12 = ALT_TWO_TO_POW12,
275 ALT_GPIO_BIT13 = ALT_TWO_TO_POW13,
277 ALT_GPIO_BIT14 = ALT_TWO_TO_POW14,
279 ALT_GPIO_BIT15 = ALT_TWO_TO_POW15,
281 ALT_GPIO_BIT16 = ALT_TWO_TO_POW16,
283 ALT_GPIO_BIT17 = ALT_TWO_TO_POW17,
285 ALT_GPIO_BIT18 = ALT_TWO_TO_POW18,
287 ALT_GPIO_BIT19 = ALT_TWO_TO_POW19,
289 ALT_GPIO_BIT20 = ALT_TWO_TO_POW20,
291 ALT_GPIO_BIT21 = ALT_TWO_TO_POW21,
293 ALT_GPIO_BIT22 = ALT_TWO_TO_POW22,
295 ALT_GPIO_BIT23 = ALT_TWO_TO_POW23,
297 ALT_GPIO_BIT24 = ALT_TWO_TO_POW24,
299 ALT_GPIO_BIT25 = ALT_TWO_TO_POW25,
301 ALT_GPIO_BIT26 = ALT_TWO_TO_POW26,
303 ALT_GPIO_BIT27 = ALT_TWO_TO_POW27,
305 ALT_GPIO_BIT28 = ALT_TWO_TO_POW28,
306 ALT_GPIO_BIT29 = ALT_TWO_TO_POW29, /* Not currently used */
307 ALT_GPIO_BIT30 = ALT_TWO_TO_POW30, /* Not currently used */
308 ALT_GPIO_BIT31 = (int32_t) (1UL<<31), /* Not currently used */
309
310 ALT_GPIO_BITNUM_MAX = (28),
311 ALT_GPIO_BIT_MAX = (1 << ALT_GPIO_BITNUM_MAX),
312 ALT_END_OF_GPIO_PORT_SIGNALS = (32)
313} ALT_GPIO_PORTBIT_t;
314
315
316
317/******************************************************************************/
324 ALT_STATUS_CODE alt_gpio_init(void);
325
326/******************************************************************************/
333 ALT_STATUS_CODE alt_gpio_uninit(void);
334
335/******************************************************************************/
357 ALT_STATUS_CODE alt_gpio_port_datadir_set(ALT_GPIO_PORT_t gpio_pid,
358 uint32_t mask, uint32_t config);
359
360/******************************************************************************/
378uint32_t alt_gpio_port_datadir_get(ALT_GPIO_PORT_t gpio_pid,
379 uint32_t mask);
380
381/******************************************************************************/
401 ALT_STATUS_CODE alt_gpio_port_data_write(ALT_GPIO_PORT_t gpio_pid,
402 uint32_t mask, uint32_t val);
403
404/******************************************************************************/
421uint32_t alt_gpio_port_data_read(ALT_GPIO_PORT_t gpio_pid, uint32_t mask);
422
423
425/******************************************************************************/
433/******************************************************************************/
456 ALT_STATUS_CODE alt_gpio_port_int_type_set(ALT_GPIO_PORT_t gpio_pid,
457 uint32_t mask, uint32_t config);
458
459/******************************************************************************/
478uint32_t alt_gpio_port_int_type_get(ALT_GPIO_PORT_t gpio_pid,
479 uint32_t mask);
480
481/******************************************************************************/
503 ALT_STATUS_CODE alt_gpio_port_int_pol_set(ALT_GPIO_PORT_t gpio_pid,
504 uint32_t mask, uint32_t config);
505
506/******************************************************************************/
527uint32_t alt_gpio_port_int_pol_get(ALT_GPIO_PORT_t gpio_pid,
528 uint32_t mask);
529
530
532/******************************************************************************/
537/******************************************************************************/
561 ALT_STATUS_CODE alt_gpio_port_debounce_set(ALT_GPIO_PORT_t gpio_pid,
562 uint32_t mask, uint32_t config);
563
564/******************************************************************************/
584uint32_t alt_gpio_port_debounce_get(ALT_GPIO_PORT_t gpio_pid,
585 uint32_t mask);
586
587/******************************************************************************/
605 ALT_STATUS_CODE alt_gpio_port_sync_set(ALT_GPIO_PORT_t gpio_pid,
606 uint32_t config);
607
608/******************************************************************************/
626 ALT_STATUS_CODE alt_gpio_port_sync_get(ALT_GPIO_PORT_t gpio_pid);
627
628/******************************************************************************/
654 ALT_STATUS_CODE alt_gpio_port_config(ALT_GPIO_PORT_t gpio_pid,
655 uint32_t mask, ALT_GPIO_PIN_DIR_t dir, ALT_GPIO_PIN_TYPE_t type,
656 ALT_GPIO_PIN_POL_t pol, ALT_GPIO_PIN_DEBOUNCE_t debounc,
657 uint32_t data);
658
660/******************************************************************************/
665/******************************************************************************/
681 ALT_STATUS_CODE alt_gpio_port_int_enable(ALT_GPIO_PORT_t gpio_pid, uint32_t config);
682
683/******************************************************************************/
699 ALT_STATUS_CODE alt_gpio_port_int_disable(ALT_GPIO_PORT_t gpio_pid, uint32_t config);
700
701/******************************************************************************/
713uint32_t alt_gpio_port_int_enable_get(ALT_GPIO_PORT_t gpio_pid);
714
715
716/******************************************************************************/
737 ALT_STATUS_CODE alt_gpio_port_int_mask_set(ALT_GPIO_PORT_t gpio_pid,
738 uint32_t mask, uint32_t val);
739
740/******************************************************************************/
754uint32_t alt_gpio_port_int_mask_get(ALT_GPIO_PORT_t gpio_pid);
755
756/******************************************************************************/
771uint32_t alt_gpio_port_int_status_get(ALT_GPIO_PORT_t gpio_pid);
772
773/******************************************************************************/
790 ALT_STATUS_CODE alt_gpio_port_int_status_clear(ALT_GPIO_PORT_t gpio_pid,
791 uint32_t clrmask);
792
795/******************************************************************************/
806/******************************************************************************/
813 typedef enum ALT_GPIO_1BIT_e
814{
816 ALT_GPIO_1BIT_0,
818 ALT_GPIO_1BIT_1,
820 ALT_GPIO_1BIT_2,
822 ALT_GPIO_1BIT_3,
824 ALT_GPIO_1BIT_4,
826 ALT_GPIO_1BIT_5,
828 ALT_GPIO_1BIT_6,
830 ALT_GPIO_1BIT_7,
832 ALT_GPIO_1BIT_8,
834 ALT_GPIO_1BIT_9,
836 ALT_GPIO_1BIT_10,
838 ALT_GPIO_1BIT_11,
840 ALT_GPIO_1BIT_12,
842 ALT_GPIO_1BIT_13,
844 ALT_GPIO_1BIT_14,
846 ALT_GPIO_1BIT_15,
848 ALT_GPIO_1BIT_16,
850 ALT_GPIO_1BIT_17,
852 ALT_GPIO_1BIT_18,
854 ALT_GPIO_1BIT_19,
856 ALT_GPIO_1BIT_20,
858 ALT_GPIO_1BIT_21,
860 ALT_GPIO_1BIT_22,
862 ALT_GPIO_1BIT_23,
864 ALT_GPIO_1BIT_24,
866 ALT_GPIO_1BIT_25,
868 ALT_GPIO_1BIT_26,
870 ALT_GPIO_1BIT_27,
872 ALT_GPIO_1BIT_28,
874 ALT_GPIO_1BIT_29,
876 ALT_GPIO_1BIT_30,
878 ALT_GPIO_1BIT_31,
880 ALT_GPIO_1BIT_32,
882 ALT_GPIO_1BIT_33,
884 ALT_GPIO_1BIT_34,
886 ALT_GPIO_1BIT_35,
888 ALT_GPIO_1BIT_36,
890 ALT_GPIO_1BIT_37,
892 ALT_GPIO_1BIT_38,
894 ALT_GPIO_1BIT_39,
896 ALT_GPIO_1BIT_40,
898 ALT_GPIO_1BIT_41,
900 ALT_GPIO_1BIT_42,
902 ALT_GPIO_1BIT_43,
904 ALT_GPIO_1BIT_44,
906 ALT_GPIO_1BIT_45,
908 ALT_GPIO_1BIT_46,
910 ALT_GPIO_1BIT_47,
912 ALT_GPIO_1BIT_48,
914 ALT_GPIO_1BIT_49,
916 ALT_GPIO_1BIT_50,
918 ALT_GPIO_1BIT_51,
920 ALT_GPIO_1BIT_52,
922 ALT_GPIO_1BIT_53,
924 ALT_GPIO_1BIT_54,
926 ALT_GPIO_1BIT_55,
928 ALT_GPIO_1BIT_56,
930 ALT_GPIO_1BIT_57,
932 ALT_GPIO_1BIT_58,
934 ALT_GPIO_1BIT_59,
936 ALT_GPIO_1BIT_60,
938 ALT_GPIO_1BIT_61,
940 ALT_GPIO_1BIT_62,
942 ALT_GPIO_1BIT_63,
944 ALT_GPIO_1BIT_64,
946 ALT_GPIO_1BIT_65,
948 ALT_GPIO_1BIT_66,
950 ALT_GPIO_1BIT_67, /* Not bonded out on some versions */
952 ALT_GPIO_1BIT_68, /* Not bonded out on some versions */
954 ALT_GPIO_1BIT_69, /* Not bonded out on some versions */
955
957 ALT_GPIO_1BIT_70, /* Not bonded out on some versions */
958
959
966 ALT_HLGPI_0, /* Not bonded out on some versions */
968 ALT_HLGPI_1, /* Not bonded out on some versions */
970 ALT_HLGPI_2, /* Not bonded out on some versions */
972 ALT_HLGPI_3, /* Not bonded out on some versions */
974 ALT_HLGPI_4, /* Not bonded out on some versions */
976 ALT_HLGPI_5, /* Not bonded out on some versions */
978 ALT_HLGPI_6, /* Not bonded out on some versions */
980 ALT_HLGPI_7, /* Not bonded out on some versions */
982 ALT_HLGPI_8, /* Not bonded out on some versions */
984 ALT_HLGPI_9, /* Not bonded out on some versions */
986 ALT_HLGPI_10, /* Not bonded out on some versions */
988 ALT_HLGPI_11, /* Not bonded out on some versions */
990 ALT_HLGPI_12, /* Not bonded out on some versions */
992 ALT_HLGPI_13, /* Not bonded out on some versions */
993
994 ALT_HLGPI_14, /* Not bonded out */
995
996 ALT_HLGPI_15, /* Not bonded out */
997
998 ALT_GPIO_INVALID,
999 ALT_END_OF_GPIO_SIGNALS = -1,
1000 ALT_LAST_VALID_GPIO_BIT = ALT_HLGPI_15
1001} ALT_GPIO_1BIT_t;
1002
1003
1004/******************************************************************************/
1009 typedef struct ALT_GPIO_CONFIG_RECORD_s
1010{
1013 ALT_GPIO_1BIT_t signal_number;
1016 ALT_GPIO_PIN_DIR_t direction;
1019 ALT_GPIO_PIN_TYPE_t type;
1022 ALT_GPIO_PIN_POL_t polarity;
1025 ALT_GPIO_PIN_DEBOUNCE_t debounce;
1028 ALT_GPIO_PIN_DATA_t data;
1029} ALT_GPIO_CONFIG_RECORD_t;
1030
1031/******************************************************************************/
1036 typedef struct ALT_GPIO_PIN_RECORD_s
1037{
1040 ALT_GPIO_1BIT_t signal_number;
1043 ALT_GPIO_PIN_DATA_t val;
1044} ALT_GPIO_PIN_RECORD_t;
1045
1048/******************************************************************************/
1053/******************************************************************************/
1075 ALT_STATUS_CODE alt_gpio_bit_config(ALT_GPIO_1BIT_t signal_num,
1076 ALT_GPIO_PIN_DIR_t dir, ALT_GPIO_PIN_TYPE_t type,
1077 ALT_GPIO_PIN_POL_t pol, ALT_GPIO_PIN_DEBOUNCE_t debounce,
1078 ALT_GPIO_PIN_DATA_t data);
1079
1080/******************************************************************************/
1096 ALT_STATUS_CODE alt_gpio_bitconfig_get(ALT_GPIO_1BIT_t signal_num,
1097 ALT_GPIO_CONFIG_RECORD_t *config);
1098
1099/******************************************************************************/
1125 ALT_STATUS_CODE alt_gpio_group_config(ALT_GPIO_CONFIG_RECORD_t* config_array,
1126 uint32_t len);
1127
1128/******************************************************************************/
1156 ALT_STATUS_CODE alt_gpio_group_config_get(ALT_GPIO_CONFIG_RECORD_t *config_array,
1157 uint32_t len);
1158
1159/******************************************************************************/
1192 ALT_STATUS_CODE alt_gpio_group_config_get2(ALT_GPIO_1BIT_t* pinid_array,
1193 ALT_GPIO_CONFIG_RECORD_t *config_array, uint32_t len);
1194
1195
1197/******************************************************************************/
1204/******************************************************************************/
1214uint32_t alt_gpio_port_idcode_get(ALT_GPIO_PORT_t gpio_pid);
1215
1216/******************************************************************************/
1226uint32_t alt_gpio_port_ver_get(ALT_GPIO_PORT_t gpio_pid);
1227
1228
1229/******************************************************************************/
1233 ALT_GPIO_PORT_t alt_gpio_bit_to_pid(ALT_GPIO_1BIT_t pin_num);
1234
1235
1236/******************************************************************************/
1241 ALT_GPIO_PORTBIT_t alt_gpio_bit_to_port_pin(ALT_GPIO_1BIT_t pin_num);
1242
1243/******************************************************************************/
1250 ALT_GPIO_1BIT_t alt_gpio_port_pin_to_bit(ALT_GPIO_PORT_t pid,
1251 uint32_t bitmask);
1252
1253
1257#ifdef __cplusplus
1258}
1259#endif /* __cplusplus */
1260#endif /* __ALT_GPIO_H__ */
ALT_GPIO_PIN_DEBOUNCE_t
enum ALT_GPIO_PIN_DEBOUNCE_e ALT_GPIO_PIN_DEBOUNCE_t
ALT_GPIO_PIN_POL_e
ALT_GPIO_PIN_POL_e
Definition: alt_generalpurpose_io.h:143
ALT_GPIO_PIN_DEBOUNCE_e
ALT_GPIO_PIN_DEBOUNCE_e
Definition: alt_generalpurpose_io.h:163
ALT_GPIO_PORTBIT_t
enum ALT_GPIO_PORTBIT_e ALT_GPIO_PORTBIT_t
ALT_GPIO_PORT_t
enum ALT_GPIO_PORT_e ALT_GPIO_PORT_t
ALT_GPIO_PORT_e
ALT_GPIO_PORT_e
Definition: alt_generalpurpose_io.h:207
alt_gpio_port_data_write
ALT_STATUS_CODE alt_gpio_port_data_write(ALT_GPIO_PORT_t gpio_pid, uint32_t mask, uint32_t val)
Definition: alt_generalpurpose_io.c:139
alt_gpio_port_debounce_get
uint32_t alt_gpio_port_debounce_get(ALT_GPIO_PORT_t gpio_pid, uint32_t mask)
Definition: alt_generalpurpose_io.c:290
ALT_GPIO_PORTBIT_e
ALT_GPIO_PORTBIT_e
Definition: alt_generalpurpose_io.h:247
alt_gpio_port_sync_set
ALT_STATUS_CODE alt_gpio_port_sync_set(ALT_GPIO_PORT_t gpio_pid, uint32_t config)
Definition: alt_generalpurpose_io.c:311
alt_gpio_init
ALT_STATUS_CODE alt_gpio_init(void)
Definition: alt_generalpurpose_io.c:66
alt_gpio_port_debounce_set
ALT_STATUS_CODE alt_gpio_port_debounce_set(ALT_GPIO_PORT_t gpio_pid, uint32_t mask, uint32_t config)
Definition: alt_generalpurpose_io.c:268
ALT_GPIO_PIN_SYNC_e
ALT_GPIO_PIN_SYNC_e
Definition: alt_generalpurpose_io.h:179
ALT_GPIO_PIN_DIR_e
ALT_GPIO_PIN_DIR_e
Definition: alt_generalpurpose_io.h:114
ALT_GPIO_PIN_TYPE_t
enum ALT_GPIO_PIN_TYPE_e ALT_GPIO_PIN_TYPE_t
alt_gpio_port_datadir_get
uint32_t alt_gpio_port_datadir_get(ALT_GPIO_PORT_t gpio_pid, uint32_t mask)
Definition: alt_generalpurpose_io.c:119
alt_gpio_port_sync_get
ALT_STATUS_CODE alt_gpio_port_sync_get(ALT_GPIO_PORT_t gpio_pid)
Definition: alt_generalpurpose_io.c:333
ALT_GPIO_PIN_DIR_t
enum ALT_GPIO_PIN_DIR_e ALT_GPIO_PIN_DIR_t
alt_gpio_port_config
ALT_STATUS_CODE alt_gpio_port_config(ALT_GPIO_PORT_t gpio_pid, uint32_t mask, ALT_GPIO_PIN_DIR_t dir, ALT_GPIO_PIN_TYPE_t type, ALT_GPIO_PIN_POL_t pol, ALT_GPIO_PIN_DEBOUNCE_t debounc, uint32_t data)
Definition: alt_generalpurpose_io.c:351
alt_gpio_uninit
ALT_STATUS_CODE alt_gpio_uninit(void)
Definition: alt_generalpurpose_io.c:82
ALT_GPIO_PIN_DATA_t
enum ALT_GPIO_PIN_DATA_e ALT_GPIO_PIN_DATA_t
ALT_GPIO_PIN_DATA_e
ALT_GPIO_PIN_DATA_e
Definition: alt_generalpurpose_io.h:192
ALT_GPIO_PIN_POL_t
enum ALT_GPIO_PIN_POL_e ALT_GPIO_PIN_POL_t
ALT_GPIO_PIN_TYPE_e
ALT_GPIO_PIN_TYPE_e
Definition: alt_generalpurpose_io.h:128
alt_gpio_port_datadir_set
ALT_STATUS_CODE alt_gpio_port_datadir_set(ALT_GPIO_PORT_t gpio_pid, uint32_t mask, uint32_t config)
Definition: alt_generalpurpose_io.c:98
alt_gpio_port_data_read
uint32_t alt_gpio_port_data_read(ALT_GPIO_PORT_t gpio_pid, uint32_t mask)
Definition: alt_generalpurpose_io.c:165
ALT_GPIO_PIN_SYNC_t
enum ALT_GPIO_PIN_SYNC_e ALT_GPIO_PIN_SYNC_t
ALT_GPIO_PIN_ACTIVE_HIGH
@ ALT_GPIO_PIN_ACTIVE_HIGH
Definition: alt_generalpurpose_io.h:150
ALT_GPIO_PIN_ACTIVE_LOW
@ ALT_GPIO_PIN_ACTIVE_LOW
Definition: alt_generalpurpose_io.h:146
ALT_GPIO_PIN_NODEBOUNCE
@ ALT_GPIO_PIN_NODEBOUNCE
Definition: alt_generalpurpose_io.h:165
ALT_GPIO_PIN_DEBOUNCE
@ ALT_GPIO_PIN_DEBOUNCE
Definition: alt_generalpurpose_io.h:167
ALT_GPIO_PORTB
@ ALT_GPIO_PORTB
Definition: alt_generalpurpose_io.h:216
ALT_GPIO_PORTA
@ ALT_GPIO_PORTA
Definition: alt_generalpurpose_io.h:211
ALT_GPIO_PORT_UNKNOWN
@ ALT_GPIO_PORT_UNKNOWN
Definition: alt_generalpurpose_io.h:230
ALT_GPIO_PORTC
@ ALT_GPIO_PORTC
Definition: alt_generalpurpose_io.h:225
ALT_GPIO_BIT21
@ ALT_GPIO_BIT21
Definition: alt_generalpurpose_io.h:291
ALT_GPIO_BIT10
@ ALT_GPIO_BIT10
Definition: alt_generalpurpose_io.h:269
ALT_GPIO_BIT26
@ ALT_GPIO_BIT26
Definition: alt_generalpurpose_io.h:301
ALT_GPIO_BIT23
@ ALT_GPIO_BIT23
Definition: alt_generalpurpose_io.h:295
ALT_GPIO_BIT4
@ ALT_GPIO_BIT4
Definition: alt_generalpurpose_io.h:257
ALT_GPIO_BIT6
@ ALT_GPIO_BIT6
Definition: alt_generalpurpose_io.h:261
ALT_GPIO_BIT18
@ ALT_GPIO_BIT18
Definition: alt_generalpurpose_io.h:285
ALT_GPIO_BIT24
@ ALT_GPIO_BIT24
Definition: alt_generalpurpose_io.h:297
ALT_GPIO_BIT5
@ ALT_GPIO_BIT5
Definition: alt_generalpurpose_io.h:259
ALT_GPIO_BIT3
@ ALT_GPIO_BIT3
Definition: alt_generalpurpose_io.h:255
ALT_GPIO_BIT11
@ ALT_GPIO_BIT11
Definition: alt_generalpurpose_io.h:271
ALT_GPIO_BIT8
@ ALT_GPIO_BIT8
Definition: alt_generalpurpose_io.h:265
ALT_GPIO_BIT25
@ ALT_GPIO_BIT25
Definition: alt_generalpurpose_io.h:299
ALT_GPIO_BIT9
@ ALT_GPIO_BIT9
Definition: alt_generalpurpose_io.h:267
ALT_GPIO_BIT14
@ ALT_GPIO_BIT14
Definition: alt_generalpurpose_io.h:277
ALT_GPIO_BIT16
@ ALT_GPIO_BIT16
Definition: alt_generalpurpose_io.h:281
ALT_GPIO_BIT2
@ ALT_GPIO_BIT2
Definition: alt_generalpurpose_io.h:253
ALT_GPIO_BIT7
@ ALT_GPIO_BIT7
Definition: alt_generalpurpose_io.h:263
ALT_GPIO_BIT0
@ ALT_GPIO_BIT0
Definition: alt_generalpurpose_io.h:249
ALT_GPIO_BIT12
@ ALT_GPIO_BIT12
Definition: alt_generalpurpose_io.h:273
ALT_GPIO_BIT27
@ ALT_GPIO_BIT27
Definition: alt_generalpurpose_io.h:303
ALT_GPIO_BIT17
@ ALT_GPIO_BIT17
Definition: alt_generalpurpose_io.h:283
ALT_GPIO_BIT28
@ ALT_GPIO_BIT28
Definition: alt_generalpurpose_io.h:305
ALT_GPIO_BIT15
@ ALT_GPIO_BIT15
Definition: alt_generalpurpose_io.h:279
ALT_GPIO_BIT19
@ ALT_GPIO_BIT19
Definition: alt_generalpurpose_io.h:287
ALT_GPIO_BIT13
@ ALT_GPIO_BIT13
Definition: alt_generalpurpose_io.h:275
ALT_GPIO_BIT1
@ ALT_GPIO_BIT1
Definition: alt_generalpurpose_io.h:251
ALT_GPIO_BIT22
@ ALT_GPIO_BIT22
Definition: alt_generalpurpose_io.h:293
ALT_GPIO_BIT20
@ ALT_GPIO_BIT20
Definition: alt_generalpurpose_io.h:289
ALT_GPIO_PIN_SYNC
@ ALT_GPIO_PIN_SYNC
Definition: alt_generalpurpose_io.h:183
ALT_GPIO_PIN_NOSYNC
@ ALT_GPIO_PIN_NOSYNC
Definition: alt_generalpurpose_io.h:181
ALT_GPIO_PIN_INPUT
@ ALT_GPIO_PIN_INPUT
Definition: alt_generalpurpose_io.h:116
ALT_GPIO_PIN_OUTPUT
@ ALT_GPIO_PIN_OUTPUT
Definition: alt_generalpurpose_io.h:118
ALT_GPIO_PIN_DATAONE
@ ALT_GPIO_PIN_DATAONE
Definition: alt_generalpurpose_io.h:196
ALT_GPIO_PIN_DATAZERO
@ ALT_GPIO_PIN_DATAZERO
Definition: alt_generalpurpose_io.h:194
ALT_GPIO_PIN_EDGE_TRIG_INT
@ ALT_GPIO_PIN_EDGE_TRIG_INT
Definition: alt_generalpurpose_io.h:132
ALT_GPIO_PIN_LEVEL_TRIG_INT
@ ALT_GPIO_PIN_LEVEL_TRIG_INT
Definition: alt_generalpurpose_io.h:130
alt_gpio_bit_config
ALT_STATUS_CODE alt_gpio_bit_config(ALT_GPIO_1BIT_t signal_num, ALT_GPIO_PIN_DIR_t dir, ALT_GPIO_PIN_TYPE_t type, ALT_GPIO_PIN_POL_t pol, ALT_GPIO_PIN_DEBOUNCE_t debounce, ALT_GPIO_PIN_DATA_t data)
Definition: alt_generalpurpose_io.c:568
ALT_GPIO_1BIT_t
enum ALT_GPIO_1BIT_e ALT_GPIO_1BIT_t
alt_gpio_bitconfig_get
ALT_STATUS_CODE alt_gpio_bitconfig_get(ALT_GPIO_1BIT_t signal_num, ALT_GPIO_CONFIG_RECORD_t *config)
Definition: alt_generalpurpose_io.c:586
alt_gpio_group_config_get2
ALT_STATUS_CODE alt_gpio_group_config_get2(ALT_GPIO_1BIT_t *pinid_array, ALT_GPIO_CONFIG_RECORD_t *config_array, uint32_t len)
Definition: alt_generalpurpose_io.c:702
ALT_GPIO_1BIT_e
ALT_GPIO_1BIT_e
Definition: alt_generalpurpose_io.h:814
ALT_GPIO_CONFIG_RECORD_t
struct ALT_GPIO_CONFIG_RECORD_s ALT_GPIO_CONFIG_RECORD_t
alt_gpio_group_config_get
ALT_STATUS_CODE alt_gpio_group_config_get(ALT_GPIO_CONFIG_RECORD_t *config_array, uint32_t len)
Definition: alt_generalpurpose_io.c:670
alt_gpio_group_config
ALT_STATUS_CODE alt_gpio_group_config(ALT_GPIO_CONFIG_RECORD_t *config_array, uint32_t len)
Definition: alt_generalpurpose_io.c:622
ALT_GPIO_PIN_RECORD_t
struct ALT_GPIO_PIN_RECORD_s ALT_GPIO_PIN_RECORD_t
ALT_GPIO_1BIT_12
@ ALT_GPIO_1BIT_12
Definition: alt_generalpurpose_io.h:840
ALT_GPIO_1BIT_49
@ ALT_GPIO_1BIT_49
Definition: alt_generalpurpose_io.h:914
ALT_GPIO_1BIT_40
@ ALT_GPIO_1BIT_40
Definition: alt_generalpurpose_io.h:896
ALT_HLGPI_6
@ ALT_HLGPI_6
Definition: alt_generalpurpose_io.h:978
ALT_GPIO_1BIT_15
@ ALT_GPIO_1BIT_15
Definition: alt_generalpurpose_io.h:846
ALT_HLGPI_5
@ ALT_HLGPI_5
Definition: alt_generalpurpose_io.h:976
ALT_HLGPI_11
@ ALT_HLGPI_11
Definition: alt_generalpurpose_io.h:988
ALT_GPIO_1BIT_54
@ ALT_GPIO_1BIT_54
Definition: alt_generalpurpose_io.h:924
ALT_HLGPI_2
@ ALT_HLGPI_2
Definition: alt_generalpurpose_io.h:970
ALT_GPIO_1BIT_27
@ ALT_GPIO_1BIT_27
Definition: alt_generalpurpose_io.h:870
ALT_GPIO_1BIT_66
@ ALT_GPIO_1BIT_66
Definition: alt_generalpurpose_io.h:948
ALT_GPIO_1BIT_57
@ ALT_GPIO_1BIT_57
Definition: alt_generalpurpose_io.h:930
ALT_GPIO_1BIT_52
@ ALT_GPIO_1BIT_52
Definition: alt_generalpurpose_io.h:920
ALT_GPIO_1BIT_21
@ ALT_GPIO_1BIT_21
Definition: alt_generalpurpose_io.h:858
ALT_GPIO_1BIT_24
@ ALT_GPIO_1BIT_24
Definition: alt_generalpurpose_io.h:864
ALT_GPIO_1BIT_34
@ ALT_GPIO_1BIT_34
Definition: alt_generalpurpose_io.h:884
ALT_GPIO_1BIT_23
@ ALT_GPIO_1BIT_23
Definition: alt_generalpurpose_io.h:862
ALT_GPIO_1BIT_5
@ ALT_GPIO_1BIT_5
Definition: alt_generalpurpose_io.h:826
ALT_GPIO_1BIT_16
@ ALT_GPIO_1BIT_16
Definition: alt_generalpurpose_io.h:848
ALT_GPIO_1BIT_70
@ ALT_GPIO_1BIT_70
Definition: alt_generalpurpose_io.h:957
ALT_GPIO_1BIT_17
@ ALT_GPIO_1BIT_17
Definition: alt_generalpurpose_io.h:850
ALT_GPIO_1BIT_64
@ ALT_GPIO_1BIT_64
Definition: alt_generalpurpose_io.h:944
ALT_GPIO_1BIT_29
@ ALT_GPIO_1BIT_29
Definition: alt_generalpurpose_io.h:874
ALT_GPIO_1BIT_42
@ ALT_GPIO_1BIT_42
Definition: alt_generalpurpose_io.h:900
ALT_GPIO_1BIT_60
@ ALT_GPIO_1BIT_60
Definition: alt_generalpurpose_io.h:936
ALT_GPIO_1BIT_59
@ ALT_GPIO_1BIT_59
Definition: alt_generalpurpose_io.h:934
ALT_HLGPI_12
@ ALT_HLGPI_12
Definition: alt_generalpurpose_io.h:990
ALT_GPIO_1BIT_25
@ ALT_GPIO_1BIT_25
Definition: alt_generalpurpose_io.h:866
ALT_GPIO_1BIT_51
@ ALT_GPIO_1BIT_51
Definition: alt_generalpurpose_io.h:918
ALT_GPIO_1BIT_4
@ ALT_GPIO_1BIT_4
Definition: alt_generalpurpose_io.h:824
ALT_GPIO_1BIT_26
@ ALT_GPIO_1BIT_26
Definition: alt_generalpurpose_io.h:868
ALT_GPIO_1BIT_32
@ ALT_GPIO_1BIT_32
Definition: alt_generalpurpose_io.h:880
ALT_GPIO_1BIT_30
@ ALT_GPIO_1BIT_30
Definition: alt_generalpurpose_io.h:876
ALT_GPIO_1BIT_63
@ ALT_GPIO_1BIT_63
Definition: alt_generalpurpose_io.h:942
ALT_GPIO_1BIT_58
@ ALT_GPIO_1BIT_58
Definition: alt_generalpurpose_io.h:932
ALT_GPIO_1BIT_19
@ ALT_GPIO_1BIT_19
Definition: alt_generalpurpose_io.h:854
ALT_GPIO_1BIT_28
@ ALT_GPIO_1BIT_28
Definition: alt_generalpurpose_io.h:872
ALT_GPIO_1BIT_14
@ ALT_GPIO_1BIT_14
Definition: alt_generalpurpose_io.h:844
ALT_GPIO_1BIT_22
@ ALT_GPIO_1BIT_22
Definition: alt_generalpurpose_io.h:860
ALT_HLGPI_10
@ ALT_HLGPI_10
Definition: alt_generalpurpose_io.h:986
ALT_GPIO_1BIT_62
@ ALT_GPIO_1BIT_62
Definition: alt_generalpurpose_io.h:940
ALT_GPIO_1BIT_45
@ ALT_GPIO_1BIT_45
Definition: alt_generalpurpose_io.h:906
ALT_HLGPI_4
@ ALT_HLGPI_4
Definition: alt_generalpurpose_io.h:974
ALT_GPIO_1BIT_37
@ ALT_GPIO_1BIT_37
Definition: alt_generalpurpose_io.h:890
ALT_GPIO_1BIT_68
@ ALT_GPIO_1BIT_68
Definition: alt_generalpurpose_io.h:952
ALT_GPIO_1BIT_50
@ ALT_GPIO_1BIT_50
Definition: alt_generalpurpose_io.h:916
ALT_GPIO_1BIT_35
@ ALT_GPIO_1BIT_35
Definition: alt_generalpurpose_io.h:886
ALT_GPIO_1BIT_18
@ ALT_GPIO_1BIT_18
Definition: alt_generalpurpose_io.h:852
ALT_GPIO_1BIT_65
@ ALT_GPIO_1BIT_65
Definition: alt_generalpurpose_io.h:946
ALT_GPIO_1BIT_61
@ ALT_GPIO_1BIT_61
Definition: alt_generalpurpose_io.h:938
ALT_HLGPI_9
@ ALT_HLGPI_9
Definition: alt_generalpurpose_io.h:984
ALT_GPIO_1BIT_38
@ ALT_GPIO_1BIT_38
Definition: alt_generalpurpose_io.h:892
ALT_GPIO_1BIT_11
@ ALT_GPIO_1BIT_11
Definition: alt_generalpurpose_io.h:838
ALT_HLGPI_13
@ ALT_HLGPI_13
Definition: alt_generalpurpose_io.h:992
ALT_GPIO_1BIT_1
@ ALT_GPIO_1BIT_1
Definition: alt_generalpurpose_io.h:818
ALT_GPIO_1BIT_3
@ ALT_GPIO_1BIT_3
Definition: alt_generalpurpose_io.h:822
ALT_GPIO_1BIT_39
@ ALT_GPIO_1BIT_39
Definition: alt_generalpurpose_io.h:894
ALT_HLGPI_7
@ ALT_HLGPI_7
Definition: alt_generalpurpose_io.h:980
ALT_GPIO_1BIT_44
@ ALT_GPIO_1BIT_44
Definition: alt_generalpurpose_io.h:904
ALT_GPIO_1BIT_2
@ ALT_GPIO_1BIT_2
Definition: alt_generalpurpose_io.h:820
ALT_GPIO_1BIT_0
@ ALT_GPIO_1BIT_0
Definition: alt_generalpurpose_io.h:816
ALT_GPIO_1BIT_6
@ ALT_GPIO_1BIT_6
Definition: alt_generalpurpose_io.h:828
ALT_HLGPI_0
@ ALT_HLGPI_0
Definition: alt_generalpurpose_io.h:966
ALT_GPIO_1BIT_41
@ ALT_GPIO_1BIT_41
Definition: alt_generalpurpose_io.h:898
ALT_GPIO_1BIT_13
@ ALT_GPIO_1BIT_13
Definition: alt_generalpurpose_io.h:842
ALT_GPIO_1BIT_9
@ ALT_GPIO_1BIT_9
Definition: alt_generalpurpose_io.h:834
ALT_GPIO_1BIT_56
@ ALT_GPIO_1BIT_56
Definition: alt_generalpurpose_io.h:928
ALT_GPIO_1BIT_10
@ ALT_GPIO_1BIT_10
Definition: alt_generalpurpose_io.h:836
ALT_GPIO_1BIT_7
@ ALT_GPIO_1BIT_7
Definition: alt_generalpurpose_io.h:830
ALT_GPIO_1BIT_20
@ ALT_GPIO_1BIT_20
Definition: alt_generalpurpose_io.h:856
ALT_GPIO_1BIT_48
@ ALT_GPIO_1BIT_48
Definition: alt_generalpurpose_io.h:912
ALT_HLGPI_3
@ ALT_HLGPI_3
Definition: alt_generalpurpose_io.h:972
ALT_GPIO_1BIT_53
@ ALT_GPIO_1BIT_53
Definition: alt_generalpurpose_io.h:922
ALT_GPIO_1BIT_33
@ ALT_GPIO_1BIT_33
Definition: alt_generalpurpose_io.h:882
ALT_GPIO_1BIT_67
@ ALT_GPIO_1BIT_67
Definition: alt_generalpurpose_io.h:950
ALT_HLGPI_8
@ ALT_HLGPI_8
Definition: alt_generalpurpose_io.h:982
ALT_GPIO_1BIT_46
@ ALT_GPIO_1BIT_46
Definition: alt_generalpurpose_io.h:908
ALT_GPIO_1BIT_43
@ ALT_GPIO_1BIT_43
Definition: alt_generalpurpose_io.h:902
ALT_GPIO_1BIT_36
@ ALT_GPIO_1BIT_36
Definition: alt_generalpurpose_io.h:888
ALT_GPIO_1BIT_69
@ ALT_GPIO_1BIT_69
Definition: alt_generalpurpose_io.h:954
ALT_GPIO_1BIT_8
@ ALT_GPIO_1BIT_8
Definition: alt_generalpurpose_io.h:832
ALT_GPIO_1BIT_47
@ ALT_GPIO_1BIT_47
Definition: alt_generalpurpose_io.h:910
ALT_GPIO_1BIT_55
@ ALT_GPIO_1BIT_55
Definition: alt_generalpurpose_io.h:926
ALT_HLGPI_1
@ ALT_HLGPI_1
Definition: alt_generalpurpose_io.h:968
ALT_GPIO_1BIT_31
@ ALT_GPIO_1BIT_31
Definition: alt_generalpurpose_io.h:878
alt_gpio_port_int_mask_set
ALT_STATUS_CODE alt_gpio_port_int_mask_set(ALT_GPIO_PORT_t gpio_pid, uint32_t mask, uint32_t val)
Definition: alt_generalpurpose_io.c:458
alt_gpio_port_int_pol_get
uint32_t alt_gpio_port_int_pol_get(ALT_GPIO_PORT_t gpio_pid, uint32_t mask)
Definition: alt_generalpurpose_io.c:248
alt_gpio_port_int_mask_get
uint32_t alt_gpio_port_int_mask_get(ALT_GPIO_PORT_t gpio_pid)
Definition: alt_generalpurpose_io.c:478
alt_gpio_port_int_type_set
ALT_STATUS_CODE alt_gpio_port_int_type_set(ALT_GPIO_PORT_t gpio_pid, uint32_t mask, uint32_t config)
Definition: alt_generalpurpose_io.c:184
alt_gpio_port_int_enable_get
uint32_t alt_gpio_port_int_enable_get(ALT_GPIO_PORT_t gpio_pid)
Definition: alt_generalpurpose_io.c:439
alt_gpio_port_int_type_get
uint32_t alt_gpio_port_int_type_get(ALT_GPIO_PORT_t gpio_pid, uint32_t mask)
Definition: alt_generalpurpose_io.c:205
alt_gpio_port_int_status_clear
ALT_STATUS_CODE alt_gpio_port_int_status_clear(ALT_GPIO_PORT_t gpio_pid, uint32_t clrmask)
Definition: alt_generalpurpose_io.c:514
alt_gpio_port_int_enable
ALT_STATUS_CODE alt_gpio_port_int_enable(ALT_GPIO_PORT_t gpio_pid, uint32_t config)
Definition: alt_generalpurpose_io.c:400
alt_gpio_port_int_disable
ALT_STATUS_CODE alt_gpio_port_int_disable(ALT_GPIO_PORT_t gpio_pid, uint32_t config)
Definition: alt_generalpurpose_io.c:419
alt_gpio_port_int_pol_set
ALT_STATUS_CODE alt_gpio_port_int_pol_set(ALT_GPIO_PORT_t gpio_pid, uint32_t mask, uint32_t config)
Definition: alt_generalpurpose_io.c:225
alt_gpio_port_int_status_get
uint32_t alt_gpio_port_int_status_get(ALT_GPIO_PORT_t gpio_pid)
Definition: alt_generalpurpose_io.c:496
alt_gpio_port_ver_get
uint32_t alt_gpio_port_ver_get(ALT_GPIO_PORT_t gpio_pid)
Definition: alt_generalpurpose_io.c:551
alt_gpio_port_idcode_get
uint32_t alt_gpio_port_idcode_get(ALT_GPIO_PORT_t gpio_pid)
Definition: alt_generalpurpose_io.c:534
alt_gpio_bit_to_pid
ALT_GPIO_PORT_t alt_gpio_bit_to_pid(ALT_GPIO_1BIT_t pin_num)
Definition: alt_generalpurpose_io.c:732
alt_gpio_bit_to_port_pin
ALT_GPIO_PORTBIT_t alt_gpio_bit_to_port_pin(ALT_GPIO_1BIT_t pin_num)
Definition: alt_generalpurpose_io.c:748
alt_gpio_port_pin_to_bit
ALT_GPIO_1BIT_t alt_gpio_port_pin_to_bit(ALT_GPIO_PORT_t pid, uint32_t bitmask)
Definition: alt_generalpurpose_io.c:764
hwlib.h
ALT_STATUS_CODE
int32_t ALT_STATUS_CODE
Definition: hwlib.h:60
ALT_GPIO_CONFIG_RECORD_s
Definition: alt_generalpurpose_io.h:1010
ALT_GPIO_CONFIG_RECORD_s::polarity
ALT_GPIO_PIN_POL_t polarity
Definition: alt_generalpurpose_io.h:1022
ALT_GPIO_CONFIG_RECORD_s::type
ALT_GPIO_PIN_TYPE_t type
Definition: alt_generalpurpose_io.h:1019
ALT_GPIO_CONFIG_RECORD_s::direction
ALT_GPIO_PIN_DIR_t direction
Definition: alt_generalpurpose_io.h:1016
ALT_GPIO_CONFIG_RECORD_s::signal_number
ALT_GPIO_1BIT_t signal_number
Definition: alt_generalpurpose_io.h:1013
ALT_GPIO_CONFIG_RECORD_s::debounce
ALT_GPIO_PIN_DEBOUNCE_t debounce
Definition: alt_generalpurpose_io.h:1025
ALT_GPIO_CONFIG_RECORD_s::data
ALT_GPIO_PIN_DATA_t data
Definition: alt_generalpurpose_io.h:1028
ALT_GPIO_PIN_RECORD_s
Definition: alt_generalpurpose_io.h:1037
ALT_GPIO_PIN_RECORD_s::signal_number
ALT_GPIO_1BIT_t signal_number
Definition: alt_generalpurpose_io.h:1040
ALT_GPIO_PIN_RECORD_s::val
ALT_GPIO_PIN_DATA_t val
Definition: alt_generalpurpose_io.h:1043
config_s
Definition: deflate.c:115