STM32H735xx HAL User Manual
Functions
Extended features functions
ETH Extended Exported Functions

Extended features functions. More...

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.
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.
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_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.
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_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_EnableVLANProcessing (ETH_HandleTypeDef *heth)
 Enables the VLAN Tag Filtering process.
void HAL_ETHEx_DisableVLANProcessing (ETH_HandleTypeDef *heth)
 Disables the VLAN Tag Filtering process.
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

Extended features functions.

 ===============================================================================
                      ##### Extended features functions #####
 ===============================================================================
    [..] This section provides functions allowing to:
      (+) Configure ARP offload module
      (+) Configure L3 and L4 filters
      (+) Configure Extended VLAN features
      (+) Configure Energy Efficient Ethernet module


Function Documentation

Disables ARP Offload.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
None

Definition at line 104 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.

Disables L3 and L4 filtering process.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
None.

Definition at line 305 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.

Disables the VLAN Tag Filtering process.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
None.

Definition at line 485 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.

Enables ARP Offload.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
None

Definition at line 93 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.

Enables L3 and L4 filtering process.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
None.

Definition at line 293 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.

Enables the VLAN Tag Filtering process.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
None.

Definition at line 473 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.

void HAL_ETHEx_EnterLPIMode ( ETH_HandleTypeDef heth,
FunctionalState  TxAutomate,
FunctionalState  TxClockStop 
)

Enters the Low Power Idle (LPI) mode.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
TxAutomate,:Enable/Disable automate enter/exit LPI mode.
TxClockStop,:Enable/Disable Tx clock stop in LPI mode.
Return values:
None

Definition at line 499 of file stm32h7xx_hal_eth_ex.c.

References __HAL_ETH_MAC_ENABLE_IT, and __ETH_HandleTypeDef::Instance.

Exits the Low Power Idle (LPI) mode.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
None

Definition at line 516 of file stm32h7xx_hal_eth_ex.c.

References __HAL_ETH_MAC_DISABLE_IT, and __ETH_HandleTypeDef::Instance.

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.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Filter,:L3 filter to configured, this parameter must be one of the following ETH_L3_FILTER_0 ETH_L3_FILTER_1
pL3FilterConfig,:pointer to a ETH_L3FilterConfigTypeDef structure that will contain the L3 filter configuration.
Return values:
HALstatus

Definition at line 258 of file stm32h7xx_hal_eth_ex.c.

References ETH_L3FilterConfigTypeDef::DestAddrFilterMatch, ETH_L3FilterConfigTypeDef::DestAddrHigherBitsMatch, ETH_L3_IPV4_MATCH, __ETH_HandleTypeDef::Instance, ETH_L3FilterConfigTypeDef::Ip4DestAddr, ETH_L3FilterConfigTypeDef::Ip4SrcAddr, ETH_L3FilterConfigTypeDef::Ip6Addr, ETH_L3FilterConfigTypeDef::Protocol, ETH_L3FilterConfigTypeDef::SrcAddrFilterMatch, and ETH_L3FilterConfigTypeDef::SrcAddrHigherBitsMatch.

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.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Filter,:L4 filter to configured, this parameter must be one of the following ETH_L4_FILTER_0 ETH_L4_FILTER_1
pL4FilterConfig,:pointer to a ETH_L4FilterConfigTypeDef structure that contains L4 filter configuration.
Return values:
HALstatus

Definition at line 173 of file stm32h7xx_hal_eth_ex.c.

References ETH_L4FilterConfigTypeDef::DestinationPort, ETH_L4FilterConfigTypeDef::DestPortFilterMatch, __ETH_HandleTypeDef::Instance, ETH_L4FilterConfigTypeDef::Protocol, ETH_L4FilterConfigTypeDef::SourcePort, and ETH_L4FilterConfigTypeDef::SrcPortFilterMatch.

Returns the ETH MAC LPI event.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Return values:
ETHMAC WakeUp event

Definition at line 532 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::MACLPIEvent.

HAL_StatusTypeDef HAL_ETHEx_GetRxVLANConfig ( ETH_HandleTypeDef heth,
ETH_RxVLANConfigTypeDef pVlanConfig 
)

Get the VLAN Configuration for Receive Packets.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
pVlanConfig,:pointer to a ETH_RxVLANConfigTypeDef structure that will contain the VLAN filter configuration.
Return values:
HALstatus

Definition at line 319 of file stm32h7xx_hal_eth_ex.c.

References ETH_RxVLANConfigTypeDef::DoubleVLANProcessing, ETH_RxVLANConfigTypeDef::InnerVLANTag, ETH_RxVLANConfigTypeDef::InnerVLANTagInStatus, __ETH_HandleTypeDef::Instance, ETH_RxVLANConfigTypeDef::StripInnerVLANTag, ETH_RxVLANConfigTypeDef::StripVLANTag, ETH_RxVLANConfigTypeDef::VLANTagHashTableMatch, ETH_RxVLANConfigTypeDef::VLANTagInStatus, ETH_RxVLANConfigTypeDef::VLANTagInverceMatch, and ETH_RxVLANConfigTypeDef::VLANTypeCheck.

HAL_StatusTypeDef HAL_ETHEx_GetTxVLANConfig ( ETH_HandleTypeDef heth,
uint32_t  VLANTag,
ETH_TxVLANConfigTypeDef pVlanConfig 
)

Get the VLAN Configuration for Transmit Packets.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
VLANTag,:Selects the vlan tag, this parameter must be one of the following ETH_OUTER_TX_VLANTAG ETH_INNER_TX_VLANTAG
pVlanConfig,:pointer to a ETH_TxVLANConfigTypeDef structure that will contain the Tx VLAN filter configuration.
Return values:
HALStatus.

Definition at line 391 of file stm32h7xx_hal_eth_ex.c.

References ETH_INNER_TX_VLANTAG, __ETH_HandleTypeDef::Instance, ETH_TxVLANConfigTypeDef::SourceTxDesc, ETH_TxVLANConfigTypeDef::SVLANType, and ETH_TxVLANConfigTypeDef::VLANTagControl.

void HAL_ETHEx_SetARPAddressMatch ( ETH_HandleTypeDef heth,
uint32_t  IpAddress 
)

Set the ARP Match IP address.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
IpAddress,:IP Address to be matched for incoming ARP requests
Return values:
None

Definition at line 116 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.

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.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Filter,:L3 filter to configured, this parameter must be one of the following ETH_L3_FILTER_0 ETH_L3_FILTER_1
pL3FilterConfig,:pointer to a ETH_L3FilterConfigTypeDef structure that contains L3 filter configuration.
Return values:
HALstatus

Definition at line 205 of file stm32h7xx_hal_eth_ex.c.

References ETH_L3FilterConfigTypeDef::DestAddrFilterMatch, ETH_L3FilterConfigTypeDef::DestAddrHigherBitsMatch, ETH_L3_IPV4_MATCH, ETH_MACL3CR_MASK, __ETH_HandleTypeDef::Instance, ETH_L3FilterConfigTypeDef::Ip4DestAddr, ETH_L3FilterConfigTypeDef::Ip4SrcAddr, ETH_L3FilterConfigTypeDef::Ip6Addr, ETH_L3FilterConfigTypeDef::Protocol, ETH_L3FilterConfigTypeDef::SrcAddrFilterMatch, and ETH_L3FilterConfigTypeDef::SrcAddrHigherBitsMatch.

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.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
Filter,:L4 filter to configured, this parameter must be one of the following ETH_L4_FILTER_0 ETH_L4_FILTER_1
pL4FilterConfig,:pointer to a ETH_L4FilterConfigTypeDef structure that contains L4 filter configuration.
Return values:
HALstatus

Definition at line 134 of file stm32h7xx_hal_eth_ex.c.

References ETH_L4FilterConfigTypeDef::DestinationPort, ETH_L4FilterConfigTypeDef::DestPortFilterMatch, ETH_MACL4CR_MASK, __ETH_HandleTypeDef::Instance, ETH_L4FilterConfigTypeDef::Protocol, ETH_L4FilterConfigTypeDef::SourcePort, and ETH_L4FilterConfigTypeDef::SrcPortFilterMatch.

HAL_StatusTypeDef HAL_ETHEx_SetRxVLANConfig ( ETH_HandleTypeDef heth,
ETH_RxVLANConfigTypeDef pVlanConfig 
)

Set the VLAN Configuration for Receive Packets.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
pVlanConfig,:pointer to a ETH_RxVLANConfigTypeDef structure that contains VLAN filter configuration.
Return values:
HALstatus

Definition at line 347 of file stm32h7xx_hal_eth_ex.c.

References ETH_RxVLANConfigTypeDef::DoubleVLANProcessing, ETH_MACRXVLAN_MASK, ETH_RxVLANConfigTypeDef::InnerVLANTag, ETH_RxVLANConfigTypeDef::InnerVLANTagInStatus, __ETH_HandleTypeDef::Instance, ETH_RxVLANConfigTypeDef::StripInnerVLANTag, ETH_RxVLANConfigTypeDef::StripVLANTag, ETH_RxVLANConfigTypeDef::VLANTagHashTableMatch, ETH_RxVLANConfigTypeDef::VLANTagInStatus, ETH_RxVLANConfigTypeDef::VLANTagInverceMatch, and ETH_RxVLANConfigTypeDef::VLANTypeCheck.

HAL_StatusTypeDef HAL_ETHEx_SetTxVLANConfig ( ETH_HandleTypeDef heth,
uint32_t  VLANTag,
ETH_TxVLANConfigTypeDef pVlanConfig 
)

Set the VLAN Configuration for Transmit Packets.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
VLANTag,:Selects the vlan tag, this parameter must be one of the following ETH_OUTER_TX_VLANTAG ETH_INNER_TX_VLANTAG
pVlanConfig,:pointer to a ETH_TxVLANConfigTypeDef structure that contains Tx VLAN filter configuration.
Return values:
HALStatus

Definition at line 425 of file stm32h7xx_hal_eth_ex.c.

References ETH_INNER_TX_VLANTAG, ETH_MACTXVLAN_MASK, __ETH_HandleTypeDef::Instance, ETH_TxVLANConfigTypeDef::SourceTxDesc, ETH_TxVLANConfigTypeDef::SVLANType, and ETH_TxVLANConfigTypeDef::VLANTagControl.

void HAL_ETHEx_SetTxVLANIdentifier ( ETH_HandleTypeDef heth,
uint32_t  VLANTag,
uint32_t  VLANIdentifier 
)

Set the VLAN Tag Identifier for Transmit Packets.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
VLANTag,:Selects the vlan tag, this parameter must be one of the following ETH_OUTER_TX_VLANTAG ETH_INNER_TX_VLANTAG
VLANIdentifier,:VLAN Identifier 16 bit value
Return values:
None

Definition at line 455 of file stm32h7xx_hal_eth_ex.c.

References ETH_INNER_TX_VLANTAG, and __ETH_HandleTypeDef::Instance.

void HAL_ETHEx_SetVLANHashTable ( ETH_HandleTypeDef heth,
uint32_t  VLANHashTable 
)

Set the VLAN Hash Table.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
VLANHashTable,:VLAN hash table 16 bit value
Return values:
None

Definition at line 375 of file stm32h7xx_hal_eth_ex.c.

References __ETH_HandleTypeDef::Instance.