/* @event: the event for which this notification function is registered @context: event context - not used in this function  */
static void EFIAPI efi_network_timer_notify(struct efi_event *event, void *context)
/* @event: the event for which this notification function is registered @context: event context - not used in this function  */
static void EFIAPI efi_network_timer_notify(struct efi_event *event, void *context)
{
	struct efi_simple_network *this = (struct efi_simple_network *)context;
	EFI_ENTRY("%p, %p", event, context);
	if (!this || this->mode->state != EFI_NETWORK_INITIALIZED)
		goto out;
	if (!new_rx_packet) {
		push_packet = efi_net_push;
		eth_rx();
		push_packet = NULL;
		if (new_rx_packet) {
			if (net_rx_packet_len >=
			    sizeof(struct ethernet_hdr)) {
				this->int_status |=
					EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT;
				wait_for_packet->is_signaled = true;
			} else {
				new_rx_packet = 0;
			}
		}
	}
out:
	EFI_EXIT(EFI_SUCCESS);
}