A web server for monitoring and controlling a MakerBot Replicator over the USB host and ethernet.

Dependencies:   IAP NTPClient RTC mbed-rtos mbed Socket lwip-sys lwip BurstSPI

Fork of LPC1768_Mini-DK by Frank Vannieuwkerke

Embed: (wiki syntax)

« Back to documentation index

lpc17_emac.c File Reference

lpc17_emac.c File Reference

LPC17 ethernet driver for LWIP. More...

Go to the source code of this file.

Functions

 ALIGNED (8)
 LPC EMAC driver work data.
err_t lpc_mii_write (u32_t PhyReg, u32_t Value)
 Write a value via the MII link (blocking)
u32_t lpc_mii_is_busy (void)
 Reads current MII link busy status.
u32_t lpc_mii_read_data (void)
 Starts a read operation via the MII link (non-blocking)
void lpc_mii_read_noblock (u32_t PhyReg)
 Read a value via the MII link (blocking)
err_t lpc_mii_read (u32_t PhyReg, u32_t *data)
 Starts a read operation via the MII link (non-blocking)
static void lpc_rxqueue_pbuf (struct lpc_enetdata *lpc_enetif, struct pbuf *p)
 Queues a pbuf into the RX descriptor list.
s32_t lpc_rx_queue (struct netif *netif)
 Attempt to allocate and requeue a new pbuf for RX.
static err_t lpc_rx_setup (struct lpc_enetdata *lpc_enetif)
 Sets up the RX descriptor ring buffers.
static struct pbuf * lpc_low_level_input (struct netif *netif)
 Allocates a pbuf and returns the data from the incoming packet.
void lpc_enetif_input (struct netif *netif)
 Attempt to read a packet from the EMAC interface.
static s32_t lpc_packet_addr_notsafe (void *addr)
 Determine if the passed address is usable for the ethernet DMA controller.
static err_t lpc_tx_setup (struct lpc_enetdata *lpc_enetif)
 Sets up the TX descriptor ring buffers.
static void lpc_tx_reclaim_st (struct lpc_enetdata *lpc_enetif, u32_t cidx)
 Free TX buffers that are complete.
void lpc_tx_reclaim (struct netif *netif)
 User call for freeingTX buffers that are complete.
s32_t lpc_tx_ready (struct netif *netif)
 Polls if an available TX descriptor is ready.
static err_t lpc_low_level_output (struct netif *netif, struct pbuf *p)
 Low level output of a packet.
void ENET_IRQHandler (void)
 LPC EMAC interrupt handler.
static void packet_rx (void *pvParameters)
 Packet reception task.
static void packet_tx (void *pvParameters)
 Transmit cleanup task.
static err_t low_level_init (struct netif *netif)
 Low level init of the MAC and PHY.
void lpc_emac_set_duplex (int full_duplex)
 This function provides a method for the PHY to setup the EMAC for the PHY negotiated duplex mode.
void lpc_emac_set_speed (int mbs_100)
 This function provides a method for the PHY to setup the EMAC for the PHY negotiated bit rate.
err_t lpc_etharp_output (struct netif *netif, struct pbuf *q, ip_addr_t *ipaddr)
 This function is the ethernet packet send function.
err_t lpc_enetif_init (struct netif *netif)
 Should be called at the beginning of the program to set up the network interface.

Detailed Description

LPC17 ethernet driver for LWIP.

Version:
1.0
Date:
20. Nov. 2011
Author:
NXP MCU SW Application Team

Copyright(C) 2011, NXP Semiconductor All rights reserved.

Software that is described herein is for illustrative purposes only which provides customers with programming information regarding the products. This software is supplied "AS IS" without any warranties. NXP Semiconductors assumes no responsibility or liability for the use of the software, conveys no license or title under any patent, copyright, or mask work right to the product. NXP Semiconductors reserves the right to make changes in the software without notification. NXP Semiconductors also make no representation or warranty that such application will be suitable for the specified use without further testing or modification.

Definition in file lpc17_emac.c.