about how to return the received packet to the OS in ethernet driver on MAC OS 9
about how to return the received packet to the OS in ethernet driver on MAC OS 9
- Subject: about how to return the received packet to the OS in ethernet driver on MAC OS 9
- From: 王淑伶-vivian <email@hidden>
- Date: Tue, 4 May 2004 16:30:53 +0800
Hi:
I am developing an ethernet adapter driver. And I use the "DEC 21140
Driver"
for an example.The method of receiving the incoming packet for my driver
is
interrupt . If one packet arrives , I will call
"mac->rx.ISR(mac->rx.cookie)"
in function "static InterruptMemberNumber
MacChipISR(InterruptSetMember member, EnetMACPtr mac, UInt32 x)".
Then the "static RxPacketPtr MacRxPacket(EnetMACPtr mac)" will be called
and
it return incoming packet. The receive descriptor number in my driver is
1.
So the value relative to the packet content is as following.
packet->flags = RX_NO_ERROR;
packet->busy = mac->rx.ring.busy;
packet->packetNext = NULL;
packet->bufferCount = 1;
packet->packetNext = NULL;
But after returns the packet from MacRxPacket , the OS doesn't get any
incoming packet. I run the Enet read test by EnetTest program , and it
doesn't get any incoming packet. So do I need to call another funcion
to return the received packet to OS. I don't have any idea about it.
Can you give me any advise about it ?
Thanks for your help
from vivian
_______________________________________________
macnetworkprog mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/macnetworkprog
Do not post admin requests to the list. They will be ignored.