STM32H735xx HAL User Manual
Data Structures | Defines | Functions
stm32h7xx_hal_eth_ex.h File Reference

Header file of ETH HAL Extended module. More...

#include "stm32h7xx_hal_def.h"

Go to the source code of this file.

Data Structures

struct  ETH_RxVLANConfigTypeDef
 ETH RX VLAN structure definition. More...
struct  ETH_TxVLANConfigTypeDef
 ETH TX VLAN structure definition. More...
struct  ETH_L3FilterConfigTypeDef
 ETH L3 filter structure definition. More...
struct  ETH_L4FilterConfigTypeDef
 ETH L4 filter structure definition. More...

Defines

#define ETH_TX_LPI_ENTRY   ETH_MACLCSR_TLPIEN
#define ETH_TX_LPI_EXIT   ETH_MACLCSR_TLPIEX
#define ETH_RX_LPI_ENTRY   ETH_MACLCSR_RLPIEN
#define ETH_RX_LPI_EXIT   ETH_MACLCSR_RLPIEX
#define ETH_L3_FILTER_0   ((uint32_t)0x00000000)
#define ETH_L3_FILTER_1   ((uint32_t)0x0000000C)
#define ETH_L4_FILTER_0   ((uint32_t)0x00000000)
#define ETH_L4_FILTER_1   ((uint32_t)0x0000000C)
#define ETH_L3_IPV6_MATCH   ETH_MACL3L4CR_L3PEN
#define ETH_L3_IPV4_MATCH   ((uint32_t)0x00000000)
#define ETH_L3_SRC_ADDR_PERFECT_MATCH_ENABLE   ETH_MACL3L4CR_L3SAM
#define ETH_L3_SRC_ADDR_INVERSE_MATCH_ENABLE   (ETH_MACL3L4CR_L3SAM | ETH_MACL3L4CR_L3SAIM)
#define ETH_L3_SRC_ADDR_MATCH_DISABLE   ((uint32_t)0x00000000)
#define ETH_L3_DEST_ADDR_PERFECT_MATCH_ENABLE   ETH_MACL3L4CR_L3DAM
#define ETH_L3_DEST_ADDR_INVERSE_MATCH_ENABLE   (ETH_MACL3L4CR_L3DAM | ETH_MACL3L4CR_L3DAIM)
#define ETH_L3_DEST_ADDR_MATCH_DISABLE   ((uint32_t)0x00000000)
#define ETH_L4_UDP_MATCH   ETH_MACL3L4CR_L4PEN
#define ETH_L4_TCP_MATCH   ((uint32_t)0x00000000)
#define ETH_L4_SRC_PORT_PERFECT_MATCH_ENABLE   ETH_MACL3L4CR_L4SPM
#define ETH_L4_SRC_PORT_INVERSE_MATCH_ENABLE   (ETH_MACL3L4CR_L4SPM |ETH_MACL3L4CR_L4SPIM)
#define ETH_L4_SRC_PORT_MATCH_DISABLE   ((uint32_t)0x00000000)
#define ETH_L4_DEST_PORT_PERFECT_MATCH_ENABLE   ETH_MACL3L4CR_L4DPM
#define ETH_L4_DEST_PORT_INVERSE_MATCH_ENABLE   (ETH_MACL3L4CR_L4DPM | ETH_MACL3L4CR_L4DPIM)
#define ETH_L4_DEST_PORT_MATCH_DISABLE   ((uint32_t)0x00000000)
#define ETH_INNERVLANTAGRXSTRIPPING_NONE   ETH_MACVTR_EIVLS_DONOTSTRIP
#define ETH_INNERVLANTAGRXSTRIPPING_IFPASS   ETH_MACVTR_EIVLS_STRIPIFPASS
#define ETH_INNERVLANTAGRXSTRIPPING_IFFAILS   ETH_MACVTR_EIVLS_STRIPIFFAILS
#define ETH_INNERVLANTAGRXSTRIPPING_ALWAYS   ETH_MACVTR_EIVLS_ALWAYSSTRIP
#define ETH_VLANTAGRXSTRIPPING_NONE   ETH_MACVTR_EVLS_DONOTSTRIP
#define ETH_VLANTAGRXSTRIPPING_IFPASS   ETH_MACVTR_EVLS_STRIPIFPASS
#define ETH_VLANTAGRXSTRIPPING_IFFAILS   ETH_MACVTR_EVLS_STRIPIFFAILS
#define ETH_VLANTAGRXSTRIPPING_ALWAYS   ETH_MACVTR_EVLS_ALWAYSSTRIP
#define ETH_VLANTYPECHECK_DISABLE   ETH_MACVTR_DOVLTC
#define ETH_VLANTYPECHECK_SVLAN   (ETH_MACVTR_ERSVLM | ETH_MACVTR_ESVL)
#define ETH_VLANTYPECHECK_CVLAN   ((uint32_t)0x00000000)
#define ETH_VLANTAGCONTROL_NONE   (ETH_MACVIR_VLP | ETH_MACVIR_VLC_NOVLANTAG)
#define ETH_VLANTAGCONTROL_DELETE   (ETH_MACVIR_VLP | ETH_MACVIR_VLC_VLANTAGDELETE)
#define ETH_VLANTAGCONTROL_INSERT   (ETH_MACVIR_VLP | ETH_MACVIR_VLC_VLANTAGINSERT)
#define ETH_VLANTAGCONTROL_REPLACE   (ETH_MACVIR_VLP | ETH_MACVIR_VLC_VLANTAGREPLACE)
#define ETH_INNER_TX_VLANTAG   ((uint32_t)0x00000001U)
#define ETH_OUTER_TX_VLANTAG   ((uint32_t)0x00000000U)

Functions

void HAL_ETHEx_EnableARPOffload (ETH_HandleTypeDef *heth)
 Enables ARP Offload.
void HAL_ETHEx_DisableARPOffload (ETH_HandleTypeDef *heth)
 Disables ARP Offload.
void HAL_ETHEx_SetARPAddressMatch (ETH_HandleTypeDef *heth, uint32_t IpAddress)
 Set the ARP Match IP address.
void HAL_ETHEx_EnableL3L4Filtering (ETH_HandleTypeDef *heth)
 Enables L3 and L4 filtering process.
void HAL_ETHEx_DisableL3L4Filtering (ETH_HandleTypeDef *heth)
 Disables L3 and L4 filtering process.
HAL_StatusTypeDef HAL_ETHEx_GetL3FilterConfig (ETH_HandleTypeDef *heth, uint32_t Filter, ETH_L3FilterConfigTypeDef *pL3FilterConfig)
 Configures the L3 Filter, this function allow to: set the layer 3 protocol to be matched (IPv4 or IPv6) enable/disable L3 source/destination port perfect/inverse match.
HAL_StatusTypeDef HAL_ETHEx_GetL4FilterConfig (ETH_HandleTypeDef *heth, uint32_t Filter, ETH_L4FilterConfigTypeDef *pL4FilterConfig)
 Configures the L4 Filter, this function allow to: set the layer 4 protocol to be matched (TCP or UDP) enable/disable L4 source/destination port perfect/inverse match.
HAL_StatusTypeDef HAL_ETHEx_SetL3FilterConfig (ETH_HandleTypeDef *heth, uint32_t Filter, ETH_L3FilterConfigTypeDef *pL3FilterConfig)
 Configures the L3 Filter, this function allow to: set the layer 3 protocol to be matched (IPv4 or IPv6) enable/disable L3 source/destination port perfect/inverse match.
HAL_StatusTypeDef HAL_ETHEx_SetL4FilterConfig (ETH_HandleTypeDef *heth, uint32_t Filter, ETH_L4FilterConfigTypeDef *pL4FilterConfig)
 Configures the L4 Filter, this function allow to: set the layer 4 protocol to be matched (TCP or UDP) enable/disable L4 source/destination port perfect/inverse match.
void HAL_ETHEx_EnableVLANProcessing (ETH_HandleTypeDef *heth)
 Enables the VLAN Tag Filtering process.
void HAL_ETHEx_DisableVLANProcessing (ETH_HandleTypeDef *heth)
 Disables the VLAN Tag Filtering process.
HAL_StatusTypeDef HAL_ETHEx_GetRxVLANConfig (ETH_HandleTypeDef *heth, ETH_RxVLANConfigTypeDef *pVlanConfig)
 Get the VLAN Configuration for Receive Packets.
HAL_StatusTypeDef HAL_ETHEx_SetRxVLANConfig (ETH_HandleTypeDef *heth, ETH_RxVLANConfigTypeDef *pVlanConfig)
 Set the VLAN Configuration for Receive Packets.
void HAL_ETHEx_SetVLANHashTable (ETH_HandleTypeDef *heth, uint32_t VLANHashTable)
 Set the VLAN Hash Table.
HAL_StatusTypeDef HAL_ETHEx_GetTxVLANConfig (ETH_HandleTypeDef *heth, uint32_t VLANTag, ETH_TxVLANConfigTypeDef *pVlanConfig)
 Get the VLAN Configuration for Transmit Packets.
HAL_StatusTypeDef HAL_ETHEx_SetTxVLANConfig (ETH_HandleTypeDef *heth, uint32_t VLANTag, ETH_TxVLANConfigTypeDef *pVlanConfig)
 Set the VLAN Configuration for Transmit Packets.
void HAL_ETHEx_SetTxVLANIdentifier (ETH_HandleTypeDef *heth, uint32_t VLANTag, uint32_t VLANIdentifier)
 Set the VLAN Tag Identifier for Transmit Packets.
void HAL_ETHEx_EnterLPIMode (ETH_HandleTypeDef *heth, FunctionalState TxAutomate, FunctionalState TxClockStop)
 Enters the Low Power Idle (LPI) mode.
void HAL_ETHEx_ExitLPIMode (ETH_HandleTypeDef *heth)
 Exits the Low Power Idle (LPI) mode.
uint32_t HAL_ETHEx_GetMACLPIEvent (ETH_HandleTypeDef *heth)
 Returns the ETH MAC LPI event.

Detailed Description

Header file of ETH HAL Extended module.

Author:
MCD Application Team
Attention:

Copyright (c) 2017 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32h7xx_hal_eth_ex.h.