From nobody Fri May 17 09:38:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+90930+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1656604138266247.22885477020975; Thu, 30 Jun 2022 08:48:58 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Yky3YY1788612x473kWjM1kE; Thu, 30 Jun 2022 08:48:57 -0700 X-Received: from NAM02-SN1-obe.outbound.protection.outlook.com (NAM02-SN1-obe.outbound.protection.outlook.com [40.107.96.47]) by mx.groups.io with SMTP id smtpd.web10.26745.1656604136843995101 for ; Thu, 30 Jun 2022 08:48:57 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HCGhMzhZNO0yisSInfMK4lqgCF4ZGr1Dhx4HUgLFxvSrO27jmSAa8X3E8sEzvoFuqfaqDDsJy7bFTBRkU6jPUb5/KiaImovY9OcLD1bDz8bEGgFZKOWdWypXDbUwtmZd5/nPz7FVCRc4icpU1GFmFb3n8+rGQKFNW899hS1bdOyM8FZKpLTiqNIl/rfDCnQwAL6+T23EklRT6lBvz8ayvY3koDL98jyE+LHPaXnM6zwMhA9k/6vP+NwOyy0Dt7S6mF0jHNVUIKfB8XqkGkne1RJXnZKmEZVITC4Ws6JGZlAia4c3EFXDFz+x43xXyvpFwK623dL3mB8YyOMsMCs2jw== 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=2q4KPuky+h5DMo1M1j4jxMsljc31Stw5qXaOXLXHA/w=; b=ZNvfP6e0pCDo1F8bcJD+twG9XHBZvRalL2ONKYd03yRn6HChcXbM524M5UPZzXFCVbgweAbrnrA31eSLhf+YCVAORRIlq/21b/6epr2GK9GtYBwhYuScOcvWl7FtRD3nQHpLo0YPKfwctusy1Who4uOjL2HJLgVHMlO8uZIoweTyXKUhYKps/CXyCZfM47gtpS1yeEdvV95cJ14c+0+qDdP9LPPl7OSHYuz2B7gh9p3sq/V4XityN9rIQAsNajYEoJH2JPWwTum6plAcviP0pgYP7Vq19pzm7z3PqyIKo4besY4odK81ogeCZRR+tFnxqMqArTu1TrdtR2jVWr4bOg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.236) smtp.rcpttodomain=arm.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from BN9PR03CA0947.namprd03.prod.outlook.com (2603:10b6:408:108::22) by BL0PR12MB5556.namprd12.prod.outlook.com (2603:10b6:208:1cf::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14; Thu, 30 Jun 2022 15:48:55 +0000 X-Received: from BN8NAM11FT024.eop-nam11.prod.protection.outlook.com (2603:10b6:408:108:cafe::75) by BN9PR03CA0947.outlook.office365.com (2603:10b6:408:108::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14 via Frontend Transport; Thu, 30 Jun 2022 15:48:55 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.236) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+90930+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.236 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.236; helo=mail.nvidia.com; pr=C X-Received: from mail.nvidia.com (12.22.5.236) by BN8NAM11FT024.mail.protection.outlook.com (10.13.177.38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.5395.14 via Frontend Transport; Thu, 30 Jun 2022 15:48:54 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by DRHQMAIL109.nvidia.com (10.27.9.19) with Microsoft SMTP Server (TLS) id 15.0.1497.32; Thu, 30 Jun 2022 15:48:54 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.26; Thu, 30 Jun 2022 08:48:53 -0700 X-Received: from perses.nvidia.com (10.127.8.14) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server id 15.2.986.26 via Frontend Transport; Thu, 30 Jun 2022 08:48:53 -0700 From: "Jeff Brasen via groups.io" To: CC: , , , Jeff Brasen Subject: [edk2-devel] [PATCH 1/4] DynamicTablesPkg: AcpiSsdtPcieLibArm: Correct translation value Date: Thu, 30 Jun 2022 09:48:48 -0600 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c5596ab1-93a5-405f-6d03-08da5ab009c2 X-MS-TrafficTypeDiagnostic: BL0PR12MB5556:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: KxrJFRp2MkiVMhwfW+i/OFAEEksL62gYV4X1dlqF3vUwoc96e8hqM/ngAkqx1kfUFZpv7X3L6r3IgG+KAsg2tZeCD9t9pqFDvg+aHqzPxtAy5kuQ6l0/GG1zEatv7eqh8x9nznYQa/fgPe5UV7XgNiq1DCjVeg+2EdzNUleUI8HM3bilrrEJZsBZssUwrFMQKzOsNyJyy78PczzIzicK0sy4qn934XEcr4RkcyEoT6HnqY1TZADsKI0iRvwK2rBOGPA54oDpNQ08nGtf0FSz9IVyFV0JBxmdhi/Bqy81y0Zd+elWyiUW9e9k8gNjrP56SbrUNRxakCPcwYh2acVXj9bFQPCopNFO4c5RYsNvDH6KU4QiZhxv0IPc9IURHUGSV5sctfDT7Uoh/bU7ZuhgQAuwtwYbQZVoVDpRyceeMWyXKNA8ziTwJvvv1HMy8lvIOknkFcqXHhjt+1KknFhl5VMnQ4Y9CgQtKixrIkXnMUkcJRSPz8WLVvb7RKXYGeRaWgI3Cq4szxhZVTn2FhFZi9EDz7oOff+bySuf1Jro17hcZHRNge3lsxeil2i7rXxxmp+3BAy8qxOnB+8cq2CH5oXy4gqE4ptwBf+ntY12N0uXWkc7R7PzuhAVUzVUDlW9hHk+k+Z72sAEc7Elz7/t9l0G/V+waiVEjtOgGgEuNbSP2kWIcK84ECAriCrxXfUZjj1keTKBit0OXrxMAE3WWQmBqfeVj/B1mgdKTnREax9vioblxzc9ndMz938nE5iPSCIjN3YuA3wSnyWUU0VBTq9T4zniL9oK1dSktZYVAmAU4gArFzOYPUdK5+/+iJ/Xq/O0Z0qDULbsVNwGfqKK+EcU7azcHTQxh5z67m95WPnm4dAfJasTvbamqQhA4g6f X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2022 15:48:54.9108 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c5596ab1-93a5-405f-6d03-08da5ab009c2 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[12.22.5.236];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT024.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB5556 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: SjeSPCEQxKWWtCGZAjVyWRBvx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1656604137; bh=I1QCvlNMOfFer83I5ZTZIo33emlTLf/3XyBR7ooMnks=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=tSUaoFuM6znDU4IbE6Hqfv8hKoO6qX/tg+3TX/zM8HkyKbYsWXMGz8KO7Hh5VLkIh2t 1TAmp7as7ELFBc8JKU3YkWLJfyrCzROb7e8Ap5AERufUUxt3kPdA09suq6cCxH8HGHn6A 8PXHxWa1GAvZ/Z8vCOWaAvtnKvTK7rLhhxw= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1656604138966100001 Content-Type: text/plain; charset="utf-8" The translation value in ACPI should be the difference between the CPU and = PCIe address. Signed-off-by: Jeff Brasen --- .../Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerator.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c index a34018151f..f0d15f69a4 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c @@ -621,7 +621,7 @@ GeneratePciCrs ( 0, AddrMapInfo->PciAddress, AddrMapInfo->PciAddress + AddrMapInfo->AddressSize - 1, - Translation ? AddrMapInfo->CpuAddress : 0, + Translation ? AddrMapInfo->CpuAddress - AddrMapInfo->Pc= iAddress : 0, AddrMapInfo->AddressSize, 0, NULL, @@ -643,7 +643,7 @@ GeneratePciCrs ( 0, AddrMapInfo->PciAddress, AddrMapInfo->PciAddress + AddrMapInfo->AddressSize - 1, - Translation ? AddrMapInfo->CpuAddress : 0, + Translation ? AddrMapInfo->CpuAddress - AddrMapInfo->Pc= iAddress : 0, AddrMapInfo->AddressSize, 0, NULL, @@ -665,7 +665,7 @@ GeneratePciCrs ( 0, AddrMapInfo->PciAddress, AddrMapInfo->PciAddress + AddrMapInfo->AddressSize - 1, - Translation ? AddrMapInfo->CpuAddress : 0, + Translation ? AddrMapInfo->CpuAddress - AddrMapInfo->Pc= iAddress : 0, AddrMapInfo->AddressSize, 0, NULL, --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#90930): https://edk2.groups.io/g/devel/message/90930 Mute This Topic: https://groups.io/mt/92089318/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Fri May 17 09:38:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+90932+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1656604139552353.58111375946885; Thu, 30 Jun 2022 08:48:59 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 8whoYY1788612xnuCffRgyvK; Thu, 30 Jun 2022 08:48:58 -0700 X-Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com [40.107.220.80]) by mx.groups.io with SMTP id smtpd.web08.26784.1656604137832924515 for ; Thu, 30 Jun 2022 08:48:58 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=J6X23GdKPEykx0RT2PHUGV2jS6E2kBlFyfuyPgTTNLHde+3UaFgDU4jp5d9bFnUIOtqs7DQrxEIlQ2zODdI5VcsekbOKf6LrpyyL5Shxtspt3e6WwGEqWt2q9SUx4Qf7UDozK5iDXDCTANRAMxCW1kVACll3n00QB/gow1PWg4ek4b8vbieM4rI95neTY+Psro5E2GCcz2/7XeIsu0gIEaD9hYRowfj66XqRluZyYY/S0U+Pi2/RJnxo1O/MTIsHkWLOiRhKQ/p+FPdPu/RhrRklYxtSzRjdaQXM6bG9EPFDaWBvL9c00cGkBjiUnDx72gUFOU6dsNjwX1uQXYc2Nw== 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=G6XotJDKS38NmggwG9SKo2NTRgb7FehyoBFhytkQDnk=; b=J3OSiNMOq7fWgEohOh89W+Lp+Fpd6c10A10DWW47b5KDNNJZhyAiYqkuQ7TciFl2ZmVlL91xehlZxfYBxGUvcbmzPdoV83oE45Soqr21Nxpo6qNBSB3bcQ7yCra3INjDAcRC8LWqJgjBEscw8zv4fpcWowAzPcnv43f+d2Wsje8NFI5zLVkq4E49SxbkjlFG8jWMpWMz99FMwf2Kwf1VBC0Imj5q2IxQlGO5melhKVZRyxPIRMTZXLA/NdhHw3xCIdgUl7Ih+43XxJhBN4hTRnojVxot4uT2gGj1QYTorlHmIiuC71yXoDln+NuiuaTC4maMqGgy79yPQIVLaHLLEw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.235) smtp.rcpttodomain=arm.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from DM6PR07CA0060.namprd07.prod.outlook.com (2603:10b6:5:74::37) by BL0PR12MB2547.namprd12.prod.outlook.com (2603:10b6:207:3e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14; Thu, 30 Jun 2022 15:48:55 +0000 X-Received: from DM6NAM11FT014.eop-nam11.prod.protection.outlook.com (2603:10b6:5:74:cafe::57) by DM6PR07CA0060.outlook.office365.com (2603:10b6:5:74::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14 via Frontend Transport; Thu, 30 Jun 2022 15:48:55 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.235) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+90932+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.235 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.235; helo=mail.nvidia.com; pr=C X-Received: from mail.nvidia.com (12.22.5.235) by DM6NAM11FT014.mail.protection.outlook.com (10.13.173.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.5395.14 via Frontend Transport; Thu, 30 Jun 2022 15:48:55 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by DRHQMAIL107.nvidia.com (10.27.9.16) with Microsoft SMTP Server (TLS) id 15.0.1497.32; Thu, 30 Jun 2022 15:48:55 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.26; Thu, 30 Jun 2022 08:48:54 -0700 X-Received: from perses.nvidia.com (10.127.8.14) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server id 15.2.986.26 via Frontend Transport; Thu, 30 Jun 2022 08:48:54 -0700 From: "Jeff Brasen via groups.io" To: CC: , , , Jeff Brasen Subject: [edk2-devel] [PATCH 2/4] DynamicTablesPkg: AcpiSsdtPcieLibArm: Allow use of segment number as UID Date: Thu, 30 Jun 2022 09:48:49 -0600 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 554aa567-a2b4-4669-64d7-08da5ab00a1b X-MS-TrafficTypeDiagnostic: BL0PR12MB2547:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: z/nEPNt89vU1+9Y1m8wUyJ+itZCJDoti1AqF/jviDIPimVlKF5sTrXhJpIeXwDcw9K8Wq1k4S6Q1/jmTihYQ+7YstzkiLAyUjaaPHz66AAIF4DkslF4dv1gN8ZfLL6dG2gM/tZp/Ssv0EEup7js6M82DqJ2LV/6M4jRWv8H0WKk4yW8Gedc+sO1emDtIP56gmub8GieFFNo+zhoNLrDwbkRx6Ra+C3qRGM8Ntkx/YYpm5/gaNEp/JhpLjbp0oC/+/hfUzUlfNfDAb3EE++LTa2LWFF8uytricKt7xe1wB+LQAJ/KQav7D1iVtBthhFZzFYPnrK46KBDk+P6PgXWgsQ75HhJE8AlY3HwaTbQ2RujspnC30gjJcw168t/C4ov0oaczLEf+eE7GGPQgiO7TEgdJCgCFGkGAFtIrrXrtBfAcYJYxVF7oYATQa2hbEY8tjr/m1wdJsgNDJYdwaseikdP0OsVqcSg7we6v97p0nzSoYgUki7ckieYQoKpLyPm04yji5fUATX0QJ8B8LRGzq5fZd4M7CjwuCWj2eYdJFy/e8BL/CJlQR2IUR1w5oD0ZW8QuoQbVdd8B7hJwDXUOSeg1M/p+C5eDLtd8bMOwhW98Ik7mrJbHGVcPrfRfXNs8sEzZmQbZA1YxHaT1UgF7cErRZoJrHmcJJ0sjh7DVdYnRyecI3MvHGARxpcowjEnjq2HjcdUpND+Gf+tVmb5uZRv+9tfw4nUvUaD72xRelq97fc/uNpWWWUg052WlYcKQa9jiBhFtTXg8b8QMUZ2tF/LGjHXACW39f3MXZXEkvv7hcNaMyAPX135Tg45Q/ag/HhOvQ/dhe7q4AkR3ktFBCZJj3yWlDetxlAvUF13oTrgsrbeY60RicMhmBZBVrZGA X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2022 15:48:55.5564 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 554aa567-a2b4-4669-64d7-08da5ab00a1b X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[12.22.5.235];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT014.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB2547 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: gnaD1csp5V4JIWuQ5dfSQG18x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1656604138; bh=MjkpEDzSkpT8eJYGOr8ev/nLfOzfZlJ59pqed2Vd9D4=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=IhH9zozKUGjBBv0UqzI/ZhwLX0zj6Z+qcyneDry9kWEQ632LycVm8WHFjAYghntrG6R DGrVw7wqt+Rbj68QdjKko9l8jOXCws1UuOHAegzmtZDqZG7IiUnPxQNaU5iq9hR5agzeC SzvnMXUX+Q3L5lf18sB4ixMLQl57uDci/Jg= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1656604140580100009 Content-Type: text/plain; charset="utf-8" Add support for selecting to use index or segment number as UID and name. This allows the path of the nodes to be well known. Signed-off-by: Jeff Brasen --- DynamicTablesPkg/DynamicTablesPkg.dec | 3 +++ .../AcpiSsdtPcieLibArm/SsdtPcieGenerator.c | 19 ++++++++++++++++++- .../Arm/AcpiSsdtPcieLibArm/SsdtPcieLibArm.inf | 3 +++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/DynamicTablesPkg/DynamicTablesPkg.dec b/DynamicTablesPkg/Dynam= icTablesPkg.dec index 9b74c5a671..a890a048be 100644 --- a/DynamicTablesPkg/DynamicTablesPkg.dec +++ b/DynamicTablesPkg/DynamicTablesPkg.dec @@ -57,5 +57,8 @@ # Non BSA Compliant 16550 Serial HID gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdNonBsaCompliant16550SerialHid|""= |VOID*|0x40000008 =20 + # Use PCI segment numbers as UID + gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdPciUseSegmentAsUid|FALSE|BOOLEAN= |0x40000009 + [Guids] gEdkiiDynamicTablesPkgTokenSpaceGuid =3D { 0xab226e66, 0x31d8, 0x4613, {= 0x87, 0x9d, 0xd2, 0xfa, 0xb6, 0x10, 0x26, 0x3c } } diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c index f0d15f69a4..85782af380 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c @@ -996,6 +996,7 @@ BuildSsdtPciTableEx ( UINTN Index; EFI_ACPI_DESCRIPTION_HEADER **TableList; ACPI_PCI_GENERATOR *Generator; + UINT32 Uid; =20 ASSERT (This !=3D NULL); ASSERT (AcpiTableInfo !=3D NULL); @@ -1051,13 +1052,29 @@ BuildSsdtPciTableEx ( *Table =3D TableList; =20 for (Index =3D 0; Index < PciCount; Index++) { + if (PcdGetBool (PcdPciUseSegmentAsUid)) { + Uid =3D PciInfo[Index].PciSegmentGroupNumber; + if (Uid > MAX_PCI_ROOT_COMPLEXES_SUPPORTED) { + DEBUG (( + DEBUG_ERROR, + "ERROR: SSDT-PCI: Pci root complexes segment number: %d." + " Greater than maximum number of Pci root complexes supported = =3D %d.\n", + Uid, + MAX_PCI_ROOT_COMPLEXES_SUPPORTED + )); + return EFI_INVALID_PARAMETER; + } + } else { + Uid =3D Index; + } + // Build a SSDT table describing the Pci devices. Status =3D BuildSsdtPciTable ( Generator, CfgMgrProtocol, AcpiTableInfo, &PciInfo[Index], - Index, + Uid, &TableList[Index] ); if (EFI_ERROR (Status)) { diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieL= ibArm.inf b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieLi= bArm.inf index 283b564801..431e32a777 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieLibArm.i= nf +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieLibArm.i= nf @@ -30,3 +30,6 @@ AcpiHelperLib AmlLib BaseLib + +[Pcd] + gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdPciUseSegmentAsUid --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#90932): https://edk2.groups.io/g/devel/message/90932 Mute This Topic: https://groups.io/mt/92089320/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Fri May 17 09:38:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+90934+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1656604142432654.2401829002358; Thu, 30 Jun 2022 08:49:02 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id AOvnYY1788612xhg4LUzNzIk; Thu, 30 Jun 2022 08:49:02 -0700 X-Received: from NAM12-DM6-obe.outbound.protection.outlook.com (NAM12-DM6-obe.outbound.protection.outlook.com [40.107.243.64]) by mx.groups.io with SMTP id smtpd.web08.26786.1656604141319588818 for ; Thu, 30 Jun 2022 08:49:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cEbuazgeN0RcQ5Danhy1TPk0QGo5HvbOXE5y/JDOkveVobC2fpA9YHUmWu4CEY9pPi6paprYnRpFHIabfjf0r0KdiSCsOuwnYF9o+Z6vXaZCCdpTrBvbR3Vf0D7Zgeh4f82DKsGskwvwCzFp9bELikhC5bSA1u8YisUwyOd0X+XpK3N4VFbBTfZs9TLwAdUC3EIbHl8fjeK6QqvsHjs/FwP1PZGJpMuQw85RO6Wgb3eXNQqiI0CRY1eihCWIs8iVPzb1Wmxlfikwbm9KTNiy3MCNh6pGXe5kwO/1WWTYZzkEcAFF+nGZA52bL4So/SgjzD7g9xvnL6HK6ygLU1g8tA== 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=p972YgBT388mbKHUKJsPHcADe7kmuvQq4l9rpeZqExU=; b=M5NW+7ZZg/QCo43fh7Q5vwiNpE1eDwH74PVc32KPLnWE7e7AFZlSwQj7bNPx9Gyb3BiR2yDzTnwXUQW8fIGajAymfgG4Nk1Y5LZm24hu5L7PKzs5dDUH6sOaXBV2ThP6sh9arnykFufleLHhQ6rOcsBjaJCEdkbDwVdn+HW5CTLDhtLXk5ZMV+doa8m1Aw00g0BXQzrT8RlAdJMydY6C/vMOwiMJUCkAeVEwOH78XFnuxSstvKKAFihq+CgESY2dMBGAC6hv8PI1J5gdAOqba5ldLNu8YrPx72nq4Q+zUhmjIRBTf0ddDkrBwVTF34MkJZsP8dZdMPInOY24dVpLbw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.236) smtp.rcpttodomain=arm.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from BN9PR03CA0954.namprd03.prod.outlook.com (2603:10b6:408:108::29) by BYAPR12MB3479.namprd12.prod.outlook.com (2603:10b6:a03:dc::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Thu, 30 Jun 2022 15:48:58 +0000 X-Received: from BN8NAM11FT024.eop-nam11.prod.protection.outlook.com (2603:10b6:408:108:cafe::1a) by BN9PR03CA0954.outlook.office365.com (2603:10b6:408:108::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.15 via Frontend Transport; Thu, 30 Jun 2022 15:48:58 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.236) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+90934+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.236 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.236; helo=mail.nvidia.com; pr=C X-Received: from mail.nvidia.com (12.22.5.236) by BN8NAM11FT024.mail.protection.outlook.com (10.13.177.38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.5395.14 via Frontend Transport; Thu, 30 Jun 2022 15:48:57 +0000 X-Received: from drhqmail201.nvidia.com (10.126.190.180) by DRHQMAIL109.nvidia.com (10.27.9.19) with Microsoft SMTP Server (TLS) id 15.0.1497.32; Thu, 30 Jun 2022 15:48:55 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail201.nvidia.com (10.126.190.180) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.26; Thu, 30 Jun 2022 08:48:55 -0700 X-Received: from perses.nvidia.com (10.127.8.14) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server id 15.2.986.26 via Frontend Transport; Thu, 30 Jun 2022 08:48:54 -0700 From: "Jeff Brasen via groups.io" To: CC: , , , Jeff Brasen Subject: [edk2-devel] [PATCH 3/4] DynamicTablesPkg: AcpiSsdtPcieLibArm: Support UID > 0xF Date: Thu, 30 Jun 2022 09:48:50 -0600 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e4e5f739-6b44-4167-8ab3-08da5ab00b8e X-MS-TrafficTypeDiagnostic: BYAPR12MB3479:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: RG83YPUDNIoaFjCMU9vE0a3N5vvUvV6qd/9FYazIvbXRhun1bt7aZN7eejGRU7cjFymCfrBhBdqIUUUA8bImjFoNILk+w2PZVO8RBBCf5vOf9MfQmExmOI4xsObQQuNVuvYWW990NsPW6onjYBK+yu9PHk7LGB7k3aaUl34d7EZkwUoYzhTGetDrqMN3hx1xYpOmSNEHYKUV2SkybRILRQJzvlv+lL+2KUqcnQ4KuE33/ZWx2yybYmihl0Ugi/fApQY3pUgdR4rztFBfuEVAPlEESraKWfbvKZjX55keeX10bQjVne0Z4+OymuYg9q/UEqw6RJis2IEc9Kn50eMlZ9gmheVIIG/otHvVKDhZuPsssU12ctuCfFkmdncIOgf9Y1UM39wl+qTqkV3vRw85En9zd924/tHXl084n4E6CAFD2bIHg9kQmu6sGQaE8UktVEwg2XrUDCPw5MX1F9yVyqWkmMvLCc0jxHgvq52RA30ybf9QQRiXSqQNnlndUQouPXkgssbURDVlBME2Zsxh8bihB9yOvc0cubOC9DuYYY4vD+7993QRSKb/LSWwHZeTU7jVJweYtpVa0aFPSD55AAQUSoAEN9dMnz+yrWo2/VM3rC/rNDGyY8qm01giKek+B8xYkXYZWt7vgA2yl/QxJfcFt5TixDl0Kxionav1HHE0+Q4GFuoqLJjfcohy+6OvFxAtW9EXKlXeBa+iPnxE5RIRRDDo3Z0rvHRpssm43kzjlFdAV6rbulN/GIN+jFK3KQ0Rrtcr+gm1hhb11Sw/M8up4FBl5ZuynSWaF5gii7NhKRPH1fkF5Gv97PrZyh6QJaDEgNdiBzJJOV8Y8AXiHJFSr9UxLannAAjNwWpBpn4P83pf0B8ECV+XQaVoYrKd X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2022 15:48:57.9106 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e4e5f739-6b44-4167-8ab3-08da5ab00b8e X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[12.22.5.236];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT024.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR12MB3479 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: i5cLpXWspQfCLkSFHlf1yjcTx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1656604142; bh=73jZdzgBj3wJG7yhj53pSKNXZlyxKnsxNyJuU+cwhL0=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=aezL84dGwuFnpEHlkqwHDAiR9sRtCJcoQ03Tak7cRY4LsBnARuwKqgN+WqeQOJjVf9r gD2uAxvVFEPix+b3A/RvAXVP8EbQjbY/5AL7ldSFv+EmXQrBZByiba6VXpERfTpfz/cQG /ZiRgZBu0BLCUKEQOY0eHaTGTcwU/XfAEZI= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1656604144583100019 Content-Type: text/plain; charset="utf-8" Add support for PCIe devices with UID > 0xF. This is done by using the next value in the name so PCI5, PC26, etc Signed-off-by: Jeff Brasen --- .../Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerator.c | 11 +++++++---- .../Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerator.h | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c index 85782af380..c5b23d91d0 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c @@ -818,7 +818,10 @@ GeneratePciDevice ( =20 // Write the name of the PCI device. CopyMem (AslName, "PCIx", AML_NAME_SEG_SIZE + 1); - AslName[AML_NAME_SEG_SIZE - 1] =3D AsciiFromHex (Uid); + AslName[AML_NAME_SEG_SIZE - 1] =3D AsciiFromHex (Uid & 0xF); + if (Uid > 0xF) { + AslName[AML_NAME_SEG_SIZE - 2] =3D AsciiFromHex ((Uid >> 4) & 0xF); + } =20 // ASL: Device (PCIx) {} Status =3D AmlCodeGenDevice (AslName, ScopeNode, &PciNode); @@ -1054,13 +1057,13 @@ BuildSsdtPciTableEx ( for (Index =3D 0; Index < PciCount; Index++) { if (PcdGetBool (PcdPciUseSegmentAsUid)) { Uid =3D PciInfo[Index].PciSegmentGroupNumber; - if (Uid > MAX_PCI_ROOT_COMPLEXES_SUPPORTED) { + if (Uid >=3D MAX_PCI_ROOT_COMPLEXES_SUPPORTED) { DEBUG (( DEBUG_ERROR, "ERROR: SSDT-PCI: Pci root complexes segment number: %d." - " Greater than maximum number of Pci root complexes supported = =3D %d.\n", + " Greater than maximum supported value =3D %d.\n", Uid, - MAX_PCI_ROOT_COMPLEXES_SUPPORTED + MAX_PCI_ROOT_COMPLEXES_SUPPORTED - 1 )); return EFI_INVALID_PARAMETER; } diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.h b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.h index 59a0d601a3..515a3e1785 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.h +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.h @@ -31,7 +31,7 @@ Corresponding changes would be needed to support the Name and UID fields describing the Pci root complexes. */ -#define MAX_PCI_ROOT_COMPLEXES_SUPPORTED 16 +#define MAX_PCI_ROOT_COMPLEXES_SUPPORTED 256 =20 // _SB scope of the AML namespace. #define SB_SCOPE "\\_SB_" --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#90934): https://edk2.groups.io/g/devel/message/90934 Mute This Topic: https://groups.io/mt/92089322/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Fri May 17 09:38:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+90933+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1656604141610592.6500899892507; Thu, 30 Jun 2022 08:49:01 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Mp2hYY1788612xgiqWJAuDDK; Thu, 30 Jun 2022 08:49:01 -0700 X-Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.81]) by mx.groups.io with SMTP id smtpd.web10.26746.1656604140446747415 for ; Thu, 30 Jun 2022 08:49:00 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PV2xiWoIRKUBbf3QiOmPa7d5JMoUB/NJexzSondC6SHFqa6MzY0NV+Nnuv6wpxt4rrCRRQZ2jnOvFK1Kl/KXSztgBUQwehv82BwElXwETgQfe0SpMcT2MfPWhM9eN9vUkrFW78MgS7KUKRaLh6GQoaD9C/yX05nQGO8gggWtFWASamObZRa7/0Imfa+kujAujD5CNMAQsGSbxf3eyjt/gBncQ/6D/X5joBhxI1HBkfHH9gCKGHzNJt6II4pqxkhOfSTuU1nyKG4ubUavOitHAU0EItWsnR/cdXOIgYKEZexr6bkHzz1dE37wm+qdfaRs5yUERtm08FhqnRMZffWyBw== 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=Yevbqds6heVqNdmAxK9Js/3lrTfF6dyjjI1Xz45aDuA=; b=eVv89fEsLL1A0vBoJQVwekRHrMLAufnwZ1pPUw+4Ln8ei4F13J85C1U0M0uSnVbIaTs+6jDtZD/RFBRiN/Wj58JSsvEKiFLkcX6W/U9Vz7xKewlbqrsfNkE42IODsPcpL7uSw2DXKmG2DGEFTf3JQ9+aJ0TLG2L4oESaWfh6W6YVXzOYeWdjma0tPBcARrzskY00H5LeZrAPwyjdXedOqPPNkvtARy3FPk7KHEhsrIV/3MIxeoxk1LqAjMwTt3/Mh2zP89Xb8k0T1+0N0bMj791OnOtKmx6p+wHl9WUEQE3/u97WWTlGGqKQedx0tlAoUgE2J6mEmdSWVYYP0yOmMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.238) smtp.rcpttodomain=arm.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none X-Received: from DM6PR02CA0049.namprd02.prod.outlook.com (2603:10b6:5:177::26) by BN7PR12MB2756.namprd12.prod.outlook.com (2603:10b6:408:29::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.18; Thu, 30 Jun 2022 15:48:58 +0000 X-Received: from DM6NAM11FT010.eop-nam11.prod.protection.outlook.com (2603:10b6:5:177:cafe::5a) by DM6PR02CA0049.outlook.office365.com (2603:10b6:5:177::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14 via Frontend Transport; Thu, 30 Jun 2022 15:48:58 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.238) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+90933+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.238 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.238; helo=mail.nvidia.com; pr=C X-Received: from mail.nvidia.com (12.22.5.238) by DM6NAM11FT010.mail.protection.outlook.com (10.13.172.222) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.5395.14 via Frontend Transport; Thu, 30 Jun 2022 15:48:57 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by DRHQMAIL105.nvidia.com (10.27.9.14) with Microsoft SMTP Server (TLS) id 15.0.1497.32; Thu, 30 Jun 2022 15:48:56 +0000 X-Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.26; Thu, 30 Jun 2022 08:48:55 -0700 X-Received: from perses.nvidia.com (10.127.8.14) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server id 15.2.986.26 via Frontend Transport; Thu, 30 Jun 2022 08:48:55 -0700 From: "Jeff Brasen via groups.io" To: CC: , , , Jeff Brasen Subject: [edk2-devel] [PATCH 4/4] DynamicTablesPkg: AcpiSsdtPcieLibArm: Add support for override protocol Date: Thu, 30 Jun 2022 09:48:51 -0600 Message-ID: <45abcaa79586b025205269d17957537d613c9bc2.1656603839.git.jbrasen@nvidia.com> In-Reply-To: References: MIME-Version: 1.0 X-NVConfidentiality: public X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b972ebd7-2004-4884-ae05-08da5ab00b82 X-MS-TrafficTypeDiagnostic: BN7PR12MB2756:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: UrUe4qqBeXVG3afz6qhWN9VH5Pd81Ruta2SCbktpihbz0wrImNTiubgipuN1io6Bft318g0ozsgGYHjZvvc8AfYsEcqBnsvE5JC3ER35Wz6lHJY70hllACR4YH1HqFZX6mscTyXFmJ/f0zCd9sh7z4KTZtpiVeiWRlyc9VomffIvg/yQn0PXqRF6DJCJCy+UF3G6xtF9BU32pA6fQXHBQxcEovmyU1u0iuXcnePBWuIUmUh5Z7GgJzScIPl+DsKyn+1i1zm0Do0bJrLIHqFQOAhbiFa1XWFw26oEoOxb9wdLSKVhNG95ZA357y14YTqvyfvjhywCjhE55+o3McZeURC6Ek4Ku2i9sZ9ZN1L76qiI1iXw3Ocu+h6rAlWpoDbg4mAsrEGSZmDDTjk5XyYT00i3NJhF2xPMO4XIA6ptU0q6wHdGEqw8GBeOe787yRUsI7Xj6PLn6Eq4rQYZ6VnrLCsBKm0uaKYbHKrg/+dbzn1ggcOSZni1G53jbLf7HPrZhfN0T+DKQ/aehxYCT90qcjWiNXgARJ91x/bY79jnBwxRMjD+fDhy6st9KQ+xT4xJi06+yryvdqu0MXySTGOcbXBnayOecTmg2Al23Ljs6i/zbqgZPqs0PQQzDAGmTb3YsFGMiXudzKp/ZinD5zA5xTySC2FzoEJ7ARVEg+Kpg2sae5KGXQgz7Zw5qb8e9PiJylPfqiuP/j8iZiVSLkRhqHY5D5HxCSOzh987+O7nxwweypFbMJGUK6K9X+cWRPV7UVJXVv+e6lFBv723w1es6P8peScRKM8LGpXW6gLhF3Va1ISZT4s5miyajlWZ1KOkiat0mTvYNcTgNNMl5w8L6SAZYrZz8BHslGlFDnuq1uSyo/1LDvhOgzSxPF4MrJkG X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2022 15:48:57.8954 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b972ebd7-2004-4884-ae05-08da5ab00b82 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[12.22.5.238];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT010.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR12MB2756 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,jbrasen@nvidia.com X-Gm-Message-State: TEkRIkm6I0G7d4WYv7vvaR11x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1656604141; bh=Zb+KZM01E4rkaAbqhNcBScjcCrS0thhj57PupeVqu3s=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=iGAR4uSDAJ1k1x43eYRKlYK055i90wAEZE+pTFKgjnd6VuzmR/LNSN/x8bR7V6PLA5i HBuDWTtDmxPcUdc0GDvInxAclcBthfMDfZvWOv9UeIqi6wGBxMmar+sO5p9e30mu/wOvg J005cp3XSd9vj/1j5vYNx3acZyHGNrOPWZo= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1656604142623100015 Content-Type: text/plain; charset="utf-8" Some platfoms may want to modify the ACPI table created. Add support for protocol that can provide an alternative implementation. Signed-off-by: Jeff Brasen --- DynamicTablesPkg/DynamicTablesPkg.dec | 3 + .../Protocol/SsdtPcieOverrideProtocol.h | 63 +++++++++++++++++++ .../AcpiSsdtPcieLibArm/SsdtPcieGenerator.c | 31 ++++++++- .../Arm/AcpiSsdtPcieLibArm/SsdtPcieLibArm.inf | 4 ++ 4 files changed, 98 insertions(+), 3 deletions(-) create mode 100644 DynamicTablesPkg/Include/Protocol/SsdtPcieOverrideProto= col.h diff --git a/DynamicTablesPkg/DynamicTablesPkg.dec b/DynamicTablesPkg/Dynam= icTablesPkg.dec index a890a048be..bb66bdaf14 100644 --- a/DynamicTablesPkg/DynamicTablesPkg.dec +++ b/DynamicTablesPkg/DynamicTablesPkg.dec @@ -43,6 +43,9 @@ # Dynamic Table Factory Protocol GUID gEdkiiDynamicTableFactoryProtocolGuid =3D { 0x91d1e327, 0xfe5a, 0x49b8, = { 0xab, 0x65, 0xe, 0xce, 0x2d, 0xdb, 0x45, 0xec } } =20 + # Protocol to override PCI SSDT table generation + gEdkiiDynamicTableSsdtPcieOverrideProtocolGuid =3D { 0x962e8b44, 0x23b3,= 0x41da, { 0x9f, 0x36, 0xca, 0xde, 0x68, 0x49, 0xfb, 0xf6 } } + [PcdsFixedAtBuild] =20 # Maximum number of Custom ACPI Generators diff --git a/DynamicTablesPkg/Include/Protocol/SsdtPcieOverrideProtocol.h b= /DynamicTablesPkg/Include/Protocol/SsdtPcieOverrideProtocol.h new file mode 100644 index 0000000000..29568a0159 --- /dev/null +++ b/DynamicTablesPkg/Include/Protocol/SsdtPcieOverrideProtocol.h @@ -0,0 +1,63 @@ +/** @file + + Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved. + + SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#ifndef SSDT_PCIE_OVERRIDE_PROTOCOL_H_ +#define SSDT_PCIE_OVERRIDE_PROTOCOL_H_ + +#include +#include + +/** This macro defines the SSDT PCI Override Protocol GUID. + + GUID: {D85A4835-5A82-4894-AC02-706F43D5978E} +*/ +#define EDKII_SSDT_PCI_OVERRIDE_PROTOCOL_GUID \ + { 0x962e8b44, 0x23b3, 0x41da, \ + { 0x9f, 0x36, 0xca, 0xde, 0x68, 0x49, 0xfb, 0xf6 } \ + }; + +/** + Forward declarations: +*/ +typedef struct SsdtOverridePciProtocol EDKII_SSDT_PCI_OVERRIDE_PROTOCOL; + +/** The UpdateTable function allows the override protocol to update the + * PCIe SSDT table prior to being created. + + @param [in] This Pointer to the SSDT PCI Override Protocol. + @param [in] PciInfo The PCIe configuration info for this node. + @param [in] Uid UID that was selected for this PCIe node. + @param [in, out] PciNode Pointer to the PCI node of this ACPI table. + + @retval EFI_SUCCESS Success. + @retval EFI_INVALID_PARAMETER A parameter is invalid. + @retval EFI_DEVICE_ERROR Failed to update the table. +**/ +typedef +EFI_STATUS +(EFIAPI *EDKII_SSDT_PCI_OVERRIDE_PROTOCOL_UPDATE_TABLE)( + IN CONST EDKII_SSDT_PCI_OVERRIDE_PROTOCOL *CONST This, + IN CONST CM_ARM_PCI_CONFIG_SPACE_INFO *PciInfo, + IN UINT32 Uid, + IN OUT AML_ROOT_NODE_HANDLE *PciNode + ); + +/** The EDKII_CONFIGURATION_MANAGER_PROTOCOL structure describes the + Configuration Manager Protocol interface. +*/ +typedef struct SsdtOverridePciProtocol { + /** The interface used to update the ACPI table for PCI. + */ + EDKII_SSDT_PCI_OVERRIDE_PROTOCOL_UPDATE_TABLE UpdateTable; +} EDKII_SSDT_PCI_OVERRIDE_PROTOCOL; + +/** The SSDT PCI Override Protocol GUID. +*/ +extern EFI_GUID gEdkiiDynamicTableSsdtPcieOverrideProtocolGuid; + +#endif // SSDT_PCIE_OVERRIDE_PROTOCOL_H_ diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieG= enerator.c index c5b23d91d0..d5982c24ff 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieGenerato= r.c @@ -20,6 +20,7 @@ #include #include #include +#include #include =20 // Module specific include files. @@ -30,6 +31,7 @@ #include #include #include +#include =20 #include "SsdtPcieGenerator.h" =20 @@ -798,9 +800,10 @@ GeneratePciDevice ( { EFI_STATUS Status; =20 - CHAR8 AslName[AML_NAME_SEG_SIZE + 1]; - AML_OBJECT_NODE_HANDLE ScopeNode; - AML_OBJECT_NODE_HANDLE PciNode; + CHAR8 AslName[AML_NAME_SEG_SIZE + 1]; + AML_OBJECT_NODE_HANDLE ScopeNode; + AML_OBJECT_NODE_HANDLE PciNode; + EDKII_SSDT_PCI_OVERRIDE_PROTOCOL *OverrideProtocol; =20 ASSERT (Generator !=3D NULL); ASSERT (CfgMgrProtocol !=3D NULL); @@ -860,6 +863,28 @@ GeneratePciDevice ( =20 // Add the template _OSC method. Status =3D AddOscMethod (PciNode); + if (EFI_ERROR (Status)) { + ASSERT (0); + return Status; + } + + Status =3D gBS->LocateProtocol ( + &gEdkiiDynamicTableSsdtPcieOverrideProtocolGuid, + NULL, + (VOID **)&OverrideProtocol + ); + if (!EFI_ERROR (Status)) { + Status =3D OverrideProtocol->UpdateTable ( + OverrideProtocol, + PciInfo, + Uid, + PciNode + ); + } else { + // Not an error if override protocol is not found + Status =3D EFI_SUCCESS; + } + ASSERT_EFI_ERROR (Status); return Status; } diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieL= ibArm.inf b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieLi= bArm.inf index 431e32a777..8e916f15e9 100644 --- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieLibArm.i= nf +++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiSsdtPcieLibArm/SsdtPcieLibArm.i= nf @@ -30,6 +30,10 @@ AcpiHelperLib AmlLib BaseLib + UefiBootServicesTableLib =20 [Pcd] gEdkiiDynamicTablesPkgTokenSpaceGuid.PcdPciUseSegmentAsUid + +[Protocols] + gEdkiiDynamicTableSsdtPcieOverrideProtocolGuid --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#90933): https://edk2.groups.io/g/devel/message/90933 Mute This Topic: https://groups.io/mt/92089321/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-