From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR03-VE1-obe.outbound.protection.outlook.com (EUR03-VE1-obe.outbound.protection.outlook.com [40.107.5.65]) by mx.groups.io with SMTP id smtpd.web10.8517.1589445649245960254 for ; Thu, 14 May 2020 01:40:49 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=rdTY8ueU; spf=pass (domain: arm.com, ip: 40.107.5.65, mailfrom: sami.mujawar@arm.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5RE+qgQJhOqTj8/phpZd2rOdJPLzPS9l1rlz+95P2H8=; b=rdTY8ueUg1v2pTsu6NYMZBIuUxV/kkoOsUAlZ/zHwOmiwIRhO9fJGpGQvqzoc2RnMD6EiLibVEkQW10PwmoooYESf1ZO9a6E500lwPv/vqTlrw+8j9N/ogiQWv77HTqWstpQx4C6Rrpdela2YReHfm+edW3OMO3syS+r7jRjt7c= Received: from MR2P264CA0135.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:30::27) by HE1PR0802MB2283.eurprd08.prod.outlook.com (2603:10a6:3:c3::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2979.35; Thu, 14 May 2020 08:40:45 +0000 Received: from VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com (2603:10a6:500:30:cafe::58) by MR2P264CA0135.outlook.office365.com (2603:10a6:500:30::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.24 via Frontend Transport; Thu, 14 May 2020 08:40:45 +0000 Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; edk2.groups.io; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;edk2.groups.io; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT059.mail.protection.outlook.com (10.152.19.60) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.19 via Frontend Transport; Thu, 14 May 2020 08:40:45 +0000 Received: ("Tessian outbound 4cdf5642225a:v54"); Thu, 14 May 2020 08:40:45 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 30d8823d3ebd0535 X-CR-MTA-TID: 64aa7808 Received: from 356c5a445bb9.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id A8A57F59-6AF2-447C-BD06-185B63604103.1; Thu, 14 May 2020 08:40:37 +0000 Received: from EUR03-AM5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 356c5a445bb9.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 14 May 2020 08:40:37 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d5U28FguM5oMKBcGWYSV9PiaGG9q/DJ5IWiOV1n1M1lO5UzzUFccE2Faj4grcGsGYEcu+NlCW4Qbtkrm+ayxUxCm17qIDAZk84XkWklsXYI7S447WXZlWqFf0067QmEBnVkw3b5J3pm4ddWgUwc0NrUVwYd/8p+xclkcRPFOJCcbldQ7ZEsc54HJl1niVCZZQFQDznF2OctzgoLEGHbyQY8tzzC9FasKaY6eWk+0DwaOHCxmjdOtC3ccm7YixJIDFLDrk0fnINQvxLLT2nSaUAFuZGyClVJacf98W/xF3nBhg8CSgL/6JNZpTd75IWAPJI4OIN3n42dWIOAlxIAPbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5RE+qgQJhOqTj8/phpZd2rOdJPLzPS9l1rlz+95P2H8=; b=j52SweVvp/y2aWxeMn+aChhZyHiiSb9XxGHFTLiL0fgx2z+RSuHunsASIX1wnqIWDYiSK3YZwiYzW3MEHvQaGo4A2HhHm19Wv9gsIzjunllzCHGVq/ErN7ahT/gJ8tTVLtVNzP7Pk22qlErqcsJ7heF/MU9ALtgLpo8BNssUJEZ/mNmxX8ZG6BVttwId7SX0eFrG9ewMp6Sicn8O+EyPMElO2eIvCDl4lcUjDMSM+sDa6LIgfl4L/tfPWbhbYcZ4OhWMSuqaQkvLa3yCbScvRPyqHWdOatpOjdqvL+BmFwkcb+osbICSpjI05UQ29brMi/b1cZqoHkb4ZAxySnlbYA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=arm.com; dmarc=bestguesspass action=none header.from=arm.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5RE+qgQJhOqTj8/phpZd2rOdJPLzPS9l1rlz+95P2H8=; b=rdTY8ueUg1v2pTsu6NYMZBIuUxV/kkoOsUAlZ/zHwOmiwIRhO9fJGpGQvqzoc2RnMD6EiLibVEkQW10PwmoooYESf1ZO9a6E500lwPv/vqTlrw+8j9N/ogiQWv77HTqWstpQx4C6Rrpdela2YReHfm+edW3OMO3syS+r7jRjt7c= Received: from AM6P195CA0021.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:81::34) by VI1PR0802MB2317.eurprd08.prod.outlook.com (2603:10a6:800:9a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.26; Thu, 14 May 2020 08:40:36 +0000 Received: from VE1EUR03FT057.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:81:cafe::3a) by AM6P195CA0021.outlook.office365.com (2603:10a6:209:81::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.24 via Frontend Transport; Thu, 14 May 2020 08:40:35 +0000 Authentication-Results-Original: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; Received: from nebula.arm.com (40.67.248.234) by VE1EUR03FT057.mail.protection.outlook.com (10.152.19.123) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.3000.19 via Frontend Transport; Thu, 14 May 2020 08:40:35 +0000 Received: from AZ-NEU-EX01.Emea.Arm.com (10.251.26.4) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1415.2; Thu, 14 May 2020 08:40:20 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX01.Emea.Arm.com (10.251.26.4) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1779.2; Thu, 14 May 2020 08:40:20 +0000 Received: from E107187.Arm.com (10.57.42.179) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server id 15.1.1415.2 via Frontend Transport; Thu, 14 May 2020 08:40:19 +0000 From: "Sami Mujawar" To: CC: Sami Mujawar , , , , , , , , , , , Subject: [PATCH v2 00/11] Kvmtool guest firmware support for Arm Date: Thu, 14 May 2020 09:40:08 +0100 Message-ID: <20200514084019.71368-1-sami.mujawar@arm.com> X-Mailer: git-send-email 2.11.0.windows.3 MIME-Version: 1.0 X-EOPAttributedMessage: 1 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFTY:;SFS:(4636009)(376002)(136003)(396003)(346002)(39860400002)(46966005)(47076004)(2616005)(4326008)(426003)(70586007)(54906003)(82740400003)(2906002)(81166007)(316002)(44832011)(70206006)(336012)(36756003)(19627235002)(6666004)(82310400002)(5660300002)(186003)(26005)(86362001)(7696005)(356005)(966005)(1076003)(478600001)(6916009)(8936002)(8676002);DIR:OUT;SFP:1101; X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 34d4f51a-d45d-4ba4-a3e8-08d7f7e27e67 X-MS-TrafficTypeDiagnostic: VI1PR0802MB2317:|HE1PR0802MB2283: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:8882;OLM:8882; X-Forefront-PRVS: 040359335D X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 5VhAm7GA8l7I20soAJqC5apTmvJOxz0mON14/YeugGY4GusSnYCWlGA3fJ6+wb4RKjjDQRY3He4c79HZC/oiMoYeszsjpziZOZFRgYwCaOVsenLxlYY0zV475hS4VuqWEvx08XCgBqTcisAxUMekztgPtWb6nH5bN0tqGREAAttBf44DsdtAuIfBy5L3Dj8vh0oGqb/zC+ADFzV0sUOyyJGei+qgIlkp4YzDz9evpWG4aV2ft+GF3ckx4PWwml9G/xVyvqlqSN6pcxoxsgsFh9Apdi5Ni2IyPcVOUxezHW5usVE3fSp4NQOQbpKX1hBJa0sL7BkRf8B8RBrEECZ+aFB4gzTzG7hKEdiIfZLW9UVsrJU12nxbp2yXe6Gpk94OSu0kNZm708yVGIkhy/kFOmGkclcIDGZwSkZfsPhrXVAxHJYICPNl7nCCWahzVPsZTACZzQwdVVqn4flwmifaa+cvsQrqfSh9gKwQb6IxPpOdh/lZVkf3yo0xjn9wTNiFY9WudEJ+HdRvIizzaGw62e744tOBBayqzxqdA0P3pF0HnPWVejmQ/aDnE5h2pa03lbaDBXZNyMKS82Teu53bbQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2317 Original-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=bestguesspass action=none header.from=arm.com; Return-Path: Sami.Mujawar@arm.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT059.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFTY:;SFS:(4636009)(39860400002)(396003)(346002)(136003)(376002)(46966005)(5660300002)(82310400002)(36906005)(186003)(478600001)(19627235002)(4326008)(966005)(70586007)(6666004)(47076004)(70206006)(81166007)(82740400003)(36756003)(2616005)(54906003)(1076003)(316002)(26005)(6916009)(336012)(2906002)(7696005)(44832011)(86362001)(426003)(8936002)(8676002);DIR:OUT;SFP:1101; X-MS-Office365-Filtering-Correlation-Id-Prvs: 102ca40d-9228-4b64-846a-08d7f7e27889 X-Forefront-PRVS: 040359335D X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0/GYWp8SrTsf5zUDHx9Ls/kR8Ox9hmt4764WIr5WMgkaESRnEF6S8Sy4BuvybS3QS655y4LUKCY0PyyiOU/3fVJbgtF9i8ao8MCyNyvLZF3LY7LFTnwJ0Swy6TF8TrAIEj4M2Gb+g6V/xMYMPlIpVpYDn3KEL7thxVwbg55/mI4IYKPON38niCSRsZLhiOgJ+lVFB54qtMmklw0Rf5620sGdTl8vOSDJph2wPcSHP9LGXVukHdbFtC93eyRqp5JATyn8PD+48+Bm9hCYac77qW/BSzLMV2hDyC4M4cRNSXz8meMJA+XDGCjTXA/4IbyGOOrtoPnTp7Ppa7faSxdI5no4YMqJHAs025HHFD0rDkMXC65BlXFx+IVLQLaSV6BnFogNm1zA9ywqJdQ80DCn8ZYdzKeUbxZvpSEg5AFZ2zVcaINFXjSBosYZmcRSdAosgD+glnPBmFsZPZvK06bW6rGM4ehBC7TD36WuiPcneHBupE2AQvOgjzgnA2j0cqS16bBUmU4MhRcb6sJkXNUZ7/JmmILa5DjwlrPJFoSWOHkOR9mgWJ37pI7MTYSIw22foXPgrO1OWa3m70jUxuNZnA== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 May 2020 08:40:45.0505 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 34d4f51a-d45d-4ba4-a3e8-08d7f7e27e67 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2283 Content-Type: text/plain Kvmtool is a virtual machine manager that can be used to launch guest partitions. Kvmtool additionally supports emulation of hardware like the RTC, CFI etc. essentially providing an emulated platform for a Guest OS to run. To boot a standards-based OS one would need UEFI. In this case it is UEFI at EL1 or guest/virtual firmware. Kvmtool has been enhanced to enable launching of KVM guests with UEFI support e.g. CFI emulation has been added to store UEFI variables, etc. These changes have been merged in the kvmtool repository at: https://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool.git This patch series: - adds UEFI guest firmware support for the Kvmtool emulated Arm platform. - addresses the review feedback for the v1 series discussed on the mailing list at: https://edk2.groups.io/g/devel/topic/30915280#30694 The changes for the v2 series can be seen at: https://github.com/samimujawar/edk2/tree/299_kvmtool_plat_support_v2 Sami Mujawar (11): PcAtChipsetPkg: Add MMIO Support to RTC driver MdePkg: Add NULL implementation for PCILib MdePkg: Base Memory Lib instance using MMIO ArmPlatformPkg: Use MMIO to read device memory ArmPlatformPkg: Dynamic flash variable base ArmVirtPkg: Add kvmtool platform driver ArmVirtPkg: kvmtool platform memory map ArmVirtPkg: Add Kvmtool NOR flash lib ArmVirtPkg: Support for kvmtool emulated platform ArmVirtPkg: Link NorFlashDxe with BaseMemoryLibMmio Maintainer.txt: Add Kvmtool emulated plat maintainer ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c | 65 +- ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c | 4 +- ArmVirtPkg/{ArmVirtQemuKernel.dsc => ArmVirtKvmTool.dsc} | 309 +++-- ArmVirtPkg/ArmVirtKvmTool.fdf | 276 +++++ ArmVirtPkg/ArmVirtQemu.dsc | 8 +- ArmVirtPkg/ArmVirtQemuKernel.dsc | 8 +- ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c | 93 ++ ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.inf | 47 + ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c | 114 ++ ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.inf | 42 + ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c | 265 +++++ ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtoolLib.inf | 50 + Maintainers.txt | 7 + MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.inf | 50 + MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.uni | 15 + MdePkg/Library/BaseMemoryLibMmio/CompareMemWrapper.c | 62 + MdePkg/Library/BaseMemoryLibMmio/CopyMem.c | 149 +++ MdePkg/Library/BaseMemoryLibMmio/CopyMemWrapper.c | 59 + MdePkg/Library/BaseMemoryLibMmio/IsZeroBufferWrapper.c | 50 + MdePkg/Library/BaseMemoryLibMmio/MemLibGeneric.c | 304 +++++ MdePkg/Library/BaseMemoryLibMmio/MemLibGuid.c | 143 +++ MdePkg/Library/BaseMemoryLibMmio/MemLibInternals.h | 248 ++++ MdePkg/Library/BaseMemoryLibMmio/ScanMem16Wrapper.c | 63 + MdePkg/Library/BaseMemoryLibMmio/ScanMem32Wrapper.c | 62 + MdePkg/Library/BaseMemoryLibMmio/ScanMem64Wrapper.c | 63 + MdePkg/Library/BaseMemoryLibMmio/ScanMem8Wrapper.c | 95 ++ MdePkg/Library/BaseMemoryLibMmio/SetMem.c | 83 ++ MdePkg/Library/BaseMemoryLibMmio/SetMem16Wrapper.c | 60 + MdePkg/Library/BaseMemoryLibMmio/SetMem32Wrapper.c | 60 + MdePkg/Library/BaseMemoryLibMmio/SetMem64Wrapper.c | 60 + MdePkg/Library/BaseMemoryLibMmio/SetMemWrapper.c | 87 ++ MdePkg/Library/BaseMemoryLibMmio/ZeroMemWrapper.c | 52 + MdePkg/Library/PciLibNull/PciLibNull.c | 1213 ++++++++++++++++++++ MdePkg/Library/PciLibNull/PciLibNull.inf | 25 + PcAtChipsetPkg/PcAtChipsetPkg.dec | 8 + PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.c | 117 +- PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtc.h | 31 + PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcRtcEntry.c | 130 ++- PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf | 8 + 39 files changed, 4326 insertions(+), 259 deletions(-) copy ArmVirtPkg/{ArmVirtQemuKernel.dsc => ArmVirtKvmTool.dsc} (59%) create mode 100644 ArmVirtPkg/ArmVirtKvmTool.fdf create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c create mode 100644 ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.inf create mode 100644 ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c create mode 100644 ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.inf create mode 100644 ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c create mode 100644 ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtoolLib.inf create mode 100644 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.inf create mode 100644 MdePkg/Library/BaseMemoryLibMmio/BaseMemoryLibMmio.uni create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CompareMemWrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CopyMem.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/CopyMemWrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/IsZeroBufferWrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibGeneric.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibGuid.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/MemLibInternals.h create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem16Wrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem32Wrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem64Wrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ScanMem8Wrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem16Wrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem32Wrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMem64Wrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/SetMemWrapper.c create mode 100644 MdePkg/Library/BaseMemoryLibMmio/ZeroMemWrapper.c create mode 100644 MdePkg/Library/PciLibNull/PciLibNull.c create mode 100644 MdePkg/Library/PciLibNull/PciLibNull.inf -- 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'