Sorry, I forgot to add edk2-devel to the sender list. :)
> -----Original Message----- > From: Marvin Häuser > Sent: Wednesday, June 1, 2016 6:39 PM > To: 'Peter Kirmeier' <[email protected]> > Subject: RE: [edk2] Q: Which module type fits my library? > > Hey Peter, > > UEFI Drivers are pretty much (not literally) DXE Drivers, though 1) they are > executed only after all architectural protocols have been installed and 2) > they > usually expose a Driver Binding protocol (for hardware drivers). 'DXE' is, if > I > remember correctly, a term from the UEFI PI spec and hence the note that > UEFI drivers are drivers compliant to the UEFI spec (both are independent). > And yes, they both are terminated with ExitBootServices(). > > Regards, > Marvin. > > > -----Original Message----- > > From: edk2-devel [mailto:[email protected]] On Behalf Of > > Peter Kirmeier > > Sent: Wednesday, June 1, 2016 6:09 PM > > To: [email protected] > > Subject: [edk2] Q: Which module type fits my library? > > > > Hi there, > > > > > > > > today I wasn't sure which module types my (DXE) library actually supports, > so > > I had a look at the modules writers guide here: > > > > https://github.com/tianocore- > > docs/Docs/raw/master/User_Docs/EDK_II%20Module% > > 20Writer_s%20Guide_0_7.pdf > > > > At section 3.1.1 there is a list of module types with a brief introduction. > > > > So I was looking for suitable types. > > > > > > > > DXE_DRIVER is for DXE phase and gets destroyed after ExitBootServices. > > > > Okay. > > > > > > > > DXE_RUNTIME_DRIVER doesn't get destroyed but have to make sure the > > pointer will not break on SetVirtualAddressMap(). > > > > Got it. > > > > > > > > UEFI_DRIVER is used for drivers that are "compliant with UEFI > Specification". > > What does that actually mean? > > > > I mean: Are they alive until ExitBootServices() or longer with the need to > take > > care of SetVirtualAddressMap()? > > > > Haven't found any information about that yet, maybe someone can help > > here? > > > > > > > > UEFI_APPLICATION is used by applications which are "compliant with UEFI > > Specification". > > > > Afaik this could be a bootloader, a shell oder a shell application, right? > > > > So I think the lifetime of this module starts and ends before > > ExitBootServices() like a DXE_DRIVER. > > > > However, at least until the application is going to call ExitBootServices() > > by > > itself or uses SetVirtualAddressMap(). > > > > Oh, and thinking of CTRL+C at shell it should be able to release all > > resourses > > at any time, correct? > > > > > > > > Thank you, > > > > Peter > > > > _______________________________________________ > > edk2-devel mailing list > > [email protected] > > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

