NIC Driver API Functions
This section lists the supported NIC driver API functions called by the Network Link Layer (NL2). Their prototypes are declared in the Rtnd.h header file.
| Function | Description |
|---|---|
|
Adjusts the time of a NIC clock by applying an offset to the current counter value. |
|
|
Allocates a set of receive frame data buffers. |
|
|
Allocates a set of transmit frame data buffers. |
|
|
Fetches all buffers inserted in the Receive Queue with RtndSubmitRxBuffer. |
|
|
Transmits all buffers inserted in the Transmit Queue with RtndSubmitTxBuffer. |
|
|
Attaches the specified Receive Queue to the current application process. |
|
|
Attaches the specified Transmit Queue to the current application process. |
|
|
Controls a special function of a device. |
|
|
Detaches the specified Receive Queue from the current application process. |
|
|
Detaches the specified Transmit Queue from the current application process. |
|
|
Enables or disables the receive interrupt for a specific Receive Queue. |
|
|
Enables or disables the transmit interrupt for a specific Transmit Queue. |
|
|
Ends a driver that was initiated by the RtndInitDriver function. |
|
|
Determines whether the Egress Timestamp register associated with a given Transmit Queue is valid and, if it is, returns the Egress Timestamp value. |
|
|
Extracts a filled buffer from the specified Receive Queue. |
|
|
Extracts a consumed buffer from the specified Transmit Queue. |
|
|
Frees a set of receive frame data buffers previously allocated by RtndAllocateRxFrameDataBuffers. |
|
|
Frees a set of transmit frame data buffers previously allocated by RtndAllocateTxFrameDataBuffers. |
|
|
Gets an entry in the EtherType Hardware Dispatcher table. |
|
|
Gets an entry in the PCP Hardware Dispatcher table. |
|
|
Gets an entry in the UDP Port Hardware Dispatcher table. |
|
|
Gets multiple buffers from the driver's pool of available transmit buffers. |
|
|
Initializes the driver and exchanges global information between the driver and the Network Link Layer (NL2). |
|
|
Manages an interface on the PCI Bus. |
|
|
Gets a given capability of an interface. |
|
|
Gets a given feature of an interface. |
|
|
Gets the Link Status of an interface. |
|
|
Gets the MAC address of an interface. |
|
|
Reads a NIC clock time and CPU time simultaneously (cross-timestamp) and returns all timestamps. |
|
|
Returns multiple buffers to the driver's pool of available transmit buffers. |
|
|
Sets the Credit-Based Shaper parameters on a given Transmit Queue. |
|
|
Sets the rate of a NIC clock. |
|
|
Updates an entry in the EtherType Hardware Dispatcher table. |
|
|
Updates an entry in the PCP Hardware Dispatcher table. |
|
|
Updates an entry in the UDP Port Hardware Dispatcher. |
|
|
Writes a given setting to the interface. |
|
|
Requests the interface to change the value of the interval, in nanoseconds, for interrupt moderation. If the interrupt type is MSI-X, the NL2 will supply the message ID of the MSI-X message to throttle. Otherwise, the NL2 will set the MessageId parameter to zero (0). |
|
|
Updates the hardware Multicast Hash Filter of an interface. |
|
|
Requests the interface to enable or disable the Pass Bad Frames mode. |
|
|
Requests the interface to enable or disable promiscuous mode. |
|
|
Shuts down an interface. After the function returns, the NIC will no longer generate a hardware interrupt. |
|
|
Starts an interface. |
|
|
Starts the specified Receive Queue. |
|
|
Starts the specified Transmit Queue. |
|
|
Stops an interface. |
|
|
Stops the specified Receive Queue. |
|
|
Stops the specified Transmit Queue. |
|
|
Inserts a buffer into the specified Receive Queue. |
|
|
Inserts a buffer into the specified Transmit Queue. |
|
|
Removes all associations made for a given interface. |