> On Feb 8, 2019, at 6:42 AM, Tomas Pilar (tpilar) <tpi...@solarflare.com> 
> wrote:
> 
> Hi,
> 
> I am currently pondering the most elegant way to implement capsule update for 
> our devices that would work in the presence of multiple devices in the host.
> 
> Capsule allows embedding a driver that is executed prior to the update, which 
> is very handy. Crypto library is quite large and would not fit into an 
> OptionROM, so being able to supply FMP driver in the capsule is great.
> 
> However, if only one instance of the driver loads, the FMP upstream is 
> currently written to support only one device per instance. So I wonder if 
> there is a easy, neat way for my image to replicate on DriverBinding so that 
> I end up with one instance per device.
> 


Tom,

The usually model in EFI is to have one driver handle multiple things. 

> It looks like I should be able to do it with gBS->LoadImage() and passing 
> information about currently loaded image though I might have to CopyMem() the 
> image itself to new location.
> 

gBS->LoadImage() will load and relocate the image to a malloced address of the 
correct memory type for the image. The inputs are just the source of the image, 
so no need to CopyMem() anything. gBS->StartImage() calls the entry point.

Thanks,

Andrew Fish

> Thoughts?
> 
> Cheers,
> Tom
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to