[undi] Profile all PXE API calls

Signed-off-by: Michael Brown <mcb30@ipxe.org>
[undi] Profile transmit and receive datapaths

Signed-off-by: Michael Brown <mcb30@ipxe.org>
[undi] Report any PXENV_UNDI_ISR errors via netdev_rx_err()

Signed-off-by: Michael Brown <mcb30@ipxe.org>
[undi] Do not switch to real mode to check for NIC interrupt

Signed-off-by: Michael Brown <mcb30@ipxe.org>
[undi] Place an upper limit on the number of PXENV_UNDI_ISR calls per poll

PXENV_UNDI_ISR calls may implicitly refill the underlying receive
ring, and so could continue to retrieve packets indefinitely.  Place
an upper limit on the number of calls to PXENV_UNDI_ISR per call to
undinet_poll().

Signed-off-by: Michael Brown <mcb30@ipxe.org>