Mistake on this page?
Report an issue in GitHub or email us
lan8742.h
Go to the documentation of this file.
1 /**
2  ******************************************************************************
3  * @file lan8742.h
4  * @author MCD Application Team
5  * @version V1.0.0
6  * @date 08-March-2017
7  * @brief This file contains all the functions prototypes for the
8  * lan8742.c PHY driver.
9  ******************************************************************************
10  * @attention
11  *
12  * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
13  *
14  * Redistribution and use in source and binary forms, with or without modification,
15  * are permitted provided that the following conditions are met:
16  * 1. Redistributions of source code must retain the above copyright notice,
17  * this list of conditions and the following disclaimer.
18  * 2. Redistributions in binary form must reproduce the above copyright notice,
19  * this list of conditions and the following disclaimer in the documentation
20  * and/or other materials provided with the distribution.
21  * 3. Neither the name of STMicroelectronics nor the names of its contributors
22  * may be used to endorse or promote products derived from this software
23  * without specific prior written permission.
24  *
25  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
28  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
29  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
31  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
32  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
33  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
34  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35  *
36  ******************************************************************************
37  */
38 
39 /* Define to prevent recursive inclusion -------------------------------------*/
40 #ifndef __LAN8742_H
41 #define __LAN8742_H
42 
43 #ifdef __cplusplus
44 extern "C" {
45 #endif
46 
47 /* Includes ------------------------------------------------------------------*/
48 #include <stdint.h>
49 
50 /** @addtogroup BSP
51  * @{
52  */
53 
54 /** @addtogroup Component
55  * @{
56  */
57 
58 /** @defgroup LAN8742
59  * @{
60  */
61 /* Exported constants --------------------------------------------------------*/
62 /** @defgroup LAN8742_Exported_Constants LAN8742 Exported Constants
63  * @{
64  */
65 
66 /** @defgroup LAN8742_Registers_Mapping LAN8742 Registers Mapping
67  * @{
68  */
69 #define LAN8742_BCR ((uint16_t)0x0000U)
70 #define LAN8742_BSR ((uint16_t)0x0001U)
71 #define LAN8742_PHYI1R ((uint16_t)0x0002U)
72 #define LAN8742_PHYI2R ((uint16_t)0x0003U)
73 #define LAN8742_ANAR ((uint16_t)0x0004U)
74 #define LAN8742_ANLPAR ((uint16_t)0x0005U)
75 #define LAN8742_ANER ((uint16_t)0x0006U)
76 #define LAN8742_ANNPTR ((uint16_t)0x0007U)
77 #define LAN8742_ANNPRR ((uint16_t)0x0008U)
78 #define LAN8742_MMDACR ((uint16_t)0x000DU)
79 #define LAN8742_MMDAADR ((uint16_t)0x000EU)
80 #define LAN8742_ENCTR ((uint16_t)0x0010U)
81 #define LAN8742_MCSR ((uint16_t)0x0011U)
82 #define LAN8742_SMR ((uint16_t)0x0012U)
83 #define LAN8742_TPDCR ((uint16_t)0x0018U)
84 #define LAN8742_TCSR ((uint16_t)0x0019U)
85 #define LAN8742_SECR ((uint16_t)0x001AU)
86 #define LAN8742_SCSIR ((uint16_t)0x001BU)
87 #define LAN8742_CLR ((uint16_t)0x001CU)
88 #define LAN8742_ISFR ((uint16_t)0x001DU)
89 #define LAN8742_IMR ((uint16_t)0x001EU)
90 #define LAN8742_PHYSCSR ((uint16_t)0x001FU)
91 /**
92  * @}
93  */
94 
95 /** @defgroup LAN8742_BCR_Bit_Definition LAN8742 BCR Bit Definition
96  * @{
97  */
98 #define LAN8742_BCR_SOFT_RESET ((uint16_t)0x8000U)
99 #define LAN8742_BCR_LOOPBACK ((uint16_t)0x4000U)
100 #define LAN8742_BCR_SPEED_SELECT ((uint16_t)0x2000U)
101 #define LAN8742_BCR_AUTONEGO_EN ((uint16_t)0x1000U)
102 #define LAN8742_BCR_POWER_DOWN ((uint16_t)0x0800U)
103 #define LAN8742_BCR_ISOLATE ((uint16_t)0x0400U)
104 #define LAN8742_BCR_RESTART_AUTONEGO ((uint16_t)0x0200U)
105 #define LAN8742_BCR_DUPLEX_MODE ((uint16_t)0x0100U)
106 /**
107  * @}
108  */
109 
110 /** @defgroup LAN8742_BSR_Bit_Definition LAN8742 BSR Bit Definition
111  * @{
112  */
113 #define LAN8742_BSR_100BASE_T4 ((uint16_t)0x8000U)
114 #define LAN8742_BSR_100BASE_TX_FD ((uint16_t)0x4000U)
115 #define LAN8742_BSR_100BASE_TX_HD ((uint16_t)0x2000U)
116 #define LAN8742_BSR_10BASE_T_FD ((uint16_t)0x1000U)
117 #define LAN8742_BSR_10BASE_T_HD ((uint16_t)0x0800U)
118 #define LAN8742_BSR_100BASE_T2_FD ((uint16_t)0x0400U)
119 #define LAN8742_BSR_100BASE_T2_HD ((uint16_t)0x0200U)
120 #define LAN8742_BSR_EXTENDED_STATUS ((uint16_t)0x0100U)
121 #define LAN8742_BSR_AUTONEGO_CPLT ((uint16_t)0x0020U)
122 #define LAN8742_BSR_REMOTE_FAULT ((uint16_t)0x0010U)
123 #define LAN8742_BSR_AUTONEGO_ABILITY ((uint16_t)0x0008U)
124 #define LAN8742_BSR_LINK_STATUS ((uint16_t)0x0004U)
125 #define LAN8742_BSR_JABBER_DETECT ((uint16_t)0x0002U)
126 #define LAN8742_BSR_EXTENDED_CAP ((uint16_t)0x0001U)
127 /**
128  * @}
129  */
130 
131 /** @defgroup LAN8742_PHYI1R_Bit_Definition LAN8742 PHYI1R Bit Definition
132  * @{
133  */
134 #define LAN8742_PHYI1R_OUI_3_18 ((uint16_t)0xFFFFU)
135 /**
136  * @}
137  */
138 
139 /** @defgroup LAN8742_PHYI2R_Bit_Definition LAN8742 PHYI2R Bit Definition
140  * @{
141  */
142 #define LAN8742_PHYI2R_OUI_19_24 ((uint16_t)0xFC00U)
143 #define LAN8742_PHYI2R_MODEL_NBR ((uint16_t)0x03F0U)
144 #define LAN8742_PHYI2R_REVISION_NBR ((uint16_t)0x000FU)
145 /**
146  * @}
147  */
148 
149 /** @defgroup LAN8742_ANAR_Bit_Definition LAN8742 ANAR Bit Definition
150  * @{
151  */
152 #define LAN8742_ANAR_NEXT_PAGE ((uint16_t)0x8000U)
153 #define LAN8742_ANAR_REMOTE_FAULT ((uint16_t)0x2000U)
154 #define LAN8742_ANAR_PAUSE_OPERATION ((uint16_t)0x0C00U)
155 #define LAN8742_ANAR_PO_NOPAUSE ((uint16_t)0x0000U)
156 #define LAN8742_ANAR_PO_SYMMETRIC_PAUSE ((uint16_t)0x0400U)
157 #define LAN8742_ANAR_PO_ASYMMETRIC_PAUSE ((uint16_t)0x0800U)
158 #define LAN8742_ANAR_PO_ADVERTISE_SUPPORT ((uint16_t)0x0C00U)
159 #define LAN8742_ANAR_100BASE_TX_FD ((uint16_t)0x0100U)
160 #define LAN8742_ANAR_100BASE_TX ((uint16_t)0x0080U)
161 #define LAN8742_ANAR_10BASE_T_FD ((uint16_t)0x0040U)
162 #define LAN8742_ANAR_10BASE_T ((uint16_t)0x0020U)
163 #define LAN8742_ANAR_SELECTOR_FIELD ((uint16_t)0x000FU)
164 /**
165  * @}
166  */
167 
168 /** @defgroup LAN8742_ANLPAR_Bit_Definition LAN8742 ANLPAR Bit Definition
169  * @{
170  */
171 #define LAN8742_ANLPAR_NEXT_PAGE ((uint16_t)0x8000U)
172 #define LAN8742_ANLPAR_REMOTE_FAULT ((uint16_t)0x2000U)
173 #define LAN8742_ANLPAR_PAUSE_OPERATION ((uint16_t)0x0C00U)
174 #define LAN8742_ANLPAR_PO_NOPAUSE ((uint16_t)0x0000U)
175 #define LAN8742_ANLPAR_PO_SYMMETRIC_PAUSE ((uint16_t)0x0400U)
176 #define LAN8742_ANLPAR_PO_ASYMMETRIC_PAUSE ((uint16_t)0x0800U)
177 #define LAN8742_ANLPAR_PO_ADVERTISE_SUPPORT ((uint16_t)0x0C00U)
178 #define LAN8742_ANLPAR_100BASE_TX_FD ((uint16_t)0x0100U)
179 #define LAN8742_ANLPAR_100BASE_TX ((uint16_t)0x0080U)
180 #define LAN8742_ANLPAR_10BASE_T_FD ((uint16_t)0x0040U)
181 #define LAN8742_ANLPAR_10BASE_T ((uint16_t)0x0020U)
182 #define LAN8742_ANLPAR_SELECTOR_FIELD ((uint16_t)0x000FU)
183 /**
184  * @}
185  */
186 
187 /** @defgroup LAN8742_ANER_Bit_Definition LAN8742 ANER Bit Definition
188  * @{
189  */
190 #define LAN8742_ANER_RX_NP_LOCATION_ABLE ((uint16_t)0x0040U)
191 #define LAN8742_ANER_RX_NP_STORAGE_LOCATION ((uint16_t)0x0020U)
192 #define LAN8742_ANER_PARALLEL_DETECT_FAULT ((uint16_t)0x0010U)
193 #define LAN8742_ANER_LP_NP_ABLE ((uint16_t)0x0008U)
194 #define LAN8742_ANER_NP_ABLE ((uint16_t)0x0004U)
195 #define LAN8742_ANER_PAGE_RECEIVED ((uint16_t)0x0002U)
196 #define LAN8742_ANER_LP_AUTONEG_ABLE ((uint16_t)0x0001U)
197 /**
198  * @}
199  */
200 
201 /** @defgroup LAN8742_ANNPTR_Bit_Definition LAN8742 ANNPTR Bit Definition
202  * @{
203  */
204 #define LAN8742_ANNPTR_NEXT_PAGE ((uint16_t)0x8000U)
205 #define LAN8742_ANNPTR_MESSAGE_PAGE ((uint16_t)0x2000U)
206 #define LAN8742_ANNPTR_ACK2 ((uint16_t)0x1000U)
207 #define LAN8742_ANNPTR_TOGGLE ((uint16_t)0x0800U)
208 #define LAN8742_ANNPTR_MESSAGGE_CODE ((uint16_t)0x07FFU)
209 /**
210  * @}
211  */
212 
213 /** @defgroup LAN8742_ANNPRR_Bit_Definition LAN8742 ANNPRR Bit Definition
214  * @{
215  */
216 #define LAN8742_ANNPTR_NEXT_PAGE ((uint16_t)0x8000U)
217 #define LAN8742_ANNPRR_ACK ((uint16_t)0x4000U)
218 #define LAN8742_ANNPRR_MESSAGE_PAGE ((uint16_t)0x2000U)
219 #define LAN8742_ANNPRR_ACK2 ((uint16_t)0x1000U)
220 #define LAN8742_ANNPRR_TOGGLE ((uint16_t)0x0800U)
221 #define LAN8742_ANNPRR_MESSAGGE_CODE ((uint16_t)0x07FFU)
222 /**
223  * @}
224  */
225 
226 /** @defgroup LAN8742_MMDACR_Bit_Definition LAN8742 MMDACR Bit Definition
227  * @{
228  */
229 #define LAN8742_MMDACR_MMD_FUNCTION ((uint16_t)0xC000U)
230 #define LAN8742_MMDACR_MMD_FUNCTION_ADDR ((uint16_t)0x0000U)
231 #define LAN8742_MMDACR_MMD_FUNCTION_DATA ((uint16_t)0x4000U)
232 #define LAN8742_MMDACR_MMD_DEV_ADDR ((uint16_t)0x001FU)
233 /**
234  * @}
235  */
236 
237 /** @defgroup LAN8742_ENCTR_Bit_Definition LAN8742 ENCTR Bit Definition
238  * @{
239  */
240 #define LAN8742_ENCTR_TX_ENABLE ((uint16_t)0x8000U)
241 #define LAN8742_ENCTR_TX_TIMER ((uint16_t)0x6000U)
242 #define LAN8742_ENCTR_TX_TIMER_1S ((uint16_t)0x0000U)
243 #define LAN8742_ENCTR_TX_TIMER_768MS ((uint16_t)0x2000U)
244 #define LAN8742_ENCTR_TX_TIMER_512MS ((uint16_t)0x4000U)
245 #define LAN8742_ENCTR_TX_TIMER_265MS ((uint16_t)0x6000U)
246 #define LAN8742_ENCTR_RX_ENABLE ((uint16_t)0x1000U)
247 #define LAN8742_ENCTR_RX_MAX_INTERVAL ((uint16_t)0x0C00U)
248 #define LAN8742_ENCTR_RX_MAX_INTERVAL_64MS ((uint16_t)0x0000U)
249 #define LAN8742_ENCTR_RX_MAX_INTERVAL_256MS ((uint16_t)0x0400U)
250 #define LAN8742_ENCTR_RX_MAX_INTERVAL_512MS ((uint16_t)0x0800U)
251 #define LAN8742_ENCTR_RX_MAX_INTERVAL_1S ((uint16_t)0x0C00U)
252 #define LAN8742_ENCTR_EX_CROSS_OVER ((uint16_t)0x0002U)
253 #define LAN8742_ENCTR_EX_MANUAL_CROSS_OVER ((uint16_t)0x0001U)
254 /**
255  * @}
256  */
257 
258 /** @defgroup LAN8742_MCSR_Bit_Definition LAN8742 MCSR Bit Definition
259  * @{
260  */
261 #define LAN8742_MCSR_EDPWRDOWN ((uint16_t)0x2000U)
262 #define LAN8742_MCSR_FARLOOPBACK ((uint16_t)0x0200U)
263 #define LAN8742_MCSR_ALTINT ((uint16_t)0x0040U)
264 #define LAN8742_MCSR_ENERGYON ((uint16_t)0x0002U)
265 /**
266  * @}
267  */
268 
269 /** @defgroup LAN8742_SMR_Bit_Definition LAN8742 SMR Bit Definition
270  * @{
271  */
272 #define LAN8742_SMR_MODE ((uint16_t)0x00E0U)
273 #define LAN8742_SMR_PHY_ADDR ((uint16_t)0x001FU)
274 /**
275  * @}
276  */
277 
278 /** @defgroup LAN8742_TPDCR_Bit_Definition LAN8742 TPDCR Bit Definition
279  * @{
280  */
281 #define LAN8742_TPDCR_DELAY_IN ((uint16_t)0x8000U)
282 #define LAN8742_TPDCR_LINE_BREAK_COUNTER ((uint16_t)0x7000U)
283 #define LAN8742_TPDCR_PATTERN_HIGH ((uint16_t)0x0FC0U)
284 #define LAN8742_TPDCR_PATTERN_LOW ((uint16_t)0x003FU)
285 /**
286  * @}
287  */
288 
289 /** @defgroup LAN8742_TCSR_Bit_Definition LAN8742 TCSR Bit Definition
290  * @{
291  */
292 #define LAN8742_TCSR_TDR_ENABLE ((uint16_t)0x8000U)
293 #define LAN8742_TCSR_TDR_AD_FILTER_ENABLE ((uint16_t)0x4000U)
294 #define LAN8742_TCSR_TDR_CH_CABLE_TYPE ((uint16_t)0x0600U)
295 #define LAN8742_TCSR_TDR_CH_CABLE_DEFAULT ((uint16_t)0x0000U)
296 #define LAN8742_TCSR_TDR_CH_CABLE_SHORTED ((uint16_t)0x0200U)
297 #define LAN8742_TCSR_TDR_CH_CABLE_OPEN ((uint16_t)0x0400U)
298 #define LAN8742_TCSR_TDR_CH_CABLE_MATCH ((uint16_t)0x0600U)
299 #define LAN8742_TCSR_TDR_CH_STATUS ((uint16_t)0x0100U)
300 #define LAN8742_TCSR_TDR_CH_LENGTH ((uint16_t)0x00FFU)
301 /**
302  * @}
303  */
304 
305 /** @defgroup LAN8742_SCSIR_Bit_Definition LAN8742 SCSIR Bit Definition
306  * @{
307  */
308 #define LAN8742_SCSIR_AUTO_MDIX_ENABLE ((uint16_t)0x8000U)
309 #define LAN8742_SCSIR_CHANNEL_SELECT ((uint16_t)0x2000U)
310 #define LAN8742_SCSIR_SQE_DISABLE ((uint16_t)0x0800U)
311 #define LAN8742_SCSIR_XPOLALITY ((uint16_t)0x0010U)
312 /**
313  * @}
314  */
315 
316 /** @defgroup LAN8742_CLR_Bit_Definition LAN8742 CLR Bit Definition
317  * @{
318  */
319 #define LAN8742_CLR_CABLE_LENGTH ((uint16_t)0xF000U)
320 /**
321  * @}
322  */
323 
324 /** @defgroup LAN8742_IMR_ISFR_Bit_Definition LAN8742 IMR ISFR Bit Definition
325  * @{
326  */
327 #define LAN8742_INT_8 ((uint16_t)0x0100U)
328 #define LAN8742_INT_7 ((uint16_t)0x0080U)
329 #define LAN8742_INT_6 ((uint16_t)0x0040U)
330 #define LAN8742_INT_5 ((uint16_t)0x0020U)
331 #define LAN8742_INT_4 ((uint16_t)0x0010U)
332 #define LAN8742_INT_3 ((uint16_t)0x0008U)
333 #define LAN8742_INT_2 ((uint16_t)0x0004U)
334 #define LAN8742_INT_1 ((uint16_t)0x0002U)
335 /**
336  * @}
337  */
338 
339 /** @defgroup LAN8742_PHYSCSR_Bit_Definition LAN8742 PHYSCSR Bit Definition
340  * @{
341  */
342 #define LAN8742_PHYSCSR_AUTONEGO_DONE ((uint16_t)0x1000U)
343 #define LAN8742_PHYSCSR_HCDSPEEDMASK ((uint16_t)0x001CU)
344 #define LAN8742_PHYSCSR_10BT_HD ((uint16_t)0x0004U)
345 #define LAN8742_PHYSCSR_10BT_FD ((uint16_t)0x0014U)
346 #define LAN8742_PHYSCSR_100BTX_HD ((uint16_t)0x0008U)
347 #define LAN8742_PHYSCSR_100BTX_FD ((uint16_t)0x0018U)
348 /**
349  * @}
350  */
351 
352 /** @defgroup LAN8742_Status LAN8742 Status
353  * @{
354  */
355 
356 #define LAN8742_STATUS_READ_ERROR ((int32_t)-5)
357 #define LAN8742_STATUS_WRITE_ERROR ((int32_t)-4)
358 #define LAN8742_STATUS_ADDRESS_ERROR ((int32_t)-3)
359 #define LAN8742_STATUS_RESET_TIMEOUT ((int32_t)-2)
360 #define LAN8742_STATUS_ERROR ((int32_t)-1)
361 #define LAN8742_STATUS_OK ((int32_t) 0)
362 #define LAN8742_STATUS_LINK_DOWN ((int32_t) 1)
363 #define LAN8742_STATUS_100MBITS_FULLDUPLEX ((int32_t) 2)
364 #define LAN8742_STATUS_100MBITS_HALFDUPLEX ((int32_t) 3)
365 #define LAN8742_STATUS_10MBITS_FULLDUPLEX ((int32_t) 4)
366 #define LAN8742_STATUS_10MBITS_HALFDUPLEX ((int32_t) 5)
367 #define LAN8742_STATUS_AUTONEGO_NOTDONE ((int32_t) 6)
368 /**
369  * @}
370  */
371 
372 /** @defgroup LAN8742_IT_Flags LAN8742 IT Flags
373  * @{
374  */
375 #define LAN8742_WOL_IT LAN8742_INT_8
376 #define LAN8742_ENERGYON_IT LAN8742_INT_7
377 #define LAN8742_AUTONEGO_COMPLETE_IT LAN8742_INT_6
378 #define LAN8742_REMOTE_FAULT_IT LAN8742_INT_5
379 #define LAN8742_LINK_DOWN_IT LAN8742_INT_4
380 #define LAN8742_AUTONEGO_LP_ACK_IT LAN8742_INT_3
381 #define LAN8742_PARALLEL_DETECTION_FAULT_IT LAN8742_INT_2
382 #define LAN8742_AUTONEGO_PAGE_RECEIVED_IT LAN8742_INT_1
383 /**
384  * @}
385  */
386 
387 /**
388  * @}
389  */
390 
391 /* Exported types ------------------------------------------------------------*/
392 /** @defgroup LAN8742_Exported_Types LAN8742 Exported Types
393  * @{
394  */
395 typedef int32_t (*lan8742_Init_Func)(void);
396 typedef int32_t (*lan8742_DeInit_Func)(void);
397 typedef int32_t (*lan8742_ReadReg_Func)(uint32_t, uint32_t, uint32_t *);
398 typedef int32_t (*lan8742_WriteReg_Func)(uint32_t, uint32_t, uint32_t);
399 typedef int32_t (*lan8742_GetTick_Func)(void);
400 
401 typedef struct {
402  lan8742_Init_Func Init;
403  lan8742_DeInit_Func DeInit;
404  lan8742_WriteReg_Func WriteReg;
405  lan8742_ReadReg_Func ReadReg;
406  lan8742_GetTick_Func GetTick;
408 
409 
410 typedef struct {
411  uint32_t DevAddr;
412  uint32_t Is_Initialized;
413  lan8742_IOCtx_t IO;
414  void *pData;
416 /**
417  * @}
418  */
419 
420 /* Exported macro ------------------------------------------------------------*/
421 /* Exported functions --------------------------------------------------------*/
422 /** @defgroup LAN8742_Exported_Functions LAN8742 Exported Functions
423  * @{
424  */
425 int32_t LAN8742_RegisterBusIO(lan8742_Object_t *pObj, lan8742_IOCtx_t *ioctx);
426 int32_t LAN8742_Init(lan8742_Object_t *pObj);
427 int32_t LAN8742_DeInit(lan8742_Object_t *pObj);
428 int32_t LAN8742_DisablePowerDownMode(lan8742_Object_t *pObj);
429 int32_t LAN8742_EnablePowerDownMode(lan8742_Object_t *pObj);
430 int32_t LAN8742_StartAutoNego(lan8742_Object_t *pObj);
431 int32_t LAN8742_GetLinkState(lan8742_Object_t *pObj);
432 int32_t LAN8742_SetLinkState(lan8742_Object_t *pObj, uint32_t LinkState);
433 int32_t LAN8742_EnableLoopbackMode(lan8742_Object_t *pObj);
434 int32_t LAN8742_DisableLoopbackMode(lan8742_Object_t *pObj);
435 int32_t LAN8742_EnableIT(lan8742_Object_t *pObj, uint32_t Interrupt);
436 int32_t LAN8742_DisableIT(lan8742_Object_t *pObj, uint32_t Interrupt);
437 int32_t LAN8742_ClearIT(lan8742_Object_t *pObj, uint32_t Interrupt);
438 int32_t LAN8742_GetITStatus(lan8742_Object_t *pObj, uint32_t Interrupt);
439 /**
440  * @}
441  */
442 
443 #ifdef __cplusplus
444 }
445 #endif
446 #endif /* __LAN8742_H */
447 
448 
449 /**
450  * @}
451  */
452 
453 /**
454  * @}
455  */
456 
457 /**
458  * @}
459  */
460 
461 /**
462  * @}
463  */
464 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.