Updated and Validated
[betaflight.git] / lib / main / STM32F7 / Drivers / STM32F7xx_HAL_Driver / Inc / stm32f7xx_hal_mdios.h
blob5ef776c76b0a9e12d960f15f4e93f818dc63427c
1 /**
2 ******************************************************************************
3 * @file stm32f7xx_hal_mdios.h
4 * @author MCD Application Team
5 * @brief Header file of MDIOS HAL module.
6 ******************************************************************************
7 * @attention
9 * <h2><center>&copy; Copyright (c) 2017 STMicroelectronics.
10 * All rights reserved.</center></h2>
12 * This software component is licensed by ST under BSD 3-Clause license,
13 * the "License"; You may not use this file except in compliance with the
14 * License. You may obtain a copy of the License at:
15 * opensource.org/licenses/BSD-3-Clause
17 ******************************************************************************
20 /* Define to prevent recursive inclusion -------------------------------------*/
21 #ifndef __STM32F7xx_HAL_MDIOS_H
22 #define __STM32F7xx_HAL_MDIOS_H
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
28 /* Includes ------------------------------------------------------------------*/
29 #include "stm32f7xx_hal_def.h"
31 #if defined (MDIOS)
33 /** @addtogroup STM32F7xx_HAL_Driver
34 * @{
37 /** @addtogroup MDIOS
38 * @{
39 */
41 /* Exported types ------------------------------------------------------------*/
42 /** @defgroup MDIOS_Exported_Types MDIOS Exported Types
43 * @{
46 /** @defgroup MDIOS_Exported_Types_Group1 MDIOS State structures definition
47 * @{
50 typedef enum
52 HAL_MDIOS_STATE_RESET = 0x00U, /*!< Peripheral not yet Initialized or disabled */
53 HAL_MDIOS_STATE_READY = 0x01U, /*!< Peripheral Initialized and ready for use */
54 HAL_MDIOS_STATE_BUSY = 0x02U, /*!< an internal process is ongoing */
55 HAL_MDIOS_STATE_ERROR = 0x04U /*!< Reception process is ongoing */
56 }HAL_MDIOS_StateTypeDef;
58 /**
59 * @}
62 /** @defgroup MDIOS_Exported_Types_Group2 MDIOS Init Structure definition
63 * @{
66 typedef struct
68 uint32_t PortAddress; /*!< Specifies the MDIOS port address.
69 This parameter can be a value from 0 to 31 */
70 uint32_t PreambleCheck; /*!< Specifies whether the preamble check is enabled or disabled.
71 This parameter can be a value of @ref MDIOS_Preamble_Check */
72 }MDIOS_InitTypeDef;
74 /**
75 * @}
78 /** @defgroup MDIOS_Exported_Types_Group4 MDIOS handle Structure definition
79 * @{
82 #if ( USE_HAL_MDIOS_REGISTER_CALLBACKS == 1 )
83 typedef struct __MDIOS_HandleTypeDef
84 #else
85 typedef struct
86 #endif /* USE_HAL_MDIOS_REGISTER_CALLBACKS */
88 MDIOS_TypeDef *Instance; /*!< Register base address */
90 MDIOS_InitTypeDef Init; /*!< MDIOS Init Structure */
92 __IO HAL_MDIOS_StateTypeDef State; /*!< MDIOS communication state */
94 HAL_LockTypeDef Lock; /*!< MDIOS Lock */
96 #if (USE_HAL_MDIOS_REGISTER_CALLBACKS == 1)
98 void (* WriteCpltCallback) ( struct __MDIOS_HandleTypeDef * hmdios); /*!< MDIOS Write Complete Callback */
99 void (* ReadCpltCallback) ( struct __MDIOS_HandleTypeDef * hmdios); /*!< MDIOS Read Complete Callback */
100 void (* ErrorCallback) ( struct __MDIOS_HandleTypeDef * hmdios); /*!< MDIOS Error Callback */
101 void (* WakeUpCallback) ( struct __MDIOS_HandleTypeDef * hmdios); /*!< MDIOS Wake UP Callback */
102 void (* MspInitCallback) ( struct __MDIOS_HandleTypeDef * hmdios); /*!< MDIOS Msp Init callback */
103 void (* MspDeInitCallback) ( struct __MDIOS_HandleTypeDef * hmdios); /*!< MDIOS Msp DeInit callback */
105 #endif /* USE_HAL_MDIOS_REGISTER_CALLBACKS */
107 }MDIOS_HandleTypeDef;
109 #if ( USE_HAL_MDIOS_REGISTER_CALLBACKS == 1)
111 * @brief HAL MDIOS Callback ID enumeration definition
113 typedef enum
115 HAL_MDIOS_MSPINIT_CB_ID = 0x00U, /*!< MDIOS MspInit callback ID */
116 HAL_MDIOS_MSPDEINIT_CB_ID = 0x01U, /*!< MDIOS MspDeInit callback ID */
117 HAL_MDIOS_WRITE_COMPLETE_CB_ID = 0x02U, /*!< MDIOS Write Complete Callback ID */
118 HAL_MDIOS_READ_COMPLETE_CB_ID = 0x03U, /*!< MDIOS Read Complete Callback ID */
119 HAL_MDIOS_ERROR_CB_ID = 0x04U, /*!< MDIOS Error Callback ID */
120 HAL_MDIOS_WAKEUP_CB_ID = 0x05U /*!< MDIOS Wake UP Callback ID */
121 }HAL_MDIOS_CallbackIDTypeDef;
124 * @brief HAL MDIOS Callback pointer definition
126 typedef void (*pMDIOS_CallbackTypeDef)(MDIOS_HandleTypeDef * hmdios); /*!< pointer to an MDIOS callback function */
128 #endif /* USE_HAL_MDIOS_REGISTER_CALLBACKS */
130 /**
131 * @}
134 /**
135 * @}
138 /* Exported constants --------------------------------------------------------*/
139 /** @defgroup MDIOS_Exported_Constants MDIOS Exported Constants
140 * @{
143 /** @defgroup MDIOS_Preamble_Check MDIOS Preamble Check
144 * @{
146 #define MDIOS_PREAMBLE_CHECK_ENABLE ((uint32_t)0x00000000U)
147 #define MDIOS_PREAMBLE_CHECK_DISABLE MDIOS_CR_DPC
149 * @}
152 /** @defgroup MDIOS_Input_Output_Registers_Definitions MDIOS Input Output Registers Definitions
153 * @{
155 #define MDIOS_REG0 ((uint32_t)0x00000000U)
156 #define MDIOS_REG1 ((uint32_t)0x00000001U)
157 #define MDIOS_REG2 ((uint32_t)0x00000002U)
158 #define MDIOS_REG3 ((uint32_t)0x00000003U)
159 #define MDIOS_REG4 ((uint32_t)0x00000004U)
160 #define MDIOS_REG5 ((uint32_t)0x00000005U)
161 #define MDIOS_REG6 ((uint32_t)0x00000006U)
162 #define MDIOS_REG7 ((uint32_t)0x00000007U)
163 #define MDIOS_REG8 ((uint32_t)0x00000008U)
164 #define MDIOS_REG9 ((uint32_t)0x00000009U)
165 #define MDIOS_REG10 ((uint32_t)0x0000000AU)
166 #define MDIOS_REG11 ((uint32_t)0x0000000BU)
167 #define MDIOS_REG12 ((uint32_t)0x0000000CU)
168 #define MDIOS_REG13 ((uint32_t)0x0000000DU)
169 #define MDIOS_REG14 ((uint32_t)0x0000000EU)
170 #define MDIOS_REG15 ((uint32_t)0x0000000FU)
171 #define MDIOS_REG16 ((uint32_t)0x00000010U)
172 #define MDIOS_REG17 ((uint32_t)0x00000011U)
173 #define MDIOS_REG18 ((uint32_t)0x00000012U)
174 #define MDIOS_REG19 ((uint32_t)0x00000013U)
175 #define MDIOS_REG20 ((uint32_t)0x00000014U)
176 #define MDIOS_REG21 ((uint32_t)0x00000015U)
177 #define MDIOS_REG22 ((uint32_t)0x00000016U)
178 #define MDIOS_REG23 ((uint32_t)0x00000017U)
179 #define MDIOS_REG24 ((uint32_t)0x00000018U)
180 #define MDIOS_REG25 ((uint32_t)0x00000019U)
181 #define MDIOS_REG26 ((uint32_t)0x0000001AU)
182 #define MDIOS_REG27 ((uint32_t)0x0000001BU)
183 #define MDIOS_REG28 ((uint32_t)0x0000001CU)
184 #define MDIOS_REG29 ((uint32_t)0x0000001DU)
185 #define MDIOS_REG30 ((uint32_t)0x0000001EU)
186 #define MDIOS_REG31 ((uint32_t)0x0000001FU)
188 * @}
191 /** @defgroup MDIOS_Registers_Flags MDIOS Registers Flags
192 * @{
194 #define MDIOS_REG0_FLAG ((uint32_t)0x00000001U)
195 #define MDIOS_REG1_FLAG ((uint32_t)0x00000002U)
196 #define MDIOS_REG2_FLAG ((uint32_t)0x00000004U)
197 #define MDIOS_REG3_FLAG ((uint32_t)0x00000008U)
198 #define MDIOS_REG4_FLAG ((uint32_t)0x00000010U)
199 #define MDIOS_REG5_FLAG ((uint32_t)0x00000020U)
200 #define MDIOS_REG6_FLAG ((uint32_t)0x00000040U)
201 #define MDIOS_REG7_FLAG ((uint32_t)0x00000080U)
202 #define MDIOS_REG8_FLAG ((uint32_t)0x00000100U)
203 #define MDIOS_REG9_FLAG ((uint32_t)0x00000200U)
204 #define MDIOS_REG10_FLAG ((uint32_t)0x00000400U)
205 #define MDIOS_REG11_FLAG ((uint32_t)0x00000800U)
206 #define MDIOS_REG12_FLAG ((uint32_t)0x00001000U)
207 #define MDIOS_REG13_FLAG ((uint32_t)0x00002000U)
208 #define MDIOS_REG14_FLAG ((uint32_t)0x00004000U)
209 #define MDIOS_REG15_FLAG ((uint32_t)0x00008000U)
210 #define MDIOS_REG16_FLAG ((uint32_t)0x00010000U)
211 #define MDIOS_REG17_FLAG ((uint32_t)0x00020000U)
212 #define MDIOS_REG18_FLAG ((uint32_t)0x00040000U)
213 #define MDIOS_REG19_FLAG ((uint32_t)0x00080000U)
214 #define MDIOS_REG20_FLAG ((uint32_t)0x00100000U)
215 #define MDIOS_REG21_FLAG ((uint32_t)0x00200000U)
216 #define MDIOS_REG22_FLAG ((uint32_t)0x00400000U)
217 #define MDIOS_REG23_FLAG ((uint32_t)0x00800000U)
218 #define MDIOS_REG24_FLAG ((uint32_t)0x01000000U)
219 #define MDIOS_REG25_FLAG ((uint32_t)0x02000000U)
220 #define MDIOS_REG26_FLAG ((uint32_t)0x04000000U)
221 #define MDIOS_REG27_FLAG ((uint32_t)0x08000000U)
222 #define MDIOS_REG28_FLAG ((uint32_t)0x10000000U)
223 #define MDIOS_REG29_FLAG ((uint32_t)0x20000000U)
224 #define MDIOS_REG30_FLAG ((uint32_t)0x40000000U)
225 #define MDIOS_REG31_FLAG ((uint32_t)0x80000000U)
226 #define MDIOS_ALLREG_FLAG ((uint32_t)0xFFFFFFFFU)
228 * @}
231 /** @defgroup MDIOS_Interrupt_sources Interrupt Sources
232 * @{
234 #define MDIOS_IT_WRITE MDIOS_CR_WRIE
235 #define MDIOS_IT_READ MDIOS_CR_RDIE
236 #define MDIOS_IT_ERROR MDIOS_CR_EIE
238 * @}
241 /** @defgroup MDIOS_Interrupt_Flags MDIOS Interrupt Flags
242 * @{
244 #define MDIOS_TURNAROUND_ERROR_FLAG MDIOS_SR_TERF
245 #define MDIOS_START_ERROR_FLAG MDIOS_SR_SERF
246 #define MDIOS_PREAMBLE_ERROR_FLAG MDIOS_SR_PERF
248 * @}
251 /** @defgroup MDIOS_Wakeup_Line MDIOS Wakeup Line
252 * @{
254 #define MDIOS_WAKEUP_EXTI_LINE ((uint32_t)0x01000000) /* !< EXTI Line 24 */
256 * @}
260 * @}
262 /* Exported macros -----------------------------------------------------------*/
263 /** @defgroup MDIOS_Exported_Macros MDIOS Exported Macros
264 * @{
267 /** @brief Reset MDIOS handle state
268 * @param __HANDLE__ MDIOS handle.
269 * @retval None
271 #if (USE_HAL_MDIOS_REGISTER_CALLBACKS == 1)
272 #define __HAL_MDIOS_RESET_HANDLE_STATE(__HANDLE__) do{ \
273 (__HANDLE__)->State = HAL_MDIOS_STATE_RESET; \
274 (__HANDLE__)->MspInitCallback = NULL; \
275 (__HANDLE__)->MspDeInitCallback = NULL; \
276 } while(0)
277 #else
278 #define __HAL_MDIOS_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_MDIOS_STATE_RESET)
279 #endif /* USE_HAL_MDIOS_REGISTER_CALLBACKS */
282 * @brief Enable/Disable the MDIOS peripheral.
283 * @param __HANDLE__ specifies the MDIOS handle.
284 * @retval None
286 #define __HAL_MDIOS_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR |= MDIOS_CR_EN)
287 #define __HAL_MDIOS_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR &= ~MDIOS_CR_EN)
291 * @brief Enable the MDIOS device interrupt.
292 * @param __HANDLE__ specifies the MDIOS handle.
293 * @param __INTERRUPT__ specifies the MDIOS interrupt sources to be enabled.
294 * This parameter can be one or a combination of the following values:
295 * @arg MDIOS_IT_WRITE: Register write interrupt
296 * @arg MDIOS_IT_READ: Register read interrupt
297 * @arg MDIOS_IT_ERROR: Error interrupt
298 * @retval None
300 #define __HAL_MDIOS_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR |= (__INTERRUPT__))
303 * @brief Disable the MDIOS device interrupt.
304 * @param __HANDLE__ specifies the MDIOS handle.
305 * @param __INTERRUPT__ specifies the MDIOS interrupt sources to be disabled.
306 * This parameter can be one or a combination of the following values:
307 * @arg MDIOS_IT_WRITE: Register write interrupt
308 * @arg MDIOS_IT_READ: Register read interrupt
309 * @arg MDIOS_IT_ERROR: Error interrupt
310 * @retval None
312 #define __HAL_MDIOS_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR &= ~(__INTERRUPT__))
314 /** @brief Set MDIOS slave get write register flag
315 * @param __HANDLE__ specifies the MDIOS handle.
316 * @param __FLAG__ specifies the write register flag
317 * @retval The state of write flag
319 #define __HAL_MDIOS_GET_WRITE_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->WRFR & (__FLAG__))
321 /** @brief MDIOS slave get read register flag
322 * @param __HANDLE__ specifies the MDIOS handle.
323 * @param __FLAG__ specifies the read register flag
324 * @retval The state of read flag
326 #define __HAL_MDIOS_GET_READ_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->RDFR & (__FLAG__))
328 /** @brief MDIOS slave get interrupt
329 * @param __HANDLE__ specifies the MDIOS handle.
330 * @param __FLAG__ specifies the Error flag.
331 * This parameter can be one or a combination of the following values:
332 * @arg MDIOS_TURNARROUND_ERROR_FLAG: Register write interrupt
333 * @arg MDIOS_START_ERROR_FLAG: Register read interrupt
334 * @arg MDIOS_PREAMBLE_ERROR_FLAG: Error interrupt
335 * @retval The state of the error flag
337 #define __HAL_MDIOS_GET_ERROR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->SR & (__FLAG__))
339 /** @brief MDIOS slave clear interrupt
340 * @param __HANDLE__ specifies the MDIOS handle.
341 * @param __FLAG__ specifies the Error flag.
342 * This parameter can be one or a combination of the following values:
343 * @arg MDIOS_TURNARROUND_ERROR_FLAG: Register write interrupt
344 * @arg MDIOS_START_ERROR_FLAG: Register read interrupt
345 * @arg MDIOS_PREAMBLE_ERROR_FLAG: Error interrupt
346 * @retval none
348 #define __HAL_MDIOS_CLEAR_ERROR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->CLRFR) |= (__FLAG__)
351 * @brief Checks whether the specified MDIOS interrupt is set or not.
352 * @param __HANDLE__ specifies the MDIOS handle.
353 * @param __INTERRUPT__ specifies the MDIOS interrupt sources
354 * This parameter can be one or a combination of the following values:
355 * @arg MDIOS_IT_WRITE: Register write interrupt
356 * @arg MDIOS_IT_READ: Register read interrupt
357 * @arg MDIOS_IT_ERROR: Error interrupt
358 * @retval The state of the interrupt source
360 #define __HAL_MDIOS_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR & (__INTERRUPT__))
363 * @brief Enable the MDIOS WAKEUP Exti Line.
364 * @retval None.
366 #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_IT() (EXTI->IMR |= (MDIOS_WAKEUP_EXTI_LINE))
369 * @brief Disable the MDIOS WAKEUP Exti Line.
370 * @retval None.
372 #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_IT() (EXTI->IMR &= ~(MDIOS_WAKEUP_EXTI_LINE))
375 * @brief Enable event on MDIOS WAKEUP Exti Line.
376 * @retval None.
378 #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_EVENT() (EXTI->EMR |= (MDIOS_WAKEUP_EXTI_LINE))
381 * @brief Disable event on MDIOS WAKEUP Exti Line.
382 * @retval None.
384 #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_EVENT() (EXTI->EMR &= ~(MDIOS_WAKEUP_EXTI_LINE))
387 * @brief checks whether the specified MDIOS WAKEUP Exti interrupt flag is set or not.
388 * @retval EXTI MDIOS WAKEUP Line Status.
390 #define __HAL_MDIOS_WAKEUP_EXTI_GET_FLAG() (EXTI->PR & (MDIOS_WAKEUP_EXTI_LINE))
393 * @brief Clear the MDIOS WAKEUP Exti flag.
394 * @retval None.
396 #define __HAL_MDIOS_WAKEUP_EXTI_CLEAR_FLAG() (EXTI->PR = (MDIOS_WAKEUP_EXTI_LINE))
399 * @brief Enables rising edge trigger to the MDIOS External interrupt line.
400 * @retval None
402 #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_RISING_EDGE_TRIGGER() EXTI->RTSR |= MDIOS_WAKEUP_EXTI_LINE
405 * @brief Disables the rising edge trigger to the MDIOS External interrupt line.
406 * @retval None
408 #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_RISING_EDGE_TRIGGER() EXTI->RTSR &= ~(MDIOS_WAKEUP_EXTI_LINE)
411 * @brief Enables falling edge trigger to the MDIOS External interrupt line.
412 * @retval None
414 #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_FALLING_EDGE_TRIGGER() EXTI->FTSR |= (MDIOS_WAKEUP_EXTI_LINE)
417 * @brief Disables falling edge trigger to the MDIOS External interrupt line.
418 * @retval None
420 #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_FALLING_EDGE_TRIGGER() EXTI->FTSR &= ~(MDIOS_WAKEUP_EXTI_LINE)
423 * @brief Enables rising/falling edge trigger to the MDIOS External interrupt line.
424 * @retval None
426 #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_FALLINGRISING_TRIGGER() EXTI->RTSR |= MDIOS_WAKEUP_EXTI_LINE;\
427 EXTI->FTSR |= MDIOS_WAKEUP_EXTI_LINE
430 * @brief Disables rising/falling edge trigger to the MDIOS External interrupt line.
431 * @retval None
433 #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_FALLINGRISING_TRIGGER() EXTI->RTSR &= ~(MDIOS_WAKEUP_EXTI_LINE);\
434 EXTI->FTSR &= ~(MDIOS_WAKEUP_EXTI_LINE)
436 * @brief Generates a Software interrupt on selected EXTI line.
437 * @retval None
439 #define __HAL_MDIOS_WAKEUP_EXTI_GENERATE_SWIT() (EXTI->SWIER |= (MDIOS_WAKEUP_EXTI_LINE))
442 * @}
445 /* Exported functions --------------------------------------------------------*/
446 /** @defgroup MDIOS_Exported_Functions MDIOS Exported Functions
447 * @{
450 /** @addtogroup MDIOS_Exported_Functions_Group1
451 * @{
453 HAL_StatusTypeDef HAL_MDIOS_Init(MDIOS_HandleTypeDef *hmdios);
454 HAL_StatusTypeDef HAL_MDIOS_DeInit(MDIOS_HandleTypeDef *hmdios);
455 void HAL_MDIOS_MspInit(MDIOS_HandleTypeDef *hmdios);
456 void HAL_MDIOS_MspDeInit(MDIOS_HandleTypeDef *hmdios);
457 /* Callbacks Register/UnRegister functions ***********************************/
458 #if (USE_HAL_MDIOS_REGISTER_CALLBACKS == 1)
459 HAL_StatusTypeDef HAL_MDIOS_RegisterCallback(MDIOS_HandleTypeDef *hmdios, HAL_MDIOS_CallbackIDTypeDef CallbackID, pMDIOS_CallbackTypeDef pCallback);
460 HAL_StatusTypeDef HAL_MDIOS_UnRegisterCallback(MDIOS_HandleTypeDef *hmdios, HAL_MDIOS_CallbackIDTypeDef CallbackID);
461 #endif /* USE_HAL_MDIOS_REGISTER_CALLBACKS */
463 * @}
466 /** @addtogroup MDIOS_Exported_Functions_Group2
467 * @{
469 HAL_StatusTypeDef HAL_MDIOS_WriteReg(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum, uint16_t Data);
470 HAL_StatusTypeDef HAL_MDIOS_ReadReg(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum, uint16_t *pData);
472 uint32_t HAL_MDIOS_GetWrittenRegAddress(MDIOS_HandleTypeDef *hmdios);
473 uint32_t HAL_MDIOS_GetReadRegAddress(MDIOS_HandleTypeDef *hmdios);
474 HAL_StatusTypeDef HAL_MDIOS_ClearWriteRegAddress(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum);
475 HAL_StatusTypeDef HAL_MDIOS_ClearReadRegAddress(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum);
477 HAL_StatusTypeDef HAL_MDIOS_EnableEvents(MDIOS_HandleTypeDef *hmdios);
478 void HAL_MDIOS_IRQHandler(MDIOS_HandleTypeDef *hmdios);
479 void HAL_MDIOS_WriteCpltCallback(MDIOS_HandleTypeDef *hmdios);
480 void HAL_MDIOS_ReadCpltCallback(MDIOS_HandleTypeDef *hmdios);
481 void HAL_MDIOS_ErrorCallback(MDIOS_HandleTypeDef *hmdios);
482 void HAL_MDIOS_WakeUpCallback(MDIOS_HandleTypeDef *hmdios);
484 * @}
487 /** @addtogroup MDIOS_Exported_Functions_Group3
488 * @{
490 uint32_t HAL_MDIOS_GetError(MDIOS_HandleTypeDef *hmdios);
491 HAL_MDIOS_StateTypeDef HAL_MDIOS_GetState(MDIOS_HandleTypeDef *hmdios);
493 * @}
497 * @}
500 /* Private types -------------------------------------------------------------*/
501 /** @defgroup MDIOS_Private_Types MDIOS Private Types
502 * @{
506 * @}
509 /* Private variables ---------------------------------------------------------*/
510 /** @defgroup MDIOS_Private_Variables MDIOS Private Variables
511 * @{
515 * @}
518 /* Private constants ---------------------------------------------------------*/
519 /** @defgroup MDIOS_Private_Constants MDIOS Private Constants
520 * @{
524 * @}
527 /* Private macros ------------------------------------------------------------*/
528 /** @defgroup MDIOS_Private_Macros MDIOS Private Macros
529 * @{
532 #define IS_MDIOS_PORTADDRESS(__ADDR__) ((__ADDR__) < 32)
534 #define IS_MDIOS_REGISTER(__REGISTER__) ((__REGISTER__) < 32)
536 #define IS_MDIOS_PREAMBLECHECK(__PREAMBLECHECK__) (((__PREAMBLECHECK__) == MDIOS_PREAMBLE_CHECK_ENABLE) || \
537 ((__PREAMBLECHECK__) == MDIOS_PREAMBLE_CHECK_DISABLE))
540 * @}
543 /* Private functions ---------------------------------------------------------*/
544 /** @defgroup MDIOS_Private_Functions MDIOS Private Functions
545 * @{
549 * @}
554 * @}
558 * @}
561 #endif /* MDIOS */
563 #ifdef __cplusplus
565 #endif
567 #endif /* __STM32F7xx_HAL_MDIOS_H */
569 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/