From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=17.171.2.60; helo=ma1-aaemail-dr-lapp01.apple.com; envelope-from=afish@apple.com; receiver=edk2-devel@lists.01.org Received: from ma1-aaemail-dr-lapp01.apple.com (ma1-aaemail-dr-lapp01.apple.com [17.171.2.60]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id ED413211C608A for ; Fri, 8 Feb 2019 09:16:32 -0800 (PST) Received: from pps.filterd (ma1-aaemail-dr-lapp01.apple.com [127.0.0.1]) by ma1-aaemail-dr-lapp01.apple.com (8.16.0.27/8.16.0.27) with SMTP id x18HBtLD058004; Fri, 8 Feb 2019 09:16:31 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=mime-version : content-transfer-encoding : content-type : sender : subject : from : in-reply-to : date : cc : message-id : references : to; s=20180706; bh=TTZ+V9lp3WNPvAz4uSuZQf0rUnsqDEOPRr5re8c+F8c=; b=Xnq8cozpUbd8UEhVvZ+rXdAy1Jttxi8Qsqvs59m9DqFFiUcajuGQFzgRFuQGFakdOI8G tPwp36kQOE+3KRFNFawe1LQ3oZ71X/V9p8cJMrNJTI9Zo+3IkNEs9UHcu/CMRRDTQhDD 4jpErGPjtdfyKv55J2x4ctcOWNRclPy/Kpulm2ZSYIWnlnx+itrLFVJWtRPCxji+Kls6 WUxmtpySkJaDBilStx/S95Ifi6VVsr3Cgi0ULuhQpS5I8PHZlKw1G40SCvDlMu0diBvb 5mhcwSMKMD86HazXq2wfGk7jD4ylnxoe1taw79cwsOuoQeE2mdICZVtU2pej5DmBcEOU uw== Received: from ma1-mtap-s01.corp.apple.com (ma1-mtap-s01.corp.apple.com [17.40.76.5]) by ma1-aaemail-dr-lapp01.apple.com with ESMTP id 2qdard7k92-5 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Fri, 08 Feb 2019 09:16:31 -0800 MIME-version: 1.0 Received: from ma1-mmpp-sz10.apple.com (ma1-mmpp-sz10.apple.com [17.171.128.150]) by ma1-mtap-s01.corp.apple.com (Oracle Communications Messaging Server 8.0.2.3.20181024 64bit (built Oct 24 2018)) with ESMTPS id <0PMM00KWAANH8M90@ma1-mtap-s01.corp.apple.com>; Fri, 08 Feb 2019 09:16:29 -0800 (PST) Received: from process_viserion-daemon.ma1-mmpp-sz10.apple.com by ma1-mmpp-sz10.apple.com (Oracle Communications Messaging Server 8.0.2.3.20181024 64bit (built Oct 24 2018)) id <0PMM004009R0AI00@ma1-mmpp-sz10.apple.com>; Fri, 08 Feb 2019 09:16:29 -0800 (PST) X-Va-A: X-Va-T-CD: 57f65681c8f990e36c5c6358a8ab2ec3 X-Va-E-CD: 6821adf32cc0a3c9e542ec6b3ad4a951 X-Va-R-CD: aca771d416c85eecb5c2f30d0198eac2 X-Va-CD: 0 X-Va-ID: c6d5a4ff-d73c-4235-b436-59675984e30d X-V-A: X-V-T-CD: 57f65681c8f990e36c5c6358a8ab2ec3 X-V-E-CD: 6821adf32cc0a3c9e542ec6b3ad4a951 X-V-R-CD: aca771d416c85eecb5c2f30d0198eac2 X-V-CD: 0 X-V-ID: cbb99170-dbf8-4c4a-a067-e7d2d3f47d18 Received: from process_milters-daemon.ma1-mmpp-sz10.apple.com by ma1-mmpp-sz10.apple.com (Oracle Communications Messaging Server 8.0.2.3.20181024 64bit (built Oct 24 2018)) id <0PMM00000A5HK200@ma1-mmpp-sz10.apple.com>; Fri, 08 Feb 2019 09:16:29 -0800 (PST) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-02-08_08:,, signatures=0 Received: from [17.234.210.198] (unknown [17.234.210.198]) by ma1-mmpp-sz10.apple.com (Oracle Communications Messaging Server 8.0.2.3.20181024 64bit (built Oct 24 2018)) with ESMTPSA id <0PMM0065RANEX030@ma1-mmpp-sz10.apple.com>; Fri, 08 Feb 2019 09:16:29 -0800 (PST) Sender: afish@apple.com From: Andrew Fish In-reply-to: <5c8dff3b-3bbf-f317-efa9-277bc05b8b10@solarflare.com> Date: Fri, 08 Feb 2019 09:16:22 -0800 Cc: "edk2-devel@lists.01.org" Message-id: <0AB73E14-5641-428D-9E4A-1D504A65885F@apple.com> References: <5c8dff3b-3bbf-f317-efa9-277bc05b8b10@solarflare.com> To: "Tomas Pilar (tpilar)" X-Mailer: Apple Mail (2.3445.6.18) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-02-08_08:, , signatures=0 Subject: Re: Self-replicating image X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Feb 2019 17:16:33 -0000 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII > On Feb 8, 2019, at 6:42 AM, Tomas Pilar (tpilar) 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