From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.71]) by mx.groups.io with SMTP id smtpd.web10.9393.1634914069216772265 for ; Fri, 22 Oct 2021 07:47:49 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@amd.com header.s=selector1 header.b=TvebShLP; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: amd.com, ip: 40.107.94.71, mailfrom: abdullateef.attar@amd.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hnYAVj5pRnT7ePB9VobjOmoCT42nCJnXxVc4SW2DaegfOoNgcljx3wWCM/mjfwTlixUEg/BuGjYnLploeDS0yfyr3n+AdsjUEuTATW39lzL0DyojdIkOesGmwNAfSe2uDN7cdq2eOZOk3Aijb62/RQcHkxHPdwkjUeaKkCM9f1+9JTG2PtheT0sEHI7o+2cqB89S+wxgv42DminjxEpZn/h1Uc9k7vaEJFd/4UrS8fbSW7exA4dcgWbDB+jHs4pkagS9/hSYAE8bkgzrn8m9BVSFPOO2MkyiDglpouKS8JxkU4RYsbhezwnDPWLvJSoyEFaG9iypHcHTwDdvqPu+zQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=iR152yqtYWDZ2QTUkDWPTacyWFevvJ34VTnXw0P5K0s=; b=KXp8gbJXc5+oAfWL+gsNCZyjLGSF2Hrq3C/F2YkD5XS8hcehHYf+se/IlETNyFldoHh7OgIzHmecM2/E/yCAkXJpyKm6GMoiCBZBJ/a3vrG2riUBQJvXg4jQbRwIsw/mZ8ShgME53p2tl18QmXKiykQOdUIvUFRVnuQHeVONSaaI4e09e0EX3rD+XuH24HAvgudNLy5LhLOUCDXxbQIdoIDen51AVvxTz33ma2skgg3lOenAJqWNpUjpKwVFJy0arhbwKO92SuOEY3plBv7kSUjZ/E6yK/z7ib+RvgomOxh/wDo3GpzqQMUyqNRrEjiyCeelxv0ImuXRGl/5QE6LhA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iR152yqtYWDZ2QTUkDWPTacyWFevvJ34VTnXw0P5K0s=; b=TvebShLPF4l0gI24YwwrNyVMTFp35AyPi2NHCIdDwbDHCbKzO8uuBdalCUjyxnqErXwL4wHC7xZo9+7OjhKFtFe0Pk2xM8UPrUSWmzHns2t/va+CX/nCyceZVtYzFruikkEBN4yLRmmTI7vpKIqW2Ah0pv97uiJLxH7RM2GcfYw= Received: from BN0PR04CA0088.namprd04.prod.outlook.com (2603:10b6:408:ea::33) by BN6PR12MB1187.namprd12.prod.outlook.com (2603:10b6:404:1b::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.16; Fri, 22 Oct 2021 14:47:45 +0000 Received: from BN8NAM11FT006.eop-nam11.prod.protection.outlook.com (2603:10b6:408:ea:cafe::8a) by BN0PR04CA0088.outlook.office365.com (2603:10b6:408:ea::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.15 via Frontend Transport; Fri, 22 Oct 2021 14:47:45 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; Received: from SATLEXMB03.amd.com (165.204.84.17) by BN8NAM11FT006.mail.protection.outlook.com (10.13.177.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4628.16 via Frontend Transport; Fri, 22 Oct 2021 14:47:45 +0000 Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.15; Fri, 22 Oct 2021 09:47:44 -0500 Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB07.amd.com (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.15; Fri, 22 Oct 2021 07:47:44 -0700 Received: from BLR-LAB-SFW01.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2308.15 via Frontend Transport; Fri, 22 Oct 2021 09:47:42 -0500 From: "Abdul Lateef Attar" To: CC: Chasel Chiu , Nate DeSimone , Liming Gao , "Eric Dong" Subject: [edk2-platforms] [PATCH v1 1/2] MinPlatformPkg: Update APIC Table based on mode Date: Fri, 22 Oct 2021 20:17:45 +0530 Message-ID: <20211022144746.10671-2-abdattar@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20211022144746.10671-1-abdattar@amd.com> References: <20211022144746.10671-1-abdattar@amd.com> MIME-Version: 1.0 Return-Path: AbdulLateef.Attar@amd.com X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 69eeaa27-7c81-4204-b4d9-08d9956ae8d9 X-MS-TrafficTypeDiagnostic: BN6PR12MB1187: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: l/egXajDKkKKDu8E/pbZmXWyvb8dqtyFXwBawWC/xJrcOjzRX3u81XpgoFf+2i4bk+/vpwZI/4jTqEq3Y5sBh+if5sfSb1hIG0QAR8gqWUFh53hTZHlC0EdnL4yn34zb5vyjdjO06o2ycWeiX7S+VbXeM1xrhC/NCPpOJUSq+lwxnhgwmUX4TfEGaE4MZRci73VC6kIQ3q6Epjpv66uDO3ZBtPibqVGEm9J36BdDupla0WxM1a3GZd1ysUl7Og7z9G+Xb1PPs0FALv38rCLJEg8fjLxAtn4fXBdb11eqpJWCnfW1/t/HDI34xla2cGz2rITGdEvLLuckwebqA9MJ6DICHS9NmNqCsGjT6080WEjLrArrFFIo1L9DltG+TiIOvYN050qcO455GkSBrwkgcA7XXNgcRHIFfy6oY/iJe1YfWLrQ7wrgJ4CJYZwSDPhiqjrE5iMzUffeepWaFMnaZn7fPAtFvaQi+ck8xezStod7iAdppHTrftfT6rte4FOSaMOOOER2bAiUDzpxkJHu6H5OqlVIK42iylsNL/+iwT3uGFjC297IWvGpHLY+366mbJbw2CbFk1u2qez5gzVaSGkEw94UOmfvEo91cIgfFugFV1Msa7LTC/KHOsaoPQwvrKbpZhY4IHrX79rA1jlcRRL5opM8nFlt+GG4YZmn3J+j34i1cH+A8xkQYVnhHXg6PIVI3xZkliNlmdGpOjDACrbSUNFgfVho/2Gzp5A8+4A= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(4636009)(46966006)(36840700001)(2906002)(6916009)(426003)(8936002)(54906003)(70206006)(5660300002)(316002)(70586007)(47076005)(336012)(186003)(36756003)(508600001)(2616005)(1076003)(36860700001)(81166007)(356005)(4326008)(45080400002)(8676002)(26005)(82310400003)(83380400001)(7696005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Oct 2021 14:47:45.4530 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 69eeaa27-7c81-4204-b4d9-08d9956ae8d9 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT006.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR12MB1187 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain Detects the APIC mode by calling GetApicMode(). if current platform is in X2APIC mode sets the global mX2ApicEnabled. Also install the APIC NMI structure only if platform is not in X2APIC mode. Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Cc: Eric Dong Signed-off-by: Abdul Lateef Attar --- Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c | 35 ++++++++= ++++-------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c b= /Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c index f5c4f2c3f1a9..032903029a95 100644 --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c @@ -3,6 +3,7 @@ =0D Copyright (c) 2017 - 2021, Intel Corporation. All rights reserved.
=0D Copyright (c) Microsoft Corporation.
=0D +Copyright (c) 2021, AMD Incorporated. All rights reserved.
=0D SPDX-License-Identifier: BSD-2-Clause-Patent=0D =0D **/=0D @@ -947,21 +948,23 @@ InstallMadtFromScratch ( //=0D // Build Local APIC NMI Structures=0D //=0D - LocalApciNmiStruct.Type =3D EFI_ACPI_6_3_LOCAL_APIC_NMI;=0D - LocalApciNmiStruct.Length =3D sizeof (EFI_ACPI_6_3_LOCAL_APIC_NMI_STRUCT= URE);=0D - LocalApciNmiStruct.AcpiProcessorUid =3D 0xFF; // Applies to all pro= cessors=0D - LocalApciNmiStruct.Flags =3D 0x0005; // Flags - Edge-tigge= red, Active High=0D - LocalApciNmiStruct.LocalApicLint =3D 0x1;=0D + if (!mX2ApicEnabled) {=0D + LocalApciNmiStruct.Type =3D EFI_ACPI_6_3_LOCAL_APIC_NMI;=0D + LocalApciNmiStruct.Length =3D sizeof (EFI_ACPI_6_3_LOCAL_APIC_NMI_STRU= CTURE);=0D + LocalApciNmiStruct.AcpiProcessorUid =3D 0xFF; // Applies to all p= rocessors=0D + LocalApciNmiStruct.Flags =3D 0x0005; // Flags - Edge-tig= gered, Active High=0D + LocalApciNmiStruct.LocalApicLint =3D 0x1;=0D =0D - ASSERT (MadtStructsIndex < MaxMadtStructCount);=0D - Status =3D CopyStructure (=0D - &MadtTableHeader.Header,=0D - (STRUCTURE_HEADER *) &LocalApciNmiStruct,=0D - &MadtStructs[MadtStructsIndex++]=0D - );=0D - if (EFI_ERROR (Status)) {=0D - DEBUG ((DEBUG_ERROR, "CopyMadtStructure (APIC NMI) failed: %r\n", Stat= us));=0D - goto Done;=0D + ASSERT (MadtStructsIndex < MaxMadtStructCount);=0D + Status =3D CopyStructure (=0D + &MadtTableHeader.Header,=0D + (STRUCTURE_HEADER *) &LocalApciNmiStruct,=0D + &MadtStructs[MadtStructsIndex++]=0D + );=0D + if (EFI_ERROR (Status)) {=0D + DEBUG ((DEBUG_ERROR, "CopyMadtStructure (APIC NMI) failed: %r\n", St= atus));=0D + goto Done;=0D + }=0D }=0D =0D //=0D @@ -1454,6 +1457,10 @@ InstallAcpiPlatform ( DEBUG ((DEBUG_INFO, "mNumberOfCpus - %d\n", mNumberOfCpus));=0D DEBUG ((DEBUG_INFO, "mNumberOfEnabledCPUs - %d\n", mNumberOfEnabledCPUs)= );=0D =0D + if (LOCAL_APIC_MODE_X2APIC =3D=3D GetApicMode ()) {=0D + mX2ApicEnabled =3D TRUE;=0D + }=0D +=0D DEBUG ((DEBUG_INFO, "mX2ApicEnabled - 0x%x\n", mX2ApicEnabled));=0D DEBUG ((DEBUG_INFO, "mForceX2ApicId - 0x%x\n", mForceX2ApicId));=0D =0D --=20 2.25.1