From nobody Fri Dec 27 03:24:15 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1503490997675253.7808827611667; Wed, 23 Aug 2017 05:23:17 -0700 (PDT) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 27EBF21E2DA61; Wed, 23 Aug 2017 05:20:29 -0700 (PDT) Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0072.outbound.protection.outlook.com [104.47.40.72]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id C683D2095B9F4 for ; Wed, 23 Aug 2017 05:20:26 -0700 (PDT) Received: from brijesh-build-machine.amd.com (165.204.77.1) by DM2PR12MB0155.namprd12.prod.outlook.com (2a01:111:e400:50ce::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.18; Wed, 23 Aug 2017 12:22:59 +0000 X-Original-To: edk2-devel@lists.01.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=jYsfQGp2XaMBi3D71uCWntoP87Md6Po6hVCn3UCViJw=; b=h1Hy+8dM4MqpXjfcJW5KuoZxzWFIfl5GSK0c3sFwZgsYO/CN1b2Kj0+9G4qB2vEj6GYRADoiPE1TEkxSD16C/x81InqCI5Ew2GD+eZBa8yD0QF+TgoC+vQ+OsMERXc85MvuYa0EXMt9IbvhoiFclvEjXD6AByg5sIhnxQqjW2EE= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; From: Brijesh Singh To: edk2-devel@lists.01.org Date: Wed, 23 Aug 2017 08:22:28 -0400 Message-Id: <1503490967-5559-5-git-send-email-brijesh.singh@amd.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1503490967-5559-1-git-send-email-brijesh.singh@amd.com> References: <1503490967-5559-1-git-send-email-brijesh.singh@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: DM5PR12CA0069.namprd12.prod.outlook.com (2603:10b6:3:103::31) To DM2PR12MB0155.namprd12.prod.outlook.com (2a01:111:e400:50ce::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 954d4f7e-9af2-4580-908c-08d4ea21b149 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DM2PR12MB0155; X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0155; 3:isKUImTWk4a7lzx3nX41IDq3Ig7DkZgyhz7lfqffZlwk5nnS+0xJYSeVbTK665IlncY8OkESHBVLnPOCYM/GWjfZX7E3mQxym59XRQQxH+XwTD4q6rGRXGE2XqwqkDX2TjwdvYO47oJqWFi9gJZNSBDS6jNLd1RL1SbWYTZv+hVlh8buTXyB6UGI/AGe779FeZgnfAyqM5u3V46mRMm9KHJrHMzOa07+M1xzvi0G+IH/1SF5+gZfOJc3IJm/oGYb; 25:PcMpelKNyQQ/4chYKNhEWu+T/eoz8LuoHNTAH9jvhLTUv9UstN7VrDiXt2Tk73WARGFE+lu7mZTmlY64hUes/LBavXJTHZfV81W86uD8aK4xyEnNz/HgWKsxKjGJ4CFPJwoPz5alem+0Xb1VTeww67jRr3zSP3OW+swFrds3A3pzkML0gUQpeiaBvoehk3dn8urMxM9QSueNyprc/srrC40rMhhl7+X+AdQs6OZrf8kFWEzv2gZVWnafmPAvSBLsvqmNrhyx7VRpXehfH0WPR4W8lwfON1AG8pYwm0+P3Cfk8bQDidUgGNQj2vsWiMXFQeSjbmw9bKSa8fkX+wT9Uw==; 31:ZpjkGmeSAbCXVMtHfNO+lFqzhsd04cDvYBt2sEYv8OzTSnvf2s301NcSXUVZtlNpLTkeMJZ0cMxVA1Z70HLWIu63Aq95jKZ4FrjDg4x7QcZR3zBEphiI4SLhfWLrcpXdjSgsKYYt1e6GCepmvEhDZlO1uLQY+s+yiJy3BKctXUyQftLVAV0Z9Q2sMcbWJAWFv6K3OO9fo1oQlc1Xz5mwPfSqnu3G1TwDyYLSXC3D2MU= X-MS-TrafficTypeDiagnostic: DM2PR12MB0155: X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0155; 20:k6EUBZlKLv3LrocAKJeQG5UjglkVaIvVfpfUr5rgtX7ZvEpxowsNaXRUn8ZkODZEsewTLHJ9N72x7Bhou5EJ6gvbmlQsinNEmdAu0SGioV5IbVWfS49HFu2jQbs35Um7YoNTDjTuzOg+dZr/Zk7u5cPm5pLFz2J2QbtyIg3ST0PuthsAxG2RhcdY6M75thb8+5DaJMXGuv/fBVzpwYWu+EotI5PWGIP0QA8oi6pTdM2wsQ+10xVLDF8T/ky1Cl6muWYTcngj1Z3WcJY4dVwkJW7Y6kTErnW0glQt2Gpg1mXBheBpqSs9uStI6ScD2J1wsUkTfeCcVUNOyJYo0vW/egHBaKqKLrJ+pE/nlnnUXpGN9jMAZP+F8wyHKYm3phH+ngQqCe0GvJjTINPw4Fziv1BMB0vJB6S+Q9s1tyxU4dyMhrmvwrVe3lvjRpN0NN+/5Q5SAkz1+nFF+VTizMG/QaQtHy1UAM+htB07yx7MeakTwK5IvtS+hw/j5SaX2PkU; 4:kBQ3K1p/oVL6R9lgoNu1qsEuFGhNpuqVwVIh6eaY9MEqpHh2HmNru9dFOt7kOvY24LSDtq1cuD0HVvmQBCaIMOm6C3ncLA9Lkr5lvI9F/UlCPY8nl/0eQqHflKHAecT3XU/jVhsfyhV/5rphmXhVHbTvGM35GBbHG1Ao3hl7aYmHcSsyGaZcUQoEEAh+sVi5iu7ftCbhE6gD2Rzeu+d/zE1XrjI1xDfc8L+3Rx3LTSm6O/bedW3fjfNoSB8lnndF5pxucW6qKSXYhEsxuzRqf5rr7hR2R7+yodSy3A5JGthNyHm0xXC8xUcUnVrRdc8OT9I9DPir+eRmQUiH/BCk7A== X-Exchange-Antispam-Report-Test: UriScan:(767451399110)(228905959029699); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(6055026)(6041248)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123560025)(20161123564025)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DM2PR12MB0155; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DM2PR12MB0155; X-Forefront-PRVS: 040866B734 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(7370300001)(4630300001)(6009001)(39860400002)(189002)(199003)(305945005)(47776003)(97736004)(101416001)(110136004)(6666003)(189998001)(478600001)(7736002)(3846002)(66066001)(5003940100001)(6116002)(6486002)(48376002)(86362001)(105586002)(2950100002)(4326008)(106356001)(36756003)(6916009)(50466002)(2906002)(50226002)(42186005)(2351001)(33646002)(53416004)(25786009)(7350300001)(81156014)(76176999)(5660300001)(68736007)(54906002)(8676002)(53936002)(50986999)(81166006)(2361001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR12MB0155; H:brijesh-build-machine.amd.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM2PR12MB0155; 23:pNykiIGhUvKR1BrzH4PWudmEijHcCqIHeqzS5yMmm?= =?us-ascii?Q?J++NSwOquXmwbQZE4Tne6XM9I57+XQs4ncZ7U0W7TEnh6lBYxxj45QXhm6Zt?= =?us-ascii?Q?CjhdnElO61nJcP9ziW1nWP1FKpbU6x+SvGQdrmcc3Wxp8eXZLPVoNYeNc7qQ?= =?us-ascii?Q?7CB4jPz6IqXlAo0qi41HEqTjwj9NdRwVKXHyo1jXqCmoPEMJkK9LNQ3tguDV?= =?us-ascii?Q?4exNc3ViIc/1RBxisvqXCWSIXW2FXKkumMMh2FQ8dRZr2pfR+xI2Om6uVTUv?= =?us-ascii?Q?J883lhzeWHO2EJUpawFr6OOnVl2ArEGgS/zck57rHS/FimIcoAS0gndQOnmu?= =?us-ascii?Q?oe+x4JRdyxfcyFd9LdWAMaMhoIXcz9W6yDgYeuaAo5WHULwSNy8jHLrmx8eR?= =?us-ascii?Q?ljwW8Zf0sEJ87o2kTCPiKpWaRDax/TgRemPD/A/oMnTrdbjyva+z9SomvvrA?= =?us-ascii?Q?3P6H0TNZfyR1npZH05tL4SOZJEehYmMzQF8RrjBjAsA8sr5oZFa7eJkupwXy?= =?us-ascii?Q?4vRHPz3f0LI8m9TLTVN0gDWdNgc3/PB0NNd7Zay4NBlPVaPOa3qqsoLXEeOg?= =?us-ascii?Q?G6UAQ6qEiOEgyd3QY4GYhAWaztpvwHb2BYowvJmGh7bJFpjkzpYBBZZc2Qbj?= =?us-ascii?Q?3aieQXAAHVy78kovPpqIUkChBc1I/EKxfiJEMz/fJTbXxlgN8Rc4B3oj6SqE?= =?us-ascii?Q?wpAY7RtRGEpEzCK72gxXS7ixP81wl8IF4FJNMWP3dR0bu/TKVICpwOmR6AFE?= =?us-ascii?Q?KvaqlX85XsgGy1r6PrOpzVH2kTD+9gTjeZ8DpHIYc5cZeLvC0tT3fBrH30MM?= =?us-ascii?Q?swMDzHJ8ogEDSDqkOIXnP7f5Nx0IlK0APwBZ9n84P06rmPrlG8pkZMF4tEkS?= =?us-ascii?Q?18TJs6AHEnzFsu5C4LMZEKHaTN1G5IkjARjjlPkJyMcPXD0W/T6GPpU34rlh?= =?us-ascii?Q?7tROU4Bk2ZxcQgvkC/MwJruktSFcuOa49zSUCVIyrU+29nHdbdgLv8+3g4mp?= =?us-ascii?Q?BKprPxvrSdbAGkeE+lYXy44ZedNzpXadLhogpUtvwP5IbmYq6rg29dJhycBU?= =?us-ascii?Q?Fd/gwPf+pp2L+FwdqVUR3HQ/I4/Cz3Oa3M2DX5yAT0VO3fihudn+hwWz9MH1?= =?us-ascii?Q?Wqm67gz1ufyHdxy4BI1DpK/otWGyWmE?= X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0155; 6:CO2bAVkHful5nqgbXxN+GoGR9+AUUhk+YH1V6bDsMH8NPQA0llIwOuyS+3ha6W7Xk+ErIYIYdIh24oFjhDjxw51bX84C1BYue8gsymXiFTethKOnqklRnC2I37Tx6mF3yS2hkT6sCWYz2Mc+uMlvQiZs+WzA7jqi6MkipGKVHxghIcWYT7H+cxuOXIoN8oQdYtmzku1PPIyvtST5dboQSnvCiejV40DJbqsJFjiwWHN2SrbZGIbqT1Z38IyyI4+4Fr9wbSh/R3qqDH/NXlZHo2P8xWw8mO5hvmLqeT7bY+8BdRkfv0pry75xkMvRYxDxDrunWfuilktEL8rbXzr48g==; 5:DPsgivj/GbEfWvz2sLLrPXDaXiBb/3vOjAnfcX/Uvv7qG5ZeM1MBe1CWV0W6S/QlAm7SDrKFNmiXdAWh8ByO+KYqENK4q6PTI/pHt9IK4Td+miBCsMMVwJpcdqQe7xEopIifbINgTKXQccAM+xL6BA==; 24:D6oiyud71aCkU4e44K5RB6/vTZbc1Rz+DsSaHmL8e9tYFukw6oKI6zwI7s1dOdyzjgWoRZphnaFWsxJs53caXhr3ILZAm1XGFJ386OAa090=; 7:uGdNmVFgkz0WZM6vZg6VLM0rze9m7VYfb+FV4PfI5aeW14Wx5z+atKk/5RNrr7pnZe8OsBLzsEm76T/AgyZ1B5Yt44d8QhASlQMmNsSdaDj2791/UraCDbZK14hvycSKUW6HMALLcCIgkJWFBBQ6pv6XWcy/NVweFrFfJvPrsvTDcvqdOxanxZ5FfDQq3TmcBx8BokmkcZSEjl1OHqL2yVsdCcPtL5aWRBUx+P5MRzw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM2PR12MB0155; 20:U7rb3j5bCOL7Nn9f0jYjgHLfGDvO/377SYS8mI+Xn5QaT0v5Q0ExrT6y/Bgn8jL2eYtJ/QNF5FYiHzTL2acNNuXRAxqk1SE2MDtqk4tQd4PPtBYGQn65Xa2oawVJeh47L62x0SwzuwN7dHiikdbPrDkZxjVFJAct9l/p6Mvg61CkEo+3zFEOX3Aetg8Yuqs7gHA7MW54U9qDgQh0VDEOcdQhuOIw+yVWqZLE4NGCKkazKWurAKe1ORbvse/1RAv9 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Aug 2017 12:22:59.3416 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR12MB0155 Subject: [edk2] [PATCH v3 04/23] OvmfPkg/VirtioMmioDeviceLib: implement IOMMU-like member functions X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Jordan Justen , Tom Lendacky , Laszlo Ersek , Ard Biesheuvel Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" The patch implements the newly added IOMMU-like member functions by respectively delegating the job to: - VIRTIO_DEVICE_PROTOCOL.AllocateSharedPages () -> MemoryAllocationLib.AllocatePages() - VIRTIO_DEVICE_PROTOCOL.FreeSharedPages () -> MemoryAllocationLib.FreePages () - VIRTIO_DEVICE_PROTOCOL.MapSharedBuffer () -> no-op - VIRTIO_DEVICE_PROTOCOL.UnmapSharedBuffer () -> no-op Suggested-by: Laszlo Ersek Cc: Ard Biesheuvel Cc: Jordan Justen Cc: Tom Lendacky Cc: Laszlo Ersek Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.h | 36 +++++= ++++++++ OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c | 8 ++- OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceFunctions.c | 57 +++++= +++++++++++++++ 3 files changed, 99 insertions(+), 2 deletions(-) diff --git a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.h b/OvmfP= kg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.h index bedd635e1a86..e5881d537f09 100644 --- a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.h +++ b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.h @@ -3,6 +3,7 @@ Internal definitions for the VirtIo MMIO Device driver =20 Copyright (C) 2013, ARM Ltd + Copyright (C) 2017, AMD Inc. All rights reserved.
=20 This program and the accompanying materials are licensed and made availa= ble under the terms and conditions of the BSD License which accompanies this @@ -25,6 +26,7 @@ #include #include #include +#include =20 #define VIRTIO_MMIO_DEVICE_SIGNATURE SIGNATURE_32 ('V', 'M', 'I', 'O') =20 @@ -137,4 +139,38 @@ VirtioMmioSetGuestFeatures ( IN UINT64 Features ); =20 +EFI_STATUS +EFIAPI +VirtioMmioAllocateSharedPages ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN UINTN NumPages, + OUT VOID **HostAddress + ); + +VOID +EFIAPI +VirtioMmioFreeSharedPages ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN UINTN NumPages, + IN VOID *HostAddress + ); + +EFI_STATUS +EFIAPI +VirtioMmioMapSharedBuffer ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN VIRTIO_MAP_OPERATION Operation, + IN VOID *HostAddress, + IN OUT UINTN *NumberOfBytes, + OUT EFI_PHYSICAL_ADDRESS *DeviceAddress, + OUT VOID **Mapping + ); + +EFI_STATUS +EFIAPI +VirtioMmioUnmapSharedBuffer ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN VOID *Mapping + ); + #endif // _VIRTIO_MMIO_DEVICE_INTERNAL_H_ diff --git a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c b/OvmfP= kg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c index b1d443ea7007..fce934e1e953 100644 --- a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c +++ b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c @@ -3,6 +3,7 @@ This driver produces Virtio Device Protocol instances for Virtio Mmio de= vices. =20 Copyright (C) 2013, ARM Ltd. + Copyright (C) 2017, AMD Inc. All rights reserved.
=20 This program and the accompanying materials are licensed and made availa= ble under the terms and conditions of the BSD License which accompanies this @@ -15,7 +16,6 @@ **/ =20 #include -#include #include =20 #include "VirtioMmioDevice.h" @@ -35,7 +35,11 @@ static VIRTIO_DEVICE_PROTOCOL mMmioDeviceProtocolTemplat= e =3D { VirtioMmioGetDeviceStatus, // GetDeviceStatus VirtioMmioSetDeviceStatus, // SetDeviceStatus VirtioMmioDeviceWrite, // WriteDevice - VirtioMmioDeviceRead // ReadDevice + VirtioMmioDeviceRead, // ReadDevice + VirtioMmioAllocateSharedPages, // AllocateSharedPages + VirtioMmioFreeSharedPages, // FreeSharedPages + VirtioMmioMapSharedBuffer, // MapSharedBuffer + VirtioMmioUnmapSharedBuffer // UnmapSharedBuffer }; =20 /** diff --git a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceFunctions.= c b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceFunctions.c index 9142d4a162c0..644ec65e1788 100644 --- a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceFunctions.c +++ b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceFunctions.c @@ -293,3 +293,60 @@ VirtioMmioDeviceRead ( =20 return EFI_SUCCESS; } + +EFI_STATUS +EFIAPI +VirtioMmioAllocateSharedPages ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN UINTN NumPages, + OUT VOID **HostAddress + ) +{ + VOID *Buffer; + + Buffer =3D AllocatePages (NumPages); + if (Buffer =3D=3D NULL) { + return EFI_OUT_OF_RESOURCES; + } + + *HostAddress =3D Buffer; + return EFI_SUCCESS; +} + +VOID +EFIAPI +VirtioMmioFreeSharedPages ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN UINTN NumPages, + IN VOID *HostAddress + ) +{ + FreePages (HostAddress, NumPages); +} + +EFI_STATUS +EFIAPI +VirtioMmioMapSharedBuffer ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN VIRTIO_MAP_OPERATION Operation, + IN VOID *HostAddress, + IN OUT UINTN *NumberOfBytes, + OUT EFI_PHYSICAL_ADDRESS *DeviceAddress, + OUT VOID **Mapping + ) +{ + *DeviceAddress =3D (EFI_PHYSICAL_ADDRESS) (UINTN) HostAddress; + *Mapping =3D NULL; + + return EFI_SUCCESS; +} + +EFI_STATUS +EFIAPI +VirtioMmioUnmapSharedBuffer ( + IN VIRTIO_DEVICE_PROTOCOL *This, + IN VOID *Mapping + ) +{ + return EFI_SUCCESS; +} --=20 2.7.4 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel