Fix EFI net issues
Fixes the following issues found when testing
EFI_SIMPLE_NETWORK_PROTOCOL on cuttlefish:
1. EFI uses the first net device by default. Cuttlefish creates 3
network devices but the first one doesn't have an assigned MAC. This
causes failure when EFI registers network device. The solution is to
call `eth_set_current()` first to scan and select a different one.
2. Virtio net stops receiving when rx ring runs out of buffer. Adding
back buffer is not sufficient to resume it. A notification is
necessary to kick if off again.
TEST: Tested Fastboot over TCP in GBL UEFI app.
Change-Id: I73a59cf188fb45212a4666f46b88fdf55de9d663
2 files changed