From nobody Tue Apr 23 22:41:18 2024 Delivered-To: importer@patchew.org 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; Authentication-Results: mx.zoho.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 1495668786739487.4310360758242; Wed, 24 May 2017 16:33:06 -0700 (PDT) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id BA2FF21B03846; Wed, 24 May 2017 16:33:02 -0700 (PDT) Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on061e.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe46::61e]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id DE19E219FFEEE for ; Wed, 24 May 2017 16:33:00 -0700 (PDT) Received: from leduran-Precision-WorkStation-T5400.amd.com (165.204.77.1) by CY4PR12MB1240.namprd12.prod.outlook.com (10.168.167.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1101.14; Wed, 24 May 2017 23:32:58 +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=QUySS4bbq/Ealslwb9TaSy5EMJ1U1I16UMfTFsCrfW0=; b=xA7xMbBUtH01fxZaafr9EFAUpbwxqQip0/AWUgeJj8R36IvbKL+7571qD41C7l1m+pTabrYeEyahrYDt8YVEdtTPmA6AN6hbPbIrVL3kZAWmgd21Hf2S3wX5atRnDIn5w6hW1azqOZEDnqHFfQRfLul2mbkd3dK6nYl9BqlWWCg= Authentication-Results: lists.01.org; dkim=none (message not signed) header.d=none;lists.01.org; dmarc=none action=none header.from=amd.com; From: Leo Duran To: Date: Wed, 24 May 2017 18:32:47 -0500 Message-ID: <1495668768-10416-2-git-send-email-leo.duran@amd.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1495668768-10416-1-git-send-email-leo.duran@amd.com> References: <1495668768-10416-1-git-send-email-leo.duran@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: DM5PR15CA0024.namprd15.prod.outlook.com (10.173.207.162) To CY4PR12MB1240.namprd12.prod.outlook.com (10.168.167.15) X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PR12MB1240: X-MS-Office365-Filtering-Correlation-Id: 63092a44-e678-4e1d-7ace-08d4a2fd3684 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(48565401081)(201703131423075)(201703031133081); SRVR:CY4PR12MB1240; X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1240; 3:k2IiCKTaT/o66BbWW0I9cT0P6mjtdPtecCVW9v99T+MpOUKOfR1E+EEswVCN1VSajMfXw05YQ6SPoq6jz1uQOFeMMlEerS+4SmNJlAhY6mWq6Wsp0KQiqv0Zi64yKOo9u/BCw+HqsejTuyaEhWRYUTgKCQy4c1ncUPD6cMAF2xYxG0fniZMFLn5pXvlrg3fiG0yPt7sEuVXESY1z1/5Ye0WgAE5SMpg47X9+lK4lDInZOVc1DYQROb5tQZmMmpcoHV+fUiwSUBDXp/bxAJloMXfBebNHtFZ30wLxBTKDDM6dQIB4BW6+t2V9e2hhGAruk/6eLgish8Iz8PGRZm4n1xlgFb4WtwI1hP6a+yTX8VM=; 25:k06sZtJ4vx4YtvYufIwxCj61nPNHMfbICPdZs0inzs6yM/1EE9LTGzYkTqHMsXUxrIhjWgqaduHJuv7oy1PrmVnsGA/ee0swndmlPlSqeBuVMb5hYMRwpYZ8jiEf+WjNYTyuGq0iXzkO0vZi4mn06m74uf8/AOh8E2aPbLVnxFhV5XE7bMqmSf1i6hHpoLO5pl4VbvL6hGSQAcu6OdMZoQkc2WKkiN9/BkGsr2Aw12rVRagrEKjRbMfZDPxC8A9NuZT/J3UAH1HCLr4deaYBrrHoQjSikGphSFABP9HWKqxlQV9GC5O/p+H5J3zETVuPB2ziODg2su8KIaqNoGcGMQ7YYKg6NYcmYZvqqCObVZts+JwX3L5weGKObogf/5DyCE3P4zV7qU8zd2AHPgGRlEWh2Exjm7J4VRmpU+biOd6VbkDNhHvqwnSRuVrrvI/CiOW80KiLiftr+bxYT5/MKXv5qSEMmJ2V/Wj+dQLmxaM= X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1240; 31:3XhJhnKyTinob2QkGz5j6PWqJCqLbCO45ZcvWnl6sb3SFiJzY9VCEABgC7Ajs6zQSRrNj35nMx2fk38uZhHu3XBsKWUsXcJ2OA8ziQ2t+oBK5w8w6yA3zFgvYtEqQwf30VexV9XFHgQT6ZCBaCR9BLYzniNl7ti3DTEmC2ENEP3VjksE4j0ZV0qlPqKL4pvA4I+hv1mxJANx86so+Qtt+WRBogLslo7fa6i4BqfvEbU=; 20:GWzNSqLBGIRPldMJNAae+dz4Ex2JvmNJbnTkhlcNjRhxVVvwru9MQTSk9p9dPpa3kkm5KErh9oy9xG02ODD6qWOZuEQYE521jwQ5LIRPxvOqSuFHyqKcxPtEmpQqh+iwGPUHkPLINytkeVdOmmspnuXIZbY1khGAHf8/z9MN3jgzI8ioMMMnoNbH+uhwwKkqEHcDphlTKge4nPlv6QSgf2MhD+EsxH/270Zf1MHWSWNvQnPJukVdeaPtf+hEYhSjbnlR3xzsOxKnszz8uBkz37YfASzlUdByB2xp1thiuqoPbWdReYaNFlpO/+LCxdlsTnaNMktl3BCmI/nk73fZJLm+ab//pVIcDJQU7ZxkrTz9Xu+rIoCYX1JlD7uR2G1uOmX/s3h/60V4I//XC/YJdD7VgeP0mIjMQkCYHtvkt5K4kR10bBdXqG4pv9gAu/tf5hAynks1Nem741Quklhf6JXhVCQTVkblXMTQhpPYmMH6WzO0AwmsD4qMOdM4M6vA 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)(5005006)(8121501046)(10201501046)(3002001)(93006095)(93001095)(6055026)(6041248)(20161123562025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123555025)(20161123560025)(6072148); SRVR:CY4PR12MB1240; BCL:0; PCL:0; RULEID:; SRVR:CY4PR12MB1240; X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1240; 4:F3mrU5CR4Jdqm/9S4BapzJO4VcODTZlsg7GBJR5T8FxT+zdwFTONFgFL/0NR+7kUedl8p+t2oIgJDxnhCQwmTyVZFJRwbzEjuVhbHSRNoiH49Hkfqq4lmB3hr+YA3Nrpis5P5zj85AldvT3ryeRdzzNPHTydXoWUeRQZ7a2WQJcvkwfDjHvxr2XDR3vzF1Rsz2HwhxgoVxXPo4sqHvhfczvJGsaPfhUSkEgDePb0Mg50FIdfnXbvcqPdLwIFae56rBuepx5loGwFdqPiVj6K8MN2lPxEHJOylLeUv198IdN7imwf/2d6L7kgrXGcIkZ3TlNg5ExLpBBI4EeNuObzL253P2DgeUjp7ePu92IhzLGEV51A7lKHA+6Pk45JIT18WDRzhWmZr5dUQCq4Kq9BJy0DYNLm3H+xO0pOF6FuDvruWOp4OeDkPbL6CkS+sYF/xdmgjCsdx3+hkLdtsYeNl8MQZnfYsBx9VsAL8Bi48zCG76hB7xmnZilZoLZnbAcALbwLzj7K+SPplbwhXmSPXVeSPozfHq7qA3FwoPpuCD0Y9G4K7b5xJhIvd58oxHZBeD0+I3gMS8dWwojx0J7/oPDdHV4YHs/9WmXr2rF/ljCY/P5Sv7uOMJwKXO7KdArZuW8SkfjnD+vZvmOccMumG0MKMCIBMJYxJgwxSXWp8fsR6KUTfYafH2/lgCYQSCqcM18/kpYx0Dhmeck3NaQMftDRsNahVyp3rWXi6oIWML8x4a8s0YsCikpA60NfYqNhb4Ez94YPBijedtgDgbj5cbqYZ6RGtJKl6bjNTzDQIPl8UBskDQ34WSAUFDVLE3mch7aMhLZP2VAOJt+fLltdUjjM9bvStQMdokYqRUoUSZuAEYDGLKuOgnvwx/oS4Nqr X-Forefront-PRVS: 031763BCAF X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39860400002)(39850400002)(39400400002)(39450400003)(39840400002)(39410400002)(50466002)(48376002)(2351001)(2906002)(5660300001)(478600001)(47776003)(36756003)(3846002)(86362001)(54906002)(53936002)(6116002)(6486002)(7736002)(305945005)(38730400002)(4326008)(33646002)(8676002)(25786009)(53416004)(5003940100001)(6666003)(50226002)(189998001)(110136004)(42186005)(2950100002)(6916009)(66066001)(81166006)(76176999)(50986999); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR12MB1240; H:leduran-Precision-WorkStation-T5400.amd.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR12MB1240; 23:Hj448xb2LGlvq0VImPjvpsRr2uP0Iwa4pYlpfUMkA?= =?us-ascii?Q?n9YM8dFFERZEIBqwd8v0iOO88s0+rnqf09hEglgvX+nimwcGExrOzDja1jfC?= =?us-ascii?Q?S4ZufetEmAd//4nsazjERLc1Nyi7pjcjyq06LZlNt64KeWA8rrp2TptyijzY?= =?us-ascii?Q?zPIF++PHa1nqxsFddvIIO4MN4Jwps8V7dj/mEWEtHNjcNUB5WXQOzLQcoU0z?= =?us-ascii?Q?HTX1Nt/VZsEKRBxrdc+cYHjemF0rm54lME4X150qZ+btMLGVbnQSfQzPgp/a?= =?us-ascii?Q?y+YNvGZCTYNVEhxQvvGNzyi6tXXCzLrXpOkhWANR55L9sSBbvcC9FGCznVWt?= =?us-ascii?Q?TMkWdlaz+1rKRrw9qnxEkoFVjszYEugr56P4qwsDLyRHgwjHQEyihaxZtSWW?= =?us-ascii?Q?QUExQtDdcSoAoH0TxAYzU0A8P3d18NFCCrLGVK3p9y/oED1Xec5gVNFoYI/N?= =?us-ascii?Q?0XbLKyjeGD1QbLCt/kuMbvt0hAISU/fnNpgPseKxwBSJFB/RuT6j8XncMkzC?= =?us-ascii?Q?0wQ4det8XRuWgvTyxFckT2VyAH52buMlp015TAC6l0de3SFmjzIwRdLzKAtr?= =?us-ascii?Q?Y1qsEmPvmcZdkKMi1sk3jsEvMh+fH4uKAbDrf6U6BPenMb1WvgymEyoMyVtF?= =?us-ascii?Q?CSmQHuWukSthCowFRMNqyiFFgniIdluhZ0W8BiWjJyR6lnl7HWWwpdThfNy3?= =?us-ascii?Q?3IG6+m6I4FNtsdASfFD1k18N9VqRuqeLaPXW4PJKZXI4tmogZdJCTjHaqL2E?= =?us-ascii?Q?rU3OkJlG01YM9TxrVXIp4eDEhvEUSABi2fMSh9m0xt92ZecwZBUbe8/bBrN1?= =?us-ascii?Q?if/+VT3rgQ1BUTcD0sihJVwS5dC/fvzJilc5rPd4+n2h/uobK/3umdKKNKUe?= =?us-ascii?Q?k1xasfyubx1cbNnxwi1U7fyfjETYGR141YrEYFODxxQguvTiQlQzWXz7Q3G0?= =?us-ascii?Q?A9LzPYD+NtJWHJqXEpfsYtskfWM0BUiY6nE5Xdlm0P5pojacDiCTsRQ0mk2B?= =?us-ascii?Q?ducgFl4uP699/E22TsfSOdiME1TCISF66uQd3pMwl6O8mtvU9TuNVlZU9I7X?= =?us-ascii?Q?Z+3ZeScjHJt1ocV/z80H+01Z69K?= X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1240; 6:SAMu0C1nE2kE1VoRIlmWJK45AH0AiE+IAyHSVYjh4SAQbbg2D4kY7j2rmMucb5TV5r8/bvnYALG6xbNA3KystCki9JAg0BXc5CUiDe6Hs6C8Jjh53xVgGC0louEktSvpQ/bidBy69xPz809Y7WNarJ3Q1fpxzeMA4FjvCOtMZSJjvrqV7gMMD8cTHcpmjs2SbpA0PVHJ2Le2YlMmqnQ5asAWQRv09yqy+FAwoygd87X8pLAFph0Zz7R2swB4XfF/xUeXOGn13redfGDMBSSnRCnbHAJHZDtt4TvjrmPylK3vlq87TJecYSKdOG2cPSt5seSDdee/G0y1POPJLuhCDmEWCdRpc7iCbOgOFwG4EnglqD3LsKsoduZrr4owqs4UxXDr4hAl1zeBVlBvAyfi0kRG1yelygpvYCN+dUNlIxmz9us0VuIRkyUuKu7oAr6tF4C6vPlBFNr7Veq84brheP7oS7kuax83CvH+k3N2enQ8miXHTCrupjfkMQf+LlnLICY1urqzHxcVtC70OIb5u9RyR0kgSMZwIKTuGLzzvR8=; 5:6UAzFYo6TMDH09almUUok143LZttP3uESpsfKGyLdr98ZKZUr4Q6Y7+Zsn5M73a2Z4mm15V7wsf1dHFc1e1V7wEyYzbBFE3mg8yKYiyt8CHhjHDXmzqFkCmiOskbygIr2xKuU8rl/q4e4lAX+P5IeAGS/sILiWZJTFMAVx2aQ3Q=; 24:vkzNllihy1Oruh8JlQo6pfBBPuhMjWzE5Neg4fQMTcjiO6fQO7nL1cvbCnS1D4DDJtkXWKt5IpvZ9/2eRWMP/9UD6Vy85gTTEk8YxhdohMw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR12MB1240; 7:pPKyjF1P/T9dtxUatyAhyYJZ+ocvbRm7ee4CQkXW5Gh1KgTt67XrzYu9Qm+TDRLsyehK8P5OyRi/SC24YMJJOY/eVeceIsxo5Mwx5zbP3IVjArJrN6y/2pGxZXs4OrZHYSM9ltbzW/cFD/VJIINzMkCZdDEr9P0b2Z+lCJCXKylfWntUE3hxow6Oxi5YAQNQ1/mu0EaTHFPDVxyZhoMmyGg2MedheVbzYcg63rVhcEf6a4X8zMEZK6s2FYNu1XVm9zRtO/pQU8LE6ZCijvf5sga66ca5c67jABw7N1ow+wjlvfPuJJ2abH9UANm4va62tDZLCQXccXmTwIG544LCJw==; 20:uxnXHCYxY7eUCusYcfi10EWNtopWe7gXVTlfJMwC4JHQ3kKzWDxcc/5vBTSwYu0a9q1Z+eLPU3vVjhttCwe7kaaQR7DkA9v3JAYm9oL7plRhmtay3ijtrA4L63yOXKWdhD1nsTONqTHDEyDIR2ZuMkpwjcA6QJg3kWTkXNhcBrMt6U2l4j9VF+mTM1uLIO4dAj/1Cxslh/rVYtaoUTcFijudzzK446Kir2nXyjvLVyI+gZipQPm6hXTwa+Kat7gL X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 May 2017 23:32:58.8297 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR12MB1240 Subject: [edk2] [PATCH 1/2] UefiCpuPkg: Add CPUID definitions for AMD. 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 , Leo Duran , Jeff Fan , Liming Gao 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" Cc: Jordan Justen Cc: Jeff Fan Cc: Liming Gao Cc: Brijesh Singh Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Leo Duran --- UefiCpuPkg/Include/Register/Amd/Cpuid.h | 265 ++++++++++++++++++++++++++++= ++-- 1 file changed, 256 insertions(+), 9 deletions(-) diff --git a/UefiCpuPkg/Include/Register/Amd/Cpuid.h b/UefiCpuPkg/Include/R= egister/Amd/Cpuid.h index 74ffb95..4a26bf7 100644 --- a/UefiCpuPkg/Include/Register/Amd/Cpuid.h +++ b/UefiCpuPkg/Include/Register/Amd/Cpuid.h @@ -7,6 +7,7 @@ not provided for that register. =20 Copyright (c) 2017, Advanced Micro Devices. All rights reserved.
+ This program and the accompanying materials are licensed and made availa= ble under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -24,8 +25,253 @@ #define __AMD_CPUID_H__ =20 /** + CPUID Extended Processor Signature and Feature Bits =20 - Memory Encryption Information + @param EAX CPUID_EXTENDED_CPU_SIG (0x80000001) + + @retval EAX CPUID_EXTENDED_CPU_SIG. + @retval EBX Reserved. + @retval ECX Extended Processor Signature and Feature Bits information + described by the type CPUID_AMD_EXTENDED_CPU_SIG_ECX. + @retval EDX Extended Processor Signature and Feature Bits information + described by the type CPUID_EXTENDED_CPU_SIG_EDX. + + Example usage + @code + UINT32 Eax; + CPUID_AMD_EXTENDED_CPU_SIG_ECX Ecx; + CPUID_EXTENDED_CPU_SIG_EDX Edx; + + AsmCpuid (CPUID_EXTENDED_CPU_SIG, &Eax, NULL, &Ecx.Uint32, &Edx.Uint32); + @endcode +**/ + +/** + CPUID AMD Extended Processor Signature and Feature Bits ECX for CPUID le= af + #CPUID_EXTENDED_CPU_SIG. +**/ +typedef union { + /// + /// Individual bit fields + /// + struct { + /// + /// [Bit 0] LAHF/SAHF available in 64-bit mode. + /// + UINT32 LAHF_SAHF:1; + /// + /// [Bit 1] Core multi-processing legacy mode. + /// + UINT32 CmpLegacy:1; + /// + /// [Bit 2] Secure Virtual Mode feature. + /// + UINT32 SVM:1; + /// + /// [Bit 3] Extended APIC register space. + /// + UINT32 ExtApicSpace:1; + /// + /// [Bit 4] LOCK MOV CR0 means MOV CR8. + /// + UINT32 AltMovCr8:1; + /// + /// [Bit 5] LZCNT instruction support. + /// + UINT32 LZCNT:1; + /// + /// [Bit 6] SSE4A instruction support. + /// + UINT32 SSE4A:1; + /// + /// [Bit 7] Misaligned SSE Mode. + /// + UINT32 MisAlignSse:1; + /// + /// [Bit 8] ThreeDNow Prefetch instructions. + /// + UINT32 PREFETCHW:1; + /// + /// [Bit 9] OS Visible Work-around support. + /// + UINT32 OSVW:1; + /// + /// [Bit 10] Instruction Based Sampling. + /// + UINT32 IBS:1; + /// + /// [Bit 11] Extened Operation Support. + /// + UINT32 XOP:1; + /// + /// [Bit 12] SKINIT and STGI support. + /// + UINT32 SKINIT:1; + /// + /// [Bit 13] Watchdog Timer support. + /// + UINT32 WDT:1; + /// + /// [Bit 14] Reserved. + /// + UINT32 Reserved1:1; + /// + /// [Bit 15] Lightweight Profiling support. + /// + UINT32 LWP:1; + /// + /// [Bit 16] 4-Operand FMA instruction support. + /// + UINT32 FMA4:1; + /// + /// [Bit 17] Translation Cache Extension. + /// + UINT32 TCE:1; + /// + /// [Bit 21:18] Reserved. + /// + UINT32 Reserved2:4; + /// + /// [Bit 22] Topology Extensions support. + /// + UINT32 TopologyExtensions:1; + /// + /// [Bit 23] Core Performance Counter Extensions. + /// + UINT32 PerfCtrExtCore:1; + /// + /// [Bit 25:24] Reserved. + /// + UINT32 Reserved3:2; + /// + /// [Bit 26] Data Breakpoint Extension. + /// + UINT32 DataBreakpointExtension:1; + /// + /// [Bit 27] Performance Time-Stamp Counter. + /// + UINT32 PerfTsc:1; + /// + /// [Bit 28] L3 Performance Counter Extensions. + /// + UINT32 PerfCtrExtL3:1; + /// + /// [Bit 29] MWAITX and MONITORX capability. + /// + UINT32 MwaitExtended:1; + /// + /// [Bit 31:30] Reserved. + /// + UINT32 Reserved4:2; + } Bits; + /// + /// All bit fields as a 32-bit value + /// + UINT32 Uint32; +} CPUID_AMD_EXTENDED_CPU_SIG_ECX; + + +/** + CPUID AMD Processor Topology + + @param EAX CPUID_AMD_PROCESSOR_TOPOLOGY (0x8000001E) + + @retval EAX Extended APIC ID. + @retval EBX Core Indentifiers. + @retval ECX Node Indentifiers. + @retval EDX Reserved. + + Example usage + @code + UINT32 Eax; + UINT32 Ebx; + UINT32 Ecx; + UINT32 Edx; + + AsmCpuid (CPUID_AMD_PROCESSOR_TOPOLOGY, &Eax, &Ebx, &Ecx, &Edx); + @endcode +**/ +#define CPUID_AMD_PROCESSOR_TOPOLOGY 0x8000001E + +/** + CPUID AMD Processor Topology support information EAX for CPUID leaf + #CPUID_AMD_PROCESSOR_TOPOLOGY. +**/ +typedef union { + /// + /// Individual bit fields + /// + struct { + /// + /// [Bit 31:0] Extended APIC Id. + /// + UINT32 ExtendedApicId; + } Bits; + /// + /// All bit fields as a 32-bit value + /// + UINT32 Uint32; +} CPUID_AMD_PROCESSOR_TOPOLOGY_EAX; + +/** + CPUID AMD Processor Topology support information EBX for CPUID leaf + #CPUID_AMD_PROCESSOR_TOPOLOGY. +**/ +typedef union { + /// + /// Individual bit fields + /// + struct { + /// + /// [Bits 7:0] Core Id. + /// + UINT32 CoreId:8; + /// + /// [Bits 15:8] Threads per core. + /// + UINT32 ThreadsPerCore:8; + /// + /// [Bit 31:16] Reserved. + /// + UINT32 Reserved:16; + } Bits; + /// + /// All bit fields as a 32-bit value + /// + UINT32 Uint32; +} CPUID_AMD_PROCESSOR_TOPOLOGY_EBX; + +/** + CPUID AMD Processor Topology support information ECX for CPUID leaf + #CPUID_AMD_PROCESSOR_TOPOLOGY. +**/ +typedef union { + /// + /// Individual bit fields + /// + struct { + /// + /// [Bits 7:0] Node Id. + /// + UINT32 NodeId:8; + /// + /// [Bits 10:8] Nodes per processor. + /// + UINT32 NodesPerProcessor:3; + /// + /// [Bit 31:11] Reserved. + /// + UINT32 Reserved:21; + } Bits; + /// + /// All bit fields as a 32-bit value + /// + UINT32 Uint32; +} CPUID_AMD_PROCESSOR_TOPOLOGY_ECX; + + +/** + CPUID Memory Encryption Information =20 @param EAX CPUID_MEMORY_ENCRYPTION_INFO (0x8000001F) =20 @@ -33,8 +279,8 @@ @retval EBX If memory encryption feature is present then return the page table bit number used to enable memory encryption= support and reducing of physical address space in bits. - @retval ECX Returns number of encrypted guest supported simultaneosuly. - @retval EDX Returns minimum SEV enabled and SEV disbled ASID.. + @retval ECX Returns number of encrypted guest supported simultaneously. + @retval EDX Returns minimum SEV enabled and SEV disabled ASID. =20 Example usage @code @@ -79,7 +325,7 @@ typedef union { UINT32 SevEsBit:1; =20 /// - /// [Bit 4:31] Reserved + /// [Bit 31:4] Reserved /// UINT32 ReservedBits:28; } Bits; @@ -99,17 +345,18 @@ typedef union { /// struct { /// - /// [Bit 0:5] Page table bit number used to enable memory encryption + /// [Bit 5:0] Page table bit number used to enable memory encryption /// UINT32 PtePosBits:6; =20 /// - /// [Bit 6:11] Reduction of system physical address space bits when me= mory encryption is enabled + /// [Bit 11:6] Reduction of system physical address space bits when + /// memory encryption is enabled /// UINT32 ReducedPhysBits:5; =20 /// - /// [Bit 12:31] Reserved + /// [Bit 31:12] Reserved /// UINT32 ReservedBits:21; } Bits; @@ -129,7 +376,7 @@ typedef union { /// struct { /// - /// [Bit 0:31] Number of encrypted guest supported simultaneously + /// [Bit 31:0] Number of encrypted guest supported simultaneously /// UINT32 NumGuests; } Bits; @@ -149,7 +396,7 @@ typedef union { /// struct { /// - /// [Bit 0:31] Minimum SEV enabled, SEV-ES disabled ASID + /// [Bit 31:0] Minimum SEV enabled, SEV-ES disabled ASID /// UINT32 MinAsid; } Bits; --=20 2.7.4 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel