rm57_eth_driver.h File Reference

RM57 Ethernet MAC driver. More...

#include "core/nic.h"

Go to the source code of this file.

Data Structures

struct  _Rm57TxBufferDesc
 TX buffer descriptor. More...
 
struct  _Rm57RxBufferDesc
 RX buffer descriptor. More...
 

Macros

#define RM57_ETH_TX_BUFFER_COUNT   8
 
#define RM57_ETH_TX_BUFFER_SIZE   1536
 
#define RM57_ETH_RX_BUFFER_COUNT   8
 
#define RM57_ETH_RX_BUFFER_SIZE   1536
 
#define RM57_ETH_TX_IRQ_CHANNEL   77
 
#define RM57_ETH_RX_IRQ_CHANNEL   79
 
#define RM57_ETH_RAM_SECTION   ".ram_no_cache"
 
#define RM57_ETH_RAM_CPPI_SECTION   ".ram_cppi"
 
#define EMAC_CORE0   0
 
#define EMAC_CORE1   1
 
#define EMAC_CORE2   2
 
#define EMAC_CH0   0
 
#define EMAC_CH1   1
 
#define EMAC_CH2   2
 
#define EMAC_CH3   3
 
#define EMAC_CH4   4
 
#define EMAC_CH5   5
 
#define EMAC_CH6   6
 
#define EMAC_CH7   7
 
#define SYSCFG0_PINMUX_R(n)   HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(n))
 
#define SYSCFG0_CFGCHIP3_R   HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_CFGCHIP3)
 
#define EMAC_TXREVID_R   HWREG(EMAC_BASE + EMAC_TXREVID)
 
#define EMAC_TXCONTROL_R   HWREG(EMAC_BASE + EMAC_TXCONTROL)
 
#define EMAC_TXTEARDOWN_R   HWREG(EMAC_BASE + EMAC_TXTEARDOWN)
 
#define EMAC_RXREVID_R   HWREG(EMAC_BASE + EMAC_RXREVID)
 
#define EMAC_RXCONTROL_R   HWREG(EMAC_BASE + EMAC_RXCONTROL)
 
#define EMAC_RXTEARDOWN_R   HWREG(EMAC_BASE + EMAC_RXTEARDOWN)
 
#define EMAC_TXINTSTATRAW_R   HWREG(EMAC_BASE + EMAC_TXINTSTATRAW)
 
#define EMAC_TXINTSTATMASKED_R   HWREG(EMAC_BASE + EMAC_TXINTSTATMASKED)
 
#define EMAC_TXINTMASKSET_R   HWREG(EMAC_BASE + EMAC_TXINTMASKSET)
 
#define EMAC_TXINTMASKCLEAR_R   HWREG(EMAC_BASE + EMAC_TXINTMASKCLEAR)
 
#define EMAC_MACINVECTOR_R   HWREG(EMAC_BASE + EMAC_MACINVECTOR)
 
#define EMAC_MACEOIVECTOR_R   HWREG(EMAC_BASE + EMAC_MACEOIVECTOR)
 
#define EMAC_RXINTSTATRAW_R   HWREG(EMAC_BASE + EMAC_RXINTSTATRAW)
 
#define EMAC_RXINTSTATMASKED_R   HWREG(EMAC_BASE + EMAC_RXINTSTATMASKED)
 
#define EMAC_RXINTMASKSET_R   HWREG(EMAC_BASE + EMAC_RXINTMASKSET)
 
#define EMAC_RXINTMASKCLEAR_R   HWREG(EMAC_BASE + EMAC_RXINTMASKCLEAR)
 
#define EMAC_MACINTSTATRAW_R   HWREG(EMAC_BASE + EMAC_MACINTSTATRAW)
 
#define EMAC_MACINTSTATMASKED_R   HWREG(EMAC_BASE + EMAC_MACINTSTATMASKED)
 
#define EMAC_MACINTMASKSET_R   HWREG(EMAC_BASE + EMAC_MACINTMASKSET)
 
#define EMAC_MACINTMASKCLEAR_R   HWREG(EMAC_BASE + EMAC_MACINTMASKCLEAR)
 
#define EMAC_RXMBPENABLE_R   HWREG(EMAC_BASE + EMAC_RXMBPENABLE)
 
#define EMAC_RXUNICASTSET_R   HWREG(EMAC_BASE + EMAC_RXUNICASTSET)
 
#define EMAC_RXUNICASTCLEAR_R   HWREG(EMAC_BASE + EMAC_RXUNICASTCLEAR)
 
#define EMAC_RXMAXLEN_R   HWREG(EMAC_BASE + EMAC_RXMAXLEN)
 
#define EMAC_RXBUFFEROFFSET_R   HWREG(EMAC_BASE + EMAC_RXBUFFEROFFSET)
 
#define EMAC_RXFILTERLOWTHRESH_R   HWREG(EMAC_BASE + EMAC_RXFILTERLOWTHRESH)
 
#define EMAC_RXFLOWTHRESH_R(n)   HWREG(EMAC_BASE + EMAC_RXFLOWTHRESH(n))
 
#define EMAC_RXFREEBUFFER_R(n)   HWREG(EMAC_BASE + EMAC_RXFREEBUFFER(n))
 
#define EMAC_MACCONTROL_R   HWREG(EMAC_BASE + EMAC_MACCONTROL)
 
#define EMAC_MACSTATUS_R   HWREG(EMAC_BASE + EMAC_MACSTATUS)
 
#define EMAC_EMCONTROL_R   HWREG(EMAC_BASE + EMAC_EMCONTROL)
 
#define EMAC_FIFOCONTROL_R   HWREG(EMAC_BASE + EMAC_FIFOCONTROL)
 
#define EMAC_MACCONFIG_R   HWREG(EMAC_BASE + EMAC_MACCONFIG)
 
#define EMAC_SOFTRESET_R   HWREG(EMAC_BASE + EMAC_SOFTRESET)
 
#define EMAC_MACSRCADDRLO_R   HWREG(EMAC_BASE + EMAC_MACSRCADDRLO)
 
#define EMAC_MACSRCADDRHI_R   HWREG(EMAC_BASE + EMAC_MACSRCADDRHI)
 
#define EMAC_MACHASH1_R   HWREG(EMAC_BASE + EMAC_MACHASH1)
 
#define EMAC_MACHASH2_R   HWREG(EMAC_BASE + EMAC_MACHASH2)
 
#define EMAC_BOFFTEST_R   HWREG(EMAC_BASE + EMAC_BOFFTEST)
 
#define EMAC_TPACETEST_R   HWREG(EMAC_BASE + EMAC_TPACETEST)
 
#define EMAC_RXPAUSE_R   HWREG(EMAC_BASE + EMAC_RXPAUSE)
 
#define EMAC_TXPAUSE_R   HWREG(EMAC_BASE + EMAC_TXPAUSE)
 
#define EMAC_RXGOODFRAMES_R   HWREG(EMAC_BASE + EMAC_RXGOODFRAMES)
 
#define EMAC_RXBCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_RXBCASTFRAMES)
 
#define EMAC_RXMCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_RXMCASTFRAMES)
 
#define EMAC_RXPAUSEFRAMES_R   HWREG(EMAC_BASE + EMAC_RXPAUSEFRAMES)
 
#define EMAC_RXCRCERRORS_R   HWREG(EMAC_BASE + EMAC_RXCRCERRORS)
 
#define EMAC_RXALIGNCODEERRORS_R   HWREG(EMAC_BASE + EMACEMAC_RXOVERSIZED)
 
#define EMAC_RXJABBER_R   HWREG(EMAC_BASE + EMAC_RXJABBER)
 
#define EMAC_RXUNDERSIZED_R   HWREG(EMAC_BASE + EMAC_RXUNDERSIZED)
 
#define EMAC_RXFRAGMENTS_R   HWREG(EMAC_BASE + EMAC_RXFRAGMENTS)
 
#define EMAC_RXFILTERED_R   HWREG(EMAC_BASE + EMAC_RXFILTERED)
 
#define EMAC_RXQOSFILTERED_R   HWREG(EMAC_BASE + EMAC_RXQOSFILTERED)
 
#define EMAC_RXOCTETS_R   HWREG(EMAC_BASE + EMAC_RXOCTETS)
 
#define EMAC_TXGOODFRAMES_R   HWREG(EMAC_BASE + EMAC_TXGOODFRAMES)
 
#define EMAC_TXBCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_TXBCASTFRAMES)
 
#define EMAC_TXMCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_TXMCASTFRAMES)
 
#define EMAC_TXPAUSEFRAMES_R   HWREG(EMAC_BASE + EMAC_TXPAUSEFRAMES)
 
#define EMAC_TXDEFERRED_R   HWREG(EMAC_BASE + EMAC_TXDEFERRED)
 
#define EMAC_TXCOLLISION_R   HWREG(EMAC_BASE + EMAC_TXCOLLISION)
 
#define EMAC_TXSINGLECOLL_R   HWREG(EMAC_BASE + EMAC_TXSINGLECOLL)
 
#define EMAC_TXMULTICOLL_R   HWREG(EMAC_BASE + EMAC_TXMULTICOLL)
 
#define EMAC_TXEXCESSIVECOLL_R   HWREG(EMAC_BASE + EMAC_TXEXCESSIVECOLL)
 
#define EMAC_TXLATECOLL_R   HWREG(EMAC_BASE + EMAC_TXLATECOLL)
 
#define EMAC_TXUNDERRUN_R   HWREG(EMAC_BASE + EMAC_TXUNDERRUN)
 
#define EMAC_TXCARRIERSENSE_R   HWREG(EMAC_BASE + EMAC_TXCARRIERSENSE)
 
#define EMAC_TXOCTETS_R   HWREG(EMAC_BASE + EMAC_TXOCTETS)
 
#define EMAC_FRAME64_R   HWREG(EMAC_BASE + EMAC_FRAME64)
 
#define EMAC_FRAME65T127_R   HWREG(EMAC_BASE + EMAC_FRAME65T127)
 
#define EMAC_FRAME128T255_R   HWREG(EMAC_BASE + EMAC_FRAME128T255)
 
#define EMAC_FRAME256T511_R   HWREG(EMAC_BASE + EMAC_FRAME256T511)
 
#define EMAC_FRAME512T1023_R   HWREG(EMAC_BASE + EMAC_FRAME512T1023)
 
#define EMAC_FRAME1024TUP_R   HWREG(EMAC_BASE + EMAC_FRAME1024TUP)
 
#define EMAC_NETOCTETS_R   HWREG(EMAC_BASE + EMAC_NETOCTETS)
 
#define EMAC_RXSOFOVERRUNS_R   HWREG(EMAC_BASE + EMAC_RXSOFOVERRUNS)
 
#define EMAC_RXMOFOVERRUNS_R   HWREG(EMAC_BASE + EMAC_RXMOFOVERRUNS)
 
#define EMAC_RXDMAOVERRUNS_R   HWREG(EMAC_BASE + EMAC_RXDMAOVERRUNS)
 
#define EMAC_MACADDRLO_R   HWREG(EMAC_BASE + EMAC_MACADDRLO)
 
#define EMAC_MACADDRHI_R   HWREG(EMAC_BASE + EMAC_MACADDRHI)
 
#define EMAC_MACINDEX_R   HWREG(EMAC_BASE + EMAC_MACINDEX)
 
#define EMAC_TXHDP_R(n)   HWREG(EMAC_BASE + EMAC_TXHDP(n))
 
#define EMAC_RXHDP_R(n)   HWREG(EMAC_BASE + EMAC_RXHDP(n))
 
#define EMAC_TXCP_R(n)   HWREG(EMAC_BASE + EMAC_TXCP(n))
 
#define EMAC_RXCP_R(n)   HWREG(EMAC_BASE + EMAC_RXCP(n))
 
#define EMAC_CTRL_REVID_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_REVID)
 
#define EMAC_CTRL_SOFTRESET_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_SOFTRESET)
 
#define EMAC_CTRL_INTCONTRO_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_INTCONTROL)
 
#define EMAC_CTRL_C0RXTHRESHEN_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXTHRESHEN)
 
#define EMAC_CTRL_CnRXEN_R(n)   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnRXEN(n))
 
#define EMAC_CTRL_CnTXEN_R(n)   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnTXEN(n))
 
#define EMAC_CTRL_CnMISCEN_R(n)   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnMISCEN(n))
 
#define EMAC_CTRL_CnRXTHRESHEN_R(n)   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnRXTHRESHEN(n))
 
#define EMAC_CTRL_C0RXTHRESHSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXTHRESHSTAT)
 
#define EMAC_CTRL_C0RXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXSTAT)
 
#define EMAC_CTRL_C0TXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0TXSTAT)
 
#define EMAC_CTRL_C0MISCSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0MISCSTAT)
 
#define EMAC_CTRL_C1RXTHRESHSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1RXTHRESHSTAT)
 
#define EMAC_CTRL_C1RXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1RXTHRESHSTAT)
 
#define EMAC_CTRL_C1TXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1TXSTAT)
 
#define EMAC_CTRL_C1MISCSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1MISCSTAT)
 
#define EMAC_CTRL_C2RXTHRESHSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2RXTHRESHSTAT)
 
#define EMAC_CTRL_C2RXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2RXSTAT)
 
#define EMAC_CTRL_C2TXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2TXSTAT)
 
#define EMAC_CTRL_C2MISCSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2MISCSTAT)
 
#define EMAC_CTRL_C0RXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXIMAX)
 
#define EMAC_CTRL_C0TXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0TXIMAX)
 
#define EMAC_CTRL_C1RXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1RXIMAX)
 
#define EMAC_CTRL_C1TXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1TXIMAX)
 
#define EMAC_CTRL_C2RXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2RXIMAX)
 
#define EMAC_CTRL_C2TXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2TXIMAX)
 
#define MDIO_REVID_R   HWREG(MDIO_BASE + MDIO_REVID)
 
#define MDIO_CONTROL_R   HWREG(MDIO_BASE + MDIO_CONTROL)
 
#define MDIO_ALIVE_R   HWREG(MDIO_BASE + MDIO_ALIVE)
 
#define MDIO_LINK_R   HWREG(MDIO_BASE + MDIO_LINK)
 
#define MDIO_LINKINTRAW_R   HWREG(MDIO_BASE + MDIO_LINKINTRAW)
 
#define MDIO_LINKINTMASKED_R   HWREG(MDIO_BASE + MDIO_LINKINTMASKED)
 
#define MDIO_USERINTRAW_R   HWREG(MDIO_BASE + MDIO_USERINTRAW)
 
#define MDIO_USERINTMASKED_R   HWREG(MDIO_BASE + MDIO_USERINTMASKED)
 
#define MDIO_USERINTMASKSET_R   HWREG(MDIO_BASE + MDIO_USERINTMASKSET)
 
#define MDIO_USERINTMASKCLEAR_R   HWREG(MDIO_BASE + MDIO_USERINTMASKCLEAR)
 
#define MDIO_USERACCESS0_R   HWREG(MDIO_BASE + MDIO_USERACCESS0)
 
#define MDIO_USERPHYSEL0_R   HWREG(MDIO_BASE + MDIO_USERPHYSEL0)
 
#define MDIO_USERACCESS1_R   HWREG(MDIO_BASE + MDIO_USERACCESS1)
 
#define MDIO_USERPHYSEL1_R   HWREG(MDIO_BASE + MDIO_USERPHYSEL1)
 
#define EMAC_MACEOIVECTOR_C0RXTHRESH   0x00000000
 
#define EMAC_MACEOIVECTOR_C0RX   0x00000001
 
#define EMAC_MACEOIVECTOR_C0TX   0x00000002
 
#define EMAC_MACEOIVECTOR_C0MISC   0x00000003
 
#define EMAC_MACEOIVECTOR_C1RXTHRESH   0x00000004
 
#define EMAC_MACEOIVECTOR_C1RX   0x00000005
 
#define EMAC_MACEOIVECTOR_C1TX   0x00000006
 
#define EMAC_MACEOIVECTOR_C1MISC   0x00000007
 
#define EMAC_MACEOIVECTOR_C2RXTHRESH   0x00000008
 
#define EMAC_MACEOIVECTOR_C2RX   0x00000009
 
#define EMAC_MACEOIVECTOR_C2TX   0x0000000A
 
#define EMAC_MACEOIVECTOR_C2MISC   0x0000000B
 
#define EMAC_TX_WORD0_NEXT_DESC_POINTER   0xFFFFFFFF
 
#define EMAC_TX_WORD1_BUFFER_POINTER   0xFFFFFFFF
 
#define EMAC_TX_WORD2_BUFFER_OFFSET   0xFFFF0000
 
#define EMAC_TX_WORD2_BUFFER_LENGTH   0x0000FFFF
 
#define EMAC_TX_WORD3_SOP   0x80000000
 
#define EMAC_TX_WORD3_EOP   0x40000000
 
#define EMAC_TX_WORD3_OWNER   0x20000000
 
#define EMAC_TX_WORD3_EOQ   0x10000000
 
#define EMAC_TX_WORD3_TDOWNCMPLT   0x08000000
 
#define EMAC_TX_WORD3_PASSCRC   0x04000000
 
#define EMAC_TX_WORD3_PACKET_LENGTH   0x0000FFFF
 
#define EMAC_RX_WORD0_NEXT_DESC_POINTER   0xFFFFFFFF
 
#define EMAC_RX_WORD1_BUFFER_POINTER   0xFFFFFFFF
 
#define EMAC_RX_WORD2_BUFFER_OFFSET   0x07FF0000
 
#define EMAC_RX_WORD2_BUFFER_LENGTH   0x000007FF
 
#define EMAC_RX_WORD3_SOP   0x80000000
 
#define EMAC_RX_WORD3_EOP   0x40000000
 
#define EMAC_RX_WORD3_OWNER   0x20000000
 
#define EMAC_RX_WORD3_EOQ   0x10000000
 
#define EMAC_RX_WORD3_TDOWNCMPLT   0x08000000
 
#define EMAC_RX_WORD3_PASSCRC   0x04000000
 
#define EMAC_RX_WORD3_ERROR_MASK   0x03FF0000
 
#define EMAC_RX_WORD3_JABBER   0x02000000
 
#define EMAC_RX_WORD3_OVERSIZE   0x01000000
 
#define EMAC_RX_WORD3_FRAGMENT   0x00800000
 
#define EMAC_RX_WORD3_UNDERSIZED   0x00400000
 
#define EMAC_RX_WORD3_CONTROL   0x00200000
 
#define EMAC_RX_WORD3_OVERRUN   0x00100000
 
#define EMAC_RX_WORD3_CODEERROR   0x00080000
 
#define EMAC_RX_WORD3_ALIGNERROR   0x00040000
 
#define EMAC_RX_WORD3_CRCERROR   0x00020000
 
#define EMAC_RX_WORD3_NOMATCH   0x00010000
 
#define EMAC_RX_WORD3_PACKET_LENGTH   0x0000FFFF
 

Typedefs

typedef struct _Rm57TxBufferDesc Rm57TxBufferDesc
 TX buffer descriptor. More...
 
typedef struct _Rm57RxBufferDesc Rm57RxBufferDesc
 RX buffer descriptor. More...
 

Functions

error_t rm57EthInit (NetInterface *interface)
 RM57 Ethernet MAC initialization. More...
 
void rm57EthInitGpio (NetInterface *interface)
 GPIO configuration. More...
 
void rm57EthInitBufferDesc (NetInterface *interface)
 Initialize buffer descriptor lists. More...
 
void rm57EthTick (NetInterface *interface)
 RM57 Ethernet MAC timer handler. More...
 
void rm57EthEnableIrq (NetInterface *interface)
 Enable interrupts. More...
 
void rm57EthDisableIrq (NetInterface *interface)
 Disable interrupts. More...
 
void rm57EthTxIrqHandler (void)
 Ethernet MAC transmit interrupt. More...
 
void rm57EthRxIrqHandler (void)
 Ethernet MAC receive interrupt. More...
 
void rm57EthEventHandler (NetInterface *interface)
 RM57 Ethernet MAC event handler. More...
 
error_t rm57EthSendPacket (NetInterface *interface, const NetBuffer *buffer, size_t offset, NetTxAncillary *ancillary)
 Send a packet. More...
 
error_t rm57EthReceivePacket (NetInterface *interface)
 Receive a packet. More...
 
error_t rm57EthUpdateMacAddrFilter (NetInterface *interface)
 Configure MAC address filtering. More...
 
error_t rm57EthUpdateMacConfig (NetInterface *interface)
 Adjust MAC configuration parameters for proper operation. More...
 
void rm57EthWritePhyReg (uint8_t opcode, uint8_t phyAddr, uint8_t regAddr, uint16_t data)
 Write PHY register. More...
 
uint16_t rm57EthReadPhyReg (uint8_t opcode, uint8_t phyAddr, uint8_t regAddr)
 Read PHY register. More...
 

Variables

const NicDriver rm57EthDriver
 RM57 Ethernet MAC driver. More...
 

Detailed Description

RM57 Ethernet MAC driver.

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2010-2024 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneTCP Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.4.0

Definition in file rm57_eth_driver.h.

Macro Definition Documentation

◆ EMAC_BOFFTEST_R

#define EMAC_BOFFTEST_R   HWREG(EMAC_BASE + EMAC_BOFFTEST)

Definition at line 147 of file rm57_eth_driver.h.

◆ EMAC_CH0

#define EMAC_CH0   0

Definition at line 95 of file rm57_eth_driver.h.

◆ EMAC_CH1

#define EMAC_CH1   1

Definition at line 96 of file rm57_eth_driver.h.

◆ EMAC_CH2

#define EMAC_CH2   2

Definition at line 97 of file rm57_eth_driver.h.

◆ EMAC_CH3

#define EMAC_CH3   3

Definition at line 98 of file rm57_eth_driver.h.

◆ EMAC_CH4

#define EMAC_CH4   4

Definition at line 99 of file rm57_eth_driver.h.

◆ EMAC_CH5

#define EMAC_CH5   5

Definition at line 100 of file rm57_eth_driver.h.

◆ EMAC_CH6

#define EMAC_CH6   6

Definition at line 101 of file rm57_eth_driver.h.

◆ EMAC_CH7

#define EMAC_CH7   7

Definition at line 102 of file rm57_eth_driver.h.

◆ EMAC_CORE0

#define EMAC_CORE0   0

Definition at line 90 of file rm57_eth_driver.h.

◆ EMAC_CORE1

#define EMAC_CORE1   1

Definition at line 91 of file rm57_eth_driver.h.

◆ EMAC_CORE2

#define EMAC_CORE2   2

Definition at line 92 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C0MISCSTAT_R

#define EMAC_CTRL_C0MISCSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0MISCSTAT)

Definition at line 206 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C0RXIMAX_R

#define EMAC_CTRL_C0RXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXIMAX)

Definition at line 215 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C0RXSTAT_R

#define EMAC_CTRL_C0RXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXSTAT)

Definition at line 204 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C0RXTHRESHEN_R

#define EMAC_CTRL_C0RXTHRESHEN_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXTHRESHEN)

Definition at line 198 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C0RXTHRESHSTAT_R

#define EMAC_CTRL_C0RXTHRESHSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0RXTHRESHSTAT)

Definition at line 203 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C0TXIMAX_R

#define EMAC_CTRL_C0TXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0TXIMAX)

Definition at line 216 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C0TXSTAT_R

#define EMAC_CTRL_C0TXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C0TXSTAT)

Definition at line 205 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C1MISCSTAT_R

#define EMAC_CTRL_C1MISCSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1MISCSTAT)

Definition at line 210 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C1RXIMAX_R

#define EMAC_CTRL_C1RXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1RXIMAX)

Definition at line 217 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C1RXSTAT_R

#define EMAC_CTRL_C1RXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1RXTHRESHSTAT)

Definition at line 208 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C1RXTHRESHSTAT_R

#define EMAC_CTRL_C1RXTHRESHSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1RXTHRESHSTAT)

Definition at line 207 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C1TXIMAX_R

#define EMAC_CTRL_C1TXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1TXIMAX)

Definition at line 218 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C1TXSTAT_R

#define EMAC_CTRL_C1TXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C1TXSTAT)

Definition at line 209 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C2MISCSTAT_R

#define EMAC_CTRL_C2MISCSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2MISCSTAT)

Definition at line 214 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C2RXIMAX_R

#define EMAC_CTRL_C2RXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2RXIMAX)

Definition at line 219 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C2RXSTAT_R

#define EMAC_CTRL_C2RXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2RXSTAT)

Definition at line 212 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C2RXTHRESHSTAT_R

#define EMAC_CTRL_C2RXTHRESHSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2RXTHRESHSTAT)

Definition at line 211 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C2TXIMAX_R

#define EMAC_CTRL_C2TXIMAX_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2TXIMAX)

Definition at line 220 of file rm57_eth_driver.h.

◆ EMAC_CTRL_C2TXSTAT_R

#define EMAC_CTRL_C2TXSTAT_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_C2TXSTAT)

Definition at line 213 of file rm57_eth_driver.h.

◆ EMAC_CTRL_CnMISCEN_R

#define EMAC_CTRL_CnMISCEN_R (   n)    HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnMISCEN(n))

Definition at line 201 of file rm57_eth_driver.h.

◆ EMAC_CTRL_CnRXEN_R

#define EMAC_CTRL_CnRXEN_R (   n)    HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnRXEN(n))

Definition at line 199 of file rm57_eth_driver.h.

◆ EMAC_CTRL_CnRXTHRESHEN_R

#define EMAC_CTRL_CnRXTHRESHEN_R (   n)    HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnRXTHRESHEN(n))

Definition at line 202 of file rm57_eth_driver.h.

◆ EMAC_CTRL_CnTXEN_R

#define EMAC_CTRL_CnTXEN_R (   n)    HWREG(EMAC_CTRL_BASE + EMAC_CTRL_CnTXEN(n))

Definition at line 200 of file rm57_eth_driver.h.

◆ EMAC_CTRL_INTCONTRO_R

#define EMAC_CTRL_INTCONTRO_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_INTCONTROL)

Definition at line 197 of file rm57_eth_driver.h.

◆ EMAC_CTRL_REVID_R

#define EMAC_CTRL_REVID_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_REVID)

Definition at line 195 of file rm57_eth_driver.h.

◆ EMAC_CTRL_SOFTRESET_R

#define EMAC_CTRL_SOFTRESET_R   HWREG(EMAC_CTRL_BASE + EMAC_CTRL_SOFTRESET)

Definition at line 196 of file rm57_eth_driver.h.

◆ EMAC_EMCONTROL_R

#define EMAC_EMCONTROL_R   HWREG(EMAC_BASE + EMAC_EMCONTROL)

Definition at line 139 of file rm57_eth_driver.h.

◆ EMAC_FIFOCONTROL_R

#define EMAC_FIFOCONTROL_R   HWREG(EMAC_BASE + EMAC_FIFOCONTROL)

Definition at line 140 of file rm57_eth_driver.h.

◆ EMAC_FRAME1024TUP_R

#define EMAC_FRAME1024TUP_R   HWREG(EMAC_BASE + EMAC_FRAME1024TUP)

Definition at line 181 of file rm57_eth_driver.h.

◆ EMAC_FRAME128T255_R

#define EMAC_FRAME128T255_R   HWREG(EMAC_BASE + EMAC_FRAME128T255)

Definition at line 178 of file rm57_eth_driver.h.

◆ EMAC_FRAME256T511_R

#define EMAC_FRAME256T511_R   HWREG(EMAC_BASE + EMAC_FRAME256T511)

Definition at line 179 of file rm57_eth_driver.h.

◆ EMAC_FRAME512T1023_R

#define EMAC_FRAME512T1023_R   HWREG(EMAC_BASE + EMAC_FRAME512T1023)

Definition at line 180 of file rm57_eth_driver.h.

◆ EMAC_FRAME64_R

#define EMAC_FRAME64_R   HWREG(EMAC_BASE + EMAC_FRAME64)

Definition at line 176 of file rm57_eth_driver.h.

◆ EMAC_FRAME65T127_R

#define EMAC_FRAME65T127_R   HWREG(EMAC_BASE + EMAC_FRAME65T127)

Definition at line 177 of file rm57_eth_driver.h.

◆ EMAC_MACADDRHI_R

#define EMAC_MACADDRHI_R   HWREG(EMAC_BASE + EMAC_MACADDRHI)

Definition at line 187 of file rm57_eth_driver.h.

◆ EMAC_MACADDRLO_R

#define EMAC_MACADDRLO_R   HWREG(EMAC_BASE + EMAC_MACADDRLO)

Definition at line 186 of file rm57_eth_driver.h.

◆ EMAC_MACCONFIG_R

#define EMAC_MACCONFIG_R   HWREG(EMAC_BASE + EMAC_MACCONFIG)

Definition at line 141 of file rm57_eth_driver.h.

◆ EMAC_MACCONTROL_R

#define EMAC_MACCONTROL_R   HWREG(EMAC_BASE + EMAC_MACCONTROL)

Definition at line 137 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C0MISC

#define EMAC_MACEOIVECTOR_C0MISC   0x00000003

Definition at line 242 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C0RX

#define EMAC_MACEOIVECTOR_C0RX   0x00000001

Definition at line 240 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C0RXTHRESH

#define EMAC_MACEOIVECTOR_C0RXTHRESH   0x00000000

Definition at line 239 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C0TX

#define EMAC_MACEOIVECTOR_C0TX   0x00000002

Definition at line 241 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C1MISC

#define EMAC_MACEOIVECTOR_C1MISC   0x00000007

Definition at line 246 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C1RX

#define EMAC_MACEOIVECTOR_C1RX   0x00000005

Definition at line 244 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C1RXTHRESH

#define EMAC_MACEOIVECTOR_C1RXTHRESH   0x00000004

Definition at line 243 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C1TX

#define EMAC_MACEOIVECTOR_C1TX   0x00000006

Definition at line 245 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C2MISC

#define EMAC_MACEOIVECTOR_C2MISC   0x0000000B

Definition at line 250 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C2RX

#define EMAC_MACEOIVECTOR_C2RX   0x00000009

Definition at line 248 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C2RXTHRESH

#define EMAC_MACEOIVECTOR_C2RXTHRESH   0x00000008

Definition at line 247 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_C2TX

#define EMAC_MACEOIVECTOR_C2TX   0x0000000A

Definition at line 249 of file rm57_eth_driver.h.

◆ EMAC_MACEOIVECTOR_R

#define EMAC_MACEOIVECTOR_R   HWREG(EMAC_BASE + EMAC_MACEOIVECTOR)

Definition at line 120 of file rm57_eth_driver.h.

◆ EMAC_MACHASH1_R

#define EMAC_MACHASH1_R   HWREG(EMAC_BASE + EMAC_MACHASH1)

Definition at line 145 of file rm57_eth_driver.h.

◆ EMAC_MACHASH2_R

#define EMAC_MACHASH2_R   HWREG(EMAC_BASE + EMAC_MACHASH2)

Definition at line 146 of file rm57_eth_driver.h.

◆ EMAC_MACINDEX_R

#define EMAC_MACINDEX_R   HWREG(EMAC_BASE + EMAC_MACINDEX)

Definition at line 188 of file rm57_eth_driver.h.

◆ EMAC_MACINTMASKCLEAR_R

#define EMAC_MACINTMASKCLEAR_R   HWREG(EMAC_BASE + EMAC_MACINTMASKCLEAR)

Definition at line 128 of file rm57_eth_driver.h.

◆ EMAC_MACINTMASKSET_R

#define EMAC_MACINTMASKSET_R   HWREG(EMAC_BASE + EMAC_MACINTMASKSET)

Definition at line 127 of file rm57_eth_driver.h.

◆ EMAC_MACINTSTATMASKED_R

#define EMAC_MACINTSTATMASKED_R   HWREG(EMAC_BASE + EMAC_MACINTSTATMASKED)

Definition at line 126 of file rm57_eth_driver.h.

◆ EMAC_MACINTSTATRAW_R

#define EMAC_MACINTSTATRAW_R   HWREG(EMAC_BASE + EMAC_MACINTSTATRAW)

Definition at line 125 of file rm57_eth_driver.h.

◆ EMAC_MACINVECTOR_R

#define EMAC_MACINVECTOR_R   HWREG(EMAC_BASE + EMAC_MACINVECTOR)

Definition at line 119 of file rm57_eth_driver.h.

◆ EMAC_MACSRCADDRHI_R

#define EMAC_MACSRCADDRHI_R   HWREG(EMAC_BASE + EMAC_MACSRCADDRHI)

Definition at line 144 of file rm57_eth_driver.h.

◆ EMAC_MACSRCADDRLO_R

#define EMAC_MACSRCADDRLO_R   HWREG(EMAC_BASE + EMAC_MACSRCADDRLO)

Definition at line 143 of file rm57_eth_driver.h.

◆ EMAC_MACSTATUS_R

#define EMAC_MACSTATUS_R   HWREG(EMAC_BASE + EMAC_MACSTATUS)

Definition at line 138 of file rm57_eth_driver.h.

◆ EMAC_NETOCTETS_R

#define EMAC_NETOCTETS_R   HWREG(EMAC_BASE + EMAC_NETOCTETS)

Definition at line 182 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD0_NEXT_DESC_POINTER

#define EMAC_RX_WORD0_NEXT_DESC_POINTER   0xFFFFFFFF

Definition at line 266 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD1_BUFFER_POINTER

#define EMAC_RX_WORD1_BUFFER_POINTER   0xFFFFFFFF

Definition at line 267 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD2_BUFFER_LENGTH

#define EMAC_RX_WORD2_BUFFER_LENGTH   0x000007FF

Definition at line 269 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD2_BUFFER_OFFSET

#define EMAC_RX_WORD2_BUFFER_OFFSET   0x07FF0000

Definition at line 268 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_ALIGNERROR

#define EMAC_RX_WORD3_ALIGNERROR   0x00040000

Definition at line 284 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_CODEERROR

#define EMAC_RX_WORD3_CODEERROR   0x00080000

Definition at line 283 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_CONTROL

#define EMAC_RX_WORD3_CONTROL   0x00200000

Definition at line 281 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_CRCERROR

#define EMAC_RX_WORD3_CRCERROR   0x00020000

Definition at line 285 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_EOP

#define EMAC_RX_WORD3_EOP   0x40000000

Definition at line 271 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_EOQ

#define EMAC_RX_WORD3_EOQ   0x10000000

Definition at line 273 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_ERROR_MASK

#define EMAC_RX_WORD3_ERROR_MASK   0x03FF0000

Definition at line 276 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_FRAGMENT

#define EMAC_RX_WORD3_FRAGMENT   0x00800000

Definition at line 279 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_JABBER

#define EMAC_RX_WORD3_JABBER   0x02000000

Definition at line 277 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_NOMATCH

#define EMAC_RX_WORD3_NOMATCH   0x00010000

Definition at line 286 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_OVERRUN

#define EMAC_RX_WORD3_OVERRUN   0x00100000

Definition at line 282 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_OVERSIZE

#define EMAC_RX_WORD3_OVERSIZE   0x01000000

Definition at line 278 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_OWNER

#define EMAC_RX_WORD3_OWNER   0x20000000

Definition at line 272 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_PACKET_LENGTH

#define EMAC_RX_WORD3_PACKET_LENGTH   0x0000FFFF

Definition at line 287 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_PASSCRC

#define EMAC_RX_WORD3_PASSCRC   0x04000000

Definition at line 275 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_SOP

#define EMAC_RX_WORD3_SOP   0x80000000

Definition at line 270 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_TDOWNCMPLT

#define EMAC_RX_WORD3_TDOWNCMPLT   0x08000000

Definition at line 274 of file rm57_eth_driver.h.

◆ EMAC_RX_WORD3_UNDERSIZED

#define EMAC_RX_WORD3_UNDERSIZED   0x00400000

Definition at line 280 of file rm57_eth_driver.h.

◆ EMAC_RXALIGNCODEERRORS_R

#define EMAC_RXALIGNCODEERRORS_R   HWREG(EMAC_BASE + EMACEMAC_RXOVERSIZED)

Definition at line 156 of file rm57_eth_driver.h.

◆ EMAC_RXBCASTFRAMES_R

#define EMAC_RXBCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_RXBCASTFRAMES)

Definition at line 152 of file rm57_eth_driver.h.

◆ EMAC_RXBUFFEROFFSET_R

#define EMAC_RXBUFFEROFFSET_R   HWREG(EMAC_BASE + EMAC_RXBUFFEROFFSET)

Definition at line 133 of file rm57_eth_driver.h.

◆ EMAC_RXCONTROL_R

#define EMAC_RXCONTROL_R   HWREG(EMAC_BASE + EMAC_RXCONTROL)

Definition at line 113 of file rm57_eth_driver.h.

◆ EMAC_RXCP_R

#define EMAC_RXCP_R (   n)    HWREG(EMAC_BASE + EMAC_RXCP(n))

Definition at line 192 of file rm57_eth_driver.h.

◆ EMAC_RXCRCERRORS_R

#define EMAC_RXCRCERRORS_R   HWREG(EMAC_BASE + EMAC_RXCRCERRORS)

Definition at line 155 of file rm57_eth_driver.h.

◆ EMAC_RXDMAOVERRUNS_R

#define EMAC_RXDMAOVERRUNS_R   HWREG(EMAC_BASE + EMAC_RXDMAOVERRUNS)

Definition at line 185 of file rm57_eth_driver.h.

◆ EMAC_RXFILTERED_R

#define EMAC_RXFILTERED_R   HWREG(EMAC_BASE + EMAC_RXFILTERED)

Definition at line 160 of file rm57_eth_driver.h.

◆ EMAC_RXFILTERLOWTHRESH_R

#define EMAC_RXFILTERLOWTHRESH_R   HWREG(EMAC_BASE + EMAC_RXFILTERLOWTHRESH)

Definition at line 134 of file rm57_eth_driver.h.

◆ EMAC_RXFLOWTHRESH_R

#define EMAC_RXFLOWTHRESH_R (   n)    HWREG(EMAC_BASE + EMAC_RXFLOWTHRESH(n))

Definition at line 135 of file rm57_eth_driver.h.

◆ EMAC_RXFRAGMENTS_R

#define EMAC_RXFRAGMENTS_R   HWREG(EMAC_BASE + EMAC_RXFRAGMENTS)

Definition at line 159 of file rm57_eth_driver.h.

◆ EMAC_RXFREEBUFFER_R

#define EMAC_RXFREEBUFFER_R (   n)    HWREG(EMAC_BASE + EMAC_RXFREEBUFFER(n))

Definition at line 136 of file rm57_eth_driver.h.

◆ EMAC_RXGOODFRAMES_R

#define EMAC_RXGOODFRAMES_R   HWREG(EMAC_BASE + EMAC_RXGOODFRAMES)

Definition at line 151 of file rm57_eth_driver.h.

◆ EMAC_RXHDP_R

#define EMAC_RXHDP_R (   n)    HWREG(EMAC_BASE + EMAC_RXHDP(n))

Definition at line 190 of file rm57_eth_driver.h.

◆ EMAC_RXINTMASKCLEAR_R

#define EMAC_RXINTMASKCLEAR_R   HWREG(EMAC_BASE + EMAC_RXINTMASKCLEAR)

Definition at line 124 of file rm57_eth_driver.h.

◆ EMAC_RXINTMASKSET_R

#define EMAC_RXINTMASKSET_R   HWREG(EMAC_BASE + EMAC_RXINTMASKSET)

Definition at line 123 of file rm57_eth_driver.h.

◆ EMAC_RXINTSTATMASKED_R

#define EMAC_RXINTSTATMASKED_R   HWREG(EMAC_BASE + EMAC_RXINTSTATMASKED)

Definition at line 122 of file rm57_eth_driver.h.

◆ EMAC_RXINTSTATRAW_R

#define EMAC_RXINTSTATRAW_R   HWREG(EMAC_BASE + EMAC_RXINTSTATRAW)

Definition at line 121 of file rm57_eth_driver.h.

◆ EMAC_RXJABBER_R

#define EMAC_RXJABBER_R   HWREG(EMAC_BASE + EMAC_RXJABBER)

Definition at line 157 of file rm57_eth_driver.h.

◆ EMAC_RXMAXLEN_R

#define EMAC_RXMAXLEN_R   HWREG(EMAC_BASE + EMAC_RXMAXLEN)

Definition at line 132 of file rm57_eth_driver.h.

◆ EMAC_RXMBPENABLE_R

#define EMAC_RXMBPENABLE_R   HWREG(EMAC_BASE + EMAC_RXMBPENABLE)

Definition at line 129 of file rm57_eth_driver.h.

◆ EMAC_RXMCASTFRAMES_R

#define EMAC_RXMCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_RXMCASTFRAMES)

Definition at line 153 of file rm57_eth_driver.h.

◆ EMAC_RXMOFOVERRUNS_R

#define EMAC_RXMOFOVERRUNS_R   HWREG(EMAC_BASE + EMAC_RXMOFOVERRUNS)

Definition at line 184 of file rm57_eth_driver.h.

◆ EMAC_RXOCTETS_R

#define EMAC_RXOCTETS_R   HWREG(EMAC_BASE + EMAC_RXOCTETS)

Definition at line 162 of file rm57_eth_driver.h.

◆ EMAC_RXPAUSE_R

#define EMAC_RXPAUSE_R   HWREG(EMAC_BASE + EMAC_RXPAUSE)

Definition at line 149 of file rm57_eth_driver.h.

◆ EMAC_RXPAUSEFRAMES_R

#define EMAC_RXPAUSEFRAMES_R   HWREG(EMAC_BASE + EMAC_RXPAUSEFRAMES)

Definition at line 154 of file rm57_eth_driver.h.

◆ EMAC_RXQOSFILTERED_R

#define EMAC_RXQOSFILTERED_R   HWREG(EMAC_BASE + EMAC_RXQOSFILTERED)

Definition at line 161 of file rm57_eth_driver.h.

◆ EMAC_RXREVID_R

#define EMAC_RXREVID_R   HWREG(EMAC_BASE + EMAC_RXREVID)

Definition at line 112 of file rm57_eth_driver.h.

◆ EMAC_RXSOFOVERRUNS_R

#define EMAC_RXSOFOVERRUNS_R   HWREG(EMAC_BASE + EMAC_RXSOFOVERRUNS)

Definition at line 183 of file rm57_eth_driver.h.

◆ EMAC_RXTEARDOWN_R

#define EMAC_RXTEARDOWN_R   HWREG(EMAC_BASE + EMAC_RXTEARDOWN)

Definition at line 114 of file rm57_eth_driver.h.

◆ EMAC_RXUNDERSIZED_R

#define EMAC_RXUNDERSIZED_R   HWREG(EMAC_BASE + EMAC_RXUNDERSIZED)

Definition at line 158 of file rm57_eth_driver.h.

◆ EMAC_RXUNICASTCLEAR_R

#define EMAC_RXUNICASTCLEAR_R   HWREG(EMAC_BASE + EMAC_RXUNICASTCLEAR)

Definition at line 131 of file rm57_eth_driver.h.

◆ EMAC_RXUNICASTSET_R

#define EMAC_RXUNICASTSET_R   HWREG(EMAC_BASE + EMAC_RXUNICASTSET)

Definition at line 130 of file rm57_eth_driver.h.

◆ EMAC_SOFTRESET_R

#define EMAC_SOFTRESET_R   HWREG(EMAC_BASE + EMAC_SOFTRESET)

Definition at line 142 of file rm57_eth_driver.h.

◆ EMAC_TPACETEST_R

#define EMAC_TPACETEST_R   HWREG(EMAC_BASE + EMAC_TPACETEST)

Definition at line 148 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD0_NEXT_DESC_POINTER

#define EMAC_TX_WORD0_NEXT_DESC_POINTER   0xFFFFFFFF

Definition at line 253 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD1_BUFFER_POINTER

#define EMAC_TX_WORD1_BUFFER_POINTER   0xFFFFFFFF

Definition at line 254 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD2_BUFFER_LENGTH

#define EMAC_TX_WORD2_BUFFER_LENGTH   0x0000FFFF

Definition at line 256 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD2_BUFFER_OFFSET

#define EMAC_TX_WORD2_BUFFER_OFFSET   0xFFFF0000

Definition at line 255 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD3_EOP

#define EMAC_TX_WORD3_EOP   0x40000000

Definition at line 258 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD3_EOQ

#define EMAC_TX_WORD3_EOQ   0x10000000

Definition at line 260 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD3_OWNER

#define EMAC_TX_WORD3_OWNER   0x20000000

Definition at line 259 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD3_PACKET_LENGTH

#define EMAC_TX_WORD3_PACKET_LENGTH   0x0000FFFF

Definition at line 263 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD3_PASSCRC

#define EMAC_TX_WORD3_PASSCRC   0x04000000

Definition at line 262 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD3_SOP

#define EMAC_TX_WORD3_SOP   0x80000000

Definition at line 257 of file rm57_eth_driver.h.

◆ EMAC_TX_WORD3_TDOWNCMPLT

#define EMAC_TX_WORD3_TDOWNCMPLT   0x08000000

Definition at line 261 of file rm57_eth_driver.h.

◆ EMAC_TXBCASTFRAMES_R

#define EMAC_TXBCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_TXBCASTFRAMES)

Definition at line 164 of file rm57_eth_driver.h.

◆ EMAC_TXCARRIERSENSE_R

#define EMAC_TXCARRIERSENSE_R   HWREG(EMAC_BASE + EMAC_TXCARRIERSENSE)

Definition at line 174 of file rm57_eth_driver.h.

◆ EMAC_TXCOLLISION_R

#define EMAC_TXCOLLISION_R   HWREG(EMAC_BASE + EMAC_TXCOLLISION)

Definition at line 168 of file rm57_eth_driver.h.

◆ EMAC_TXCONTROL_R

#define EMAC_TXCONTROL_R   HWREG(EMAC_BASE + EMAC_TXCONTROL)

Definition at line 110 of file rm57_eth_driver.h.

◆ EMAC_TXCP_R

#define EMAC_TXCP_R (   n)    HWREG(EMAC_BASE + EMAC_TXCP(n))

Definition at line 191 of file rm57_eth_driver.h.

◆ EMAC_TXDEFERRED_R

#define EMAC_TXDEFERRED_R   HWREG(EMAC_BASE + EMAC_TXDEFERRED)

Definition at line 167 of file rm57_eth_driver.h.

◆ EMAC_TXEXCESSIVECOLL_R

#define EMAC_TXEXCESSIVECOLL_R   HWREG(EMAC_BASE + EMAC_TXEXCESSIVECOLL)

Definition at line 171 of file rm57_eth_driver.h.

◆ EMAC_TXGOODFRAMES_R

#define EMAC_TXGOODFRAMES_R   HWREG(EMAC_BASE + EMAC_TXGOODFRAMES)

Definition at line 163 of file rm57_eth_driver.h.

◆ EMAC_TXHDP_R

#define EMAC_TXHDP_R (   n)    HWREG(EMAC_BASE + EMAC_TXHDP(n))

Definition at line 189 of file rm57_eth_driver.h.

◆ EMAC_TXINTMASKCLEAR_R

#define EMAC_TXINTMASKCLEAR_R   HWREG(EMAC_BASE + EMAC_TXINTMASKCLEAR)

Definition at line 118 of file rm57_eth_driver.h.

◆ EMAC_TXINTMASKSET_R

#define EMAC_TXINTMASKSET_R   HWREG(EMAC_BASE + EMAC_TXINTMASKSET)

Definition at line 117 of file rm57_eth_driver.h.

◆ EMAC_TXINTSTATMASKED_R

#define EMAC_TXINTSTATMASKED_R   HWREG(EMAC_BASE + EMAC_TXINTSTATMASKED)

Definition at line 116 of file rm57_eth_driver.h.

◆ EMAC_TXINTSTATRAW_R

#define EMAC_TXINTSTATRAW_R   HWREG(EMAC_BASE + EMAC_TXINTSTATRAW)

Definition at line 115 of file rm57_eth_driver.h.

◆ EMAC_TXLATECOLL_R

#define EMAC_TXLATECOLL_R   HWREG(EMAC_BASE + EMAC_TXLATECOLL)

Definition at line 172 of file rm57_eth_driver.h.

◆ EMAC_TXMCASTFRAMES_R

#define EMAC_TXMCASTFRAMES_R   HWREG(EMAC_BASE + EMAC_TXMCASTFRAMES)

Definition at line 165 of file rm57_eth_driver.h.

◆ EMAC_TXMULTICOLL_R

#define EMAC_TXMULTICOLL_R   HWREG(EMAC_BASE + EMAC_TXMULTICOLL)

Definition at line 170 of file rm57_eth_driver.h.

◆ EMAC_TXOCTETS_R

#define EMAC_TXOCTETS_R   HWREG(EMAC_BASE + EMAC_TXOCTETS)

Definition at line 175 of file rm57_eth_driver.h.

◆ EMAC_TXPAUSE_R

#define EMAC_TXPAUSE_R   HWREG(EMAC_BASE + EMAC_TXPAUSE)

Definition at line 150 of file rm57_eth_driver.h.

◆ EMAC_TXPAUSEFRAMES_R

#define EMAC_TXPAUSEFRAMES_R   HWREG(EMAC_BASE + EMAC_TXPAUSEFRAMES)

Definition at line 166 of file rm57_eth_driver.h.

◆ EMAC_TXREVID_R

#define EMAC_TXREVID_R   HWREG(EMAC_BASE + EMAC_TXREVID)

Definition at line 109 of file rm57_eth_driver.h.

◆ EMAC_TXSINGLECOLL_R

#define EMAC_TXSINGLECOLL_R   HWREG(EMAC_BASE + EMAC_TXSINGLECOLL)

Definition at line 169 of file rm57_eth_driver.h.

◆ EMAC_TXTEARDOWN_R

#define EMAC_TXTEARDOWN_R   HWREG(EMAC_BASE + EMAC_TXTEARDOWN)

Definition at line 111 of file rm57_eth_driver.h.

◆ EMAC_TXUNDERRUN_R

#define EMAC_TXUNDERRUN_R   HWREG(EMAC_BASE + EMAC_TXUNDERRUN)

Definition at line 173 of file rm57_eth_driver.h.

◆ MDIO_ALIVE_R

#define MDIO_ALIVE_R   HWREG(MDIO_BASE + MDIO_ALIVE)

Definition at line 225 of file rm57_eth_driver.h.

◆ MDIO_CONTROL_R

#define MDIO_CONTROL_R   HWREG(MDIO_BASE + MDIO_CONTROL)

Definition at line 224 of file rm57_eth_driver.h.

◆ MDIO_LINK_R

#define MDIO_LINK_R   HWREG(MDIO_BASE + MDIO_LINK)

Definition at line 226 of file rm57_eth_driver.h.

◆ MDIO_LINKINTMASKED_R

#define MDIO_LINKINTMASKED_R   HWREG(MDIO_BASE + MDIO_LINKINTMASKED)

Definition at line 228 of file rm57_eth_driver.h.

◆ MDIO_LINKINTRAW_R

#define MDIO_LINKINTRAW_R   HWREG(MDIO_BASE + MDIO_LINKINTRAW)

Definition at line 227 of file rm57_eth_driver.h.

◆ MDIO_REVID_R

#define MDIO_REVID_R   HWREG(MDIO_BASE + MDIO_REVID)

Definition at line 223 of file rm57_eth_driver.h.

◆ MDIO_USERACCESS0_R

#define MDIO_USERACCESS0_R   HWREG(MDIO_BASE + MDIO_USERACCESS0)

Definition at line 233 of file rm57_eth_driver.h.

◆ MDIO_USERACCESS1_R

#define MDIO_USERACCESS1_R   HWREG(MDIO_BASE + MDIO_USERACCESS1)

Definition at line 235 of file rm57_eth_driver.h.

◆ MDIO_USERINTMASKCLEAR_R

#define MDIO_USERINTMASKCLEAR_R   HWREG(MDIO_BASE + MDIO_USERINTMASKCLEAR)

Definition at line 232 of file rm57_eth_driver.h.

◆ MDIO_USERINTMASKED_R

#define MDIO_USERINTMASKED_R   HWREG(MDIO_BASE + MDIO_USERINTMASKED)

Definition at line 230 of file rm57_eth_driver.h.

◆ MDIO_USERINTMASKSET_R

#define MDIO_USERINTMASKSET_R   HWREG(MDIO_BASE + MDIO_USERINTMASKSET)

Definition at line 231 of file rm57_eth_driver.h.

◆ MDIO_USERINTRAW_R

#define MDIO_USERINTRAW_R   HWREG(MDIO_BASE + MDIO_USERINTRAW)

Definition at line 229 of file rm57_eth_driver.h.

◆ MDIO_USERPHYSEL0_R

#define MDIO_USERPHYSEL0_R   HWREG(MDIO_BASE + MDIO_USERPHYSEL0)

Definition at line 234 of file rm57_eth_driver.h.

◆ MDIO_USERPHYSEL1_R

#define MDIO_USERPHYSEL1_R   HWREG(MDIO_BASE + MDIO_USERPHYSEL1)

Definition at line 236 of file rm57_eth_driver.h.

◆ RM57_ETH_RAM_CPPI_SECTION

#define RM57_ETH_RAM_CPPI_SECTION   ".ram_cppi"

Definition at line 86 of file rm57_eth_driver.h.

◆ RM57_ETH_RAM_SECTION

#define RM57_ETH_RAM_SECTION   ".ram_no_cache"

Definition at line 81 of file rm57_eth_driver.h.

◆ RM57_ETH_RX_BUFFER_COUNT

#define RM57_ETH_RX_BUFFER_COUNT   8

Definition at line 53 of file rm57_eth_driver.h.

◆ RM57_ETH_RX_BUFFER_SIZE

#define RM57_ETH_RX_BUFFER_SIZE   1536

Definition at line 60 of file rm57_eth_driver.h.

◆ RM57_ETH_RX_IRQ_CHANNEL

#define RM57_ETH_RX_IRQ_CHANNEL   79

Definition at line 74 of file rm57_eth_driver.h.

◆ RM57_ETH_TX_BUFFER_COUNT

#define RM57_ETH_TX_BUFFER_COUNT   8

Definition at line 39 of file rm57_eth_driver.h.

◆ RM57_ETH_TX_BUFFER_SIZE

#define RM57_ETH_TX_BUFFER_SIZE   1536

Definition at line 46 of file rm57_eth_driver.h.

◆ RM57_ETH_TX_IRQ_CHANNEL

#define RM57_ETH_TX_IRQ_CHANNEL   77

Definition at line 67 of file rm57_eth_driver.h.

◆ SYSCFG0_CFGCHIP3_R

#define SYSCFG0_CFGCHIP3_R   HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_CFGCHIP3)

Definition at line 106 of file rm57_eth_driver.h.

◆ SYSCFG0_PINMUX_R

#define SYSCFG0_PINMUX_R (   n)    HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(n))

Definition at line 105 of file rm57_eth_driver.h.

Typedef Documentation

◆ Rm57RxBufferDesc

RX buffer descriptor.

◆ Rm57TxBufferDesc

TX buffer descriptor.

Function Documentation

◆ rm57EthDisableIrq()

void rm57EthDisableIrq ( NetInterface interface)

Disable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 479 of file rm57_eth_driver.c.

◆ rm57EthEnableIrq()

void rm57EthEnableIrq ( NetInterface interface)

Enable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 450 of file rm57_eth_driver.c.

◆ rm57EthEventHandler()

void rm57EthEventHandler ( NetInterface interface)

RM57 Ethernet MAC event handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 622 of file rm57_eth_driver.c.

◆ rm57EthInit()

error_t rm57EthInit ( NetInterface interface)

RM57 Ethernet MAC initialization.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 128 of file rm57_eth_driver.c.

◆ rm57EthInitBufferDesc()

void rm57EthInitBufferDesc ( NetInterface interface)

Initialize buffer descriptor lists.

Parameters
[in]interfaceUnderlying network interface

Definition at line 339 of file rm57_eth_driver.c.

◆ rm57EthInitGpio()

void rm57EthInitGpio ( NetInterface interface)

GPIO configuration.

Parameters
[in]interfaceUnderlying network interface

Definition at line 312 of file rm57_eth_driver.c.

◆ rm57EthReadPhyReg()

uint16_t rm57EthReadPhyReg ( uint8_t  opcode,
uint8_t  phyAddr,
uint8_t  regAddr 
)

Read PHY register.

Parameters
[in]opcodeAccess type (2 bits)
[in]phyAddrPHY address (5 bits)
[in]regAddrRegister address (5 bits)
Returns
Register value

Definition at line 971 of file rm57_eth_driver.c.

◆ rm57EthReceivePacket()

error_t rm57EthReceivePacket ( NetInterface interface)

Receive a packet.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 728 of file rm57_eth_driver.c.

◆ rm57EthRxIrqHandler()

void rm57EthRxIrqHandler ( void  )

Ethernet MAC receive interrupt.

Definition at line 583 of file rm57_eth_driver.c.

◆ rm57EthSendPacket()

error_t rm57EthSendPacket ( NetInterface interface,
const NetBuffer buffer,
size_t  offset,
NetTxAncillary ancillary 
)

Send a packet.

Parameters
[in]interfaceUnderlying network interface
[in]bufferMulti-part buffer containing the data to send
[in]offsetOffset to the first data byte
[in]ancillaryAdditional options passed to the stack along with the packet
Returns
Error code

Definition at line 650 of file rm57_eth_driver.c.

◆ rm57EthTick()

void rm57EthTick ( NetInterface interface)

RM57 Ethernet MAC timer handler.

This routine is periodically called by the TCP/IP stack to handle periodic operations such as polling the link state

Parameters
[in]interfaceUnderlying network interface

Definition at line 413 of file rm57_eth_driver.c.

◆ rm57EthTxIrqHandler()

void rm57EthTxIrqHandler ( void  )

Ethernet MAC transmit interrupt.

Definition at line 514 of file rm57_eth_driver.c.

◆ rm57EthUpdateMacAddrFilter()

error_t rm57EthUpdateMacAddrFilter ( NetInterface interface)

Configure MAC address filtering.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 826 of file rm57_eth_driver.c.

◆ rm57EthUpdateMacConfig()

error_t rm57EthUpdateMacConfig ( NetInterface interface)

Adjust MAC configuration parameters for proper operation.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 889 of file rm57_eth_driver.c.

◆ rm57EthWritePhyReg()

void rm57EthWritePhyReg ( uint8_t  opcode,
uint8_t  phyAddr,
uint8_t  regAddr,
uint16_t  data 
)

Write PHY register.

Parameters
[in]opcodeAccess type (2 bits)
[in]phyAddrPHY address (5 bits)
[in]regAddrRegister address (5 bits)
[in]dataRegister value

Definition at line 932 of file rm57_eth_driver.c.

Variable Documentation

◆ rm57EthDriver

const NicDriver rm57EthDriver
extern

RM57 Ethernet MAC driver.

Definition at line 101 of file rm57_eth_driver.c.