Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2 | Rev 9 | ||
---|---|---|---|
Line 4... | Line 4... | ||
4 | * @author MCD Application Team |
4 | * @author MCD Application Team |
5 | * @brief Header file of ETH HAL module. |
5 | * @brief Header file of ETH HAL module. |
6 | ****************************************************************************** |
6 | ****************************************************************************** |
7 | * @attention |
7 | * @attention |
8 | * |
8 | * |
9 | * <h2><center>© COPYRIGHT(c) 2016 STMicroelectronics</center></h2> |
9 | * <h2><center>© Copyright (c) 2016 STMicroelectronics. |
- | 10 | * All rights reserved.</center></h2> |
|
10 | * |
11 | * |
11 | * Redistribution and use in source and binary forms, with or without modification, |
12 | * This software component is licensed by ST under BSD 3-Clause license, |
12 | * are permitted provided that the following conditions are met: |
13 | * the "License"; You may not use this file except in compliance with the |
13 | * 1. Redistributions of source code must retain the above copyright notice, |
- | |
14 | * this list of conditions and the following disclaimer. |
- | |
15 | * 2. Redistributions in binary form must reproduce the above copyright notice, |
- | |
16 | * this list of conditions and the following disclaimer in the documentation |
- | |
17 | * and/or other materials provided with the distribution. |
14 | * License. You may obtain a copy of the License at: |
18 | * 3. Neither the name of STMicroelectronics nor the names of its contributors |
- | |
19 | * may be used to endorse or promote products derived from this software |
15 | * opensource.org/licenses/BSD-3-Clause |
20 | * without specific prior written permission. |
- | |
21 | * |
- | |
22 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
- | |
23 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
- | |
24 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
- | |
25 | * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
- | |
26 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
- | |
27 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
- | |
28 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
- | |
29 | * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
- | |
30 | * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
- | |
31 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
- | |
32 | * |
16 | * |
33 | ****************************************************************************** |
17 | ****************************************************************************** |
34 | */ |
18 | */ |
35 | 19 | ||
36 | /* Define to prevent recursive inclusion -------------------------------------*/ |
20 | /* Define to prevent recursive inclusion -------------------------------------*/ |
Line 42... | Line 26... | ||
42 | #endif |
26 | #endif |
43 | 27 | ||
44 | /* Includes ------------------------------------------------------------------*/ |
28 | /* Includes ------------------------------------------------------------------*/ |
45 | #include "stm32f1xx_hal_def.h" |
29 | #include "stm32f1xx_hal_def.h" |
46 | 30 | ||
- | 31 | #if defined (ETH) |
|
- | 32 | ||
47 | /** @addtogroup STM32F1xx_HAL_Driver |
33 | /** @addtogroup STM32F1xx_HAL_Driver |
48 | * @{ |
34 | * @{ |
49 | */ |
35 | */ |
50 | #if defined (STM32F107xC) |
- | |
51 | 36 | ||
52 | /** @addtogroup ETH |
37 | /** @addtogroup ETH |
53 | * @{ |
38 | * @{ |
54 | */ |
39 | */ |
55 | 40 | ||
Line 609... | Line 594... | ||
609 | 594 | ||
610 | /** |
595 | /** |
611 | * @brief ETH Handle Structure definition |
596 | * @brief ETH Handle Structure definition |
612 | */ |
597 | */ |
613 | 598 | ||
- | 599 | #if (USE_HAL_ETH_REGISTER_CALLBACKS == 1) |
|
- | 600 | typedef struct __ETH_HandleTypeDef |
|
- | 601 | #else |
|
614 | typedef struct |
602 | typedef struct |
- | 603 | #endif /* USE_HAL_ETH_REGISTER_CALLBACKS */ |
|
615 | { |
604 | { |
616 | ETH_TypeDef *Instance; /*!< Register base address */ |
605 | ETH_TypeDef *Instance; /*!< Register base address */ |
617 | 606 | ||
618 | ETH_InitTypeDef Init; /*!< Ethernet Init Configuration */ |
607 | ETH_InitTypeDef Init; /*!< Ethernet Init Configuration */ |
619 | 608 | ||
Line 627... | Line 616... | ||
627 | 616 | ||
628 | __IO HAL_ETH_StateTypeDef State; /*!< ETH communication state */ |
617 | __IO HAL_ETH_StateTypeDef State; /*!< ETH communication state */ |
629 | 618 | ||
630 | HAL_LockTypeDef Lock; /*!< ETH Lock */ |
619 | HAL_LockTypeDef Lock; /*!< ETH Lock */ |
631 | 620 | ||
- | 621 | #if (USE_HAL_ETH_REGISTER_CALLBACKS == 1) |
|
- | 622 | ||
- | 623 | void (* TxCpltCallback)(struct __ETH_HandleTypeDef *heth); /*!< ETH Tx Complete Callback */ |
|
- | 624 | void (* RxCpltCallback)(struct __ETH_HandleTypeDef *heth); /*!< ETH Rx Complete Callback */ |
|
- | 625 | void (* DMAErrorCallback)(struct __ETH_HandleTypeDef *heth); /*!< DMA Error Callback */ |
|
- | 626 | void (* MspInitCallback)(struct __ETH_HandleTypeDef *heth); /*!< ETH Msp Init callback */ |
|
- | 627 | void (* MspDeInitCallback)(struct __ETH_HandleTypeDef *heth); /*!< ETH Msp DeInit callback */ |
|
- | 628 | ||
- | 629 | #endif /* USE_HAL_ETH_REGISTER_CALLBACKS */ |
|
- | 630 | ||
632 | } ETH_HandleTypeDef; |
631 | } ETH_HandleTypeDef; |
633 | 632 | ||
- | 633 | #if (USE_HAL_ETH_REGISTER_CALLBACKS == 1) |
|
- | 634 | /** |
|
- | 635 | * @brief HAL ETH Callback ID enumeration definition |
|
- | 636 | */ |
|
- | 637 | typedef enum |
|
- | 638 | { |
|
- | 639 | HAL_ETH_MSPINIT_CB_ID = 0x00U, /*!< ETH MspInit callback ID */ |
|
- | 640 | HAL_ETH_MSPDEINIT_CB_ID = 0x01U, /*!< ETH MspDeInit callback ID */ |
|
- | 641 | HAL_ETH_TX_COMPLETE_CB_ID = 0x02U, /*!< ETH Tx Complete Callback ID */ |
|
- | 642 | HAL_ETH_RX_COMPLETE_CB_ID = 0x03U, /*!< ETH Rx Complete Callback ID */ |
|
- | 643 | HAL_ETH_DMA_ERROR_CB_ID = 0x04U, /*!< ETH DMA Error Callback ID */ |
|
- | 644 | ||
- | 645 | } HAL_ETH_CallbackIDTypeDef; |
|
- | 646 | ||
- | 647 | /** |
|
- | 648 | * @brief HAL ETH Callback pointer definition |
|
- | 649 | */ |
|
- | 650 | typedef void (*pETH_CallbackTypeDef)(ETH_HandleTypeDef *heth); /*!< pointer to an ETH callback function */ |
|
- | 651 | ||
- | 652 | #endif /* USE_HAL_ETH_REGISTER_CALLBACKS */ |
|
- | 653 | ||
634 | /** |
654 | /** |
635 | * @} |
655 | * @} |
636 | */ |
656 | */ |
637 | 657 | ||
638 | /* Exported constants --------------------------------------------------------*/ |
658 | /* Exported constants --------------------------------------------------------*/ |
Line 1520... | Line 1540... | ||
1520 | 1540 | ||
1521 | /** @brief Reset ETH handle state |
1541 | /** @brief Reset ETH handle state |
1522 | * @param __HANDLE__: specifies the ETH handle. |
1542 | * @param __HANDLE__: specifies the ETH handle. |
1523 | * @retval None |
1543 | * @retval None |
1524 | */ |
1544 | */ |
- | 1545 | #if (USE_HAL_ETH_REGISTER_CALLBACKS == 1) |
|
- | 1546 | #define __HAL_ETH_RESET_HANDLE_STATE(__HANDLE__) do{ \ |
|
- | 1547 | (__HANDLE__)->State = HAL_ETH_STATE_RESET; \ |
|
- | 1548 | (__HANDLE__)->MspInitCallback = NULL; \ |
|
- | 1549 | (__HANDLE__)->MspDeInitCallback = NULL; \ |
|
- | 1550 | } while(0) |
|
- | 1551 | #else |
|
1525 | #define __HAL_ETH_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_ETH_STATE_RESET) |
1552 | #define __HAL_ETH_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_ETH_STATE_RESET) |
- | 1553 | #endif /*USE_HAL_ETH_REGISTER_CALLBACKS */ |
|
1526 | 1554 | ||
1527 | /** |
1555 | /** |
1528 | * @brief Checks whether the specified ETHERNET DMA Tx Desc flag is set or not. |
1556 | * @brief Checks whether the specified ETHERNET DMA Tx Desc flag is set or not. |
1529 | * @param __HANDLE__: ETH Handle |
1557 | * @param __HANDLE__: ETH Handle |
1530 | * @param __FLAG__: specifies the flag of TDES0 to check. |
1558 | * @param __FLAG__: specifies the flag of TDES0 to check. |
Line 2037... | Line 2065... | ||
2037 | HAL_StatusTypeDef HAL_ETH_DeInit(ETH_HandleTypeDef *heth); |
2065 | HAL_StatusTypeDef HAL_ETH_DeInit(ETH_HandleTypeDef *heth); |
2038 | void HAL_ETH_MspInit(ETH_HandleTypeDef *heth); |
2066 | void HAL_ETH_MspInit(ETH_HandleTypeDef *heth); |
2039 | void HAL_ETH_MspDeInit(ETH_HandleTypeDef *heth); |
2067 | void HAL_ETH_MspDeInit(ETH_HandleTypeDef *heth); |
2040 | HAL_StatusTypeDef HAL_ETH_DMATxDescListInit(ETH_HandleTypeDef *heth, ETH_DMADescTypeDef *DMATxDescTab, uint8_t *TxBuff, uint32_t TxBuffCount); |
2068 | HAL_StatusTypeDef HAL_ETH_DMATxDescListInit(ETH_HandleTypeDef *heth, ETH_DMADescTypeDef *DMATxDescTab, uint8_t *TxBuff, uint32_t TxBuffCount); |
2041 | HAL_StatusTypeDef HAL_ETH_DMARxDescListInit(ETH_HandleTypeDef *heth, ETH_DMADescTypeDef *DMARxDescTab, uint8_t *RxBuff, uint32_t RxBuffCount); |
2069 | HAL_StatusTypeDef HAL_ETH_DMARxDescListInit(ETH_HandleTypeDef *heth, ETH_DMADescTypeDef *DMARxDescTab, uint8_t *RxBuff, uint32_t RxBuffCount); |
- | 2070 | /* Callbacks Register/UnRegister functions ***********************************/ |
|
- | 2071 | #if (USE_HAL_ETH_REGISTER_CALLBACKS == 1) |
|
- | 2072 | HAL_StatusTypeDef HAL_ETH_RegisterCallback(ETH_HandleTypeDef *heth, HAL_ETH_CallbackIDTypeDef CallbackID, pETH_CallbackTypeDef pCallback); |
|
- | 2073 | HAL_StatusTypeDef HAL_ETH_UnRegisterCallback(ETH_HandleTypeDef *heth, HAL_ETH_CallbackIDTypeDef CallbackID); |
|
- | 2074 | #endif /* USE_HAL_ETH_REGISTER_CALLBACKS */ |
|
2042 | 2075 | ||
2043 | /** |
2076 | /** |
2044 | * @} |
2077 | * @} |
2045 | */ |
2078 | */ |
2046 | /* IO operation functions ****************************************************/ |
2079 | /* IO operation functions ****************************************************/ |
Line 2094... | Line 2127... | ||
2094 | 2127 | ||
2095 | /** |
2128 | /** |
2096 | * @} |
2129 | * @} |
2097 | */ |
2130 | */ |
2098 | 2131 | ||
2099 | #endif /* STM32F107xC */ |
- | |
2100 | /** |
2132 | /** |
2101 | * @} |
2133 | * @} |
2102 | */ |
2134 | */ |
2103 | 2135 | ||
- | 2136 | #endif /* ETH */ |
|
- | 2137 | ||
2104 | #ifdef __cplusplus |
2138 | #ifdef __cplusplus |
2105 | } |
2139 | } |
2106 | #endif |
2140 | #endif |
2107 | 2141 | ||
2108 | #endif /* __STM32F1xx_HAL_ETH_H */ |
2142 | #endif /* __STM32F1xx_HAL_ETH_H */ |