From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web10.4535.1626330623788301576 for ; Wed, 14 Jul 2021 23:30:24 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=kfk21rZD; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: rangasai.v.chaganty@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10045"; a="271590965" X-IronPort-AV: E=Sophos;i="5.84,240,1620716400"; d="scan'208";a="271590965" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jul 2021 23:30:20 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,240,1620716400"; d="scan'208";a="430701472" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga002.jf.intel.com with ESMTP; 14 Jul 2021 23:30:20 -0700 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Wed, 14 Jul 2021 23:30:19 -0700 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Wed, 14 Jul 2021 23:30:19 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10 via Frontend Transport; Wed, 14 Jul 2021 23:30:19 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.168) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.10; Wed, 14 Jul 2021 23:30:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bdSlD3gees7aI47hY6Y9AcVVOQw49ZUZ54SUu1+I9bD3AO7vMXVpQ38r6oZRQXT0BB5zz9D2dvK+sMfuQDdKNwwiJEtoOGg2T6y2hTPfrQeoQbkGeEuTeMdJGh+oE0WczzAfXXi8YGZPrGXO7GVpbz942dFdiu16JjDpice3Pa7TRaAo24PiiGi9M4I92OFoC7bw9sNdcAKlRDElO2Mv0awsI3QiMxX0uoAs9hvn1T6q0MzILjc7kb89V7oeI7nxqiBfC7K6w4US8/epiP+61/klvP86k56iX3umEOztEOUTXosgovspREw5g7nUw8va1vDWPPLK1sAHy/Hz0FDP7w== 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=z/Y/pNe3QByOOXQtXbIEnEaRUxMW3gzqj0YdEIUu4GY=; b=XQXs0L1LdSSJw0UpE1APO3yKSpqOKSXUkJ4MxB3o2125pRXJ9fBJSc8JQVcX60yMzGtqK+NcvsV6ZOFbnpx920WPy05VMklZeFEJWz8rdXK5eyWEoAbhtLBhBGGoPORlVfakPUd5KfVmfvFkIH5/BxevvgQsPft1vgmfHFzK+HEMK01Vg7COdpsbi9e+Sq/B+qeEfh+d8GR11e2wkkt6Q9JxZzIEYvp+IXioRJ6TxvR6GsjUPHAXnTziGpQzjvLkUhiSP7sTbVNJR5Ol7OiRosH73cmLEh6t19oRtx/TCVmEa0O4vdP/FHXC/z+PrmbEKGVw4IlXd/ajwYrzYaD7pw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z/Y/pNe3QByOOXQtXbIEnEaRUxMW3gzqj0YdEIUu4GY=; b=kfk21rZDgsfLt8XSsf+gQ/WxoZzq22W2CP0eRBzHxykJLmpl3J4d2PsAcJ/EjmS/ZRIpNBKTq0IgYW7EPdaPognVfWnPn96JiCApxwAhEZNOomvtxxFWERWJT48gi2Tw0IMS3UHGh4F+hInSAKQ4rGaWxcn98dqgI/5aLcr8SH8= Received: from MW3PR11MB4602.namprd11.prod.outlook.com (2603:10b6:303:52::19) by MWHPR11MB1310.namprd11.prod.outlook.com (2603:10b6:300:28::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4308.22; Thu, 15 Jul 2021 06:30:13 +0000 Received: from MW3PR11MB4602.namprd11.prod.outlook.com ([fe80::5d92:adb0:834d:f5f2]) by MW3PR11MB4602.namprd11.prod.outlook.com ([fe80::5d92:adb0:834d:f5f2%9]) with mapi id 15.20.4331.022; Thu, 15 Jul 2021 06:30:13 +0000 From: "Chaganty, Rangasai V" To: "Solanki, Digant H" , "devel@edk2.groups.io" CC: "Ni, Ray" , "S, Ashraf Ali" Subject: Re: [PATCH] IntelSiliconPkg: Add IgdOpRegion30.h to support IGD OpRegion v3.0 Thread-Topic: [PATCH] IntelSiliconPkg: Add IgdOpRegion30.h to support IGD OpRegion v3.0 Thread-Index: AQHXdAT09vq7jN7QdUe2mxp7XAz7s6tDmlIg Date: Thu, 15 Jul 2021 06:30:13 +0000 Message-ID: References: <20210708142345.4511-1-digant.h.solanki@intel.com> In-Reply-To: <20210708142345.4511-1-digant.h.solanki@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.5.1.3 dlp-product: dlpe-windows authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8a18cc66-6bdc-44aa-7f85-08d9475a00ba x-ms-traffictypediagnostic: MWHPR11MB1310: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:590; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: NKjZPfN1YpGXyPLSUJYbtlSeHSUUcLu5/9Ytde8BcMcwwJXObJOOwpsOshZQoHTweMjwHJ5Lzz9qq/g62MSX3l6W6hK2OPkiyH+KD9R0Ctwy4EPNQxkRBEY0jeIbltcfX2td/kokI1kQPyV4TTziSygGlPxA+4pvaW3TonIoBAYM/1Q+MZhCkW4WC/paU27f7GkdMN9t0+Rp7zo0Ez471qxqTeL5XXUZ07zF8r2Ko6/WhOqKdGzPIp9LK3anemXIYLClpV32ZJp3i/mrdcbW6MWsEDJcO7OM+b4Jyo4dmcqJoDhIRQciTysYf31KkdsGI2VHhNHCgYfRY7SYHMEXi/dNA7TZLF/0r0/BRJTMYVSg69ulY5Kkr2/onROQMjGS92fyGeE+nLZj80SEWNSu3V1yNJxqY9EKlCC+sb+PumU4PiU93ZqrF+PQvQdzupK/F5E12J5Xg0JE0AGTc02HR0Ee39P/7YuQHyyxcHdYpZ5J0/j5Il8Yi0ZjUinMwIshOfayKK/BZbrSrTpreRhrgwUzgOYc6H6O+/yU3cslAaOoSbQkRkGbjNZjzUej01P3Qh5mA+pTFs/X1gBQ/dMaU+AJY6pbe+nDpRUB6EZx9Jfsm5p/ZoW9UYUvfbFrtzVANklvFybiJ6aJ1w64NvjVt4jYP8WHr3xC7kM/DFWstU/zu3mAXiHz3Bj6Dg9+vadaKCN0e0cVffAcWz9glk+vV6Gb8rp236JsvSPsxjpdKM2uqWzY3FwbHejE2U5jdiZw2OzmZYOH1qwojk2IUAmQTEkQKbJWKUjwGOJfG/6GDn8= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR11MB4602.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(6029001)(4636009)(396003)(366004)(346002)(376002)(39860400002)(136003)(8676002)(8936002)(52536014)(53546011)(316002)(6506007)(83380400001)(2906002)(107886003)(7696005)(54906003)(55016002)(122000001)(76116006)(26005)(186003)(64756008)(478600001)(66446008)(4326008)(66946007)(5660300002)(33656002)(71200400001)(38100700002)(9686003)(66476007)(66556008)(86362001)(110136005)(38070700004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?YrE4FRi6RKdA59LrTeGJCONrTFpaowqSIOg0uHKU78HGjiVAIowIzaN7E/d9?= =?us-ascii?Q?NGy1mIqVkJYFx5NG88a+l7T0uqLX6mhRR6UfLIhkNeMnYoR/BwtJyvgDh6Fh?= =?us-ascii?Q?P0eA6cpnCWQ05JtAo/uYl6D9ySOQkDHmDTXgM1juq7bWsD6dx2jZ0uR/2jLZ?= =?us-ascii?Q?uvjcthvBeTgHdu9xd8DNp/cnUaVbY5QtWN15vKhmcBuH5msj4EPMmqQ2Bo31?= =?us-ascii?Q?eYdfBPcDf25M7wQxqHqxuDt2OXAgcw4HNoGkAbrsBxQXCLP0wAYYNx59zKmp?= =?us-ascii?Q?ScTPyK4Y2xg8xQwEY8TYlwBDHs2tGGLVz4Uu/7TTn+toYAzELK78xX3zzv5i?= =?us-ascii?Q?L7SsaH3yBsL8FiO2XTp3OKNWzsIc4+0zrkgZHB837wILVQtDh7ZoPsaFCtUg?= =?us-ascii?Q?pmXSVFuRAjsj4oBercrNU0QekU1MbO7xNn9dvaPFsTyegkwdz0UFqCwVDQqM?= =?us-ascii?Q?8lwzP6bOeqRUzhvs++ihJplQgTmAlGgjN0H0ZNu/qw8hu2NmWdKLVy6KUT9p?= =?us-ascii?Q?LfmnRF3qLGhF+ULOoGsgJ+prXLDtYo6DqPOpdfppSgjoAueZ44INShVQGIji?= =?us-ascii?Q?kF0cbJdDVqhZ3/4FfSRr8/9U3/OaMTPR5c8gy5vPSDw029ToIM7YpNd0YKl4?= =?us-ascii?Q?VhyiWfVAinbSf2zke/aaY3ICWinTQ90KCQZjY2z9V8o4/p0AMwC4PU+Y24Su?= =?us-ascii?Q?L96X4eHhEE5fSdDMHYjxGjVBi0ouu2/0xUupBwYauiFEljK+95tdymetcaCF?= =?us-ascii?Q?7/8dw0QHPENiC2KaFouEb8dfoYkZMPC0xcRverr/iNTPGcWratBYxjty+QOZ?= =?us-ascii?Q?RbN/q3QnEH0TZOc9Bsg2pk8I/lgGOJwSec4RReWlha8lAIRGDREWbQE7fl1t?= =?us-ascii?Q?8zm6Wh4bMTlGF5RAfgKS5ysUxTt79oqAq2wHA0GiupzreNJnZdXmL1dnWnrq?= =?us-ascii?Q?COXCUMuLE7JY/VQQyYSXqvl4ncQlJ75iSAbOOK8XB/UKZjBn7RT8GdnWBkJ8?= =?us-ascii?Q?SBMv3s76C9+JU5OjC6durnjFPxXW8d4CnL7KqI99SzTaHKo2lGLLsaw1kP5g?= =?us-ascii?Q?Tf0BuLxOeUGgS9haoaiXCwXHTTxIjpx0CxUCp0za6EkgagBveKHwYISmyWGZ?= =?us-ascii?Q?1Dm6vIWYSKiypIAP7bHh6jQ8UE9COgTrugr21wcZmaup4ZUfBj23g2AbtLW0?= =?us-ascii?Q?coOqOA8g5Vyth/OqYC4QwKVsEi8DVTizGPTFc7QeLUdQwBa5uGrEwzkJVft6?= =?us-ascii?Q?6cp45xBpvjpT6BXIGsNeYM3JVswzYsFjvaL42Li5OpieqOaoRdMcpkS5Fxd/?= =?us-ascii?Q?Yj+0TiDYoU49EeBvrCX/WnPn?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW3PR11MB4602.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8a18cc66-6bdc-44aa-7f85-08d9475a00ba X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jul 2021 06:30:13.3491 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: iSE7/QrUg9SvmUPetCwRewZgB4YL0+qZcSwRzYsyGyrY/caPAF+widWw3DSCurLPONCy20uLKG7x79HIuNowxZsD293u2k1ifZXr+/R/SQc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1310 Return-Path: rangasai.v.chaganty@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Few comments: 1. Please pack the structures correctly using #pragma pack(1)/ #pragma pack= () pairs. 2. What is the purpose of IGD_OPREGION_HEADER_MBOX2_VER_3_0 macro definiti= on and assigning it to a value of BIT5. 3. Is the 3.0 version backward compatible to the one that is currently avai= lable? I am wondering if there are reasons to carry obsolete members in 3.0= version. Regards, Sai -----Original Message----- From: Solanki, Digant H =20 Sent: Thursday, July 08, 2021 7:24 AM To: devel@edk2.groups.io Cc: Solanki, Digant H ; Ni, Ray ; Chaganty, Rangasai V ; S, Ashraf Ali Subject: [PATCH] IntelSiliconPkg: Add IgdOpRegion30.h to support IGD OpRegi= on v3.0 REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D3426 - There are many OpRegion fields obsoleted in MBOX1 - MBOX2 is re-purposed for Backlight related fields for dual LFP. - Backlight related fields moved to MBOX2 from MBOX3 and some fields are ob= soleted in MBOX3. Signed-off-by: Digant H Solanki Cc: Ray Ni Cc: Rangasai V Chaganty Cc: Ashraf Ali S --- Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/IgdOpRegion30.h | 1= 00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++= ++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/IgdOpRe= gion30.h b/Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/IgdOpRegi= on30.h new file mode 100644 index 0000000000..422a60bdbd --- /dev/null +++ b/Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/IgdOpRegion +++ 30.h @@ -0,0 +1,100 @@ +/** @file + IGD OpRegion definition from Intel Integrated Graphics Device=20 +OpRegion + Specification based on version 3.0. + + Copyright (c) 2021, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ +#ifndef _IGD_OPREGION_3_0_H_ +#define _IGD_OPREGION_3_0_H_ + +#include "IgdOpRegion.h" + +#define IGD_OPREGION_HEADER_MBOX2_VER_3_0 BIT5 + +/// +/// OpRegion Mailbox 1 - Public ACPI Methods /// Offset 0x100, Size=20 +0x100 /// typedef struct { + UINT32 DRDY; ///< Offset 0x100 Driver Readiness + UINT32 CSTS; ///< Offset 0x104 Status + UINT32 CEVT; ///< Offset 0x108 Current Event + UINT8 RM11[0x14]; ///< Offset 0x10C Reserved Must be Zero + UINT32 DIDL[8]; ///< Offset 0x120 Supported Display Devices ID Lis= t + UINT32 CPDL[8]; ///< Offset 0x140 obsolete + UINT32 CADL[8]; ///< Offset 0x160 obsolete + UINT32 NADL[8]; ///< Offset 0x180 obsolete + UINT32 ASLP; ///< Offset 0x1A0 ASL Sleep Time Out + UINT32 TIDX; ///< Offset 0x1A4 obsolete + UINT32 CHPD; ///< Offset 0x1A8 obsolete + UINT32 CLID; ///< Offset 0x1AC Current Lid State Indicator + UINT32 CDCK; ///< Offset 0x1B0 Current Docking State Indicator + UINT32 SXSW; ///< Offset 0x1B4 obsolete + UINT32 EVTS; ///< Offset 0x1B8 obsolete + UINT32 CNOT; ///< Offset 0x1BC obsolete + UINT32 NRDY; ///< Offset 0x1C0 Driver Status + UINT8 DID2[0x1C]; ///< Offset 0x1C4 Extended Supported Devices ID Li= st (DOD) + UINT8 CPD2[0x1C]; ///< Offset 0x1E0 obsolete + UINT8 RM12[4]; ///< Offset 0x1FC - 0x1FF Reserved Must be zero +} IGD_OPREGION_MBOX1_VER_3_0; + +/// +/// OpRegion Mailbox 2 - Backlight communication /// Offset 0x200, Size=20 +0x100 /// typedef struct { + UINT32 BCL1; ///< Offset 0x200 Backlight Brightness for LFP1 + UINT32 BCL2; ///< Offset 0x204 Backlight Brightness for LFP2 + UINT32 CBL1; ///< Offset 0x208 Current User Brightness Level fo= r LFP1 + UINT32 CBL2; ///< Offset 0x20C Current User Brightness Level fo= r LFP2 + UINT32 BCM1[0x1E]; ///< Offset 0x210 Backlight Brightness Levels Duty= Cycle Mapping Table for LFP1 + UINT32 BCM2[0x1E]; ///< Offset 0x288 Backlight Brightness Levels Duty= Cycle Mapping Table for LFP2 +} IGD_OPREGION_MBOX2_VER_3_0; + +/// +/// OpRegion Mailbox 3 - BIOS/Driver Notification - ASLE Support ///=20 +Offset 0x300, Size 0x100 /// typedef struct { + UINT32 ARDY; ///< Offset 0x300 obsolete + UINT32 ASLC; ///< Offset 0x304 obsolete + UINT32 TCHE; ///< Offset 0x308 obsolete + UINT32 ALSI; ///< Offset 0x30C obsolete + UINT32 BCLP; ///< Offset 0x310 obsoleted in ver 3.0, moved to M= ailbox 2. + UINT32 PFIT; ///< Offset 0x314 obsolete + UINT32 CBLV; ///< Offset 0x318 obsoleted in ver 3.0, moved to M= ailbox 2. + UINT16 BCLM[0x14]; ///< Offset 0x31C obsoleted in ver 3.0, moved to M= ailbox 2. + UINT32 CPFM; ///< Offset 0x344 obsolete + UINT32 EPFM; ///< Offset 0x348 obsolete + UINT8 PLUT[0x4A]; ///< Offset 0x34C obsolete + UINT32 PFMB; ///< Offset 0x396 obsolete + UINT32 CCDV; ///< Offset 0x39A obsolete + UINT32 PCFT; ///< Offset 0x39E obsolete + UINT32 SROT; ///< Offset 0x3A2 obsolete + UINT32 IUER; ///< Offset 0x3A6 obsolete + UINT64 FDSS; ///< Offset 0x3AA obsolete + UINT32 FDSP; ///< Offset 0x3B2 obsolete + UINT32 STAT; ///< Offset 0x3B6 obsolete + UINT64 RVDA; ///< Offset 0x3BA Physical address of Raw VBT data= . Added from Spec Version 0.90 to support VBT greater than 6KB. + UINT32 RVDS; ///< Offset 0x3C2 Size of Raw VBT data. Added from= Spec Version 0.90 to support VBT greater than 6KB. + UINT8 VRSR; ///< Offset 0x3C6 Video RAM Self Refresh + UINT64 DLHP; ///< Offset 0x3C7 Dual LFP Hinge Alignment Paramet= ers + UINT8 RM32[0x31]; ///< Offset 0x3CF - 0x3FF Reserved Must be zero. +} IGD_OPREGION_MBOX3_VER_3_0; + +/// +/// IGD OpRegion Structure +/// +typedef struct { + IGD_OPREGION_HEADER Header; ///< OpRegion header (Offset 0x0, Si= ze 0x100) + IGD_OPREGION_MBOX1_VER_3_0 MBox1; ///< Mailbox 1: Public ACPI=20 +Methods (Offset 0x100, Size 0x100) + IGD_OPREGION_MBOX2_VER_3_0 MBox2; ///< Mailbox 2: Backlight=20 +communication (Offset 0x200, Size 0x100) + IGD_OPREGION_MBOX3_VER_3_0 MBox3; ///< Mailbox 3: BIOS to Driver Notif= ication (Offset 0x300, Size 0x100) + IGD_OPREGION_MBOX4 MBox4; ///< Mailbox 4: Video BIOS Table (VB= T) (Offset 0x400, Size 0x1800) + IGD_OPREGION_MBOX5 MBox5; ///< Mailbox 5: BIOS to Driver Notif= ication Extension (Offset 0x1C00, Size 0x400) +} IGD_OPREGION_STRUCTURE_VER_3_0; +#pragma pack() + +#endif -- 2.30.2.windows.1