One way I can think is:

-          Invokes EfiCreateEventReadyToBootEx() to register a platform 
callback function which is used to update "BootCurrent" and "BootOrder" 
variables to point to your application.

From: André Dantas [mailto:andre.dan...@lsbd.ufc.br]
Sent: Saturday, July 20, 2013 02:52
To: Felipe Martins
Cc: edk2-devel@lists.sourceforge.net
Subject: Re: [edk2] UEFI drivers dependency and ExitBootServices() event 
limitations

Hi everyone,

Is there a way to define that an uefi application is called immediately before 
end of the boot with priority level TPL_APPLICATION?

Thanks,

On Thu, Jul 18, 2013 at 4:09 PM, Felipe Martins 
<ffm...@gmail.com<mailto:ffm...@gmail.com>> wrote:
Thank you so much, that's exactly what we needed! :D

2013/7/18 Andrew Fish <af...@apple.com<mailto:af...@apple.com>>
It is  possible to use gBS->CreateEventEx() to register for an 
EFI_EVENT_GROUP_READY_TO_BOOT to know that the system is about to attempt to 
boot. This is generally used to complete tables needed for the OS handoff.

It is possible to gBS->RegisterProtocolNotify() for EFI_LOADED_IMAGE_PROTOCOL 
to know when an image is loaded.

Thanks,

Andrew Fish


On Jul 18, 2013, at 11:28 AM, Felipe Martins 
<ffm...@gmail.com<mailto:ffm...@gmail.com>> wrote:


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<mailto:edk2-devel@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/edk2-devel



------------------------------------------------------------------------------
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<mailto:edk2-devel@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/edk2-devel



--
[Image removed by sender. LSBD]<http://www.lsbd.ufc.br/>
André Dantas

Developer

GTalk: andre.dan...@lsbd.ufc.br<mailto:rodrigo.fe...@lsbd.ufc.br>

Skype: andre.hp.dantas

<<inline: ~WRD000.jpg>>

------------------------------------------------------------------------------
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

Reply via email to