lpc23xx_eth_driver.h File Reference

LPC2300 Ethernet MAC driver. More...

#include "core/nic.h"

Go to the source code of this file.

Data Structures

struct  Lpc23xxTxDesc
 Transmit descriptor. More...
 
struct  Lpc23xxTxStatus
 Transmit status. More...
 
struct  Lpc23xxRxDesc
 Receive descriptor. More...
 
struct  Lpc23xxRxStatus
 Receive status. More...
 

Macros

#define LPC23XX_ETH_TX_BUFFER_COUNT   2
 
#define LPC23XX_ETH_TX_BUFFER_SIZE   1536
 
#define LPC23XX_ETH_RX_BUFFER_COUNT   4
 
#define LPC23XX_ETH_RX_BUFFER_SIZE   1536
 
#define LPC23XX_ETH_IRQ_PRIORITY   15
 
#define MAC1_SOFT_RESET   0x00008000
 
#define MAC1_SIMULATION_RESET   0x00004000
 
#define MAC1_RESET_MCS_RX   0x00000800
 
#define MAC1_RESET_RX   0x00000400
 
#define MAC1_RESET_MCS_TX   0x00000200
 
#define MAC1_RESET_TX   0x00000100
 
#define MAC1_LOOPBACK   0x00000010
 
#define MAC1_TX_FLOW_CONTROL   0x00000008
 
#define MAC1_RX_FLOW_CONTROL   0x00000004
 
#define MAC1_PASS_ALL_FRAMES   0x00000002
 
#define MAC1_RECEIVE_ENABLE   0x00000001
 
#define MAC2_EXCESS_DEFER   0x00004000
 
#define MAC2_BACK_PRESSURE_NO_BACKOFF   0x00002000
 
#define MAC2_NO_BACKOFF   0x00001000
 
#define MAC2_LONG_PREAMBLE_ENFORCEMENT   0x00000200
 
#define MAC2_PURE_PREAMBLE_ENFORCEMENT   0x00000100
 
#define MAC2_AUTO_DETECT_PAD_ENABLE   0x00000080
 
#define MAC2_VLAN_PAD_ENABLE   0x00000040
 
#define MAC2_PAD_CRC_ENABLE   0x00000020
 
#define MAC2_CRC_ENABLE   0x00000010
 
#define MAC2_DELAYED_CRC   0x00000008
 
#define MAC2_HUGE_FRAME_ENABLE   0x00000004
 
#define MAC2_FRAME_LENGTH_CHECKING   0x00000002
 
#define MAC2_FULL_DUPLEX   0x00000001
 
#define IPGT_BACK_TO_BACK_IPG   0x0000007F
 
#define IPGT_HALF_DUPLEX   0x00000012
 
#define IPGT_FULL_DUPLEX   0x00000015
 
#define IPGR_NON_BACK_TO_BACK_IPG1   0x00007F00
 
#define IPGR_NON_BACK_TO_BACK_IPG2   0x0000007F
 
#define IPGR_DEFAULT_VALUE   0x00000C12
 
#define CLRT_COLLISION_WINDOW   0x00003F00
 
#define CLRT_RETRANSMISSION_MAXIMUM   0x00003F00
 
#define CLRT_DEFAULT_VALUE   0x0000370F
 
#define MAXF_MAXIMUM_FRAME_LENGTH   0x0000FFFF
 
#define SUPP_SPEED   0x00000100
 
#define TEST_BACKPRESSURE   0x00000004
 
#define TEST_PAUSE   0x00000002
 
#define TEST_SHORTCUT_PAUSE_QUANTA   0x00000001
 
#define MCFG_RESET_MII_MGMT   0x00008000
 
#define MCFG_CLOCK   SELECT 0x0000001C
 
#define MCFG_SUPPRESS_PREAMBLE   0x00000002
 
#define MCFG_SCAN_INCREMENT   0x00000001
 
#define MCFG_CLOCK_SELECT_DIV4   0x00000000
 
#define MCFG_CLOCK_SELECT_DIV6   0x00000008
 
#define MCFG_CLOCK_SELECT_DIV8   0x0000000C
 
#define MCFG_CLOCK_SELECT_DIV10   0x00000010
 
#define MCFG_CLOCK_SELECT_DIV14   0x00000014
 
#define MCFG_CLOCK_SELECT_DIV20   0x00000018
 
#define MCFG_CLOCK_SELECT_DIV28   0x0000001C
 
#define MCMD_SCAN   0x00000002
 
#define MCMD_READ   0x00000001
 
#define MADR_PHY_ADDRESS   0x00001F00
 
#define MADR_REGISTER_ADDRESS   0x0000001F
 
#define MWTD_WRITE_DATA   0x0000FFFF
 
#define MRDD_READ_DATA   0x0000FFFF
 
#define MIND_MII_LINK_FAIL   0x00000008
 
#define MIND_NOT_VALID   0x00000004
 
#define MIND_SCANNING   0x00000002
 
#define MIND_BUSY   0x00000001
 
#define COMMAND_FULL_DUPLEX   0x00000400
 
#define COMMAND_RMII   0x00000200
 
#define COMMAND_TX_FLOW_CONTROL   0x00000100
 
#define COMMAND_PASS_RX_FILTER   0x00000080
 
#define COMMAND_PASS_RUNT_FRAME   0x00000040
 
#define COMMAND_RX_RESET   0x00000020
 
#define COMMAND_TX_RESET   0x00000010
 
#define COMMAND_REG_RESET   0x00000008
 
#define COMMAND_TX_ENABLE   0x00000002
 
#define COMMAND_RX_ENABLE   0x00000001
 
#define STATUS_TX   0x00000002
 
#define STATUS_RX   0x00000001
 
#define TSV0_VLAN   0x80000000
 
#define TSV0_BACKPRESSURE   0x40000000
 
#define TSV0_PAUSE   0x20000000
 
#define TSV0_CONTROL_FRAME   0x10000000
 
#define TSV0_TOTAL_BYTES   0x0FFFF000
 
#define TSV0_UNDERRUN   0x00000800
 
#define TSV0_GIANT   0x00000400
 
#define TSV0_LATE_COLLISION   0x00000200
 
#define TSV0_EXCESSIVE_COLLISION   0x00000100
 
#define TSV0_EXCESSIVE_DEFER   0x00000080
 
#define TSV0_PACKET_DEFER   0x00000040
 
#define TSV0_BROADCAST   0x00000020
 
#define TSV0_MULTICAST   0x00000010
 
#define TSV0_DONE   0x00000008
 
#define TSV0_LENGTH_OUT_OF_RANGE   0x00000004
 
#define TSV0_LENGTH_CHECK_ERROR   0x00000002
 
#define TSV0_CRC_ERROR   0x00000001
 
#define TSV1_TRANSMIT_COLLISION_COUNT   0x000F0000
 
#define TSV1_TRANSMIT_BYTE_COUNT   0x0000FFFF
 
#define RSV_VLAN   0x40000000
 
#define RSV_UNSUPPORTED_OPCODE   0x20000000
 
#define RSV_PAUSE   0x10000000
 
#define RSV_CONTROL_FRAME   0x08000000
 
#define RSV_DRIBBLE_NIBBLE   0x04000000
 
#define RSV_BROADCAST   0x02000000
 
#define RSV_MULTICAST   0x01000000
 
#define RSV_RECEIVE_OK   0x00800000
 
#define RSV_LENGTH_OUT_OF_RANGE   0x00400000
 
#define RSV_LENGTH_CHECK_ERROR   0x00200000
 
#define RSV_CRC_ERROR   0x00100000
 
#define RSV_RECEIVE_CODE_VIOLATION   0x00080000
 
#define RSV_CARRIER_EVENT_PREV_SEEN   0x00040000
 
#define RSV_RXDV_EVENT_PREV_SEEN   0x00020000
 
#define RSV_PACKET_PREVIOUSLY_IGNORED   0x00010000
 
#define RSV_RECEIVED_BYTE_COUNT   0x0000FFFF
 
#define FCC_PAUSE_TIMER   0xFFFF0000
 
#define FCC_MIRROR_COUNTER   0x0000FFFF
 
#define FCS_MIRROR_COUNTER_CURRENT   0x0000FFFF
 
#define RFC_RX_FILTER_EN_WOL   0x00002000
 
#define RFC_MAGIC_PACKET_EN_WOL   0x00001000
 
#define RFC_ACCEPT_PERFECT_EN   0x00000020
 
#define RFC_ACCEPT_MULTICAST_HASH_EN   0x00000010
 
#define RFC_ACCEPT_UNICAST_HASH_EN   0x00000008
 
#define RFC_ACCEPT_MULTICAST_EN   0x00000004
 
#define RFC_ACCEPT_BROADCAST_EN   0x00000002
 
#define RFC_ACCEPT_UNICAST_EN   0x00000001
 
#define RFWS_MAGIC_PACKET_WOL   0x00000100
 
#define RFWS_RX_FILTER_WOL   0x00000080
 
#define RFWS_ACCEPT_PERFECT_WOL   0x00000020
 
#define RFWS_ACCEPT_MULTICAST_HASH_WOL   0x00000010
 
#define RFWS_ACCEPT_UNICAST_HASH_WOL   0x00000008
 
#define RFWS_ACCEPT_MULTICAST_WOL   0x00000004
 
#define RFWS_ACCEPT_BROADCAST_WOL   0x00000002
 
#define RFWS_ACCEPT_UNICAST_WOL   0x00000001
 
#define INT_WAKEUP   0x00002000
 
#define INT_SOFT_INT   0x00001000
 
#define INT_TX_DONE   0x00000080
 
#define INT_TX_FINISHED   0x00000040
 
#define INT_TX_ERROR   0x00000020
 
#define INT_TX_UNDERRUN   0x00000010
 
#define INT_RX_DONE   0x00000008
 
#define INT_RX_FINISHED   0x00000004
 
#define INT_RX_ERROR   0x00000002
 
#define INT_RX_OVERRUN   0x00000001
 
#define TX_CTRL_INTERRUPT   0x80000000
 
#define TX_CTRL_LAST   0x40000000
 
#define TX_CTRL_CRC   0x20000000
 
#define TX_CTRL_PAD   0x10000000
 
#define TX_CTRL_HUGE   0x08000000
 
#define TX_CTRL_OVERRIDE   0x04000000
 
#define TX_CTRL_SIZE   0x000007FF
 
#define TX_STATUS_ERROR   0x80000000
 
#define TX_STATUS_NO_DESCRIPTOR   0x40000000
 
#define TX_STATUS_UNDERRUN   0x20000000
 
#define TX_STATUS_LATE_COLLISION   0x10000000
 
#define TX_STATUS_EXCESSIVE_COLLISION   0x08000000
 
#define TX_STATUS_EXCESSIVE_DEFER   0x04000000
 
#define TX_STATUS_DEFER   0x02000000
 
#define TX_STATUS_COLLISION_COUNT   0x01E00000
 
#define RX_CTRL_INTERRUPT   0x80000000
 
#define RX_CTRL_SIZE   0x000007FF
 
#define RX_STATUS_ERROR   0x80000000
 
#define RX_STATUS_LAST_FLAG   0x40000000
 
#define RX_STATUS_NO_DESCRIPTOR   0x20000000
 
#define RX_STATUS_OVERRUN   0x10000000
 
#define RX_STATUS_ALIGNMENT_ERROR   0x08000000
 
#define RX_STATUS_RANGE_ERROR   0x04000000
 
#define RX_STATUS_LENGTH_ERROR   0x02000000
 
#define RX_STATUS_SYMBOL_ERROR   0x01000000
 
#define RX_STATUS_CRC_ERROR   0x00800000
 
#define RX_STATUS_BROADCAST   0x00400000
 
#define RX_STATUS_MULTICAST   0x00200000
 
#define RX_STATUS_FAIL_FILTER   0x00100000
 
#define RX_STATUS_VLAN   0x00080000
 
#define RX_STATUS_CONTROL_FRAME   0x00040000
 
#define RX_STATUS_SIZE   0x000007FF
 
#define RX_HASH_CRC_DA   0x001FF000
 
#define RX_HASH_CRC_SA   0x000001FF
 

Functions

error_t lpc23xxEthInit (NetInterface *interface)
 LPC23xx Ethernet MAC initialization. More...
 
void lpc23xxEthInitGpio (NetInterface *interface)
 GPIO configuration. More...
 
void lpc23xxEthInitDesc (NetInterface *interface)
 Initialize TX and RX descriptors. More...
 
void lpc23xxEthTick (NetInterface *interface)
 LPC23xx Ethernet MAC timer handler. More...
 
void lpc23xxEthEnableIrq (NetInterface *interface)
 Enable interrupts. More...
 
void lpc23xxEthDisableIrq (NetInterface *interface)
 Disable interrupts. More...
 
__irq void lpc23xxEthIrqHandler (void)
 LPC23xx Ethernet MAC interrupt service routine. More...
 
void lpc23xxEthEventHandler (NetInterface *interface)
 LPC23xx Ethernet MAC event handler. More...
 
error_t lpc23xxEthSendPacket (NetInterface *interface, const NetBuffer *buffer, size_t offset, NetTxAncillary *ancillary)
 Send a packet. More...
 
error_t lpc23xxEthReceivePacket (NetInterface *interface)
 Receive a packet. More...
 
error_t lpc23xxEthUpdateMacAddrFilter (NetInterface *interface)
 Configure MAC address filtering. More...
 
error_t lpc23xxEthUpdateMacConfig (NetInterface *interface)
 Adjust MAC configuration parameters for proper operation. More...
 
void lpc23xxEthWritePhyReg (uint8_t opcode, uint8_t phyAddr, uint8_t regAddr, uint16_t data)
 Write PHY register. More...
 
uint16_t lpc23xxEthReadPhyReg (uint8_t opcode, uint8_t phyAddr, uint8_t regAddr)
 Read PHY register. More...
 
uint32_t lpc23xxEthCalcCrc (const void *data, size_t length)
 CRC calculation. More...
 

Variables

const NicDriver lpc23xxEthDriver
 LPC23xx Ethernet MAC driver. More...
 

Detailed Description

LPC2300 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 lpc23xx_eth_driver.h.

Macro Definition Documentation

◆ CLRT_COLLISION_WINDOW

#define CLRT_COLLISION_WINDOW   0x00003F00

Definition at line 111 of file lpc23xx_eth_driver.h.

◆ CLRT_DEFAULT_VALUE

#define CLRT_DEFAULT_VALUE   0x0000370F

Definition at line 113 of file lpc23xx_eth_driver.h.

◆ CLRT_RETRANSMISSION_MAXIMUM

#define CLRT_RETRANSMISSION_MAXIMUM   0x00003F00

Definition at line 112 of file lpc23xx_eth_driver.h.

◆ COMMAND_FULL_DUPLEX

#define COMMAND_FULL_DUPLEX   0x00000400

Definition at line 161 of file lpc23xx_eth_driver.h.

◆ COMMAND_PASS_RUNT_FRAME

#define COMMAND_PASS_RUNT_FRAME   0x00000040

Definition at line 165 of file lpc23xx_eth_driver.h.

◆ COMMAND_PASS_RX_FILTER

#define COMMAND_PASS_RX_FILTER   0x00000080

Definition at line 164 of file lpc23xx_eth_driver.h.

◆ COMMAND_REG_RESET

#define COMMAND_REG_RESET   0x00000008

Definition at line 168 of file lpc23xx_eth_driver.h.

◆ COMMAND_RMII

#define COMMAND_RMII   0x00000200

Definition at line 162 of file lpc23xx_eth_driver.h.

◆ COMMAND_RX_ENABLE

#define COMMAND_RX_ENABLE   0x00000001

Definition at line 170 of file lpc23xx_eth_driver.h.

◆ COMMAND_RX_RESET

#define COMMAND_RX_RESET   0x00000020

Definition at line 166 of file lpc23xx_eth_driver.h.

◆ COMMAND_TX_ENABLE

#define COMMAND_TX_ENABLE   0x00000002

Definition at line 169 of file lpc23xx_eth_driver.h.

◆ COMMAND_TX_FLOW_CONTROL

#define COMMAND_TX_FLOW_CONTROL   0x00000100

Definition at line 163 of file lpc23xx_eth_driver.h.

◆ COMMAND_TX_RESET

#define COMMAND_TX_RESET   0x00000010

Definition at line 167 of file lpc23xx_eth_driver.h.

◆ FCC_MIRROR_COUNTER

#define FCC_MIRROR_COUNTER   0x0000FFFF

Definition at line 219 of file lpc23xx_eth_driver.h.

◆ FCC_PAUSE_TIMER

#define FCC_PAUSE_TIMER   0xFFFF0000

Definition at line 218 of file lpc23xx_eth_driver.h.

◆ FCS_MIRROR_COUNTER_CURRENT

#define FCS_MIRROR_COUNTER_CURRENT   0x0000FFFF

Definition at line 222 of file lpc23xx_eth_driver.h.

◆ INT_RX_DONE

#define INT_RX_DONE   0x00000008

Definition at line 251 of file lpc23xx_eth_driver.h.

◆ INT_RX_ERROR

#define INT_RX_ERROR   0x00000002

Definition at line 253 of file lpc23xx_eth_driver.h.

◆ INT_RX_FINISHED

#define INT_RX_FINISHED   0x00000004

Definition at line 252 of file lpc23xx_eth_driver.h.

◆ INT_RX_OVERRUN

#define INT_RX_OVERRUN   0x00000001

Definition at line 254 of file lpc23xx_eth_driver.h.

◆ INT_SOFT_INT

#define INT_SOFT_INT   0x00001000

Definition at line 246 of file lpc23xx_eth_driver.h.

◆ INT_TX_DONE

#define INT_TX_DONE   0x00000080

Definition at line 247 of file lpc23xx_eth_driver.h.

◆ INT_TX_ERROR

#define INT_TX_ERROR   0x00000020

Definition at line 249 of file lpc23xx_eth_driver.h.

◆ INT_TX_FINISHED

#define INT_TX_FINISHED   0x00000040

Definition at line 248 of file lpc23xx_eth_driver.h.

◆ INT_TX_UNDERRUN

#define INT_TX_UNDERRUN   0x00000010

Definition at line 250 of file lpc23xx_eth_driver.h.

◆ INT_WAKEUP

#define INT_WAKEUP   0x00002000

Definition at line 245 of file lpc23xx_eth_driver.h.

◆ IPGR_DEFAULT_VALUE

#define IPGR_DEFAULT_VALUE   0x00000C12

Definition at line 108 of file lpc23xx_eth_driver.h.

◆ IPGR_NON_BACK_TO_BACK_IPG1

#define IPGR_NON_BACK_TO_BACK_IPG1   0x00007F00

Definition at line 106 of file lpc23xx_eth_driver.h.

◆ IPGR_NON_BACK_TO_BACK_IPG2

#define IPGR_NON_BACK_TO_BACK_IPG2   0x0000007F

Definition at line 107 of file lpc23xx_eth_driver.h.

◆ IPGT_BACK_TO_BACK_IPG

#define IPGT_BACK_TO_BACK_IPG   0x0000007F

Definition at line 101 of file lpc23xx_eth_driver.h.

◆ IPGT_FULL_DUPLEX

#define IPGT_FULL_DUPLEX   0x00000015

Definition at line 103 of file lpc23xx_eth_driver.h.

◆ IPGT_HALF_DUPLEX

#define IPGT_HALF_DUPLEX   0x00000012

Definition at line 102 of file lpc23xx_eth_driver.h.

◆ LPC23XX_ETH_IRQ_PRIORITY

#define LPC23XX_ETH_IRQ_PRIORITY   15

Definition at line 67 of file lpc23xx_eth_driver.h.

◆ LPC23XX_ETH_RX_BUFFER_COUNT

#define LPC23XX_ETH_RX_BUFFER_COUNT   4

Definition at line 53 of file lpc23xx_eth_driver.h.

◆ LPC23XX_ETH_RX_BUFFER_SIZE

#define LPC23XX_ETH_RX_BUFFER_SIZE   1536

Definition at line 60 of file lpc23xx_eth_driver.h.

◆ LPC23XX_ETH_TX_BUFFER_COUNT

#define LPC23XX_ETH_TX_BUFFER_COUNT   2

Definition at line 39 of file lpc23xx_eth_driver.h.

◆ LPC23XX_ETH_TX_BUFFER_SIZE

#define LPC23XX_ETH_TX_BUFFER_SIZE   1536

Definition at line 46 of file lpc23xx_eth_driver.h.

◆ MAC1_LOOPBACK

#define MAC1_LOOPBACK   0x00000010

Definition at line 79 of file lpc23xx_eth_driver.h.

◆ MAC1_PASS_ALL_FRAMES

#define MAC1_PASS_ALL_FRAMES   0x00000002

Definition at line 82 of file lpc23xx_eth_driver.h.

◆ MAC1_RECEIVE_ENABLE

#define MAC1_RECEIVE_ENABLE   0x00000001

Definition at line 83 of file lpc23xx_eth_driver.h.

◆ MAC1_RESET_MCS_RX

#define MAC1_RESET_MCS_RX   0x00000800

Definition at line 75 of file lpc23xx_eth_driver.h.

◆ MAC1_RESET_MCS_TX

#define MAC1_RESET_MCS_TX   0x00000200

Definition at line 77 of file lpc23xx_eth_driver.h.

◆ MAC1_RESET_RX

#define MAC1_RESET_RX   0x00000400

Definition at line 76 of file lpc23xx_eth_driver.h.

◆ MAC1_RESET_TX

#define MAC1_RESET_TX   0x00000100

Definition at line 78 of file lpc23xx_eth_driver.h.

◆ MAC1_RX_FLOW_CONTROL

#define MAC1_RX_FLOW_CONTROL   0x00000004

Definition at line 81 of file lpc23xx_eth_driver.h.

◆ MAC1_SIMULATION_RESET

#define MAC1_SIMULATION_RESET   0x00004000

Definition at line 74 of file lpc23xx_eth_driver.h.

◆ MAC1_SOFT_RESET

#define MAC1_SOFT_RESET   0x00008000

Definition at line 73 of file lpc23xx_eth_driver.h.

◆ MAC1_TX_FLOW_CONTROL

#define MAC1_TX_FLOW_CONTROL   0x00000008

Definition at line 80 of file lpc23xx_eth_driver.h.

◆ MAC2_AUTO_DETECT_PAD_ENABLE

#define MAC2_AUTO_DETECT_PAD_ENABLE   0x00000080

Definition at line 91 of file lpc23xx_eth_driver.h.

◆ MAC2_BACK_PRESSURE_NO_BACKOFF

#define MAC2_BACK_PRESSURE_NO_BACKOFF   0x00002000

Definition at line 87 of file lpc23xx_eth_driver.h.

◆ MAC2_CRC_ENABLE

#define MAC2_CRC_ENABLE   0x00000010

Definition at line 94 of file lpc23xx_eth_driver.h.

◆ MAC2_DELAYED_CRC

#define MAC2_DELAYED_CRC   0x00000008

Definition at line 95 of file lpc23xx_eth_driver.h.

◆ MAC2_EXCESS_DEFER

#define MAC2_EXCESS_DEFER   0x00004000

Definition at line 86 of file lpc23xx_eth_driver.h.

◆ MAC2_FRAME_LENGTH_CHECKING

#define MAC2_FRAME_LENGTH_CHECKING   0x00000002

Definition at line 97 of file lpc23xx_eth_driver.h.

◆ MAC2_FULL_DUPLEX

#define MAC2_FULL_DUPLEX   0x00000001

Definition at line 98 of file lpc23xx_eth_driver.h.

◆ MAC2_HUGE_FRAME_ENABLE

#define MAC2_HUGE_FRAME_ENABLE   0x00000004

Definition at line 96 of file lpc23xx_eth_driver.h.

◆ MAC2_LONG_PREAMBLE_ENFORCEMENT

#define MAC2_LONG_PREAMBLE_ENFORCEMENT   0x00000200

Definition at line 89 of file lpc23xx_eth_driver.h.

◆ MAC2_NO_BACKOFF

#define MAC2_NO_BACKOFF   0x00001000

Definition at line 88 of file lpc23xx_eth_driver.h.

◆ MAC2_PAD_CRC_ENABLE

#define MAC2_PAD_CRC_ENABLE   0x00000020

Definition at line 93 of file lpc23xx_eth_driver.h.

◆ MAC2_PURE_PREAMBLE_ENFORCEMENT

#define MAC2_PURE_PREAMBLE_ENFORCEMENT   0x00000100

Definition at line 90 of file lpc23xx_eth_driver.h.

◆ MAC2_VLAN_PAD_ENABLE

#define MAC2_VLAN_PAD_ENABLE   0x00000040

Definition at line 92 of file lpc23xx_eth_driver.h.

◆ MADR_PHY_ADDRESS

#define MADR_PHY_ADDRESS   0x00001F00

Definition at line 145 of file lpc23xx_eth_driver.h.

◆ MADR_REGISTER_ADDRESS

#define MADR_REGISTER_ADDRESS   0x0000001F

Definition at line 146 of file lpc23xx_eth_driver.h.

◆ MAXF_MAXIMUM_FRAME_LENGTH

#define MAXF_MAXIMUM_FRAME_LENGTH   0x0000FFFF

Definition at line 116 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK

#define MCFG_CLOCK   SELECT 0x0000001C

Definition at line 128 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK_SELECT_DIV10

#define MCFG_CLOCK_SELECT_DIV10   0x00000010

Definition at line 135 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK_SELECT_DIV14

#define MCFG_CLOCK_SELECT_DIV14   0x00000014

Definition at line 136 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK_SELECT_DIV20

#define MCFG_CLOCK_SELECT_DIV20   0x00000018

Definition at line 137 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK_SELECT_DIV28

#define MCFG_CLOCK_SELECT_DIV28   0x0000001C

Definition at line 138 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK_SELECT_DIV4

#define MCFG_CLOCK_SELECT_DIV4   0x00000000

Definition at line 132 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK_SELECT_DIV6

#define MCFG_CLOCK_SELECT_DIV6   0x00000008

Definition at line 133 of file lpc23xx_eth_driver.h.

◆ MCFG_CLOCK_SELECT_DIV8

#define MCFG_CLOCK_SELECT_DIV8   0x0000000C

Definition at line 134 of file lpc23xx_eth_driver.h.

◆ MCFG_RESET_MII_MGMT

#define MCFG_RESET_MII_MGMT   0x00008000

Definition at line 127 of file lpc23xx_eth_driver.h.

◆ MCFG_SCAN_INCREMENT

#define MCFG_SCAN_INCREMENT   0x00000001

Definition at line 130 of file lpc23xx_eth_driver.h.

◆ MCFG_SUPPRESS_PREAMBLE

#define MCFG_SUPPRESS_PREAMBLE   0x00000002

Definition at line 129 of file lpc23xx_eth_driver.h.

◆ MCMD_READ

#define MCMD_READ   0x00000001

Definition at line 142 of file lpc23xx_eth_driver.h.

◆ MCMD_SCAN

#define MCMD_SCAN   0x00000002

Definition at line 141 of file lpc23xx_eth_driver.h.

◆ MIND_BUSY

#define MIND_BUSY   0x00000001

Definition at line 158 of file lpc23xx_eth_driver.h.

◆ MIND_MII_LINK_FAIL

#define MIND_MII_LINK_FAIL   0x00000008

Definition at line 155 of file lpc23xx_eth_driver.h.

◆ MIND_NOT_VALID

#define MIND_NOT_VALID   0x00000004

Definition at line 156 of file lpc23xx_eth_driver.h.

◆ MIND_SCANNING

#define MIND_SCANNING   0x00000002

Definition at line 157 of file lpc23xx_eth_driver.h.

◆ MRDD_READ_DATA

#define MRDD_READ_DATA   0x0000FFFF

Definition at line 152 of file lpc23xx_eth_driver.h.

◆ MWTD_WRITE_DATA

#define MWTD_WRITE_DATA   0x0000FFFF

Definition at line 149 of file lpc23xx_eth_driver.h.

◆ RFC_ACCEPT_BROADCAST_EN

#define RFC_ACCEPT_BROADCAST_EN   0x00000002

Definition at line 231 of file lpc23xx_eth_driver.h.

◆ RFC_ACCEPT_MULTICAST_EN

#define RFC_ACCEPT_MULTICAST_EN   0x00000004

Definition at line 230 of file lpc23xx_eth_driver.h.

◆ RFC_ACCEPT_MULTICAST_HASH_EN

#define RFC_ACCEPT_MULTICAST_HASH_EN   0x00000010

Definition at line 228 of file lpc23xx_eth_driver.h.

◆ RFC_ACCEPT_PERFECT_EN

#define RFC_ACCEPT_PERFECT_EN   0x00000020

Definition at line 227 of file lpc23xx_eth_driver.h.

◆ RFC_ACCEPT_UNICAST_EN

#define RFC_ACCEPT_UNICAST_EN   0x00000001

Definition at line 232 of file lpc23xx_eth_driver.h.

◆ RFC_ACCEPT_UNICAST_HASH_EN

#define RFC_ACCEPT_UNICAST_HASH_EN   0x00000008

Definition at line 229 of file lpc23xx_eth_driver.h.

◆ RFC_MAGIC_PACKET_EN_WOL

#define RFC_MAGIC_PACKET_EN_WOL   0x00001000

Definition at line 226 of file lpc23xx_eth_driver.h.

◆ RFC_RX_FILTER_EN_WOL

#define RFC_RX_FILTER_EN_WOL   0x00002000

Definition at line 225 of file lpc23xx_eth_driver.h.

◆ RFWS_ACCEPT_BROADCAST_WOL

#define RFWS_ACCEPT_BROADCAST_WOL   0x00000002

Definition at line 241 of file lpc23xx_eth_driver.h.

◆ RFWS_ACCEPT_MULTICAST_HASH_WOL

#define RFWS_ACCEPT_MULTICAST_HASH_WOL   0x00000010

Definition at line 238 of file lpc23xx_eth_driver.h.

◆ RFWS_ACCEPT_MULTICAST_WOL

#define RFWS_ACCEPT_MULTICAST_WOL   0x00000004

Definition at line 240 of file lpc23xx_eth_driver.h.

◆ RFWS_ACCEPT_PERFECT_WOL

#define RFWS_ACCEPT_PERFECT_WOL   0x00000020

Definition at line 237 of file lpc23xx_eth_driver.h.

◆ RFWS_ACCEPT_UNICAST_HASH_WOL

#define RFWS_ACCEPT_UNICAST_HASH_WOL   0x00000008

Definition at line 239 of file lpc23xx_eth_driver.h.

◆ RFWS_ACCEPT_UNICAST_WOL

#define RFWS_ACCEPT_UNICAST_WOL   0x00000001

Definition at line 242 of file lpc23xx_eth_driver.h.

◆ RFWS_MAGIC_PACKET_WOL

#define RFWS_MAGIC_PACKET_WOL   0x00000100

Definition at line 235 of file lpc23xx_eth_driver.h.

◆ RFWS_RX_FILTER_WOL

#define RFWS_RX_FILTER_WOL   0x00000080

Definition at line 236 of file lpc23xx_eth_driver.h.

◆ RSV_BROADCAST

#define RSV_BROADCAST   0x02000000

Definition at line 205 of file lpc23xx_eth_driver.h.

◆ RSV_CARRIER_EVENT_PREV_SEEN

#define RSV_CARRIER_EVENT_PREV_SEEN   0x00040000

Definition at line 212 of file lpc23xx_eth_driver.h.

◆ RSV_CONTROL_FRAME

#define RSV_CONTROL_FRAME   0x08000000

Definition at line 203 of file lpc23xx_eth_driver.h.

◆ RSV_CRC_ERROR

#define RSV_CRC_ERROR   0x00100000

Definition at line 210 of file lpc23xx_eth_driver.h.

◆ RSV_DRIBBLE_NIBBLE

#define RSV_DRIBBLE_NIBBLE   0x04000000

Definition at line 204 of file lpc23xx_eth_driver.h.

◆ RSV_LENGTH_CHECK_ERROR

#define RSV_LENGTH_CHECK_ERROR   0x00200000

Definition at line 209 of file lpc23xx_eth_driver.h.

◆ RSV_LENGTH_OUT_OF_RANGE

#define RSV_LENGTH_OUT_OF_RANGE   0x00400000

Definition at line 208 of file lpc23xx_eth_driver.h.

◆ RSV_MULTICAST

#define RSV_MULTICAST   0x01000000

Definition at line 206 of file lpc23xx_eth_driver.h.

◆ RSV_PACKET_PREVIOUSLY_IGNORED

#define RSV_PACKET_PREVIOUSLY_IGNORED   0x00010000

Definition at line 214 of file lpc23xx_eth_driver.h.

◆ RSV_PAUSE

#define RSV_PAUSE   0x10000000

Definition at line 202 of file lpc23xx_eth_driver.h.

◆ RSV_RECEIVE_CODE_VIOLATION

#define RSV_RECEIVE_CODE_VIOLATION   0x00080000

Definition at line 211 of file lpc23xx_eth_driver.h.

◆ RSV_RECEIVE_OK

#define RSV_RECEIVE_OK   0x00800000

Definition at line 207 of file lpc23xx_eth_driver.h.

◆ RSV_RECEIVED_BYTE_COUNT

#define RSV_RECEIVED_BYTE_COUNT   0x0000FFFF

Definition at line 215 of file lpc23xx_eth_driver.h.

◆ RSV_RXDV_EVENT_PREV_SEEN

#define RSV_RXDV_EVENT_PREV_SEEN   0x00020000

Definition at line 213 of file lpc23xx_eth_driver.h.

◆ RSV_UNSUPPORTED_OPCODE

#define RSV_UNSUPPORTED_OPCODE   0x20000000

Definition at line 201 of file lpc23xx_eth_driver.h.

◆ RSV_VLAN

#define RSV_VLAN   0x40000000

Definition at line 200 of file lpc23xx_eth_driver.h.

◆ RX_CTRL_INTERRUPT

#define RX_CTRL_INTERRUPT   0x80000000

Definition at line 276 of file lpc23xx_eth_driver.h.

◆ RX_CTRL_SIZE

#define RX_CTRL_SIZE   0x000007FF

Definition at line 277 of file lpc23xx_eth_driver.h.

◆ RX_HASH_CRC_DA

#define RX_HASH_CRC_DA   0x001FF000

Definition at line 297 of file lpc23xx_eth_driver.h.

◆ RX_HASH_CRC_SA

#define RX_HASH_CRC_SA   0x000001FF

Definition at line 298 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_ALIGNMENT_ERROR

#define RX_STATUS_ALIGNMENT_ERROR   0x08000000

Definition at line 284 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_BROADCAST

#define RX_STATUS_BROADCAST   0x00400000

Definition at line 289 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_CONTROL_FRAME

#define RX_STATUS_CONTROL_FRAME   0x00040000

Definition at line 293 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_CRC_ERROR

#define RX_STATUS_CRC_ERROR   0x00800000

Definition at line 288 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_ERROR

#define RX_STATUS_ERROR   0x80000000

Definition at line 280 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_FAIL_FILTER

#define RX_STATUS_FAIL_FILTER   0x00100000

Definition at line 291 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_LAST_FLAG

#define RX_STATUS_LAST_FLAG   0x40000000

Definition at line 281 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_LENGTH_ERROR

#define RX_STATUS_LENGTH_ERROR   0x02000000

Definition at line 286 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_MULTICAST

#define RX_STATUS_MULTICAST   0x00200000

Definition at line 290 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_NO_DESCRIPTOR

#define RX_STATUS_NO_DESCRIPTOR   0x20000000

Definition at line 282 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_OVERRUN

#define RX_STATUS_OVERRUN   0x10000000

Definition at line 283 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_RANGE_ERROR

#define RX_STATUS_RANGE_ERROR   0x04000000

Definition at line 285 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_SIZE

#define RX_STATUS_SIZE   0x000007FF

Definition at line 294 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_SYMBOL_ERROR

#define RX_STATUS_SYMBOL_ERROR   0x01000000

Definition at line 287 of file lpc23xx_eth_driver.h.

◆ RX_STATUS_VLAN

#define RX_STATUS_VLAN   0x00080000

Definition at line 292 of file lpc23xx_eth_driver.h.

◆ STATUS_RX

#define STATUS_RX   0x00000001

Definition at line 174 of file lpc23xx_eth_driver.h.

◆ STATUS_TX

#define STATUS_TX   0x00000002

Definition at line 173 of file lpc23xx_eth_driver.h.

◆ SUPP_SPEED

#define SUPP_SPEED   0x00000100

Definition at line 119 of file lpc23xx_eth_driver.h.

◆ TEST_BACKPRESSURE

#define TEST_BACKPRESSURE   0x00000004

Definition at line 122 of file lpc23xx_eth_driver.h.

◆ TEST_PAUSE

#define TEST_PAUSE   0x00000002

Definition at line 123 of file lpc23xx_eth_driver.h.

◆ TEST_SHORTCUT_PAUSE_QUANTA

#define TEST_SHORTCUT_PAUSE_QUANTA   0x00000001

Definition at line 124 of file lpc23xx_eth_driver.h.

◆ TSV0_BACKPRESSURE

#define TSV0_BACKPRESSURE   0x40000000

Definition at line 178 of file lpc23xx_eth_driver.h.

◆ TSV0_BROADCAST

#define TSV0_BROADCAST   0x00000020

Definition at line 188 of file lpc23xx_eth_driver.h.

◆ TSV0_CONTROL_FRAME

#define TSV0_CONTROL_FRAME   0x10000000

Definition at line 180 of file lpc23xx_eth_driver.h.

◆ TSV0_CRC_ERROR

#define TSV0_CRC_ERROR   0x00000001

Definition at line 193 of file lpc23xx_eth_driver.h.

◆ TSV0_DONE

#define TSV0_DONE   0x00000008

Definition at line 190 of file lpc23xx_eth_driver.h.

◆ TSV0_EXCESSIVE_COLLISION

#define TSV0_EXCESSIVE_COLLISION   0x00000100

Definition at line 185 of file lpc23xx_eth_driver.h.

◆ TSV0_EXCESSIVE_DEFER

#define TSV0_EXCESSIVE_DEFER   0x00000080

Definition at line 186 of file lpc23xx_eth_driver.h.

◆ TSV0_GIANT

#define TSV0_GIANT   0x00000400

Definition at line 183 of file lpc23xx_eth_driver.h.

◆ TSV0_LATE_COLLISION

#define TSV0_LATE_COLLISION   0x00000200

Definition at line 184 of file lpc23xx_eth_driver.h.

◆ TSV0_LENGTH_CHECK_ERROR

#define TSV0_LENGTH_CHECK_ERROR   0x00000002

Definition at line 192 of file lpc23xx_eth_driver.h.

◆ TSV0_LENGTH_OUT_OF_RANGE

#define TSV0_LENGTH_OUT_OF_RANGE   0x00000004

Definition at line 191 of file lpc23xx_eth_driver.h.

◆ TSV0_MULTICAST

#define TSV0_MULTICAST   0x00000010

Definition at line 189 of file lpc23xx_eth_driver.h.

◆ TSV0_PACKET_DEFER

#define TSV0_PACKET_DEFER   0x00000040

Definition at line 187 of file lpc23xx_eth_driver.h.

◆ TSV0_PAUSE

#define TSV0_PAUSE   0x20000000

Definition at line 179 of file lpc23xx_eth_driver.h.

◆ TSV0_TOTAL_BYTES

#define TSV0_TOTAL_BYTES   0x0FFFF000

Definition at line 181 of file lpc23xx_eth_driver.h.

◆ TSV0_UNDERRUN

#define TSV0_UNDERRUN   0x00000800

Definition at line 182 of file lpc23xx_eth_driver.h.

◆ TSV0_VLAN

#define TSV0_VLAN   0x80000000

Definition at line 177 of file lpc23xx_eth_driver.h.

◆ TSV1_TRANSMIT_BYTE_COUNT

#define TSV1_TRANSMIT_BYTE_COUNT   0x0000FFFF

Definition at line 197 of file lpc23xx_eth_driver.h.

◆ TSV1_TRANSMIT_COLLISION_COUNT

#define TSV1_TRANSMIT_COLLISION_COUNT   0x000F0000

Definition at line 196 of file lpc23xx_eth_driver.h.

◆ TX_CTRL_CRC

#define TX_CTRL_CRC   0x20000000

Definition at line 259 of file lpc23xx_eth_driver.h.

◆ TX_CTRL_HUGE

#define TX_CTRL_HUGE   0x08000000

Definition at line 261 of file lpc23xx_eth_driver.h.

◆ TX_CTRL_INTERRUPT

#define TX_CTRL_INTERRUPT   0x80000000

Definition at line 257 of file lpc23xx_eth_driver.h.

◆ TX_CTRL_LAST

#define TX_CTRL_LAST   0x40000000

Definition at line 258 of file lpc23xx_eth_driver.h.

◆ TX_CTRL_OVERRIDE

#define TX_CTRL_OVERRIDE   0x04000000

Definition at line 262 of file lpc23xx_eth_driver.h.

◆ TX_CTRL_PAD

#define TX_CTRL_PAD   0x10000000

Definition at line 260 of file lpc23xx_eth_driver.h.

◆ TX_CTRL_SIZE

#define TX_CTRL_SIZE   0x000007FF

Definition at line 263 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_COLLISION_COUNT

#define TX_STATUS_COLLISION_COUNT   0x01E00000

Definition at line 273 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_DEFER

#define TX_STATUS_DEFER   0x02000000

Definition at line 272 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_ERROR

#define TX_STATUS_ERROR   0x80000000

Definition at line 266 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_EXCESSIVE_COLLISION

#define TX_STATUS_EXCESSIVE_COLLISION   0x08000000

Definition at line 270 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_EXCESSIVE_DEFER

#define TX_STATUS_EXCESSIVE_DEFER   0x04000000

Definition at line 271 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_LATE_COLLISION

#define TX_STATUS_LATE_COLLISION   0x10000000

Definition at line 269 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_NO_DESCRIPTOR

#define TX_STATUS_NO_DESCRIPTOR   0x40000000

Definition at line 267 of file lpc23xx_eth_driver.h.

◆ TX_STATUS_UNDERRUN

#define TX_STATUS_UNDERRUN   0x20000000

Definition at line 268 of file lpc23xx_eth_driver.h.

Function Documentation

◆ lpc23xxEthCalcCrc()

uint32_t lpc23xxEthCalcCrc ( const void *  data,
size_t  length 
)

CRC calculation.

Parameters
[in]dataPointer to the data over which to calculate the CRC
[in]lengthNumber of bytes to process
Returns
Resulting CRC value

Definition at line 803 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthDisableIrq()

void lpc23xxEthDisableIrq ( NetInterface interface)

Disable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 361 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthEnableIrq()

void lpc23xxEthEnableIrq ( NetInterface interface)

Enable interrupts.

Parameters
[in]interfaceUnderlying network interface

Definition at line 333 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthEventHandler()

void lpc23xxEthEventHandler ( NetInterface interface)

LPC23xx Ethernet MAC event handler.

Parameters
[in]interfaceUnderlying network interface

Definition at line 448 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthInit()

error_t lpc23xxEthInit ( NetInterface interface)

LPC23xx Ethernet MAC initialization.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 121 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthInitDesc()

void lpc23xxEthInitDesc ( NetInterface interface)

Initialize TX and RX descriptors.

Parameters
[in]interfaceUnderlying network interface

Definition at line 257 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthInitGpio()

void lpc23xxEthInitGpio ( NetInterface interface)

GPIO configuration.

Parameters
[in]interfaceUnderlying network interface

Definition at line 231 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthIrqHandler()

__irq void lpc23xxEthIrqHandler ( void  )

LPC23xx Ethernet MAC interrupt service routine.

Definition at line 388 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthReadPhyReg()

uint16_t lpc23xxEthReadPhyReg ( 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 759 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthReceivePacket()

error_t lpc23xxEthReceivePacket ( NetInterface interface)

Receive a packet.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 569 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthSendPacket()

error_t lpc23xxEthSendPacket ( 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 483 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthTick()

void lpc23xxEthTick ( NetInterface interface)

LPC23xx 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 308 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthUpdateMacAddrFilter()

error_t lpc23xxEthUpdateMacAddrFilter ( NetInterface interface)

Configure MAC address filtering.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 622 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthUpdateMacConfig()

error_t lpc23xxEthUpdateMacConfig ( NetInterface interface)

Adjust MAC configuration parameters for proper operation.

Parameters
[in]interfaceUnderlying network interface
Returns
Error code

Definition at line 680 of file lpc23xx_eth_driver.c.

◆ lpc23xxEthWritePhyReg()

void lpc23xxEthWritePhyReg ( 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 723 of file lpc23xx_eth_driver.c.

Variable Documentation

◆ lpc23xxEthDriver

const NicDriver lpc23xxEthDriver
extern

LPC23xx Ethernet MAC driver.

Definition at line 94 of file lpc23xx_eth_driver.c.