STM32H735xx HAL User Manual
Functions
ETH Private Functions
ETH

Functions

static void ETH_MAC_MDIO_ClkConfig (ETH_HandleTypeDef *heth)
 Configures the Clock range of SMI interface.
static void ETH_SetMACConfig (ETH_HandleTypeDef *heth, ETH_MACConfigTypeDef *macconf)
static void ETH_SetDMAConfig (ETH_HandleTypeDef *heth, ETH_DMAConfigTypeDef *dmaconf)
static void ETH_MACDMAConfig (ETH_HandleTypeDef *heth)
 Configures Ethernet MAC and DMA with default parameters.
static void ETH_DMATxDescListInit (ETH_HandleTypeDef *heth)
 Initializes the DMA Tx descriptors.
static void ETH_DMARxDescListInit (ETH_HandleTypeDef *heth)
 Initializes the DMA Rx descriptors in chain mode.
static uint32_t ETH_Prepare_Tx_Descriptors (ETH_HandleTypeDef *heth, ETH_TxPacketConfig *pTxConfig, uint32_t ItMode)
 Prepare Tx DMA descriptor before transmission.
static void ETH_InitCallbacksToDefault (ETH_HandleTypeDef *heth)

Function Documentation

static void ETH_DMARxDescListInit ( ETH_HandleTypeDef heth) [static]
static void ETH_DMATxDescListInit ( ETH_HandleTypeDef heth) [static]

Initializes the DMA Tx descriptors.

called by HAL_ETH_Init() API.

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

Definition at line 2651 of file stm32h7xx_hal_eth.c.

References ETH_TxDescListTypeDef::CurTxDesc, ETH_DMADescTypeDef::DESC0, ETH_DMADescTypeDef::DESC1, ETH_DMADescTypeDef::DESC2, ETH_DMADescTypeDef::DESC3, ETH_TX_DESC_CNT, __ETH_HandleTypeDef::Init, __ETH_HandleTypeDef::Instance, ETH_TxDescListTypeDef::TxDesc, ETH_InitTypeDef::TxDesc, and __ETH_HandleTypeDef::TxDescList.

Referenced by HAL_ETH_Init().

static void ETH_InitCallbacksToDefault ( ETH_HandleTypeDef heth) [static]
static void ETH_MAC_MDIO_ClkConfig ( ETH_HandleTypeDef heth) [static]

Configures the Clock range of SMI interface.

called by HAL_ETH_Init() API.

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

Definition at line 2600 of file stm32h7xx_hal_eth.c.

References HAL_RCC_GetHCLKFreq(), and __ETH_HandleTypeDef::Instance.

Referenced by HAL_ETH_Init().

static void ETH_MACDMAConfig ( ETH_HandleTypeDef heth) [static]

Configures Ethernet MAC and DMA with default parameters.

called by HAL_ETH_Init() API.

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

Definition at line 2527 of file stm32h7xx_hal_eth.c.

References ETH_DMAConfigTypeDef::AddressAlignedBeats, ETH_MACConfigTypeDef::AutomaticPadCRCStrip, ETH_MACConfigTypeDef::BackOffLimit, ETH_DMAConfigTypeDef::BurstMode, ETH_MACConfigTypeDef::CarrierSenseBeforeTransmit, ETH_MACConfigTypeDef::CarrierSenseDuringTransmit, ETH_MACConfigTypeDef::ChecksumOffload, ETH_MACConfigTypeDef::CRCCheckingRxPackets, ETH_MACConfigTypeDef::CRCStripTypePacket, ETH_MACConfigTypeDef::DeferralCheck, ETH_DMAConfigTypeDef::DMAArbitration, ETH_MACConfigTypeDef::DropTCPIPChecksumErrorPacket, ETH_MACConfigTypeDef::DuplexMode, ETH_BACKOFFLIMIT_10, ETH_BURSTLENGTH_FIXED, ETH_DMAARBITRATION_RX1_TX1, ETH_FULLDUPLEX_MODE, ETH_INTERPACKETGAP_96BIT, ETH_PAUSELOWTHRESHOLD_MINUS_4, ETH_PREAMBLELENGTH_7, ETH_RECEIVESTOREFORWARD, ETH_RXDMABURSTLENGTH_32BEAT, ETH_SetDMAConfig(), ETH_SetMACConfig(), ETH_SOURCEADDRESS_REPLACE_ADDR0, ETH_SPEED_100M, ETH_TRANSMITSTOREFORWARD, ETH_TXDMABURSTLENGTH_32BEAT, ETH_MACConfigTypeDef::ExtendedInterPacketGap, ETH_MACConfigTypeDef::ExtendedInterPacketGapVal, ETH_DMAConfigTypeDef::FlushRxPacket, ETH_MACConfigTypeDef::ForwardRxErrorPacket, ETH_MACConfigTypeDef::ForwardRxUndersizedGoodPacket, ETH_MACConfigTypeDef::GiantPacketSizeLimit, ETH_MACConfigTypeDef::GiantPacketSizeLimitControl, ETH_MACConfigTypeDef::InterPacketGapVal, ETH_MACConfigTypeDef::Jabber, ETH_MACConfigTypeDef::JumboPacket, ETH_MACConfigTypeDef::LoopbackMode, ETH_DMAConfigTypeDef::MaximumSegmentSize, ETH_MACConfigTypeDef::PauseLowThreshold, ETH_MACConfigTypeDef::PauseTime, ETH_DMAConfigTypeDef::PBLx8Mode, ETH_MACConfigTypeDef::PreambleLength, ETH_MACConfigTypeDef::ProgrammableWatchdog, ETH_DMAConfigTypeDef::RebuildINCRxBurst, ETH_MACConfigTypeDef::ReceiveFlowControl, ETH_MACConfigTypeDef::ReceiveOwn, ETH_MACConfigTypeDef::ReceiveQueueMode, ETH_MACConfigTypeDef::RetryTransmission, ETH_DMAConfigTypeDef::RxDMABurstLength, ETH_DMAConfigTypeDef::SecondPacketOperate, ETH_MACConfigTypeDef::SlowProtocolDetect, ETH_MACConfigTypeDef::SourceAddrControl, ETH_MACConfigTypeDef::Speed, ETH_MACConfigTypeDef::Support2KPacket, ETH_DMAConfigTypeDef::TCPSegmentation, ETH_MACConfigTypeDef::TransmitFlowControl, ETH_MACConfigTypeDef::TransmitQueueMode, ETH_DMAConfigTypeDef::TxDMABurstLength, ETH_MACConfigTypeDef::UnicastPausePacketDetect, ETH_MACConfigTypeDef::UnicastSlowProtocolPacketDetect, ETH_MACConfigTypeDef::Watchdog, ETH_MACConfigTypeDef::WatchdogTimeout, and ETH_MACConfigTypeDef::ZeroQuantaPause.

Referenced by HAL_ETH_Init().

static uint32_t ETH_Prepare_Tx_Descriptors ( ETH_HandleTypeDef heth,
ETH_TxPacketConfig pTxConfig,
uint32_t  ItMode 
) [static]

Prepare Tx DMA descriptor before transmission.

called by HAL_ETH_Transmit_IT and HAL_ETH_Transmit_IT() API.

Parameters:
heth,:pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module
pTxConfig,:Tx packet configuration
ItMode,:Enable or disable Tx EOT interrept
Return values:
Status

Definition at line 2733 of file stm32h7xx_hal_eth.c.

References ETH_TxPacketConfig::Attributes, ETH_TxDescListTypeDef::BuffersInUse, ETH_TxPacketConfig::ChecksumCtrl, ETH_TxPacketConfig::CRCPadCtrl, ETH_TxDescListTypeDef::CurrentPacketAddress, ETH_TxDescListTypeDef::CurTxDesc, ETH_DMADescTypeDef::DESC0, ETH_DMADescTypeDef::DESC1, ETH_DMADescTypeDef::DESC2, ETH_DMADescTypeDef::DESC3, ETH_DMATXCDESC_CTXT, ETH_DMATXCDESC_IVLTV, ETH_DMATXCDESC_IVT, ETH_DMATXCDESC_IVTIR, ETH_DMATXCDESC_MSS, ETH_DMATXCDESC_OWN, ETH_DMATXCDESC_TCMSSV, ETH_DMATXCDESC_VLTV, ETH_DMATXCDESC_VT, ETH_DMATXNDESCRF_B1L, ETH_DMATXNDESCRF_B2L, ETH_DMATXNDESCRF_CIC, ETH_DMATXNDESCRF_CPC, ETH_DMATXNDESCRF_CTXT, ETH_DMATXNDESCRF_FD, ETH_DMATXNDESCRF_FL, ETH_DMATXNDESCRF_IOC, ETH_DMATXNDESCRF_LD, ETH_DMATXNDESCRF_OWN, ETH_DMATXNDESCRF_SAIC, ETH_DMATXNDESCRF_THL, ETH_DMATXNDESCRF_TPL, ETH_DMATXNDESCRF_TSE, ETH_DMATXNDESCRF_VTIR, ETH_DMATXNDESCWBF_OWN, ETH_TX_PACKETS_FEATURES_CRCPAD, ETH_TX_PACKETS_FEATURES_CSUM, ETH_TX_PACKETS_FEATURES_INNERVLANTAG, ETH_TX_PACKETS_FEATURES_SAIC, ETH_TX_PACKETS_FEATURES_TSO, ETH_TX_PACKETS_FEATURES_VLANTAG, HAL_ETH_ERROR_BUSY, HAL_ETH_ERROR_NONE, INCR_TX_DESC_INDEX, ETH_TxPacketConfig::InnerVlanCtrl, ETH_TxPacketConfig::InnerVlanTag, __ETH_HandleTypeDef::Instance, ETH_TxPacketConfig::Length, ETH_TxPacketConfig::MaxSegmentSize, ETH_TxDescListTypeDef::PacketAddress, ETH_TxPacketConfig::PayloadLen, ETH_TxPacketConfig::SrcAddrCtrl, ETH_TxPacketConfig::TCPHeaderLen, ETH_TxPacketConfig::TxBuffer, ETH_TxDescListTypeDef::TxDesc, __ETH_HandleTypeDef::TxDescList, ETH_TxPacketConfig::VlanCtrl, and ETH_TxPacketConfig::VlanTag.

Referenced by HAL_ETH_Transmit(), and HAL_ETH_Transmit_IT().

static void ETH_SetDMAConfig ( ETH_HandleTypeDef heth,
ETH_DMAConfigTypeDef dmaconf 
) [static]
static void ETH_SetMACConfig ( ETH_HandleTypeDef heth,
ETH_MACConfigTypeDef macconf 
) [static]

Definition at line 2408 of file stm32h7xx_hal_eth.c.

References ETH_MACConfigTypeDef::AutomaticPadCRCStrip, ETH_MACConfigTypeDef::BackOffLimit, ETH_MACConfigTypeDef::CarrierSenseBeforeTransmit, ETH_MACConfigTypeDef::CarrierSenseDuringTransmit, ETH_MACConfigTypeDef::ChecksumOffload, ETH_MACConfigTypeDef::CRCCheckingRxPackets, ETH_MACConfigTypeDef::CRCStripTypePacket, ETH_MACConfigTypeDef::DeferralCheck, ETH_MACConfigTypeDef::DropTCPIPChecksumErrorPacket, ETH_MACConfigTypeDef::DuplexMode, ETH_MACCR_MASK, ETH_MACECR_MASK, ETH_MACRFCR_MASK, ETH_MACTFCR_MASK, ETH_MACWTR_MASK, ETH_MTLRQOMR_MASK, ETH_MTLTQOMR_MASK, ETH_MACConfigTypeDef::ExtendedInterPacketGap, ETH_MACConfigTypeDef::ExtendedInterPacketGapVal, ETH_MACConfigTypeDef::ForwardRxErrorPacket, ETH_MACConfigTypeDef::ForwardRxUndersizedGoodPacket, ETH_MACConfigTypeDef::GiantPacketSizeLimit, ETH_MACConfigTypeDef::GiantPacketSizeLimitControl, __ETH_HandleTypeDef::Instance, ETH_MACConfigTypeDef::InterPacketGapVal, ETH_MACConfigTypeDef::Jabber, ETH_MACConfigTypeDef::JumboPacket, ETH_MACConfigTypeDef::LoopbackMode, ETH_MACConfigTypeDef::PauseLowThreshold, ETH_MACConfigTypeDef::PauseTime, ETH_MACConfigTypeDef::PreambleLength, ETH_MACConfigTypeDef::ProgrammableWatchdog, ETH_MACConfigTypeDef::ReceiveFlowControl, ETH_MACConfigTypeDef::ReceiveOwn, ETH_MACConfigTypeDef::ReceiveQueueMode, ETH_MACConfigTypeDef::RetryTransmission, ETH_MACConfigTypeDef::SlowProtocolDetect, ETH_MACConfigTypeDef::SourceAddrControl, ETH_MACConfigTypeDef::Speed, ETH_MACConfigTypeDef::Support2KPacket, ETH_MACConfigTypeDef::TransmitFlowControl, ETH_MACConfigTypeDef::TransmitQueueMode, ETH_MACConfigTypeDef::UnicastPausePacketDetect, ETH_MACConfigTypeDef::UnicastSlowProtocolPacketDetect, ETH_MACConfigTypeDef::Watchdog, ETH_MACConfigTypeDef::WatchdogTimeout, and ETH_MACConfigTypeDef::ZeroQuantaPause.

Referenced by ETH_MACDMAConfig(), and HAL_ETH_SetMACConfig().