ConOpSys V2970
P004.07
ANVILEX control operating system
|
Classes | |
struct | ETH_InitTypeDef |
struct | ETH_DMADescTypeDef |
struct | ETH_DMARxFrameInfos |
Received Frame Informations structure definition. More... | |
struct | ETH_MACInitTypeDef |
ETH MAC Configuration Structure definition. More... | |
struct | ETH_DMAInitTypeDef |
ETH DMA Configuration Structure definition. More... | |
struct | ETH_HandleTypeDef |
class | TETHERNET_STM32F429 |
STM32F429 on-chip ETHERNET hardware abstraction layer class. More... | |
Macros | |
#define | ETH_REG_WRITE_DELAY 0x00000001U |
#define | ETH_SUCCESS 0U |
#define | ETH_ERROR 1U |
#define | ETH_DMATXDESC_COLLISION_COUNTSHIFT 3U |
#define | ETH_DMATXDESC_BUFFER2_SIZESHIFT 16U |
#define | ETH_DMARXDESC_FRAME_LENGTHSHIFT 16U |
#define | ETH_DMARXDESC_BUFFER2_SIZESHIFT 16U |
#define | ETH_DMARXDESC_FRAMELENGTHSHIFT 16U |
#define | ETH_MAC_ADDR_HBASE (uint32_t)(ETH_MAC_BASE + 0x40U) /* ETHERNET MAC address high offset */ |
#define | ETH_MAC_ADDR_LBASE (uint32_t)(ETH_MAC_BASE + 0x44U) /* ETHERNET MAC address low offset */ |
#define | ETH_MACMIIAR_CR_MASK 0xFFFFFFE3U |
#define | ETH_MACCR_CLEAR_MASK 0xFF20810FU |
#define | ETH_MACFCR_CLEAR_MASK 0x0000FF41U |
#define | ETH_DMAOMR_CLEAR_MASK 0xF8DE3F23U |
#define | ETH_WAKEUP_REGISTER_LENGTH 8U |
#define | ETH_DMA_RX_OVERFLOW_MISSEDFRAMES_COUNTERSHIFT 17U |
#define | MAC_ADDR0 2U |
#define | MAC_ADDR1 0U |
#define | MAC_ADDR2 0U |
#define | MAC_ADDR3 0U |
#define | MAC_ADDR4 0U |
#define | MAC_ADDR5 0U |
#define | ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for receive */ |
#define | ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for transmit */ |
#define | ETH_RXBUFNB ((uint32_t)4U) /* 4 Rx buffers of size ETH_RX_BUF_SIZE */ |
#define | ETH_TXBUFNB ((uint32_t)4U) /* 4 Tx buffers of size ETH_TX_BUF_SIZE */ |
#define | LAN8742A_PHY_ADDRESS 1U |
#define | PHY_RESET_DELAY ((uint32_t)0x000000FFU) |
#define | PHY_CONFIG_DELAY ((uint32_t)0x00000FFFU) |
#define | PHY_READ_TO ((uint32_t)0x0000FFFFU) |
#define | PHY_WRITE_TO ((uint32_t)0x0000FFFFU) |
#define | PHY_BCR ((uint16_t)0x00U) |
#define | PHY_BSR ((uint16_t)0x01U) |
#define | PHY_RESET ((uint16_t)0x8000U) |
#define | PHY_LOOPBACK ((uint16_t)0x4000U) |
#define | PHY_FULLDUPLEX_100M ((uint16_t)0x2100U) |
#define | PHY_HALFDUPLEX_100M ((uint16_t)0x2000U) |
#define | PHY_FULLDUPLEX_10M ((uint16_t)0x0100U) |
#define | PHY_HALFDUPLEX_10M ((uint16_t)0x0000U) |
#define | PHY_AUTONEGOTIATION ((uint16_t)0x1000U) |
#define | PHY_RESTART_AUTONEGOTIATION ((uint16_t)0x0200U) |
#define | PHY_POWERDOWN ((uint16_t)0x0800U) |
#define | PHY_ISOLATE ((uint16_t)0x0400U) |
#define | PHY_AUTONEGO_COMPLETE ((uint16_t)0x0020U) |
#define | PHY_LINKED_STATUS ((uint16_t)0x0004U) |
#define | PHY_JABBER_DETECTION ((uint16_t)0x0002U) |
#define | PHY_SR ((uint16_t)0x1FU) |
#define | PHY_SPEED_STATUS ((uint16_t)0x0004U) |
#define | PHY_DUPLEX_STATUS ((uint16_t)0x0010U) |
#define | PHY_ISFR ((uint16_t)0x001DU) |
#define | PHY_ISFR_INT4 ((uint16_t)0x001BU) |
#define | USE_SPI_CRC 0U |
#define | __ALIGN_END |
#define | IFNAME0 's' |
#define | IFNAME1 't' |
#define | UNUSED(X) (void)X /* To avoid gcc/g++ warnings */ |
#define | __HAL_ETH_DMA_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DMAIER |= (__INTERRUPT__)) |
Typedefs | |
typedef enum FlagStatus | ITStatus |
Enumerations | |
enum | LockTypeDef { UNLOCKED = 0x00U , LOCKED = 0x01U } |
enum | ETH_StateTypeDef { ETH_STATE_RESET = 0x00U , ETH_STATE_READY = 0x01U , ETH_STATE_BUSY = 0x02U , ETH_STATE_BUSY_TX = 0x12U , ETH_STATE_BUSY_RX = 0x22U , ETH_STATE_BUSY_TX_RX = 0x32U , ETH_STATE_BUSY_WR = 0x42U , ETH_STATE_BUSY_RD = 0x82U , ETH_STATE_TIMEOUT = 0x03U , ETH_STATE_ERROR = 0x04U } |
State structures definition. More... | |
enum | FlagStatus { RESET = 0U , SET = !RESET } |
#define __ALIGN_END |
#define __HAL_ETH_DMA_ENABLE_IT | ( | __HANDLE__, | |
__INTERRUPT__ | |||
) | ((__HANDLE__)->Instance->DMAIER |= (__INTERRUPT__)) |
#define ETH_DMA_RX_OVERFLOW_MISSEDFRAMES_COUNTERSHIFT 17U |
#define ETH_DMAOMR_CLEAR_MASK 0xF8DE3F23U |
#define ETH_DMARXDESC_BUFFER2_SIZESHIFT 16U |
#define ETH_DMARXDESC_FRAME_LENGTHSHIFT 16U |
#define ETH_DMARXDESC_FRAMELENGTHSHIFT 16U |
#define ETH_DMATXDESC_BUFFER2_SIZESHIFT 16U |
#define ETH_DMATXDESC_COLLISION_COUNTSHIFT 3U |
#define ETH_ERROR 1U |
#define ETH_MAC_ADDR_HBASE (uint32_t)(ETH_MAC_BASE + 0x40U) /* ETHERNET MAC address high offset */ |
#define ETH_MAC_ADDR_LBASE (uint32_t)(ETH_MAC_BASE + 0x44U) /* ETHERNET MAC address low offset */ |
#define ETH_MACCR_CLEAR_MASK 0xFF20810FU |
#define ETH_MACFCR_CLEAR_MASK 0x0000FF41U |
#define ETH_MACMIIAR_CR_MASK 0xFFFFFFE3U |
#define ETH_REG_WRITE_DELAY 0x00000001U |
#define ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for receive */ |
#define ETH_RXBUFNB ((uint32_t)4U) /* 4 Rx buffers of size ETH_RX_BUF_SIZE */ |
#define ETH_SUCCESS 0U |
#define ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for transmit */ |
#define ETH_TXBUFNB ((uint32_t)4U) /* 4 Tx buffers of size ETH_TX_BUF_SIZE */ |
#define ETH_WAKEUP_REGISTER_LENGTH 8U |
#define IFNAME0 's' |
#define IFNAME1 't' |
#define LAN8742A_PHY_ADDRESS 1U |
#define MAC_ADDR0 2U |
#define MAC_ADDR1 0U |
#define MAC_ADDR2 0U |
#define MAC_ADDR3 0U |
#define MAC_ADDR4 0U |
#define MAC_ADDR5 0U |
#define PHY_AUTONEGO_COMPLETE ((uint16_t)0x0020U) |
Auto-Negotiation process completed
#define PHY_AUTONEGOTIATION ((uint16_t)0x1000U) |
Enable auto-negotiation function
#define PHY_BCR ((uint16_t)0x00U) |
Transceiver Basic Control Register
#define PHY_BSR ((uint16_t)0x01U) |
Transceiver Basic Status Register
#define PHY_CONFIG_DELAY ((uint32_t)0x00000FFFU) |
#define PHY_DUPLEX_STATUS ((uint16_t)0x0010U) |
PHY Duplex mask
#define PHY_FULLDUPLEX_100M ((uint16_t)0x2100U) |
Set the full-duplex mode at 100 Mb/s
#define PHY_FULLDUPLEX_10M ((uint16_t)0x0100U) |
Set the full-duplex mode at 10 Mb/s
#define PHY_HALFDUPLEX_100M ((uint16_t)0x2000U) |
Set the half-duplex mode at 100 Mb/s
#define PHY_HALFDUPLEX_10M ((uint16_t)0x0000U) |
Set the half-duplex mode at 10 Mb/s
#define PHY_ISFR ((uint16_t)0x001DU) |
PHY Interrupt Source Flag register Offset
#define PHY_ISFR_INT4 ((uint16_t)0x001BU) |
PHY Link down inturrupt
#define PHY_ISOLATE ((uint16_t)0x0400U) |
Isolate PHY from MII
#define PHY_JABBER_DETECTION ((uint16_t)0x0002U) |
Jabber condition detected
#define PHY_LINKED_STATUS ((uint16_t)0x0004U) |
Valid link established
#define PHY_LOOPBACK ((uint16_t)0x4000U) |
Select loop-back mode
#define PHY_POWERDOWN ((uint16_t)0x0800U) |
Select the power down mode
#define PHY_READ_TO ((uint32_t)0x0000FFFFU) |
#define PHY_RESET ((uint16_t)0x8000U) |
PHY Reset
#define PHY_RESET_DELAY ((uint32_t)0x000000FFU) |
#define PHY_RESTART_AUTONEGOTIATION ((uint16_t)0x0200U) |
Restart auto-negotiation function
#define PHY_SPEED_STATUS ((uint16_t)0x0004U) |
PHY Speed mask
#define PHY_SR ((uint16_t)0x1FU) |
PHY status register Offset
#define PHY_WRITE_TO ((uint32_t)0x0000FFFFU) |
#define USE_SPI_CRC 0U |
typedef enum FlagStatus ITStatus |
enum ETH_StateTypeDef |
State structures definition.
enum FlagStatus |
enum LockTypeDef |
VOID TETHERNET_STM32F429::Done | ( | ) |
Object finalisation method.
References TCommunication_Link::PIO_Done().
BOOL ETH_ConfigDMA | ( | ETH_HandleTypeDef * | heth, |
ETH_MACInitTypeDef * | macconf | ||
) |
BOOL ETH_ConfigMAC | ( | ETH_HandleTypeDef * | heth, |
ETH_MACInitTypeDef * | macconf | ||
) |
Set ETH MAC Configuration.
heth | pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module |
macconf | MAC Configuration structure |
HAL | status |
References ETH_MACInitTypeDef::AutomaticPadCRCStrip, ETH_MACInitTypeDef::BackOffLimit, ETH_MACInitTypeDef::BroadcastFramesReception, ETH_MACInitTypeDef::CarrierSense, ETH_MACInitTypeDef::ChecksumOffload, ETH_MACInitTypeDef::DeferralCheck, THigh_Precision_Timer_Base::Delay(), ETH_MACInitTypeDef::DestinationAddrFilter, ETH_InitTypeDef::DuplexMode, ETH_MACCR_CLEAR_MASK, ETH_MACFCR_CLEAR_MASK, ETH_STATE_BUSY, ETH_STATE_READY, ETH_MACInitTypeDef::HashTableHigh, ETH_MACInitTypeDef::HashTableLow, heth, ETH_HandleTypeDef::Init, ETH_HandleTypeDef::Instance, ETH_MACInitTypeDef::InterFrameGap, ETH_MACInitTypeDef::Jabber, ETH_HandleTypeDef::Lock, LOCKED, ETH_MACInitTypeDef::LoopbackMode, ETH_MACInitTypeDef::MulticastFramesFilter, NULL, object_Delay_Timer, ETH_MACInitTypeDef::PassControlFrames, ETH_MACInitTypeDef::PauseLowThreshold, ETH_MACInitTypeDef::PauseTime, ETH_MACInitTypeDef::PromiscuousMode, ETH_MACInitTypeDef::ReceiveAll, ETH_MACInitTypeDef::ReceiveFlowControl, ETH_MACInitTypeDef::ReceiveOwn, ETH_MACInitTypeDef::RetryTransmission, ETH_MACInitTypeDef::SourceAddrFilter, ETH_InitTypeDef::Speed, ETH_HandleTypeDef::State, ETH_MACInitTypeDef::TransmitFlowControl, ETH_MACInitTypeDef::UnicastFramesFilter, ETH_MACInitTypeDef::UnicastPauseFrameDetect, UNLOCKED, ETH_MACInitTypeDef::VLANTagComparison, ETH_MACInitTypeDef::VLANTagIdentifier, ETH_MACInitTypeDef::Watchdog, and ETH_MACInitTypeDef::ZeroQuantaPause.
Referenced by ethernetif_update_config().
|
static |
|
static |
BOOL ETH_DMARxDescListInit | ( | ETH_HandleTypeDef * | heth, |
ETH_DMADescTypeDef * | DMARxDescTab, | ||
uint8_t * | RxBuff, | ||
uint32_t | RxBuffCount | ||
) |
initialises the DMA Rx descriptors in chain mode.
heth | pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module |
DMARxDescTab | Pointer to the first Rx desc list |
RxBuff | Pointer to the first RxBuffer list |
RxBuffCount | Number of the used Rx desc in the list |
HAL | status |
References ETH_DMADescTypeDef::Buffer1Addr, ETH_DMADescTypeDef::Buffer2NextDescAddr, ETH_DMADescTypeDef::ControlBufferSize, ETH_DMARXDESC_DIC, ETH_DMARXDESC_OWN, ETH_DMARXDESC_RCH, ETH_RX_BUF_SIZE, ETH_RXINTERRUPT_MODE, ETH_STATE_BUSY, ETH_STATE_READY, heth, ETH_HandleTypeDef::Init, ETH_HandleTypeDef::Instance, ETH_HandleTypeDef::Lock, LOCKED, ETH_HandleTypeDef::RxDesc, ETH_HandleTypeDef::State, ETH_DMADescTypeDef::Status, and UNLOCKED.
Referenced by low_level_init().
|
static |
|
static |
BOOL ETH_DMATxDescListInit | ( | ETH_HandleTypeDef * | heth, |
ETH_DMADescTypeDef * | DMATxDescTab, | ||
uint8_t * | TxBuff, | ||
uint32_t | TxBuffCount | ||
) |
initialises the DMA Tx descriptors in chain mode.
heth | pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module |
DMATxDescTab | Pointer to the first Tx desc list |
TxBuff | Pointer to the first TxBuffer list |
TxBuffCount | Number of the used Tx desc in the list |
HAL | status |
References ETH_DMADescTypeDef::Buffer1Addr, ETH_DMADescTypeDef::Buffer2NextDescAddr, ETH_CHECKSUM_BY_HARDWARE, ETH_DMATXDESC_CHECKSUMTCPUDPICMPFULL, ETH_DMATXDESC_TCH, ETH_STATE_BUSY, ETH_STATE_READY, ETH_TX_BUF_SIZE, heth, ETH_HandleTypeDef::Init, ETH_HandleTypeDef::Instance, ETH_HandleTypeDef::Lock, LOCKED, ETH_HandleTypeDef::State, ETH_DMADescTypeDef::Status, ETH_HandleTypeDef::TxDesc, and UNLOCKED.
Referenced by low_level_init().
|
static |
BOOL ETH_GetReceivedFrame | ( | ETH_HandleTypeDef * | heth | ) |
**
Checks for received frames.
heth | pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module |
HAL | status |
References ETH_DMARxFrameInfos::buffer, ETH_DMADescTypeDef::Buffer2NextDescAddr, ETH_DMARXDESC_FL, ETH_DMARXDESC_FRAMELENGTHSHIFT, ETH_DMARXDESC_FS, ETH_DMARXDESC_LS, ETH_DMARXDESC_OWN, ETH_STATE_BUSY, ETH_STATE_READY, heth, ETH_DMARxFrameInfos::length, ETH_HandleTypeDef::Lock, LOCKED, ETH_DMARxFrameInfos::LSRxDesc, NULL, RESET, ETH_HandleTypeDef::RxDesc, ETH_HandleTypeDef::RxFrameInfos, ETH_HandleTypeDef::State, ETH_DMADescTypeDef::Status, and UNLOCKED.
Referenced by low_level_input().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
BOOL ETH_ReadPHYRegister | ( | ETH_HandleTypeDef * | heth, |
uint16_t | PHYReg, | ||
uint32_t * | RegValue | ||
) |
References ETH_MACMIIAR_CR_MASK, ETH_STATE_BUSY_RD, ETH_STATE_READY, TSystem_Timer_Base::Get_Actual_Time(), heth, ETH_HandleTypeDef::Init, ETH_HandleTypeDef::Instance, TSystem_Timer_Base::Is_Timeout_ms(), ETH_HandleTypeDef::Lock, object_System_Timer, ETH_InitTypeDef::PhyAddress, ETH_HandleTypeDef::State, true, and UNLOCKED.
Referenced by ethernetif_update_config(), low_level_init(), and PHY_ETH_Init().
BOOL ETH_Start | ( | ETH_HandleTypeDef * | heth | ) |
Enables Ethernet MAC and DMA reception/transmission.
heth | pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module |
HAL | status |
References ETH_DMAReceptionEnable(), ETH_DMATransmissionEnable(), ETH_FlushTransmitFIFO(), ETH_MACReceptionEnable(), ETH_MACTransmissionEnable(), ETH_STATE_BUSY, ETH_STATE_READY, heth, ETH_HandleTypeDef::Lock, LOCKED, ETH_HandleTypeDef::State, and UNLOCKED.
Referenced by ethernetif_update_config(), and low_level_init().
BOOL ETH_Stop | ( | ETH_HandleTypeDef * | heth | ) |
Stop Ethernet MAC and DMA reception/transmission.
heth | pointer to a ETH_HandleTypeDef structure that contains the configuration information for ETHERNET module |
HAL | status |
References ETH_DMAReceptionDisable(), ETH_DMATransmissionDisable(), ETH_FlushTransmitFIFO(), ETH_MACReceptionDisable(), ETH_MACTransmissionDisable(), ETH_STATE_BUSY, ETH_STATE_READY, heth, ETH_HandleTypeDef::Lock, LOCKED, ETH_HandleTypeDef::State, and UNLOCKED.
Referenced by ethernetif_update_config().
BOOL ETH_TransmitFrame | ( | ETH_HandleTypeDef * | heth, |
uint32_t | FrameLength | ||
) |
References ETH_DMADescTypeDef::Buffer2NextDescAddr, ETH_DMADescTypeDef::ControlBufferSize, ETH_DMATXDESC_FS, ETH_DMATXDESC_LS, ETH_DMATXDESC_OWN, ETH_DMATXDESC_TBS1, ETH_STATE_BUSY, ETH_STATE_BUSY_TX, ETH_STATE_READY, ETH_TX_BUF_SIZE, heth, ETH_HandleTypeDef::Instance, ETH_HandleTypeDef::Lock, LOCKED, RESET, ETH_HandleTypeDef::State, ETH_DMADescTypeDef::Status, ETH_HandleTypeDef::TxDesc, and UNLOCKED.
Referenced by low_level_output().
BOOL ETH_WritePHYRegister | ( | ETH_HandleTypeDef * | heth, |
uint16_t | PHYReg, | ||
uint32_t | RegValue | ||
) |
References ETH_MACMIIAR_CR_MASK, ETH_STATE_BUSY_WR, ETH_STATE_READY, TSystem_Timer_Base::Get_Actual_Time(), heth, ETH_HandleTypeDef::Init, ETH_HandleTypeDef::Instance, TSystem_Timer_Base::Is_Timeout_ms(), ETH_HandleTypeDef::Lock, object_System_Timer, ETH_InitTypeDef::PhyAddress, ETH_HandleTypeDef::State, true, and UNLOCKED.
Referenced by ethernetif_update_config(), low_level_init(), and PHY_ETH_Init().
References ERR_OK, IFNAME0, IFNAME1, netif::linkoutput, low_level_init(), low_level_output(), LWIP_ASSERT, netif::name, and NULL.
Referenced by TProtocol_IP_Over_ETHERNET::Init().
void ethernetif_input | ( | struct netif * | netif | ) |
This function should be called when a packet is ready to be read from the interface. It uses the function low_level_input() that should handle the actual reception of bytes from the network interface. Then the type of the received packet is determined and the appropriate input function is called.
netif | the lwip network interface structure for this ethernetif |
References ERR_OK, netif::input, low_level_input(), LWIP_DEBUGF, NETIF_DEBUG, NULL, and pbuf_free().
Referenced by TProtocol_IP_Over_ETHERNET::Execute().
VOID TETHERNET_STM32F429::Init | ( | ) |
Object initialisation method.
References TCommunication_Link::Init(), and TCommunication_Link::PIO_Init().
VOID TETHERNET_STM32F429::Interrupt | ( | ) |
Interrupt service method.
VOID TETHERNET_STM32F429::Interrupt_Disable | ( | ) |
Disable interrupt method.
Enable interrupt method.
[in] | u32_Priority | - Interrupt priority |
BOOL PHY_ETH_Init | ( | ETH_HandleTypeDef * | heth | ) |
References THigh_Precision_Timer_Base::Delay(), ETH_AUTONEGOTIATION_DISABLE, ETH_ERROR, ETH_MACDMAConfig(), ETH_MACMIIAR_CR_MASK, ETH_MODE_FULLDUPLEX, ETH_MODE_HALFDUPLEX, ETH_ReadPHYRegister(), ETH_SPEED_100M, ETH_SPEED_10M, ETH_STATE_READY, ETH_STATE_RESET, ETH_STATE_TIMEOUT, ETH_SUCCESS, ETH_WritePHYRegister(), false, TSystem_Timer_Base::Get_Actual_Time(), TCPU_STM32F429::Get_SYSCLK_Frequency(), heth, ETH_HandleTypeDef::Init, ETH_HandleTypeDef::Instance, TSystem_Timer_Base::Is_Timeout_ms(), ETH_HandleTypeDef::Lock, ETH_InitTypeDef::MediaInterface, NULL, object_Delay_Timer, object_System_CPU, object_System_Timer, PHY_AUTONEGO_COMPLETE, PHY_AUTONEGOTIATION, PHY_BCR, PHY_BSR, PHY_DUPLEX_STATUS, PHY_LINKED_STATUS, PHY_RESET, PHY_SPEED_STATUS, PHY_SR, RESET, ETH_HandleTypeDef::State, true, and UNLOCKED.
Referenced by low_level_init().
VOID TETHERNET_STM32F429::Start_TX_Operation | ( | ) |
Start RX operation.
Stop RX operation.
Start TX operation.
VOID TETHERNET_STM32F429::Stop_TX_Operation | ( | ) |
Stop TX operation.
uint32_t ETH_DMAInitTypeDef::AddressAlignedBeats |
Enables or disables the Address Aligned Beats. This parameter can be a value of ETH Address Aligned Beats
Referenced by ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::AutomaticPadCRCStrip |
Selects or not the Automatic MAC Pad/CRC Stripping. This parameter can be a value of ETH Automatic Pad CRC Strip
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_InitTypeDef::AutoNegotiation |
Selects or not the AutoNegotiation mode for the external PHY The AutoNegotiation allows an automatic setting of the Speed (10/100Mbps) and the mode (half/full-duplex). This parameter can be a value of ETH AutoNegotiation
Referenced by ethernetif_update_config(), and low_level_init().
uint32_t ETH_MACInitTypeDef::BackOffLimit |
Selects the BackOff limit value. This parameter can be a value of ETH Back Off Limit
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::BroadcastFramesReception |
Selects or not the reception of Broadcast Frames. This parameter can be a value of ETH Broadcast Frames Reception
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_DMARxFrameInfos::buffer |
Frame buffer
Referenced by ETH_GetReceivedFrame(), and low_level_input().
uint32_t ETH_DMADescTypeDef::Buffer1Addr |
Buffer1 address pointer
Referenced by ETH_DMARxDescListInit(), ETH_DMATxDescListInit(), HAL_ETH_DMATxDescListInit(), and low_level_output().
uint32_t ETH_DMADescTypeDef::Buffer2NextDescAddr |
Buffer2 or next descriptor address pointer Enhanced ETHERNET DMA PTP Descriptors
Referenced by ETH_DMARxDescListInit(), ETH_DMATxDescListInit(), ETH_GetReceivedFrame(), ETH_TransmitFrame(), and HAL_ETH_DMATxDescListInit().
uint32_t ETH_MACInitTypeDef::CarrierSense |
Selects or not the Carrier Sense. This parameter can be a value of ETH Carrier Sense
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_InitTypeDef::ChecksumMode |
Selects if the checksum is check by hardware or by software. This parameter can be a value of ETH Checksum Mode
Referenced by ETH_MACDMAConfig(), and low_level_init().
uint32_t ETH_MACInitTypeDef::ChecksumOffload |
Selects or not the IPv4 checksum checking for received frame payloads' TCP/UDP/ICMP headers. This parameter can be a value of ETH Checksum Offload
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_DMADescTypeDef::ControlBufferSize |
Control and Buffer1, Buffer2 lengths
Referenced by ETH_DMARxDescListInit(), and ETH_TransmitFrame().
uint32_t ETH_MACInitTypeDef::DeferralCheck |
Selects or not the deferral check function (Half-Duplex mode). This parameter can be a value of ETH Deferral Check
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::DescriptorSkipLength |
Specifies the number of word to skip between two unchained descriptors (Ring mode) This parameter must be a number between Min_Data = 0 and Max_Data = 32
Referenced by ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::DestinationAddrFilter |
Sets the destination filter mode for both unicast and multicast frames. This parameter can be a value of ETH Destination Addr Filter
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::DMAArbitration |
Selects the DMA Tx/Rx arbitration. This parameter can be a value of ETH DMA Arbitration
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::DropTCPIPChecksumErrorFrame |
Selects or not the Dropping of TCP/IP Checksum Error Frames. This parameter can be a value of ETH Drop TCP IP Checksum Error Frame
Referenced by ETH_MACDMAConfig().
uint32_t ETH_InitTypeDef::DuplexMode |
Selects the MAC duplex mode: Half-Duplex or Full-Duplex mode This parameter can be a value of ETH Duplex Mode
Referenced by ETH_ConfigMAC(), and ethernetif_update_config().
uint32_t ETH_DMAInitTypeDef::EnhancedDescriptorFormat |
Enables the enhanced descriptor format. This parameter can be a value of ETH DMA Enhanced descriptor format
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMADescTypeDef::ExtendedStatus |
Extended status for PTP receive descriptor
uint32_t ETH_DMAInitTypeDef::FixedBurst |
Enables or disables the AHB Master interface fixed burst transfers. This parameter can be a value of ETH Fixed Burst
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::FlushReceivedFrame |
Enables or disables the flushing of received frames. This parameter can be a value of ETH Flush Received Frame
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::ForwardErrorFrames |
Selects or not the forward to the DMA of erroneous frames. This parameter can be a value of ETH Forward Error Frames
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::ForwardUndersizedGoodFrames |
Enables or disables the Rx FIFO to forward Undersized frames (frames with no Error and length less than 64 bytes) including pad-bytes and CRC) This parameter can be a value of ETH Forward Undersized Good Frames
Referenced by ETH_MACDMAConfig().
ETH_DMADescTypeDef* ETH_DMARxFrameInfos::FSRxDesc |
First Segment Rx Desc
Referenced by low_level_input().
uint32_t ETH_MACInitTypeDef::HashTableHigh |
This field holds the higher 32 bits of Hash table. This parameter must be a number between Min_Data = 0x0 and Max_Data = 0xFFFFFFFFU
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::HashTableLow |
This field holds the lower 32 bits of Hash table. This parameter must be a number between Min_Data = 0x0 and Max_Data = 0xFFFFFFFFU
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
ETH_InitTypeDef ETH_HandleTypeDef::Init |
Ethernet Init Configuration
Referenced by ETH_ConfigMAC(), ETH_DMARxDescListInit(), ETH_DMATxDescListInit(), ETH_MACDMAConfig(), ETH_ReadPHYRegister(), ETH_WritePHYRegister(), ethernetif_update_config(), HAL_ETH_DMATxDescListInit(), low_level_init(), and PHY_ETH_Init().
ETH_TypeDef* ETH_HandleTypeDef::Instance |
Register base address
Referenced by ETH_ConfigMAC(), ETH_DMAReceptionDisable(), ETH_DMAReceptionEnable(), ETH_DMARxDescListInit(), ETH_DMATransmissionDisable(), ETH_DMATransmissionEnable(), ETH_DMATxDescListInit(), ETH_FlushTransmitFIFO(), ETH_MACDMAConfig(), ETH_MACReceptionDisable(), ETH_MACReceptionEnable(), ETH_MACTransmissionDisable(), ETH_MACTransmissionEnable(), ETH_ReadPHYRegister(), ETH_TransmitFrame(), ETH_WritePHYRegister(), HAL_ETH_DMATxDescListInit(), low_level_init(), low_level_input(), low_level_output(), and PHY_ETH_Init().
uint32_t ETH_MACInitTypeDef::InterFrameGap |
Selects the minimum IFG between frames during transmission. This parameter can be a value of ETH Inter Frame Gap
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::Jabber |
Selects or not Jabber timer When enabled, the MAC allows no more then 2048 bytes to be sent. When disabled, the MAC can send up to 16384 bytes. This parameter can be a value of ETH Jabber
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_DMARxFrameInfos::length |
Frame length
Referenced by ETH_GetReceivedFrame(), and low_level_input().
uint32_t ETH_HandleTypeDef::LinkStatus |
Ethernet link status
LockTypeDef ETH_HandleTypeDef::Lock |
uint32_t ETH_MACInitTypeDef::LoopbackMode |
Selects or not the internal MAC MII Loopback mode. This parameter can be a value of ETH Loop Back Mode
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
ETH_DMADescTypeDef* ETH_DMARxFrameInfos::LSRxDesc |
Last Segment Rx Desc
Referenced by ETH_GetReceivedFrame().
uint8_t* ETH_InitTypeDef::MACAddr |
MAC Address of used Hardware: must be pointer on an array of 6 bytes
Referenced by ETH_MACDMAConfig(), and low_level_init().
uint32_t ETH_InitTypeDef::MediaInterface |
Selects the media-independent interface or the reduced media-independent interface. This parameter can be a value of ETH Media Interface
Referenced by low_level_init(), and PHY_ETH_Init().
uint32_t ETH_MACInitTypeDef::MulticastFramesFilter |
Selects the Multicast Frames filter mode: None/HashTableFilter/PerfectFilter/PerfectHashTableFilter. This parameter can be a value of ETH Multicast Frames Filter
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::PassControlFrames |
Sets the forwarding mode of the control frames (including unicast and multicast PAUSE frames) This parameter can be a value of ETH Pass Control Frames
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::PauseLowThreshold |
This field configures the threshold of the PAUSE to be checked for automatic retransmission of PAUSE Frame. This parameter can be a value of ETH Pause Low Threshold
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::PauseTime |
This field holds the value to be used in the Pause Time field in the transmit control frame. This parameter must be a number between Min_Data = 0x0 and Max_Data = 0xFFFFU
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint16_t ETH_InitTypeDef::PhyAddress |
Ethernet PHY address. This parameter must be a number between Min_Data = 0 and Max_Data = 32
Referenced by ETH_ReadPHYRegister(), ETH_WritePHYRegister(), and low_level_init().
uint32_t ETH_MACInitTypeDef::PromiscuousMode |
Selects or not the Promiscuous Mode This parameter can be a value of ETH Promiscuous Mode
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::ReceiveAll |
Selects or not all frames reception by the MAC (No filtering). This parameter can be a value of ETH Receive All
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::ReceiveFlowControl |
Enables or disables the MAC to decode the received Pause frame and disable its transmitter for a specified time (Pause Time) This parameter can be a value of ETH Receive Flow Control
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::ReceiveOwn |
Selects or not the ReceiveOwn, ReceiveOwn allows the reception of frames when the TX_EN signal is asserted in Half-Duplex mode. This parameter can be a value of ETH Receive Own
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::ReceiveStoreForward |
Enables or disables the Receive store and forward mode. This parameter can be a value of ETH Receive Store Forward
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::ReceiveThresholdControl |
Selects the threshold level of the Receive FIFO. This parameter can be a value of ETH Receive Threshold Control
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMADescTypeDef::Reserved1 |
Reserved
uint32_t ETH_MACInitTypeDef::RetryTransmission |
Selects or not the MAC attempt retries transmission, based on the settings of BL, when a collision occurs (Half-Duplex mode). This parameter can be a value of ETH Retry Transmission
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
ETH_DMADescTypeDef* ETH_HandleTypeDef::RxDesc |
Rx descriptor to Get
Referenced by ETH_DMARxDescListInit(), and ETH_GetReceivedFrame().
uint32_t ETH_DMAInitTypeDef::RxDMABurstLength |
Indicates the maximum number of beats to be transferred in one Rx DMA transaction. This parameter can be a value of ETH Rx DMA Burst Length
Referenced by ETH_MACDMAConfig().
ETH_DMARxFrameInfos ETH_HandleTypeDef::RxFrameInfos |
last Rx frame infos
Referenced by ETH_GetReceivedFrame(), and low_level_input().
uint32_t ETH_InitTypeDef::RxMode |
Selects the Ethernet Rx mode: Polling mode, Interrupt mode. This parameter can be a value of ETH Rx Mode
Referenced by low_level_init().
uint32_t ETH_DMAInitTypeDef::SecondFrameOperate |
Selects or not the Operate on second frame mode, which allows the DMA to process a second frame of Transmit data even before obtaining the status for the first frame. This parameter can be a value of ETH Second Frame Operate
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMARxFrameInfos::SegCount |
Segment count
Referenced by low_level_input().
uint32_t ETH_MACInitTypeDef::SourceAddrFilter |
Selects the Source Address Filter mode. This parameter can be a value of ETH Source Addr Filter
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_InitTypeDef::Speed |
Sets the Ethernet speed: 10/100 Mbps. This parameter can be a value of ETH Speed
Referenced by ETH_ConfigMAC(), and ethernetif_update_config().
__IO ETH_StateTypeDef ETH_HandleTypeDef::State |
ETH communication state
Referenced by ETH_ConfigMAC(), ETH_DMARxDescListInit(), ETH_DMATxDescListInit(), ETH_GetReceivedFrame(), ETH_ReadPHYRegister(), ETH_Start(), ETH_Stop(), ETH_TransmitFrame(), ETH_WritePHYRegister(), HAL_ETH_DMATxDescListInit(), and PHY_ETH_Init().
__IO uint32_t ETH_DMADescTypeDef::Status |
Status
Referenced by ETH_DMARxDescListInit(), ETH_DMATxDescListInit(), ETH_GetReceivedFrame(), ETH_TransmitFrame(), HAL_ETH_DMATxDescListInit(), and low_level_input().
uint32_t ETH_DMADescTypeDef::TimeStampHigh |
Time Stamp High value for transmit and receive
uint32_t ETH_DMADescTypeDef::TimeStampLow |
Time Stamp Low value for transmit and receive
uint32_t ETH_MACInitTypeDef::TransmitFlowControl |
Enables or disables the MAC to transmit Pause frames (Full-Duplex mode) or the MAC back-pressure operation (Half-Duplex mode) This parameter can be a value of ETH Transmit Flow Control
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::TransmitStoreForward |
Enables or disables Transmit store and forward mode. This parameter can be a value of ETH Transmit Store Forward
Referenced by ETH_MACDMAConfig().
uint32_t ETH_DMAInitTypeDef::TransmitThresholdControl |
Selects or not the Transmit Threshold Control. This parameter can be a value of ETH Transmit Threshold Control
Referenced by ETH_MACDMAConfig().
ETH_DMADescTypeDef* ETH_HandleTypeDef::TxDesc |
Tx descriptor to Set
Referenced by ETH_DMATxDescListInit(), ETH_TransmitFrame(), HAL_ETH_DMATxDescListInit(), and low_level_output().
uint32_t ETH_DMAInitTypeDef::TxDMABurstLength |
Indicates the maximum number of beats to be transferred in one Tx DMA transaction. This parameter can be a value of ETH Tx DMA Burst Length
Referenced by ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::UnicastFramesFilter |
Selects the Unicast Frames filter mode: HashTableFilter/PerfectFilter/PerfectHashTableFilter. This parameter can be a value of ETH Unicast Frames Filter
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::UnicastPauseFrameDetect |
Selects or not the MAC detection of the Pause frames (with MAC Address0 unicast address and unique multicast address). This parameter can be a value of ETH Unicast Pause Frame Detect
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::VLANTagComparison |
Selects the 12-bit VLAN identifier or the complete 16-bit VLAN tag for comparison and filtering. This parameter can be a value of ETH VLAN Tag Comparison
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::VLANTagIdentifier |
Holds the VLAN tag identifier for receive frames
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::Watchdog |
Selects or not the Watchdog timer When enabled, the MAC allows no more then 2048 bytes to be received. When disabled, the MAC can receive up to 16384 bytes. This parameter can be a value of ETH Watchdog
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().
uint32_t ETH_MACInitTypeDef::ZeroQuantaPause |
Selects or not the automatic generation of Zero-Quanta Pause Control frames. This parameter can be a value of ETH Zero Quanta Pause
Referenced by ETH_ConfigMAC(), and ETH_MACDMAConfig().