Overview

This is the private set of functions and types that are required to implement a MAC or PHY driver when porting the Network Library to a new device.

API Summary

Constants
CTL_NET_ETHERNET_HEADER_SIZE The number of bytes in an Ethernet header
CTL_NET_ETHERNET_PDU_SIZE The size of the PDU of a Ethernet II frame
Types
CTL_ETH_RX_FRAME_t Receive frame buffer descriptor
CTL_ETH_TX_FRAME_t Transmit frame descriptor
CTL_NET_INTERFACE_t A network interface
MAC
CTL_MAC_STATE_t MAC states
CTL_NET_MAC_DRIVER_t MAC driver
ctl_mac_get_state Return MAC state
ctl_mac_init MAC-layer driver initialization function
ctl_mac_send Send Ethernet frame to MAC
ctl_mac_update Wapper for MAC update
ctl_mac_wake_net_task Wake network task for MAC event
ctl_net_process_received_frame Process received frame
PHY
CTL_NET_PHY_DRIVER_t PHY driver
CTL_PHY_ERROR_t RMII, MII, and PHY layer errors
CTL_PHY_STATE_t PHY state
ctl_net_get_phy_flags Returns PHY capabilities and state
ctl_net_get_phy_name Get PHY name
ctl_net_get_phy_state Get state of the PHY driver
ctl_net_read_phy_register Read a PHY register
ctl_net_search_for_first_phy Search for attached PHY
ctl_net_update_phy PHY-layer update function
ctl_phy_read_id Read the PHY ID
MII
CTL_NET_MAC_MII_DEFERRED_READ_FN_t Initiates a read of the MII management interface
ctl_mac_mii_deferred_read Initiate an asynchronous read of the MII management interface
ctl_mac_mii_deferred_read_result Get result of last asynchronous MII read
ctl_mac_mii_read Read the MII management interface
Memory management
CTL_NET_MEM_DRIVER_t Network stack memory manager
ctl_net_set_mem_driver Set the network memory allocator
Utility
ctl_net_do_mac_dis_connect Signal change of media connection state
Stock PHY drivers
ctl_phy_lm3s_init_driver Luminary Stellaris integrated PHY driver setup
Frames
CTL_ETH_HEADER_t 802.3 Ethernet Header