XilinxProcessorIPLib/drivers/axiethernet/examples/xaxiethernet_example_intr_fifo.c
static void FifoRecvHandler(XLlFifo *Fifo)
{
	u32 FrameLength;

	/*
	 * We get the interrupt only once for multiple frames received.
	 * So get all the frames we can.
	 */
	/* While there is data in the fifo ... */
	while (XLlFifo_RxOccupancy(Fifo)) {
		/*
		 * Get the packet length
		 */
		FrameLength = XLlFifo_RxGetLen(Fifo);

		XLlFifo_Read(Fifo, RxFrame, FrameLength);
		/*
		 * Validate the packet data against the header of the TxFrame.
		 * The payload data should as placed by
		 * AxiEthernetUtilFrameSetPayloadData()
		 */
		if (AxiEthernetUtilFrameVerify(&TxFrame, &RxFrame) != 0) {
			FrameDataErrors++;
			AxiEthernetUtilErrorTrap("Data mismatch");
			return;
		}
		/*
		 * Bump counter
		 */
		FramesRx++;
	}
}
/*****************************************************************************/
/**
*
* This is the Receive handler callback function for examples 1 and 2.
* It will increment a shared  counter, receive and validate the frame.
*
* @param	Fifo is a reference to the Fifo device instance.
*
* @return	None.
*
* @note		None.
*
******************************************************************************/
This is the Receive handler callback function for examples 1 and 2.
It will increment a shared  counter, receive and validate the frame.
This is the Receive handler callback function for examples 1 and 2 . It will increment a shared counter receive and validate the frame .
static void FifoRecvHandler(XLlFifo *Fifo)
{
	u32 FrameLength;
	while (XLlFifo_RxOccupancy(Fifo)) {
		FrameLength = XLlFifo_RxGetLen(Fifo);
		XLlFifo_Read(Fifo, RxFrame, FrameLength);
		if (AxiEthernetUtilFrameVerify(&TxFrame, &RxFrame) != 0) {
			FrameDataErrors++;
			AxiEthernetUtilErrorTrap("Data mismatch");
			return;
		}
		FramesRx++;
	}
}
static void FifoRecvHandler ( XLlFifo * Fifo ) { u32 FrameLength ; while ( XLlFifo_RxOccupancy ( Fifo ) ) { FrameLength = XLlFifo_RxGetLen ( Fifo ) ; XLlFifo_Read ( Fifo , RxFrame , FrameLength ) ; if ( AxiEthernetUtilFrameVerify ( & TxFrame , & RxFrame ) != 0 ) { FrameDataErrors ++ ; AxiEthernetUtilErrorTrap ( " " ) ; return ; } FramesRx ++ ; } }
This is the Receive handler callback function for examples 1 and 2.
This is the Receive handler callback function for examples 1 and 2 .
/*
	 * We get the interrupt only once for multiple frames received.
	 * So get all the frames we can.
	 */ /* While there is data in the fifo ... */ /*
		 * Get the packet length
		 */ /*
		 * Validate the packet data against the header of the TxFrame.
		 * The payload data should as placed by
		 * AxiEthernetUtilFrameSetPayloadData()
		 */ /*
		 * Bump counter
		 */