RtndStartRxQueue

RtndStartRxQueue starts the specified Receive Queue.

Syntax

Copy
BOOL RtndStartRxQueue(
  [in]            ULONG_PTR RtndInterfaceId,
  [in]            ULONG RxQueueIndex,
  [in, ignored]   ULONG Flags
);

Parameters

[in] RtndInterfaceId

The number or pointer used to identify the interface. This value is returned by RtndManageInterface.

[in] RxQueueIndex

The index of the Receive Queue.

[in, ignored] Flags

Reserved for future use. The value is set to zero by the NL2. Drivers must ignore this parameter.

Return Value

If the function succeeds, it returns TRUE. If the function fails, it returns FALSE. To get extended error information, call GetLastError.

Common error codes:

Error code Meaning

ERROR_IO_DEVICE

An unexpected error occurred while trying to access the device.

Note: Custom drivers may return other error codes not listed above.

Remarks

The NL2 always calls this function from the main thread of the NL2 process.

After a successful call to this function, the specified Physical Receive Queue is expected to be running. It will fetch the submitted buffers and fill them with the content of the frames received from the wire.

In this function, the driver is expected not only to start the hardware component, but also to reset the DMA ring of the queue so that operations start in a known and clean state.

Characteristics

Real-time requirements

Deterministic behavior

Not required

Local memory allocation/deallocation restrictions

Process

External MSpace

Internal MSpace

System

Not allowed

Not allowed

Process

Not allowed

Not allowed

Contiguous memory allocation/deallocation restrictions

Contiguous memory

Not allowed

Requirements

Minimum supported version Header

eRTOS 1.0 SDK

Rtnd.h

See Also: