Low-Level Packet Driver (llPacket)
D-6
Shutdown Driver Environment
_llPacketShutdown
Syntax
void _llPacketShutdown();
Return Value
nothing
Description
This function is called by NETCTRL to indicate a final shutdown of the packet
driver environment. When called, there should be no currently open packet
drivers, and _llPacketInit() will be called again before any call to llPacketO-
pen().
Check for Ethernet Packet Activity
_llPacketServiceCheck
Syntax
uint _llPacketServiceCheck();
Return Value
Returns 1 if there are packets available, 0 if not.
Description
This function is called by NETCTRL to check if packets are available from the
Ethernet device. In a polling system, this function is called continuously. In an
interrupt driven semaphore system, it is called when packet activity is indi-
cated to the scheduler and at half second timer intervals for “dead man” polling
checks.
Open Driver and Bind Logical Ether Object to Device Id
llPacketOpen
Syntax
uint llPacketOpen( uint dev, HANDLE hEther );
Return Value
This function should return 1 on success, and 0 on failure.
Description
Opens the low level packet driver specified by the one’s based index dev. The
maximum value of dev is the number of devices returned from the _llPacketI-
nit() function. When opening the device, the packet driver should bind the
physical index with the logical Ether object handle specified in hEther. This
handle is used in receive indications to the stack.
Close Driver and Unbind Logical Ether Object from Device Id
llPacketClose
Syntax
void llPacketClose( uint dev );
Return Value
nothing
Description
Closes the low level packet driver specified by the one’s based index dev. The
maximum value of dev is the number of devices returned from the _llPacketI-
nit() function. After this call, the packet driver should no longer attempt to indi-
cate received packets to the stack.