Receiving Data from a particular port on IXP2400
Hi Folks, I am writing a microengine rx/tx driver for ixp2400. for the receive side, i want to allocate a particular thread for particular MAC port. I want that, when I enqueue this thread into RX_THREAD_FREELIST, the thread should be able to specify in which port's mpacket data it is interested in, and the MSF should send a signal to the thread only when an mpacket from that particular port arrives. However, I have not been able to find out any way in which the thread can specify in which port's mpakcet it is interested. (i.e. the equivalent of 3 LSB bits of Receive Request (RCV_REQ) Register in IXP1200 IX bus interface). Is it possible to do that? If someone knows the answer, please let me know. All I could find out was that MSF's receive status word (RSW) contains a field which tells which physical port this mpacket came from (e.g. in POS-PHY Level 3, 32 bit MPHY mode, the 5 LSB bits of RSW0 will tell this information). and then it is the thread's job to read this field and sort out different mpackets received from different ports. This will make the driver pretty messy especially if you are employing multiple threads to receive mpackets from a particular port. Thanks in advance for any input. Sanjay -- ----------------------- http://www.cc.gatech.edu/~ksanjay
participants (1)
-
Sanjay Kumar