Sergey Pastor / 1

Dependents:   Nucleo

Embed: (wiki syntax)

« Back to documentation index

lpc178x_eth.h File Reference

lpc178x_eth.h File Reference

LPC1786/88 Ethernet MAC controller. More...

Go to the source code of this file.

Data Structures

struct  Lpc178xTxDesc
 Transmit descriptor. More...
struct  Lpc178xTxStatus
 Transmit status. More...
struct  Lpc178xRxDesc
 Receive descriptor. More...
struct  Lpc178xRxStatus
 Receive status. More...

Functions

error_t lpc178xEthInit (NetInterface *interface)
 LPC178x Ethernet MAC initialization.
void lpc178xEthInitGpio (NetInterface *interface)
 GPIO configuration.
void lpc178xEthInitDesc (NetInterface *interface)
 Initialize TX and RX descriptors.
void lpc178xEthTick (NetInterface *interface)
 LPC178x Ethernet MAC timer handler.
void lpc178xEthEnableIrq (NetInterface *interface)
 Enable interrupts.
void lpc178xEthDisableIrq (NetInterface *interface)
 Disable interrupts.
void lpc178xEthEventHandler (NetInterface *interface)
 LPC178x Ethernet MAC event handler.
error_t lpc178xEthSendPacket (NetInterface *interface, const NetBuffer *buffer, size_t offset)
 Send a packet.
error_t lpc178xEthReceivePacket (NetInterface *interface)
 Receive a packet.
error_t lpc178xEthSetMulticastFilter (NetInterface *interface)
 Configure multicast MAC address filtering.
error_t lpc178xEthUpdateMacConfig (NetInterface *interface)
 Adjust MAC configuration parameters for proper operation.
void lpc178xEthWritePhyReg (uint8_t phyAddr, uint8_t regAddr, uint16_t data)
 Write PHY register.
uint16_t lpc178xEthReadPhyReg (uint8_t phyAddr, uint8_t regAddr)
 Read PHY register.
uint32_t lpc178xEthCalcCrc (const void *data, size_t length)
 CRC calculation.

Variables

const NicDriver lpc178xEthDriver
 LPC178x Ethernet MAC driver.

Detailed Description

LPC1786/88 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 lpc178x_eth.h.


Function Documentation

uint32_t lpc178xEthCalcCrc ( 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 697 of file lpc178x_eth.c.

void lpc178xEthDisableIrq ( NetInterface *  interface )

Disable interrupts.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 327 of file lpc178x_eth.c.

void lpc178xEthEnableIrq ( NetInterface *  interface )

Enable interrupts.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 313 of file lpc178x_eth.c.

void lpc178xEthEventHandler ( NetInterface *  interface )

LPC178x Ethernet MAC event handler.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 398 of file lpc178x_eth.c.

error_t lpc178xEthInit ( NetInterface *  interface )

LPC178x Ethernet MAC initialization.

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

Definition at line 119 of file lpc178x_eth.c.

void lpc178xEthInitDesc ( NetInterface *  interface )

Initialize TX and RX descriptors.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 250 of file lpc178x_eth.c.

void lpc178xEthInitGpio ( NetInterface *  interface )

GPIO configuration.

Parameters:
[in]interfaceUnderlying network interface

Definition at line 215 of file lpc178x_eth.c.

uint16_t lpc178xEthReadPhyReg ( uint8_t  phyAddr,
uint8_t  regAddr 
)

Read PHY register.

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

Definition at line 671 of file lpc178x_eth.c.

error_t lpc178xEthReceivePacket ( NetInterface *  interface )

Receive a packet.

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

Definition at line 509 of file lpc178x_eth.c.

error_t lpc178xEthSendPacket ( 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 431 of file lpc178x_eth.c.

error_t lpc178xEthSetMulticastFilter ( NetInterface *  interface )

Configure multicast MAC address filtering.

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

Definition at line 556 of file lpc178x_eth.c.

void lpc178xEthTick ( NetInterface *  interface )

LPC178x 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 301 of file lpc178x_eth.c.

error_t lpc178xEthUpdateMacConfig ( NetInterface *  interface )

Adjust MAC configuration parameters for proper operation.

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

Definition at line 609 of file lpc178x_eth.c.

void lpc178xEthWritePhyReg ( 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 647 of file lpc178x_eth.c.


Variable Documentation

LPC178x Ethernet MAC driver.

Definition at line 92 of file lpc178x_eth.c.