nic.h
Go to the documentation of this file.
TCP/IP stack core.
uint16_t(* NicReadPhyReg)(uint8_t opcode, uint8_t phyAddr, uint8_t regAddr)
Definition: nic.h:186
void(* SwitchEnableIgmpSnooping)(NetInterface *interface, bool_t enable)
Definition: nic.h:223
error_t(* SwitchAddFdbEntry)(NetInterface *interface, const SwitchFdbEntry *entry)
Definition: nic.h:232
error_t(* NicUpdateMacAddrFilter)(NetInterface *interface)
Definition: nic.h:180
error_t nicSendPacket(NetInterface *interface, const NetBuffer *buffer, size_t offset, NetTxAncillary *ancillary)
Send a packet to the network controller.
Definition: nic.c:280
void(* SwitchFlushStaticFdbTable)(NetInterface *interface)
Definition: nic.h:241
NicDuplexMode(* SwitchGetDuplexMode)(NetInterface *interface, uint8_t port)
Definition: nic.h:212
uint8_t nicGetSwitchPort(NetInterface *interface)
Retrieve switch port identifier.
Definition: nic.c:113
void(* NicWritePhyReg)(uint8_t opcode, uint8_t phyAddr, uint8_t regAddr, uint16_t data)
Definition: nic.h:183
void nicProcessPacket(NetInterface *interface, uint8_t *packet, size_t length, NetRxAncillary *ancillary)
Handle a packet received by the network controller.
Definition: nic.c:391
NetInterface * nicGetLogicalInterface(NetInterface *interface)
Retrieve logical interface.
Definition: nic.c:52
uint32_t(* SwitchGetLinkSpeed)(NetInterface *interface, uint8_t port)
Definition: nic.h:210
void(* SmiWritePhyReg)(uint8_t opcode, uint8_t phyAddr, uint8_t regAddr, uint16_t data)
Definition: nic.h:252
void(* SwitchSetPortState)(NetInterface *interface, uint8_t port, SwitchPortState state)
Definition: nic.h:215
void(* SwitchSetAgingTime)(NetInterface *interface, uint32_t agingTime)
Definition: nic.h:221
error_t(* NicSendPacket)(NetInterface *interface, const NetBuffer *buffer, size_t offset, NetTxAncillary *ancillary)
Definition: nic.h:177
void(* SwitchSetUnknownMcastFwdPorts)(NetInterface *interface, bool_t enable, uint32_t forwardPorts)
Definition: nic.h:246
uint16_t(* SmiReadPhyReg)(uint8_t opcode, uint8_t phyAddr, uint8_t regAddr)
Definition: nic.h:255
error_t nicUpdateMacAddrFilter(NetInterface *interface)
Configure MAC address filtering.
Definition: nic.c:352
bool_t(* SwitchGetLinkState)(NetInterface *interface, uint8_t port)
Definition: nic.h:209
void(* SwitchFlushDynamicFdbTable)(NetInterface *interface, uint8_t port)
Definition: nic.h:243
NetInterface * nicGetPhysicalInterface(NetInterface *interface)
Retrieve physical interface.
Definition: nic.c:84
SwitchPortState(* SwitchGetPortState)(NetInterface *interface, uint8_t port)
Definition: nic.h:218
void(* SwitchEnableRsvdMcastTable)(NetInterface *interface, bool_t enable)
Definition: nic.h:229
error_t(* SwitchTagFrame)(NetInterface *interface, NetBuffer *buffer, size_t *offset, NetTxAncillary *ancillary)
Definition: nic.h:203
void(* SwitchEnableMldSnooping)(NetInterface *interface, bool_t enable)
Definition: nic.h:226
error_t(* SwitchGetFdbEntry)(NetInterface *interface, uint_t index, SwitchFdbEntry *entry)
Definition: nic.h:238
error_t(* SwitchDeleteFdbEntry)(NetInterface *interface, const SwitchFdbEntry *entry)
Definition: nic.h:235
error_t(* SwitchUntagFrame)(NetInterface *interface, uint8_t **frame, size_t *length, NetRxAncillary *ancillary)
Definition: nic.h:206
void nicNotifyLinkChange(NetInterface *interface)
Process link state change notification.
Definition: nic.c:548
bool_t nicIsParentInterface(NetInterface *interface, NetInterface *parent)
Test parent/child relationship between 2 interfaces.
Definition: nic.c:207
SwitchEnableRsvdMcastTable enableRsvdMcastTable
Definition: nic.h:338
SwitchFlushDynamicFdbTable flushDynamicFdbTable
Definition: nic.h:344
SwitchSetUnknownMcastFwdPorts setUnknownMcastFwdPorts
Definition: nic.h:345