NL2 API Functions
This section summarizes the Real-Time API (Rtnl2) function set supported by the wRTOS Network Link Layer (NL2). To support these functions, an application must include the Rtnl2Api.h header files and link in the library Rtnl2Api.lib.
|
Function |
Description |
|---|---|
|
Acquires a Physical Receive Queue object specified by the handle of the owning interface and the index of the Physical Receive Queue within that interface. |
|
|
Acquires a Transmit Queue specified by the handle of the owning interface and the index of the Transmit Queue within that interface. |
|
|
Adds a rule to dispatch incoming packets to a given Physical Receive Queue based on the value of their EtherType. |
|
|
Adds a rule to dispatch incoming packets to a given Physical Receive Queue based on the value of their PCP (Priority Code Point) field in the VLAN Tag. |
|
|
Adds a rule to dispatch incoming packets to a given Physical Receive Queue based on the value of their UDP Destination Port. |
|
|
Adjusts the time of a clock object by applying an offset to the current counter value. |
|
|
Closes a clock object opened by Rtnl2OpenClock. |
|
|
Closes a handle to an interface object. |
|
|
Controls a special function of a device. |
|
|
Creates a Link Status Change event for the specified interface. This event is signaled by the NL2 whenever the link status of the interface changes. |
|
|
Creates a Logical Receive Queue object on a Physical Receive Queue specified by the handle of the owning interface and the index of the Physical Receive Queue within that interface. |
|
|
Creates a Logical Transmit Queue object above the hardware queue specified by the handle of the owning interface and the index of the Transmit Queue within that interface. |
|
|
Enables the hardware interrupt for a given Physical Receive Queue and creates an event for the specified Physical Receive Queue. This event is signaled by the NL2 each time the NIC triggers the hardware interrupt associated with that Physical Receive Queue. |
|
|
Enables the hardware interrupt for a given Physical Transmit Queue and creates an event for the specified Physical Transmit Queue. This event is signaled by the NL2 each time the NIC triggers the hardware interrupt associated with that Physical Transmit Queue. |
|
|
Deletes a dispatch rule previously set up by Rtnl2AddEtherTypeDispatchRule. |
|
|
Deletes a dispatch rule previously set up by Rtnl2AddPcpDispatchRule. |
|
|
Deletes a dispatch rule previously set up by Rtnl2AddUdpPortDispatchRule. |
|
|
Destroys a Link Status Change event previously created by Rtnl2CreateLinkStatusChangeEvent. |
|
|
Destroys a Logical Receive Queue object created by RtNalCreateLogicalRxQueue. |
|
|
Destroys a Logical Transmit Queue object created by RtNalCreateLogicalTxQueue. |
|
|
Destroys a Receive event previously created by Rtnl2CreatePhysicalRxQueueEvent, and disable the hardware interrupt associated with the Physical Receive Queue. |
|
|
Destroys a Transmit event previously created by Rtnl2CreatePhysicalTxQueueEvent, and disables the hardware interrupt associated with the Physical Transmit Queue. |
|
|
Enables the Ingress Timestamp reporting for the frames received through a given Logical Receive Queue. |
|
|
Enables the Egress Timestamp logic on a given Logical Transmit Queue and creates an event to monitor Egress Timestamps. |
|
|
Enables the Ingress Timestamp reporting for the frames received through a given Physical Receive Queue. |
|
|
Enables the Egress Timestamp logic on a Physical Transmit Queue and creates an event to monitor Egress Timestamps. |
|
|
Returns the name of an interface specified by its index. |
|
|
Checks the DMA ring of the specified Physical Receive Queue, and extracts buffers from the FIFO of the filled buffers. |
|
|
Checks the DMA ring of the specified Physical Transmit Queue, and extracts buffers from the FIFO of consumed buffers. |
|
|
Gets the rate of a clock object. |
|
|
Returns the status of the Network Link Layer (NL2) component. |
|
|
Gets the list of EtherType dispatch rules currently set up in the interface. |
|
|
Gets the configuration of an interface. |
|
|
Gets the hardware features supported by an interface. |
|
|
Gets the current link status of an interface. |
|
|
Gets the current setting value of the interface mode. |
|
|
Gets the value of the last Egress Timestamp for the Logical Transmit Queue. |
|
|
Gets the MAC address of an interface. |
|
|
Gets the configuration of an MSI-X message. |
|
|
Gets the list of PCP dispatch rules currently set up in the interface. |
|
|
Gets the configuration of a Physical Receive Queue. |
|
|
Gets the current setting value of the interface mode. |
|
|
Returns one or more NL2 buffers to be used with a specified physical transmit queue. |
|
|
Gets the configuration of a Physical Transmit Queue. |
|
|
Gets the value of the last Egress Timestamp for the Physical Transmit Queue. |
|
|
Gets the list of UDP Port dispatch rules currently set up in the interface. |
|
|
Registers the current process as an NL2 client. |
|
|
Returns the licensed status of the Network Link Layer (NL2) component. |
|
|
Opens a clock object specified by the handle of the owning interface and the index of the clock within that interface. |
|
|
Opens the interface object specified by its name. |
|
|
Reads the NIC clock time and the CPU time simultaneously (cross-timestamp) and returns all timestamps. |
|
|
Receives one frame from a specified Logical Receive Queue. |
|
|
Releases a Physical Receive Queue object previously acquired by Rtnl2AcquirePhysicalRxQueue. |
|
|
Releases a Physical Transmit Queue object previously acquired by Rtnl2AcquirePhysicalTxQueue. |
|
|
Returns one or more NL2 Buffers that were received for the specified physical transmit queue. |
|
|
Sets the rate of a clock object. |
|
|
Sets the interval value for interrupt moderation. |
|
|
Configures the Logical Receive Queue EtherType filter of a Logical Receive Queue. |
|
|
Enables or disables an interface mode setting. |
|
|
Configures the per-queue list of allowed Multicast Addresses for a given Logical Receive Queue. |
|
|
Enables or disables an interface mode setting. |
|
|
Configures the per-queue list of allowed Multicast Addresses for a given Physical Receive Queue. |
|
|
Sets the Credit-Based Shaper parameters on a given Physical Transmit Queue. |
|
|
Starts the Network Link Layer (NL2) component. |
|
|
Starts a Logical Receive Queue. |
|
|
Stops the Network Link Layer (NL2) component. |
|
|
Stops a Logical Receive Queue. |
|
|
Submits one or more NL2 buffers for reception through a given Physical Receive Queue. |
|
|
Submits NL2 buffers for transmission through a given Physical Transmit Queue. |
|
|
Transmits one frame through a specified Logical Transmit Queue. |