You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

538 lines
19 KiB

  1. /**
  2. ******************************************************************************
  3. * @file stm32f7xx_hal_mdios.h
  4. * @author MCD Application Team
  5. * @version V1.2.2
  6. * @date 14-April-2017
  7. * @brief Header file of MDIOS HAL module.
  8. ******************************************************************************
  9. * @attention
  10. *
  11. * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
  12. *
  13. * Redistribution and use in source and binary forms, with or without modification,
  14. * are permitted provided that the following conditions are met:
  15. * 1. Redistributions of source code must retain the above copyright notice,
  16. * this list of conditions and the following disclaimer.
  17. * 2. Redistributions in binary form must reproduce the above copyright notice,
  18. * this list of conditions and the following disclaimer in the documentation
  19. * and/or other materials provided with the distribution.
  20. * 3. Neither the name of STMicroelectronics nor the names of its contributors
  21. * may be used to endorse or promote products derived from this software
  22. * without specific prior written permission.
  23. *
  24. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  25. * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  26. * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  27. * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
  28. * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  29. * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
  30. * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
  31. * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  32. * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  33. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  34. *
  35. ******************************************************************************
  36. */
  37. /* Define to prevent recursive inclusion -------------------------------------*/
  38. #ifndef __STM32F7xx_HAL_MDIOS_H
  39. #define __STM32F7xx_HAL_MDIOS_H
  40. #ifdef __cplusplus
  41. extern "C" {
  42. #endif
  43. /* Includes ------------------------------------------------------------------*/
  44. #include "stm32f7xx_hal_def.h"
  45. #if defined (MDIOS)
  46. /** @addtogroup STM32F7xx_HAL_Driver
  47. * @{
  48. */
  49. /** @addtogroup MDIOS
  50. * @{
  51. */
  52. /* Exported types ------------------------------------------------------------*/
  53. /** @defgroup MDIOS_Exported_Types MDIOS Exported Types
  54. * @{
  55. */
  56. /** @defgroup MDIOS_Exported_Types_Group1 MDIOS State structures definition
  57. * @{
  58. */
  59. typedef enum
  60. {
  61. HAL_MDIOS_STATE_RESET = 0x00U, /*!< Peripheral not yet Initialized or disabled */
  62. HAL_MDIOS_STATE_READY = 0x01U, /*!< Peripheral Initialized and ready for use */
  63. HAL_MDIOS_STATE_BUSY = 0x02U, /*!< an internal process is ongoing */
  64. HAL_MDIOS_STATE_ERROR = 0x04U /*!< Reception process is ongoing */
  65. }HAL_MDIOS_StateTypeDef;
  66. /**
  67. * @}
  68. */
  69. /** @defgroup MDIOS_Exported_Types_Group2 MDIOS Init Structure definition
  70. * @{
  71. */
  72. typedef struct
  73. {
  74. uint32_t PortAddress; /*!< Specifies the MDIOS port address.
  75. This parameter can be a value from 0 to 31 */
  76. uint32_t PreambleCheck; /*!< Specifies whether the preamble check is enabled or disabled.
  77. This parameter can be a value of @ref MDIOS_Preamble_Check */
  78. }MDIOS_InitTypeDef;
  79. /**
  80. * @}
  81. */
  82. /** @defgroup MDIOS_Exported_Types_Group4 MDIOS handle Structure definition
  83. * @{
  84. */
  85. typedef struct
  86. {
  87. MDIOS_TypeDef *Instance; /*!< Register base address */
  88. MDIOS_InitTypeDef Init; /*!< MDIOS Init Structure */
  89. __IO HAL_MDIOS_StateTypeDef State; /*!< MDIOS communication state */
  90. HAL_LockTypeDef Lock; /*!< MDIOS Lock */
  91. }MDIOS_HandleTypeDef;
  92. /**
  93. * @}
  94. */
  95. /**
  96. * @}
  97. */
  98. /* Exported constants --------------------------------------------------------*/
  99. /** @defgroup MDIOS_Exported_Constants MDIOS Exported Constants
  100. * @{
  101. */
  102. /** @defgroup MDIOS_Preamble_Check MDIOS Preamble Check
  103. * @{
  104. */
  105. #define MDIOS_PREAMBLE_CHECK_ENABLE ((uint32_t)0x00000000U)
  106. #define MDIOS_PREAMBLE_CHECK_DISABLE MDIOS_CR_DPC
  107. /**
  108. * @}
  109. */
  110. /** @defgroup MDIOS_Input_Output_Registers_Definitions MDIOS Input Output Registers Definitions
  111. * @{
  112. */
  113. #define MDIOS_REG0 ((uint32_t)0x00000000U)
  114. #define MDIOS_REG1 ((uint32_t)0x00000001U)
  115. #define MDIOS_REG2 ((uint32_t)0x00000002U)
  116. #define MDIOS_REG3 ((uint32_t)0x00000003U)
  117. #define MDIOS_REG4 ((uint32_t)0x00000004U)
  118. #define MDIOS_REG5 ((uint32_t)0x00000005U)
  119. #define MDIOS_REG6 ((uint32_t)0x00000006U)
  120. #define MDIOS_REG7 ((uint32_t)0x00000007U)
  121. #define MDIOS_REG8 ((uint32_t)0x00000008U)
  122. #define MDIOS_REG9 ((uint32_t)0x00000009U)
  123. #define MDIOS_REG10 ((uint32_t)0x0000000AU)
  124. #define MDIOS_REG11 ((uint32_t)0x0000000BU)
  125. #define MDIOS_REG12 ((uint32_t)0x0000000CU)
  126. #define MDIOS_REG13 ((uint32_t)0x0000000DU)
  127. #define MDIOS_REG14 ((uint32_t)0x0000000EU)
  128. #define MDIOS_REG15 ((uint32_t)0x0000000FU)
  129. #define MDIOS_REG16 ((uint32_t)0x00000010U)
  130. #define MDIOS_REG17 ((uint32_t)0x00000011U)
  131. #define MDIOS_REG18 ((uint32_t)0x00000012U)
  132. #define MDIOS_REG19 ((uint32_t)0x00000013U)
  133. #define MDIOS_REG20 ((uint32_t)0x00000014U)
  134. #define MDIOS_REG21 ((uint32_t)0x00000015U)
  135. #define MDIOS_REG22 ((uint32_t)0x00000016U)
  136. #define MDIOS_REG23 ((uint32_t)0x00000017U)
  137. #define MDIOS_REG24 ((uint32_t)0x00000018U)
  138. #define MDIOS_REG25 ((uint32_t)0x00000019U)
  139. #define MDIOS_REG26 ((uint32_t)0x0000001AU)
  140. #define MDIOS_REG27 ((uint32_t)0x0000001BU)
  141. #define MDIOS_REG28 ((uint32_t)0x0000001CU)
  142. #define MDIOS_REG29 ((uint32_t)0x0000001DU)
  143. #define MDIOS_REG30 ((uint32_t)0x0000001EU)
  144. #define MDIOS_REG31 ((uint32_t)0x0000001FU)
  145. /**
  146. * @}
  147. */
  148. /** @defgroup MDIOS_Registers_Flags MDIOS Registers Flags
  149. * @{
  150. */
  151. #define MDIOS_REG0_FLAG ((uint32_t)0x00000001U)
  152. #define MDIOS_REG1_FLAG ((uint32_t)0x00000002U)
  153. #define MDIOS_REG2_FLAG ((uint32_t)0x00000004U)
  154. #define MDIOS_REG3_FLAG ((uint32_t)0x00000008U)
  155. #define MDIOS_REG4_FLAG ((uint32_t)0x00000010U)
  156. #define MDIOS_REG5_FLAG ((uint32_t)0x00000020U)
  157. #define MDIOS_REG6_FLAG ((uint32_t)0x00000040U)
  158. #define MDIOS_REG7_FLAG ((uint32_t)0x00000080U)
  159. #define MDIOS_REG8_FLAG ((uint32_t)0x00000100U)
  160. #define MDIOS_REG9_FLAG ((uint32_t)0x00000200U)
  161. #define MDIOS_REG10_FLAG ((uint32_t)0x00000400U)
  162. #define MDIOS_REG11_FLAG ((uint32_t)0x00000800U)
  163. #define MDIOS_REG12_FLAG ((uint32_t)0x00001000U)
  164. #define MDIOS_REG13_FLAG ((uint32_t)0x00002000U)
  165. #define MDIOS_REG14_FLAG ((uint32_t)0x00004000U)
  166. #define MDIOS_REG15_FLAG ((uint32_t)0x00008000U)
  167. #define MDIOS_REG16_FLAG ((uint32_t)0x00010000U)
  168. #define MDIOS_REG17_FLAG ((uint32_t)0x00020000U)
  169. #define MDIOS_REG18_FLAG ((uint32_t)0x00040000U)
  170. #define MDIOS_REG19_FLAG ((uint32_t)0x00080000U)
  171. #define MDIOS_REG20_FLAG ((uint32_t)0x00100000U)
  172. #define MDIOS_REG21_FLAG ((uint32_t)0x00200000U)
  173. #define MDIOS_REG22_FLAG ((uint32_t)0x00400000U)
  174. #define MDIOS_REG23_FLAG ((uint32_t)0x00800000U)
  175. #define MDIOS_REG24_FLAG ((uint32_t)0x01000000U)
  176. #define MDIOS_REG25_FLAG ((uint32_t)0x02000000U)
  177. #define MDIOS_REG26_FLAG ((uint32_t)0x04000000U)
  178. #define MDIOS_REG27_FLAG ((uint32_t)0x08000000U)
  179. #define MDIOS_REG28_FLAG ((uint32_t)0x10000000U)
  180. #define MDIOS_REG29_FLAG ((uint32_t)0x20000000U)
  181. #define MDIOS_REG30_FLAG ((uint32_t)0x40000000U)
  182. #define MDIOS_REG31_FLAG ((uint32_t)0x80000000U)
  183. #define MDIOS_ALLREG_FLAG ((uint32_t)0xFFFFFFFFU)
  184. /**
  185. * @}
  186. */
  187. /** @defgroup MDIOS_Interrupt_sources Interrupt Sources
  188. * @{
  189. */
  190. #define MDIOS_IT_WRITE MDIOS_CR_WRIE
  191. #define MDIOS_IT_READ MDIOS_CR_RDIE
  192. #define MDIOS_IT_ERROR MDIOS_CR_EIE
  193. /**
  194. * @}
  195. */
  196. /** @defgroup MDIOS_Interrupt_Flags MDIOS Interrupt Flags
  197. * @{
  198. */
  199. #define MDIOS_TURNAROUND_ERROR_FLAG MDIOS_SR_TERF
  200. #define MDIOS_START_ERROR_FLAG MDIOS_SR_SERF
  201. #define MDIOS_PREAMBLE_ERROR_FLAG MDIOS_SR_PERF
  202. /**
  203. * @}
  204. */
  205. /** @defgroup MDIOS_Wakeup_Line MDIOS Wakeup Line
  206. * @{
  207. */
  208. #define MDIOS_WAKEUP_EXTI_LINE ((uint32_t)0x01000000) /* !< EXTI Line 24 */
  209. /**
  210. * @}
  211. */
  212. /**
  213. * @}
  214. */
  215. /* Exported macros -----------------------------------------------------------*/
  216. /** @defgroup MDIOS_Exported_Macros MDIOS Exported Macros
  217. * @{
  218. */
  219. /** @brief Reset MDIOS handle state
  220. * @param __HANDLE__: MDIOS handle.
  221. * @retval None
  222. */
  223. #define __HAL_MDIOS_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_MDIOS_STATE_RESET)
  224. /**
  225. * @brief Enable/Disable the MDIOS peripheral.
  226. * @param __HANDLE__: specifies the MDIOS handle.
  227. * @retval None
  228. */
  229. #define __HAL_MDIOS_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR |= MDIOS_CR_EN)
  230. #define __HAL_MDIOS_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR &= ~MDIOS_CR_EN)
  231. /**
  232. * @brief Enable the MDIOS device interrupt.
  233. * @param __HANDLE__: specifies the MDIOS handle.
  234. * @param __INTERRUPT__ : specifies the MDIOS interrupt sources to be enabled.
  235. * This parameter can be one or a combination of the following values:
  236. * @arg MDIOS_IT_WRITE: Register write interrupt
  237. * @arg MDIOS_IT_READ: Register read interrupt
  238. * @arg MDIOS_IT_ERROR: Error interrupt
  239. * @retval None
  240. */
  241. #define __HAL_MDIOS_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR |= (__INTERRUPT__))
  242. /**
  243. * @brief Disable the MDIOS device interrupt.
  244. * @param __HANDLE__: specifies the MDIOS handle.
  245. * @param __INTERRUPT__ : specifies the MDIOS interrupt sources to be disabled.
  246. * This parameter can be one or a combination of the following values:
  247. * @arg MDIOS_IT_WRITE: Register write interrupt
  248. * @arg MDIOS_IT_READ: Register read interrupt
  249. * @arg MDIOS_IT_ERROR: Error interrupt
  250. * @retval None
  251. */
  252. #define __HAL_MDIOS_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR &= ~(__INTERRUPT__))
  253. /** @brief Set MDIOS slave get write register flag
  254. * @param __HANDLE__: specifies the MDIOS handle.
  255. * @param __FLAG__: specifies the write register flag
  256. * @retval The state of write flag
  257. */
  258. #define __HAL_MDIOS_GET_WRITE_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->WRFR & (__FLAG__))
  259. /** @brief MDIOS slave get read register flag
  260. * @param __HANDLE__: specifies the MDIOS handle.
  261. * @param __FLAG__: specifies the read register flag
  262. * @retval The state of read flag
  263. */
  264. #define __HAL_MDIOS_GET_READ_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->RDFR & (__FLAG__))
  265. /** @brief MDIOS slave get interrupt
  266. * @param __HANDLE__: specifies the MDIOS handle.
  267. * @param __FLAG__ : specifies the Error flag.
  268. * This parameter can be one or a combination of the following values:
  269. * @arg MDIOS_TURNARROUND_ERROR_FLAG: Register write interrupt
  270. * @arg MDIOS_START_ERROR_FLAG: Register read interrupt
  271. * @arg MDIOS_PREAMBLE_ERROR_FLAG: Error interrupt
  272. * @retval The state of the error flag
  273. */
  274. #define __HAL_MDIOS_GET_ERROR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->SR & (__FLAG__))
  275. /** @brief MDIOS slave clear interrupt
  276. * @param __HANDLE__: specifies the MDIOS handle.
  277. * @param __FLAG__ : specifies the Error flag.
  278. * This parameter can be one or a combination of the following values:
  279. * @arg MDIOS_TURNARROUND_ERROR_FLAG: Register write interrupt
  280. * @arg MDIOS_START_ERROR_FLAG: Register read interrupt
  281. * @arg MDIOS_PREAMBLE_ERROR_FLAG: Error interrupt
  282. * @retval none
  283. */
  284. #define __HAL_MDIOS_CLEAR_ERROR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->CLRFR) |= (__FLAG__)
  285. /**
  286. * @brief Checks whether the specified MDIOS interrupt is set or not.
  287. * @param __HANDLE__: specifies the MDIOS handle.
  288. * @param __INTERRUPT__ : specifies the MDIOS interrupt sources
  289. * This parameter can be one or a combination of the following values:
  290. * @arg MDIOS_IT_WRITE: Register write interrupt
  291. * @arg MDIOS_IT_READ: Register read interrupt
  292. * @arg MDIOS_IT_ERROR: Error interrupt
  293. * @retval The state of the interrupt source
  294. */
  295. #define __HAL_MDIOS_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->CR & (__INTERRUPT__))
  296. /**
  297. * @brief Enable the MDIOS WAKEUP Exti Line.
  298. * @retval None.
  299. */
  300. #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_IT() (EXTI->IMR |= (MDIOS_WAKEUP_EXTI_LINE))
  301. /**
  302. * @brief Disable the MDIOS WAKEUP Exti Line.
  303. * @retval None.
  304. */
  305. #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_IT() (EXTI->IMR &= ~(MDIOS_WAKEUP_EXTI_LINE))
  306. /**
  307. * @brief Enable event on MDIOS WAKEUP Exti Line.
  308. * @retval None.
  309. */
  310. #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_EVENT() (EXTI->EMR |= (MDIOS_WAKEUP_EXTI_LINE))
  311. /**
  312. * @brief Disable event on MDIOS WAKEUP Exti Line.
  313. * @retval None.
  314. */
  315. #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_EVENT() (EXTI->EMR &= ~(MDIOS_WAKEUP_EXTI_LINE))
  316. /**
  317. * @brief checks whether the specified MDIOS WAKEUP Exti interrupt flag is set or not.
  318. * @retval EXTI MDIOS WAKEUP Line Status.
  319. */
  320. #define __HAL_MDIOS_WAKEUP_EXTI_GET_FLAG() (EXTI->PR & (MDIOS_WAKEUP_EXTI_LINE))
  321. /**
  322. * @brief Clear the MDIOS WAKEUP Exti flag.
  323. * @retval None.
  324. */
  325. #define __HAL_MDIOS_WAKEUP_EXTI_CLEAR_FLAG() (EXTI->PR = (MDIOS_WAKEUP_EXTI_LINE))
  326. /**
  327. * @brief Enables rising edge trigger to the MDIOS External interrupt line.
  328. * @retval None
  329. */
  330. #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_RISING_EDGE_TRIGGER() EXTI->RTSR |= MDIOS_WAKEUP_EXTI_LINE
  331. /**
  332. * @brief Disables the rising edge trigger to the MDIOS External interrupt line.
  333. * @retval None
  334. */
  335. #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_RISING_EDGE_TRIGGER() EXTI->RTSR &= ~(MDIOS_WAKEUP_EXTI_LINE)
  336. /**
  337. * @brief Enables falling edge trigger to the MDIOS External interrupt line.
  338. * @retval None
  339. */
  340. #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_FALLING_EDGE_TRIGGER() EXTI->FTSR |= (MDIOS_WAKEUP_EXTI_LINE)
  341. /**
  342. * @brief Disables falling edge trigger to the MDIOS External interrupt line.
  343. * @retval None
  344. */
  345. #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_FALLING_EDGE_TRIGGER() EXTI->FTSR &= ~(MDIOS_WAKEUP_EXTI_LINE)
  346. /**
  347. * @brief Enables rising/falling edge trigger to the MDIOS External interrupt line.
  348. * @retval None
  349. */
  350. #define __HAL_MDIOS_WAKEUP_EXTI_ENABLE_FALLINGRISING_TRIGGER() EXTI->RTSR |= MDIOS_WAKEUP_EXTI_LINE;\
  351. EXTI->FTSR |= MDIOS_WAKEUP_EXTI_LINE
  352. /**
  353. * @brief Disables rising/falling edge trigger to the MDIOS External interrupt line.
  354. * @retval None
  355. */
  356. #define __HAL_MDIOS_WAKEUP_EXTI_DISABLE_FALLINGRISING_TRIGGER() EXTI->RTSR &= ~(MDIOS_WAKEUP_EXTI_LINE);\
  357. EXTI->FTSR &= ~(MDIOS_WAKEUP_EXTI_LINE)
  358. /**
  359. * @brief Generates a Software interrupt on selected EXTI line.
  360. * @retval None
  361. */
  362. #define __HAL_MDIOS_WAKEUP_EXTI_GENERATE_SWIT() (EXTI->SWIER |= (MDIOS_WAKEUP_EXTI_LINE))
  363. /**
  364. * @}
  365. */
  366. /* Exported functions --------------------------------------------------------*/
  367. /** @defgroup MDIOS_Exported_Functions MDIOS Exported Functions
  368. * @{
  369. */
  370. /** @addtogroup MDIOS_Exported_Functions_Group1
  371. * @{
  372. */
  373. HAL_StatusTypeDef HAL_MDIOS_Init(MDIOS_HandleTypeDef *hmdios);
  374. HAL_StatusTypeDef HAL_MDIOS_DeInit(MDIOS_HandleTypeDef *hmdios);
  375. void HAL_MDIOS_MspInit(MDIOS_HandleTypeDef *hmdios);
  376. void HAL_MDIOS_MspDeInit(MDIOS_HandleTypeDef *hmdios);
  377. /**
  378. * @}
  379. */
  380. /** @addtogroup MDIOS_Exported_Functions_Group2
  381. * @{
  382. */
  383. HAL_StatusTypeDef HAL_MDIOS_WriteReg(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum, uint16_t Data);
  384. HAL_StatusTypeDef HAL_MDIOS_ReadReg(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum, uint16_t *pData);
  385. uint32_t HAL_MDIOS_GetWrittenRegAddress(MDIOS_HandleTypeDef *hmdios);
  386. uint32_t HAL_MDIOS_GetReadRegAddress(MDIOS_HandleTypeDef *hmdios);
  387. HAL_StatusTypeDef HAL_MDIOS_ClearWriteRegAddress(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum);
  388. HAL_StatusTypeDef HAL_MDIOS_ClearReadRegAddress(MDIOS_HandleTypeDef *hmdios, uint32_t RegNum);
  389. HAL_StatusTypeDef HAL_MDIOS_EnableEvents(MDIOS_HandleTypeDef *hmdios);
  390. void HAL_MDIOS_IRQHandler(MDIOS_HandleTypeDef *hmdios);
  391. void HAL_MDIOS_WriteCpltCallback(MDIOS_HandleTypeDef *hmdios);
  392. void HAL_MDIOS_ReadCpltCallback(MDIOS_HandleTypeDef *hmdios);
  393. void HAL_MDIOS_ErrorCallback(MDIOS_HandleTypeDef *hmdios);
  394. void HAL_MDIOS_WakeUpCallback(MDIOS_HandleTypeDef *hmdios);
  395. /**
  396. * @}
  397. */
  398. /** @addtogroup MDIOS_Exported_Functions_Group3
  399. * @{
  400. */
  401. uint32_t HAL_MDIOS_GetError(MDIOS_HandleTypeDef *hmdios);
  402. HAL_MDIOS_StateTypeDef HAL_MDIOS_GetState(MDIOS_HandleTypeDef *hmdios);
  403. /**
  404. * @}
  405. */
  406. /**
  407. * @}
  408. */
  409. /* Private types -------------------------------------------------------------*/
  410. /** @defgroup MDIOS_Private_Types MDIOS Private Types
  411. * @{
  412. */
  413. /**
  414. * @}
  415. */
  416. /* Private variables ---------------------------------------------------------*/
  417. /** @defgroup MDIOS_Private_Variables MDIOS Private Variables
  418. * @{
  419. */
  420. /**
  421. * @}
  422. */
  423. /* Private constants ---------------------------------------------------------*/
  424. /** @defgroup MDIOS_Private_Constants MDIOS Private Constants
  425. * @{
  426. */
  427. /**
  428. * @}
  429. */
  430. /* Private macros ------------------------------------------------------------*/
  431. /** @defgroup MDIOS_Private_Macros MDIOS Private Macros
  432. * @{
  433. */
  434. #define IS_MDIOS_PORTADDRESS(__ADDR__) ((__ADDR__) < 32)
  435. #define IS_MDIOS_REGISTER(__REGISTER__) ((__REGISTER__) < 32)
  436. #define IS_MDIOS_PREAMBLECHECK(__PREAMBLECHECK__) (((__PREAMBLECHECK__) == MDIOS_PREAMBLE_CHECK_ENABLE) || \
  437. ((__PREAMBLECHECK__) == MDIOS_PREAMBLE_CHECK_DISABLE))
  438. /**
  439. * @}
  440. */
  441. /* Private functions ---------------------------------------------------------*/
  442. /** @defgroup MDIOS_Private_Functions MDIOS Private Functions
  443. * @{
  444. */
  445. /**
  446. * @}
  447. */
  448. /**
  449. * @}
  450. */
  451. /**
  452. * @}
  453. */
  454. #endif /* MDIOS */
  455. #ifdef __cplusplus
  456. }
  457. #endif
  458. #endif /* __STM32F7xx_HAL_MDIOS_H */
  459. /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/