From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0612.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe42::612]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id F1C0A21B0E535 for ; Fri, 26 May 2017 07:44:32 -0700 (PDT) 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=CewgAZTt9xoMRdg/Qb/AtKF4EdbbKkBmr0nGW4ESlIY=; b=upp+GqU6AD7s5sqBnP6vhR//TqBHJUB2Atvow88bYWet5Wak0i5z/wBkYJbrjse0tJ2XyCfQnJET3rTWsRHqwR/RaYYC8Ju2u/g1n0i1zyAej7Zh02AE12YCquJ/WC1u0STv/ErfLJWyGMH48P6/mENp1dth7qU+B5gAEip0NsU= Authentication-Results: lists.01.org; dkim=none (message not signed) header.d=none;lists.01.org; dmarc=none action=none header.from=amd.com; Received: from brijesh-build-machine.amd.com (165.204.77.1) by SN1PR12MB0158.namprd12.prod.outlook.com (10.162.3.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9; Fri, 26 May 2017 14:44:31 +0000 From: Brijesh Singh To: CC: , , Brijesh Singh , Jordan Justen , Laszlo Ersek Date: Fri, 26 May 2017 10:43:55 -0400 Message-ID: <1495809845-32472-8-git-send-email-brijesh.singh@amd.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1495809845-32472-1-git-send-email-brijesh.singh@amd.com> References: <1495809845-32472-1-git-send-email-brijesh.singh@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: CY4PR16CA0024.namprd16.prod.outlook.com (10.172.173.34) To SN1PR12MB0158.namprd12.prod.outlook.com (10.162.3.145) X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PR12MB0158: X-MS-Office365-Filtering-Correlation-Id: 4df930e6-a422-4075-6506-08d4a445b877 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(48565401081)(201703131423075)(201703031133081); SRVR:SN1PR12MB0158; X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 3:7CDDoT+xOrZ6sQrYT0OMQEth+DZTKjCShcFvO1ATXwnYZSR17oEjzZ9gdJ3biSw7hWMB8PRlZ/Q5WvNHjhdoeA/jlj+FJXiCC/X5OVP/CW064jX1wbZi93LqvKhsNotw9IATcvy1XqFuWMJ9ScWsY5smVHGnD60Oy/MG4ylISEVVnDVCDIIEIc9P+O6sZxV23Vy8PAQwQyPMW2CVlhM1yUEJNvI+HIB/7b+T2+dLCKHxW3BlXXRZH9ihn0E5Br8EDRzt//+4295RGPMhhPJrtS64u5+qmFxiAm9c5Ut8ATrDRuJRnzN06FONlRq4ZVYg2B0SEbTEa/aC5g4ZMbOm1osD5uCDT91inplgRH9cCRM=; 25:R5FDNBZ6yB8FGTY5XM2uw9LCAMlVvNvU2S8utKovyDvWKSctxXA0SL0B8fLtzVJ5GMBGhO/aweNgostk182Gh25DfpPplylvTQ12vZKCG3ia+pmCdNeevAc1Nb4AR79gkZRmrfgUmznqqUObkijh+EGNuC4yaymclmV7uGN1v5MhW04oXkl0nlUdi2Q/dzar8NT3e1m/1wEf7l+y4P13ldzhgablQ9BuLOOUFTqWKJdQWgJ03qWQRD5+22X33OTyXKnpQBkJS8E7vWgE2CaWMNGuJcmzpc3kQoqVpbGvqul8iEh0V9hdoieuW+fNIvObKhw4On/OKwWVu+cStNpIi83Bnx4bhZVgA7p5AKQRpGFE/E2GADhSVqOJXIfeCKVX/sO7/pJUpQAfcFZLsRTuomQKYUPJoq6wST/gn54K4YKCoHoW5PxZs6AN25S3pT9R//ER3VMxLiQ30tSq79AAx+3V6y3uni3SmFDPrEYLCg0= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 31:p3nUlN6fNEtDYpFXtjoHFZ+/Kye+eM0mI9gWXE+EJ2vb+oHUqb+viIK/vh5lZ2xT544qOQlkqe8OMpNh6ELh5YvTJUf7gsbyZQ4NlVEekRN+/HOLcK3QibVTRHqG+Ftq9/q85TQMKvxR8cWTWjcgpgNHgHI0l851yZhCdyVpJRs30JVbSz1/9vfYQV8l+ChFIkJhJvEuMp2wNwvAAabHiUTZGbkrhWGWkbeDf7SPoGI=; 20:qFezyFHLYoSAZL2atJ3WBZQRZXjVHCTn0PdulZnPcESfSHpqsnF0vuabDwGNjIqC8zoq3rlqTa6xSbBtpsQQdP7d8H8FCVk8I/ISkriC8/h3Un9liM4FredLjhKZWU3GRCZ62clePyhWeGC76nDbmSYcwjL6DXDPnTNuUsjfgcGKvoLg13YBfA2CaKicV4lHelZLF7iag96qPF9llzdti0WVjeODAEzz7txqHyBUGTb5aQCMkZdxca+XsqEnCOxCI8qyJllkl/xuk/JWL30ulGJtqjtzoXz3+/xwWOn8rM/28N4YGpRrmZF9q+rVOpBT9GIK2w4ioBLu8gsRkpeVh5aJgf7Q7PjmKHksRnw1r4+RYZPNnUjqJcLpBgST0WJmhvbdrzy2XjOHRPKAI9/SNHX3aWM6TEY8NZmkJRyi0SEE6SekepICb69srqBB+GyJbJx5nElI2tPvB1tNvTvXW088G4F0WMyl8H9SwLAkhr9iF10OkO86y9I8Ue+9yKGC X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123564025)(20161123555025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(6072148); SRVR:SN1PR12MB0158; BCL:0; PCL:0; RULEID:; SRVR:SN1PR12MB0158; X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 4:3/IxdudebxVID7c/1HgVuV7VlCOmyg/LgCSO6BSspdJqPo/NN3b4AWh9JnorsRvo9PAObPoPOa5GGf+xsWkf2Jxg3AVsieVErmWDJnXrEGAbTdhb8EjZNHNON0ToRUVo4tBpmMaZt5DIY5vDmtomsqXhfqn1cn2i0ZgS7RAg+uqliTrPTP+QZUYJY0iUyfQjTTzN4L8t2e6H5fRoLZ7KX17RzzwDyLopxVMt8/aD87Yy36ZBhLlFORvDazHFz4H6MVHinp2fUdXG5FK2PLTQmGzOJBN7qSssa/YNosQtEWuAlvf7BKGFWS5Kyh2RyJjUZGdyF8ns0q5fr2HJ3npIbwSJj1TTBZhhtf4CqTjm+HKUzI8QoghizTaCahUYvsqRp74j1HXrePYIr3xzKmq0M4rEPDv/Wxmi5IUGwzzFOernp4S6/iupqfJ5AP2OJ2I6SVCth2dPJNpifyQGyxA3zfRwNT7kSS9jP2DCU3uSQhcFHPna3ckBv/8A5cFW8upbPGoz+81PkXylRV5wFSO5aewHM+ibigiR/qj31bn9GEqNQ3uH4bAxQQ1kEFtSWLcqvItGAhr2y+88e63+5eD1Yv3jmkK/QdXdhfYDapa563tpMjT/IIzATRaStzE1aGGZyGDb54DvK9CML25QOwx6QY4n1B0bQ8i8R6P/ftRiQ0BE0b6zUDYt9bdGUkkuUzyljQlZNKIjo9rrj7lfvyzih/vJqS8JddDVqJLbQQg40O38fuKHXrHIy3DrAubRmmsooAnGgDejPQtrVFJTUbWi+Tx9P1RP1/Y/ASmDHEO18lIKPIn5Orb6PDWha5rsJH/UDQoHJ5g0EEOz3qV6WgmfUs9RWdpScOfQUSK8yE5Og4BYva7AIatMC5r4DFZiuuZc X-Forefront-PRVS: 031996B7EF X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(6029001)(39450400003)(39410400002)(39840400002)(39860400002)(39400400002)(39850400002)(2950100002)(6916009)(6666003)(38730400002)(110136004)(50226002)(76176999)(36756003)(81166006)(8676002)(53936002)(86362001)(478600001)(48376002)(54906002)(25786009)(5660300001)(50986999)(189998001)(5003940100001)(33646002)(305945005)(6486002)(2906002)(53416004)(47776003)(2351001)(575784001)(42186005)(3846002)(6116002)(66066001)(4326008)(50466002)(7736002); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR12MB0158; H:brijesh-build-machine.amd.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN1PR12MB0158; 23:jPmaqXlK3MUY0M5qFf0qTnyWpIe8rJosBXlZYCwef?= =?us-ascii?Q?VxUPSnvEe01CdLdUyC4EYL+ikkvz1VGD+Wv5hriU91F1DrRIAsr9yEXry2ky?= =?us-ascii?Q?iv+wJqZ6+gY2ctOMU3f7F7BhrvAm5MgOlNLsdHG7BGTbiFIU4mExSJ9V5WcD?= =?us-ascii?Q?gE/BpklLIcyl/Q3T614ZieQS9Id5pZ8UCVCG1N6CDfhw6iHq0TkX4YdWevl9?= =?us-ascii?Q?mncB+5j7akNd/vv6DZhHBEC7fa0/nhm8pw68uviggDPzxAx5I0nrgFNw1WJG?= =?us-ascii?Q?ozTmRHQrnPH7a5dltUcOXZwVx/FZ9zc96rV5f+Rk0jrlI4HBrnzNnesQlpvO?= =?us-ascii?Q?1Y+2UtaP9vJD0POu2+YO7GSfNEtmcORuofMDq0LylP6CQZdz+NiAJvAMAAcC?= =?us-ascii?Q?mwsMqkxF28n7rTnT5IwHtoF3vHFbeXfsy6zg3qDoNoHPKuTnmo4c/b2RUQ7J?= =?us-ascii?Q?eIEitG+9wBngyCndYPngAOtnhZdKUiRjv1SaUebSIno4femV6g2nKJ05XJED?= =?us-ascii?Q?KG/Ls1CXnMP5PIyd67JFtbOW0wktH53MfyAmHOiKdMkuxzEMSnR3iJCIfd2o?= =?us-ascii?Q?u893s7VhFRi86PplbnMbXJ0UW5IuVmR2tYet8/hH8ycEc1Pc2EoyWDC3XL++?= =?us-ascii?Q?jhHpCH6GhXgOKroxS3vyHUbZKLNbAs3lvU97ral7TbDdzn6aYw4FQ7p/GHPY?= =?us-ascii?Q?s7uJBrBoD9Dn4jcNAPXQ+awpuFyGzElojESMgoWWwjxaD8+swZjwoiT8vwCk?= =?us-ascii?Q?+rLJNOVDBS7EHx2PeOr1++Vk3op9xRMkH4DNn1/PHUHU91Jn+mBaDyL4P51O?= =?us-ascii?Q?BHm2H09yuN6b5H6/wHUKeo5T+bfDJ14FjSGYjD5tBhvEaYzGH4ruaJlI+juI?= =?us-ascii?Q?oDnkqEK46OROXjeik/4Cxm85QdJExBI1eQ8Zdoh2ibx2/OVck6CcuBkGRSig?= =?us-ascii?Q?+ldTO43yK0a+mA3e4fIYenyrxr8YAgIPtBXQU9FP7UKw1sRtntFIixtuJy/u?= =?us-ascii?Q?aUgmiKPht0WzGeigUn5Wn8t4ePJn8bruGv9hgSRxL4WjgmbGjVc6GNmu3P8v?= =?us-ascii?Q?BbMIbvUE6ZOygAI8xcjRvGTAJqWfnR77cZYI7EA4A8CkycXd3DrHZOMvlTck?= =?us-ascii?Q?jHSDnsKRQQ=3D?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 6:Z2tF75ziPc9bgeXXOkSXxMnigIXyf5Yb5k4c/L+t5y1QxIttniMf5fRYvixJyIrZ3kAUzV8+J7DYgw92YlCbGDMz6dAd6fwR4MB64Nvlvs3ltGtf6+0yAQsGms88SZaryhTKkYeRxreq85PswZ/oDgHt7UiiV/Aoi5X2tHEXG/P48zTV4JmSi1+/bzFlqVaC+V4TWpD7R+RuTVq3IbfvdsYoRo9olK86PqZZ2QE3h2gHaZ2Mu+la3AO0MQlwujCApoIeDmxDIUASuIs2Y0Dj9apHy5VcuG3q2Gpb9XoTF7G6On8yj1VJNYSibkPaTJqvH5eOe23U0BplqH9d3XOWW6K6U+dJyyaXejcHSGiW8x8M81cRc4XXvXVGz+sJs6G1Mm+XHhLsiJC0wf6VFVFqN8/2qlP7XUlY8dIfzjG+aOAwIThE39Tne1rOrxIgt4lOznl5rvOukD3aYkcPE89HfYuu94+IBKEYQsEourCRXLHmS58czvFamRk5apBklgacfRqmEfNQOxzrVV1MvfcUnI6auy5IEVQSTarfeJhWcZw=; 5:nSnwRaWM6HCt9Dj8cKG1dhY57NMrQUSa0se9/dMEY8Hp/CZ9vCXKLV3KwlVPOErVeRfrYSZOhVnz1VprmEucrXjJsN6GtIAjUmgpcAZc6o66cYprjgchs3dJbUqzagV2Q4AFwupb7o3EXAhBB6GGRQ==; 24:9z1WhxVZVcnkTU4F2zNTXCOaGPM4UfS6ZUqgG3DF9UL63nBHkkPpdz0RcsY2vMeek8eM6oYYofoa6LLUcn6yeSlu2a2pzLCcVImbQ1q7vFc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN1PR12MB0158; 7:kvGrs8ov7mDMqDvY22xg6IhqlLi6HU5SiOKdr/BEDjpPvbwa8i7QUDDRjZ1cRgDYnbQF+szlZq0T3k4aatQon+tNj2yuf6Dm5+BRKBTn4nuVJQhcdT0jp993y7pzqFiPNOGaEWQBm83/oirQF8suaPZpnswXkT2PHmTBDSuocFnFAIf/DVmhjiJzzNXJ7vd4nFCMyf1NjWM8kEB2jmbkikCs2G+l18a9xQEvhucWmM6HgoVQDgNOPouN1lBt8HDHkQTLguQEkPuMSUATptDpX7GTuA4ukfnRHQn9PACOn/pQQweoZ8QtlQLq7ndjkoImR1NUMNqvhlMqTTc5fKchbQ==; 20:g4EMAya4pg54V4fIOl76vwI/MjnkRfoHe1+qh0KbiQeQRoMzp5MQKD+eBVDxypDwL1V327ZCgrm8QbN1XMZBGQPK/3zHML8q6QnIJuHNiZQO8fYoaPIzSuKJRzBcVswTVBC6L+DtTkfuwfkpt/caTuVUEeQVHfsz2MI1eOEAmy3oQETW8NqwItKCfEKR5GXMHVE3hOEL0WEGat18lQL6vThsLD9GVMUX1HsCSKWDlL7fvYaEXhuFE1yG2/p7CfmX X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 May 2017 14:44:31.5839 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0158 Subject: [PATCH v6 07/17] OvmfPkg: Introduce IoMmuAbsent Protocol GUID 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: , X-List-Received-Date: Fri, 26 May 2017 14:44:33 -0000 Content-Type: text/plain Platforms that optionally provide an IOMMU protocol should do so by including a DXE driver (usually called IoMmuDxe) that produces either the IOMMU protocol -- if the underlying capabilities are available --, or gIoMmuAbsentProtocolGuid, to signal that the IOMMU capability detection completed with negative result (i.e., no IOMMU will be available in the system). In turn, DXE drivers (and library instances) that are supposed to use the IOMMU protocol if it is available should add the following to their DEPEX: gEdkiiIoMmuProtocolGuid OR gIoMmuAbsentProtocolGuid This ensures these client modules will only be dispatched after IOMMU detection completes (with positive or negative result). Cc: Jordan Justen Cc: Laszlo Ersek Cc: Leo Duran Contributed-under: TianoCore Contribution Agreement 1.0 Suggested-by: Jordan Justen Suggested-by: Laszlo Ersek Signed-off-by: Brijesh Singh --- OvmfPkg/OvmfPkg.dec | 1 + 1 file changed, 1 insertion(+) diff --git a/OvmfPkg/OvmfPkg.dec b/OvmfPkg/OvmfPkg.dec index 5627be0bab0a..4241af10c3d0 100644 --- a/OvmfPkg/OvmfPkg.dec +++ b/OvmfPkg/OvmfPkg.dec @@ -69,6 +69,7 @@ [Protocols] gBlockMmioProtocolGuid = {0x6b558ce3, 0x69e5, 0x4c67, {0xa6, 0x34, 0xf7, 0xfe, 0x72, 0xad, 0xbe, 0x84}} gXenBusProtocolGuid = {0x3d3ca290, 0xb9a5, 0x11e3, {0xb7, 0x5d, 0xb8, 0xac, 0x6f, 0x7d, 0x65, 0xe6}} gXenIoProtocolGuid = {0x6efac84f, 0x0ab0, 0x4747, {0x81, 0xbe, 0x85, 0x55, 0x62, 0x59, 0x04, 0x49}} + gIoMmuAbsentProtocolGuid = {0xf8775d50, 0x8abd, 0x4adf, {0x92, 0xac, 0x85, 0x3e, 0x51, 0xf6, 0xc8, 0xdc}} [PcdsFixedAtBuild] gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase|0x0|UINT32|0 -- 2.7.4