From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (NAM10-BN7-obe.outbound.protection.outlook.com [40.107.92.51]) by mx.groups.io with SMTP id smtpd.web11.58052.1595863622601579363 for ; Mon, 27 Jul 2020 08:27:02 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@amdcloud.onmicrosoft.com header.s=selector2-amdcloud-onmicrosoft-com header.b=WduWqQQh; spf=none, err=SPF record not found (domain: amd.com, ip: 40.107.92.51, mailfrom: thomas.lendacky@amd.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ia7v64SdYP6/yY0e52moAgybH2v8u2uUVGw6Mbi6Pjt1QLrhadT1Raj3Wu53+6bWidJZ4modP+Vo+9NTjC54fpBMqUBdfinwWwl2FUftRvMVfSUMv3uC8MXCg4PcaMb3mNk4olSdH0Y7p52AOxXhGq1cw9m8xe7d/qBtzruStwVms+gmBK0bGeYyd4cqxdIXExjZkoi/9Iu7+GKndLM3hfUGc3tzpQB5zFCWFRTsYAhPE+/TsxyAgsbIrBPrn7+So0h8CpNFEZtuq6gNl7QHJOOZZ1igRGYROzW6gZhbeYDiJGLsQ1XEnjth7Dmn/epq0mwlEbUOL+xkCe9PMBEgaA== 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=tRE7SkFgGOeG66PvdkFIGd/IGhL7swQyOWx8HekFNVI=; b=Rgmh+IWapMhNTE2vus77gVt3pZ8teYR3aL9b7khYEDk3P961MgyOnw0XguDy3MDr9rhRPwNFxghz1tYHg9ThEpblyV79S1V5tA6wYZQYlWRAF4L8NrACSdnZqV/O54f7UsV2fPykotk8jY6KT0FHHYyDLZdHlqjrr6AmmbYYwMbxGmzhe37tNaz5uhHDf/3DduDeiaFp9dj99lKvAq75isH/s5bj+cdu5Bg5XC0nZHdTyzevnyNrNJqm5hfFJpobH/GkRS+okzXDI1O1sEMTzVCS9eVU+Ikj41WUvIxE6dBKe7Xm+5QRiHpgL34G+2wir+gHSYAKU0Dr9uDLeG9W/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector2-amdcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tRE7SkFgGOeG66PvdkFIGd/IGhL7swQyOWx8HekFNVI=; b=WduWqQQhB9JWPxYeio+JLSA4Up/MssNYs8jhg+NrfS2rNDlRmdAvM82tLTKxoPxCiCpUx/6/hVMkCXuLEJHkBLKvs6hVgCmSh9opA9tWUwDaRZOr3bjt+5aGqlL3vMzm2BxDGbLEnJ18UEFAHm1fFzFLSUJ/EKvxJ3D79LojAs8= Authentication-Results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=amd.com; Received: from DM5PR12MB1355.namprd12.prod.outlook.com (2603:10b6:3:6e::7) by DM5PR12MB1641.namprd12.prod.outlook.com (2603:10b6:4:10::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.23; Mon, 27 Jul 2020 15:27:01 +0000 Received: from DM5PR12MB1355.namprd12.prod.outlook.com ([fe80::25ec:e6ba:197c:4eb0]) by DM5PR12MB1355.namprd12.prod.outlook.com ([fe80::25ec:e6ba:197c:4eb0%8]) with mapi id 15.20.3216.031; Mon, 27 Jul 2020 15:27:01 +0000 From: "Lendacky, Thomas" To: devel@edk2.groups.io CC: Brijesh Singh , Ard Biesheuvel , Eric Dong , Jordan Justen , Laszlo Ersek , Liming Gao , Michael D Kinney , Ray Ni Subject: [PATCH v12 03/46] MdePkg: Add the MSR definition for the GHCB register Date: Mon, 27 Jul 2020 10:25:44 -0500 Message-ID: <4c660a1d7b33c9d70579015281d459dd74518213.1595863587.git.thomas.lendacky@amd.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-ClientProxiedBy: DM3PR12CA0132.namprd12.prod.outlook.com (2603:10b6:0:51::28) To DM5PR12MB1355.namprd12.prod.outlook.com (2603:10b6:3:6e::7) Return-Path: thomas.lendacky@amd.com MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from tlendack-t1.amd.com (165.204.77.1) by DM3PR12CA0132.namprd12.prod.outlook.com (2603:10b6:0:51::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.20 via Frontend Transport; Mon, 27 Jul 2020 15:27:00 +0000 X-Mailer: git-send-email 2.27.0 X-Originating-IP: [165.204.77.1] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 9171e197-1de2-4140-b9fb-08d832418211 X-MS-TrafficTypeDiagnostic: DM5PR12MB1641: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4941; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ndY+/F8JbTl5QKNBym/u09UGDXvoHfsIgtBL7KRg2+uruuiRlHKyN23NFKo/ot6/dZtLjOAlkVfoRyYJGUedqJng3h/WyHJyklKFztTq/mAQk7/VFli3UTsOjO8PkUNjnRKKvvjOxolkXPjdt9Tk7AuOqNTnhGeX8jTws+U3S9C4uJ+J7n8gywxU8DiAuthZ016+t9jNHjXfz6kEN9M4D9bg/75EZkQZ1fmDoFPvCmHFt5qE09J8R1SBt2le7tLW/5HXPNh6zwqm0RqaHmMcE8+kH3P4/hB50V7TX5SXe93QjNOFQjqhwKp9ZCxeOtofB80TQIuGVyOmHyn+oiqV8iq3TSAp20QEdAgQfHZlVAKKs6XbDYjIKsC4e+u5agHqclsBueDMzbRCb1aUesv0iAH5e46GVDcETxBOqCiSgq/FD2dWsGOSZEi6uluHVyRVTZcmj0+sxPJ5fF4Bs2Nr3w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR12MB1355.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(136003)(376002)(366004)(39860400002)(396003)(346002)(2906002)(83380400001)(16526019)(2616005)(956004)(26005)(8936002)(186003)(8676002)(4326008)(52116002)(7696005)(5660300002)(66476007)(6486002)(66556008)(6666004)(478600001)(966005)(54906003)(6916009)(66946007)(36756003)(316002)(19627235002)(86362001)(136400200001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData: RpQ/ne2XEtugFr51EMLNHw3hwfEELWLAGHcv6pHir+AHvh7jO5MXXM4oo1MGjKd55zHWv+EZXDiDCmoREq9lUxPRTMLl1WiILp8DOVG/9198usP58hUEJa4rdD8VPWnTTGJVQoT0Pq6MlfBsBp6SHWr79Nhvy6S5V+weG324hNQOYujYBCxmGzmpv5JG3CLCDDB5UmnJyG8gBD5H/U2fKL3hr2xp8cJPaKtP6p161g0nuFza2esNZYmN12VbnWcvq2N3qPo2sMwuqkl3YfEaN5O46lAqGNOZoOjE/5/Wr3DsTcZkcx6EinCx9iVPdQQjaiRz/ZGKZTh7JkDVu/37e2XHTRrfqIlIRlav5Yz9ytdBXt/n7IEjQ/AqFBe7OtnWL091DLwXwsw326luyd9d8HBj6m7RjD23IE+Nc0mphaj/EnEQSV1rs1LLGkNtkQss2m+xiYiAUa8Cxrvehj3oNn3dDANkzWgM0dmARFjOC04= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9171e197-1de2-4140-b9fb-08d832418211 X-MS-Exchange-CrossTenant-AuthSource: DM5PR12MB1355.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jul 2020 15:27:01.0557 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8j59uyc8ht2MkEefLexGbnyU+hwg6QEdzjITCwA2vglgomsMXftJ0DXHP7BiypdAZs/sQ/DGos/Cvdk4sIJsjw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR12MB1641 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable From: Tom Lendacky BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2198 For SEV-ES, the GHCB page address is stored in the GHCB MSR register (0xc0010130). Define the register and the format used for register during GHCB protocol negotiation. Cc: Michael D Kinney Cc: Liming Gao Reviewed-by: Liming Gao Signed-off-by: Tom Lendacky --- MdePkg/Include/Register/Amd/Fam17Msr.h | 46 ++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/MdePkg/Include/Register/Amd/Fam17Msr.h b/MdePkg/Include/Regist= er/Amd/Fam17Msr.h index 6ef45a9b21d3..e4db09c5184c 100644 --- a/MdePkg/Include/Register/Amd/Fam17Msr.h +++ b/MdePkg/Include/Register/Amd/Fam17Msr.h @@ -17,6 +17,52 @@ #ifndef __FAM17_MSR_H__ #define __FAM17_MSR_H__ =20 +/** + Secure Encrypted Virtualization - Encrypted State (SEV-ES) GHCB register + +**/ +#define MSR_SEV_ES_GHCB 0xc0010130 + +/** + MSR information returned for #MSR_SEV_ES_GHCB +**/ +typedef union { + struct { + UINT32 Function:12; + UINT32 Reserved1:20; + UINT32 Reserved2:32; + } GhcbInfo; + + struct { + UINT8 Reserved[3]; + UINT8 SevEncryptionBitPos; + UINT16 SevEsProtocolMin; + UINT16 SevEsProtocolMax; + } GhcbProtocol; + + struct { + UINT32 Function:12; + UINT32 ReasonCodeSet:4; + UINT32 ReasonCode:8; + UINT32 Reserved1:8; + UINT32 Reserved2:32; + } GhcbTerminate; + + VOID *Ghcb; + + UINT64 GhcbPhysicalAddress; +} MSR_SEV_ES_GHCB_REGISTER; + +#define GHCB_INFO_SEV_INFO 1 +#define GHCB_INFO_SEV_INFO_GET 2 +#define GHCB_INFO_CPUID_REQUEST 4 +#define GHCB_INFO_CPUID_RESPONSE 5 +#define GHCB_INFO_TERMINATE_REQUEST 256 + +#define GHCB_TERMINATE_GHCB 0 +#define GHCB_TERMINATE_GHCB_GENERAL 0 +#define GHCB_TERMINATE_GHCB_PROTOCOL 1 + /** Secure Encrypted Virtualization (SEV) status register =20 --=20 2.27.0