Azure Sphere MT3620 M4 API Reference Manual
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
os_hal_gpio.h
1 /*
2  * (C) 2005-2020 MediaTek Inc. All rights reserved.
3  *
4  * Copyright Statement:
5  *
6  * This MT3620 driver software/firmware and related documentation
7  * ("MediaTek Software") are protected under relevant copyright laws.
8  * The information contained herein is confidential and proprietary to
9  * MediaTek Inc. ("MediaTek"). You may only use, reproduce, modify, or
10  * distribute (as applicable) MediaTek Software if you have agreed to and been
11  * bound by this Statement and the applicable license agreement with MediaTek
12  * ("License Agreement") and been granted explicit permission to do so within
13  * the License Agreement ("Permitted User"). If you are not a Permitted User,
14  * please cease any access or use of MediaTek Software immediately.
15  *
16  * BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
17  * THAT MEDIATEK SOFTWARE RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE
18  * PROVIDED TO RECEIVER ON AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS
19  * ANY AND ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
20  * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
21  * NONINFRINGEMENT. NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH
22  * RESPECT TO THE SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY,
23  * INCORPORATED IN, OR SUPPLIED WITH MEDIATEK SOFTWARE, AND RECEIVER AGREES TO
24  * LOOK ONLY TO SUCH THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO.
25  * RECEIVER EXPRESSLY ACKNOWLEDGES THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO
26  * OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES CONTAINED IN MEDIATEK
27  * SOFTWARE. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE
28  * RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR
29  * STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S
30  * ENTIRE AND CUMULATIVE LIABILITY WITH RESPECT TO MEDIATEK SOFTWARE RELEASED
31  * HEREUNDER WILL BE ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY
32  * RECEIVER TO MEDIATEK DURING THE PRECEDING TWELVE (12) MONTHS FOR SUCH
33  * MEDIATEK SOFTWARE AT ISSUE.
34  */
35 
36  #ifndef __OS_HAL_GPIO_H__
37 #define __OS_HAL_GPIO_H__
38 
39 #include "mhal_gpio.h"
40 
116 typedef enum {
119  OS_HAL_GPIO_1 = 1,
120  OS_HAL_GPIO_2 = 2,
121  OS_HAL_GPIO_3 = 3,
122  OS_HAL_GPIO_4 = 4,
123  OS_HAL_GPIO_5 = 5,
124  OS_HAL_GPIO_6 = 6,
125  OS_HAL_GPIO_7 = 7,
126  OS_HAL_GPIO_8 = 8,
127  OS_HAL_GPIO_9 = 9,
128  OS_HAL_GPIO_10 = 10,
129  OS_HAL_GPIO_11 = 11,
130  OS_HAL_GPIO_12 = 12,
131  OS_HAL_GPIO_13 = 13,
132  OS_HAL_GPIO_14 = 14,
133  OS_HAL_GPIO_15 = 15,
134  OS_HAL_GPIO_16 = 16,
135  OS_HAL_GPIO_17 = 17,
136  OS_HAL_GPIO_18 = 18,
137  OS_HAL_GPIO_19 = 19,
138  OS_HAL_GPIO_20 = 20,
139  OS_HAL_GPIO_21 = 21,
140  OS_HAL_GPIO_22 = 22,
141  OS_HAL_GPIO_23 = 23,
142  OS_HAL_GPIO_24 = 24,
143  OS_HAL_GPIO_25 = 25,
144  OS_HAL_GPIO_26 = 26,
145  OS_HAL_GPIO_27 = 27,
146  OS_HAL_GPIO_28 = 28,
147  OS_HAL_GPIO_29 = 29,
148  OS_HAL_GPIO_30 = 30,
149  OS_HAL_GPIO_31 = 31,
150  OS_HAL_GPIO_32 = 32,
151  OS_HAL_GPIO_33 = 33,
152  OS_HAL_GPIO_34 = 34,
153  OS_HAL_GPIO_35 = 35,
154  OS_HAL_GPIO_36 = 36,
155  OS_HAL_GPIO_37 = 37,
156  OS_HAL_GPIO_38 = 38,
157  OS_HAL_GPIO_39 = 39,
158  OS_HAL_GPIO_40 = 40,
159  OS_HAL_GPIO_41 = 41,
160  OS_HAL_GPIO_42 = 42,
161  OS_HAL_GPIO_43 = 43,
162  OS_HAL_GPIO_44 = 44,
163  OS_HAL_GPIO_45 = 45,
164  OS_HAL_GPIO_46 = 46,
165  OS_HAL_GPIO_47 = 47,
166  OS_HAL_GPIO_48 = 48,
167  OS_HAL_GPIO_49 = 49,
168  OS_HAL_GPIO_50 = 50,
169  OS_HAL_GPIO_51 = 51,
170  OS_HAL_GPIO_52 = 52,
171  OS_HAL_GPIO_53 = 53,
172  OS_HAL_GPIO_54 = 54,
173  OS_HAL_GPIO_55 = 55,
174  OS_HAL_GPIO_56 = 56,
175  OS_HAL_GPIO_57 = 57,
176  OS_HAL_GPIO_58 = 58,
177  OS_HAL_GPIO_59 = 59,
178  OS_HAL_GPIO_60 = 60,
179  OS_HAL_GPIO_61 = 61,
180  OS_HAL_GPIO_62 = 62,
181  OS_HAL_GPIO_63 = 63,
182  OS_HAL_GPIO_64 = 64,
183  OS_HAL_GPIO_65 = 65,
184  OS_HAL_GPIO_66 = 66,
185  OS_HAL_GPIO_67 = 67,
186  OS_HAL_GPIO_68 = 68,
187  OS_HAL_GPIO_69 = 69,
188  OS_HAL_GPIO_70 = 70,
189  OS_HAL_GPIO_71 = 71,
190  OS_HAL_GPIO_72 = 72,
191  OS_HAL_GPIO_73 = 73,
192  OS_HAL_GPIO_74 = 74,
193  OS_HAL_GPIO_75 = 75,
194  OS_HAL_GPIO_76 = 76,
195  OS_HAL_GPIO_77 = 77,
196  OS_HAL_GPIO_78 = 78,
197  OS_HAL_GPIO_79 = 79,
198  OS_HAL_GPIO_80 = 80,
199  OS_HAL_GPIO_81 = 81,
200  OS_HAL_GPIO_82 = 82,
201  OS_HAL_GPIO_83 = 83,
202  OS_HAL_GPIO_84 = 84,
203  OS_HAL_GPIO_85 = 85,
204  OS_HAL_GPIO_86 = 86,
205  OS_HAL_GPIO_87 = 87,
206  OS_HAL_GPIO_88 = 88,
207  OS_HAL_GPIO_89 = 89,
208  OS_HAL_GPIO_90 = 90,
209  OS_HAL_GPIO_91 = 91,
210  OS_HAL_GPIO_92 = 92,
211  OS_HAL_GPIO_93 = 93,
215 
218 typedef enum {
224 
225 
228 typedef enum {
234 
244 #ifdef __cplusplus
245 extern "C" {
246 #endif
247 
264 
283 
300 
320 
337  os_hal_gpio_direction *pvalue);
338 
360  os_hal_gpio_pin pin, bool enable, bool isup);
361 
362 #ifdef __cplusplus
363 }
364 #endif
365 
374 #endif
int mtk_os_hal_gpio_get_input(os_hal_gpio_pin pin, os_hal_gpio_data *pvalue)
This function is used to get input data of the target GPIO.
Define GPIO data of low.
Definition: mhal_gpio.h:266
int mtk_os_hal_gpio_set_direction(os_hal_gpio_pin pin, os_hal_gpio_direction dir)
This function is used to set the direction of the target GPIO.
Define GPIO input direction.
Definition: mhal_gpio.h:256
os_hal_gpio_direction
This enum defines GPIO direction.
Definition: os_hal_gpio.h:218
Define GPIO output direction.
Definition: os_hal_gpio.h:222
Define GPIO output direction.
Definition: mhal_gpio.h:258
os_hal_gpio_data
This enum defines input or output data of GPIO.
Definition: os_hal_gpio.h:228
int mtk_os_hal_gpio_get_output(os_hal_gpio_pin pin, os_hal_gpio_data *pvalue)
This function is used to get output data of the target GPIO.
Define GPIO data of high.
Definition: os_hal_gpio.h:232
int mtk_os_hal_gpio_set_pullen_pullsel(os_hal_gpio_pin pin, bool enable, bool isup)
This function is used to set the target GPIO to pull-up/pull-down state.
GPIO pin number is 0.
Definition: os_hal_gpio.h:118
Define GPIO data of high.
Definition: mhal_gpio.h:268
Define GPIO data of low.
Definition: os_hal_gpio.h:230
int mtk_os_hal_gpio_set_output(os_hal_gpio_pin pin, os_hal_gpio_data out_val)
This function is used to set output data of the target GPIO.
int mtk_os_hal_gpio_get_direction(os_hal_gpio_pin pin, os_hal_gpio_direction *pvalue)
This function is used to get the direction of the target GPIO.
GPIO pin maximum number(invalid)
Definition: os_hal_gpio.h:213
os_hal_gpio_pin
This enum defines the GPIO port.
Definition: os_hal_gpio.h:116
Define GPIO input direction.
Definition: os_hal_gpio.h:220