
Some changes were made in iPXE which made it impossible to boot from iSCSI with U-Boot anymore.
The first patch ensures that queued events are executed when RestoreTPL is called. This mimics what EDK2 does. iPXE relies on this behavior when using this pattern:
bs->RestoreTPL ( TPL_APPLICATION ); bs->RaiseTPL ( TPL_CALLBACK );
iPXE has raised the TPL level at which the application is running (in discordance with the recommendations of the UEFI spec). So we have to run the timer event of the network service at a higher level (TPL_NOTIFY).
Heinrich Schuchardt (2): efi_loader: RestoreTPL should execute queued events efi_loader: use TPL_NOTIFY for network timer event
lib/efi_loader/efi_boottime.c | 5 +++++ lib/efi_loader/efi_net.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-)