Webserver+3d print

Dependents:   Nucleo

Embed: (wiki syntax)

« Back to documentation index

lpc23xx_eth.h File Reference

lpc23xx_eth.h File Reference

LPC2300 Ethernet MAC controller. More...

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...

Functions

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

Variables

const NicDriver lpc23xxEthDriver
 LPC23xx Ethernet MAC driver.

Detailed Description

LPC2300 Ethernet MAC controller.

License

Copyright (C) 2010-2017 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:
1.7.6

Definition in file lpc23xx_eth.h.


Function Documentation

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 687 of file lpc23xx_eth.c.

void lpc23xxEthDisableIrq ( NetInterface *  interface )

Disable interrupts.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 317 of file lpc23xx_eth.c.

void lpc23xxEthEnableIrq ( NetInterface *  interface )

Enable interrupts.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 303 of file lpc23xx_eth.c.

void lpc23xxEthEventHandler ( NetInterface *  interface )

LPC23xx Ethernet MAC event handler.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 388 of file lpc23xx_eth.c.

error_t lpc23xxEthInit ( NetInterface *  interface )

LPC23xx Ethernet MAC initialization.

Parameters:
[in]interfaceUnderlying network interface
Returns:
Error code

Definition at line 119 of file lpc23xx_eth.c.

void lpc23xxEthInitDesc ( NetInterface *  interface )

Initialize TX and RX descriptors.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 240 of file lpc23xx_eth.c.

void lpc23xxEthInitGpio ( NetInterface *  interface )

GPIO configuration.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 215 of file lpc23xx_eth.c.

__irq void lpc23xxEthIrqHandler ( void   )

LPC23xx Ethernet MAC interrupt service routine.

Definition at line 330 of file lpc23xx_eth.c.

uint16_t lpc23xxEthReadPhyReg ( uint8_t  phyAddr,
uint8_t  regAddr 
)

Read PHY register.

Parameters:
[in]phyAddrPHY address
[in]regAddrRegister address
Returns:
Register value

Definition at line 661 of file lpc23xx_eth.c.

error_t lpc23xxEthReceivePacket ( NetInterface *  interface )

Receive a packet.

Parameters:
[in]interfaceUnderlying network interface
Returns:
Error code

Definition at line 499 of file lpc23xx_eth.c.

error_t lpc23xxEthSendPacket ( NetInterface *  interface,
const NetBuffer buffer,
size_t  offset 
)

Send a packet.

Parameters:
[in]interfaceUnderlying network interface
[in]bufferMulti-part buffer containing the data to send
[in]offsetOffset to the first data byte
Returns:
Error code

Definition at line 421 of file lpc23xx_eth.c.

error_t lpc23xxEthSetMulticastFilter ( NetInterface *  interface )

Configure multicast MAC address filtering.

Parameters:
[in]interfaceUnderlying network interface
Returns:
Error code

Definition at line 546 of file lpc23xx_eth.c.

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 291 of file lpc23xx_eth.c.

error_t lpc23xxEthUpdateMacConfig ( NetInterface *  interface )

Adjust MAC configuration parameters for proper operation.

Parameters:
[in]interfaceUnderlying network interface
Returns:
Error code

Definition at line 599 of file lpc23xx_eth.c.

void lpc23xxEthWritePhyReg ( uint8_t  phyAddr,
uint8_t  regAddr,
uint16_t  data 
)

Write PHY register.

Parameters:
[in]phyAddrPHY address
[in]regAddrRegister address
[in]dataRegister value

Definition at line 637 of file lpc23xx_eth.c.


Variable Documentation

LPC23xx Ethernet MAC driver.

Definition at line 92 of file lpc23xx_eth.c.