Hello everyone,
My team needs to implement an UEFI driver(A service driver, to be precise)
that exports a few functions and consumes the protocols from a third-party
UEFI driver to execute a relatively complex routine. This latter routine
should preferably be executed after all the other UEFI images are loaded
during the boot(I can't detail why this is so). Given these constraints,
We've come to the following points:
- We could execute the routine in the driver entry point: however, there
are no guarantees that the third-party driver protocol will be available
when our driver is loaded(since it's not possible to specify dependencies
among UEFI drivers);
- We could register the routine as a notification function for an *
EVT_SIGNAL_EXIT_BOOT_SERVICES* event: this would guarantee that our
driver is loaded after the third-party one and would address the preference
mentioned in the previous paragraph, but it imposes the serious limitation
of not being able to use Memory Allocation services in this routine, which
makes it impossible to be implemented, in practice. As far as I understood
from the specs, there are also no guarantees that the third-party driver
will still be in memory when the routine is called.
So, here comes my doubt: is it possible to, somehow, specify a dependency
among UEFI drivers(i.e, to guarantee that one driver is loaded before the
other)? Also, are there any workarounds to the issues raised about using
the *EVT_SIGNAL_EXIT_BOOT_SERVICES* event?
Thanks in advance,
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel