From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail05.groups.io (mail05.groups.io [45.79.224.7]) by spool.mail.gandi.net (Postfix) with ESMTPS id 0A33F740039 for ; Mon, 5 May 2025 17:33:28 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=z8h/ldTbagi5XfMrSmrQrgqQlXQgfU9mp0d7LcBQ0NM=; c=relaxed/simple; d=groups.io; h=From:To:Subject:Thread-Topic:Thread-Index:Date:Message-ID:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type; s=20240830; t=1746466408; v=1; x=1746725607; b=tVLw2o53oAkEtrPdoe9B7+5DrjvFmaNMHJNM7IHzPXZyA6CGISSmzKN197hboit69gs84y3l 1InCzJJiss/GI063mQPkLzgaGfvJ9pYni2tED2IaWDGranRPCdz77QfHCJVb0WAxd/l2AlXt8yK tSjgsY3+T9P10ANIEFj0iD6MEoYqE/NO9iFe8b3kDBKzhOzr8w1WkAaCD22oQnuh0Yf/ZPnL4hD dyBxL79vtn5FblwL+e7X5cszX8PAeOqyz/6xoBBtOS+q1ooUAAcY5vCJth51BWyjzqgbW68NSpO JiGn9of9kQVfX9OZNInaQc3jfqd1x1e7x0BKvJau81CoQ== X-Received: by 127.0.0.2 with SMTP id OQwKYY7687511xknfCWgNV5b; Mon, 05 May 2025 10:33:27 -0700 X-Received: from TYPPR03CU001.outbound.protection.outlook.com (TYPPR03CU001.outbound.protection.outlook.com [52.101.126.138]) by mx.groups.io with SMTP id smtpd.web11.56784.1746466406199333029 for ; Mon, 05 May 2025 10:33:26 -0700 X-Received: from TYSPR02MB8447.apcprd02.prod.outlook.com (2603:1096:405:cd::6) by KL1PR02MB6978.apcprd02.prod.outlook.com (2603:1096:820:10a::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8699.20; Mon, 5 May 2025 17:33:18 +0000 X-Received: from TYSPR02MB8447.apcprd02.prod.outlook.com ([fe80::48ed:9f1a:62ee:8424]) by TYSPR02MB8447.apcprd02.prod.outlook.com ([fe80::48ed:9f1a:62ee:8424%4]) with mapi id 15.20.8699.026; Mon, 5 May 2025 17:33:18 +0000 From: "Tim Lewis via groups.io" To: "devel@edk2.groups.io" Subject: [edk2-devel] Bitfield var stores and compatibility Thread-Topic: Bitfield var stores and compatibility Thread-Index: Adu94wVGJ47pOLNqRGqmmwKK1jgQUA== Date: Mon, 5 May 2025 17:33:18 +0000 Message-ID: Accept-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYSPR02MB8447:EE_|KL1PR02MB6978:EE_ x-ms-office365-filtering-correlation-id: 36b1f99f-dd7f-4682-3fc0-08dd8bfaecc0 x-ld-processed: 8c8c18f6-76e9-4eeb-9238-a7b3da7871d8,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: =?us-ascii?Q?wjaPr8Z4RhQ0aNAjkvawDp3irbdBqLp/jhgqHYzKV63uoWk3dN1ygUr7dneb?= =?us-ascii?Q?g5DW3eYAM8altlf8Wzl5xGgIKteKfCiNsGhG3dVmcIZk99uUC//4HZb5S0NF?= =?us-ascii?Q?MwHYrCJ8O2PpOrQlYnY0QAatKionr04yvqAIkPGlczjzB3ncr07WRqOboj5N?= =?us-ascii?Q?2xeGq4n9wsP5fs4Ya30i5lvnrV9ccjZHmYNv5KWx+FRlg/F0z3uEKJfoNq3z?= =?us-ascii?Q?jx/ZIl04kO63q7UPzBkM6KlKi+I9sjndggDzW0vm7YlC7Z/ny+JPznXPBZja?= =?us-ascii?Q?9e7wraP7/JGEFJTqk9BvPHRbCi050xtcXLXEsxq3pTyHzxKlY7zalQIsLfHG?= =?us-ascii?Q?VDSb+pDqvAmkLrVCM1Tlemi2wzofoq0tIWqX4TNuxcquvE5+axT6YbZyRkUA?= =?us-ascii?Q?a0sqwOxMvUU7HbcOLv6EKbCrDWwIwY9UebyCoRQSKVUsrg+qmXEE7OGPvOW/?= =?us-ascii?Q?fmvvqe3W9hsMYjot4ygjTO1Lj+VWJ0E1IxxmVRLev3mAIGJwA32VidX/Q5Ao?= =?us-ascii?Q?BzNvwfH3IYYEXlnNteDjVUeBE/v4wnkw6SqWQ1REaZs/+UQ/Yzp/9YSuiGxc?= =?us-ascii?Q?vqWjRiVZXhgH4J6P4y2b6RM8fQvseWUKl/hMNgtA3tQt3qis/3ii9jM1UKUT?= =?us-ascii?Q?AR9YVfnhHP0k8pEZBxEAVelUMbqCvIx0W166jfjfIvjVxTVpERC8Z473nJDg?= =?us-ascii?Q?xw3NIGoHHPWKxIFKK/D8nNldmFKjZYwPWFsqrhlGZjFcFs95qY8ZCx7stVg2?= =?us-ascii?Q?u7onQs4M9kF4WMQhqYc7OTZbmzP4flfAWvaXzaFwWl3QXGq7KmWbPrY9pIO4?= =?us-ascii?Q?EUDrbhFo4X6r+QxxmyQTmedjgc5BuJuKJeC5KqirdQmF/KiuodyMZ03jw7SJ?= =?us-ascii?Q?AuJtVbH7TaXKDmduX0bLtmejV8ldBM3EgBsvnstJNV5V/MAxLG+8Izd+k7fh?= =?us-ascii?Q?4WKzOEtzN7ZovM7PWHLDdP3k0rIvBXotMbV12c2BUYnxhRdCpdo0Xl+sXpTn?= =?us-ascii?Q?zaLtp9ZwBXcIAzmgNFgS5YTXk1BnONhrDu06aGJhgFs8zn6nV3axgxuhRcMj?= =?us-ascii?Q?PZ8o52Tchglatdw2ZqT4C5QY/ntE91iBLagXrRFscm8q5yKhnFUIWEOSB+9N?= =?us-ascii?Q?kfM0QSBC0FrJ1cr0yxiQolQj9fF6Mfv/1R+R9ssf/EY67tjLDCMcwscKpgtR?= =?us-ascii?Q?tFOb7DwNCX0fQLBqOA8op+kCApjBQKs901P/mfwRcZ7jkeSmpTnAaFx49ksG?= =?us-ascii?Q?pkukpAYVZfBHZ2c4thRYmpSJcAH5DWYeYARq+kvkpPU5Wj+lNo+Dn1zybH4P?= =?us-ascii?Q?ZkhkkusXG+AgYCxpexFeUJdLFonoyWZgcmtI4iQ8qB3Ax1DnY7HsliJQssfK?= =?us-ascii?Q?SNVIMCwz9in+u2qp9JwAlMsdPYw1c66AtOy7WIc8k2TTIQMKKf/xM9A1ami9?= =?us-ascii?Q?yqdS3MeiOSV8MSCwVb3fxOspplShA+B/GFmluqka3KFC5KygcR6WZOQJFuvN?= =?us-ascii?Q?L3MsyV9RFyrBm74=3D?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?ThYiX9irC9jgjefDQM/6RflnH7DYOjzsbTgFpVu6GrF5nVdi155bdsXVhCL6?= =?us-ascii?Q?ZrJ5Ey6eGG0t0piCZKVaTfX6rQMopHrclG89magROp4ebsJ1WhsYs0YgMOMc?= =?us-ascii?Q?/f+2qOxy5EvNAbiH6Iv0GRDyPJdwZCMHr89MxtPu/deHjhXsTaGIVpcl8sWx?= =?us-ascii?Q?gYvP8ZQ56nj4ic9vk2uDTxSZstpWhC1lrpQ+WX0sR3SUARGUca2dXRjLcT94?= =?us-ascii?Q?QdN+XO2V6oaE4dKlOjFAhO574DGwUsW21oFW89yvFxMsgN/U2SDHAaSyyaRp?= =?us-ascii?Q?AwLka0tMt9fmbRozbH+C3NkT4ri/FmwPqQNcjQm7sbzwX2uHl9ZA9fQhCYWE?= =?us-ascii?Q?NZb+LIQ0aaSb6cs9iOhgcpHUPW7lm61nOd4KwFeBak3TqIT3sSt2gPvg0v8X?= =?us-ascii?Q?8Kej4GULIerwvx+c/CppJjd0qBzM7MjzSwKrkXhiyjaI3Q3y0os7eNjicoO9?= =?us-ascii?Q?pi9xQr7lEfrmET3/z7/S6F6G3b4/WLV2K+eBAeP7JOG9KBTf9fcDA8UIeKrM?= =?us-ascii?Q?/H5oAXgSS1mE+T2W6pzL24ft+wBShhLaVggel7gstNL1DHAMPK31Rm2iPTJs?= =?us-ascii?Q?TbdT0nFViynKtA+/XazSXSsajYlgbT+aqval4Eay6Hcxr+CKTMnpK0vTP3Rd?= =?us-ascii?Q?pf6pEnIBZ0TCmN9rbElQwh2F8uieh7bcuxIko9gjhFJ+EARtMR2QIt13U/Ta?= =?us-ascii?Q?Omtq8m2rSIF1TTfAA9bVHVnPTnqQQvSaNzhpchsE6nLDm0axwU+pib+9NaPn?= =?us-ascii?Q?g9FmNZoL1KbV63BNbyMAzsO4+cJ8QuQNXVmtLoR+e2zw+UmeXPDidiPp5WOy?= =?us-ascii?Q?NoUo3UdxK6PsQyR1sMw1zSyh2cnkwLIjcan/FqbWoaa12SatxbhUHVw1AybZ?= =?us-ascii?Q?pqI1jCYieTIl6e0Z/PVnL+xPU2aGbHIv6GpEHL2phcpnqqHwDSxx3uQj8lGU?= =?us-ascii?Q?36z13VMXiCdosXayfp/5ah1xiI4q+dfp0QY0p+C/+XHdONtDqcKnFGoDTj2b?= =?us-ascii?Q?QKD7tV2X6SldEsFjzMteKc6iersWlK0zAzr/BArEZ+fp4uSb6EMCfStz7vSn?= =?us-ascii?Q?INsonCSLkHbs9phno9Gu5W/syzNRZRM1C6iwzZtz9BjkVXs4pBoAqIhErUu+?= =?us-ascii?Q?vpIzPN7maYEO7H5A2r/+11vMzxWOD5f0tfOgaqtjdqHjb3Y8czAf1OLk3hdb?= =?us-ascii?Q?0Z4w95hBvcUt6GjycrOAOCz1udxEPnsNuyfTapM2ol/jCb/Gf4gifEAIUbqs?= =?us-ascii?Q?CqUlHrX4B6Q3wfWCcH35oLNtlaIQa0qUkEa9TI5W+Aw86+8HMg2rugHjTmB6?= =?us-ascii?Q?p62lhalsK9U8k/Qh18God9PqrAq7LSmvPMFRbU2Y0GvCJ9SGpBFC4n1Ts9jK?= =?us-ascii?Q?XPdaWH7i6IenLlRXfW6el11joTlbWk7paCOkk36fbaJRaoYuRf5wxlwOlVOh?= =?us-ascii?Q?K2ToVppw8Xa86GgjxCc2V9mXFFjJQQfAbMsFbzn8Vt9gthT/OBO1OpQfN0SE?= =?us-ascii?Q?Bl2YR26aeXG9W0yJCD0cy/PVgLR2xJOGWCvUZpvLxp7PRvIMwgjM4X9le80G?= =?us-ascii?Q?N/qixKLNySbGa4qRQtfUH1qfcL4HY52aeYOKayI1?= MIME-Version: 1.0 X-OriginatorOrg: insyde.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYSPR02MB8447.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 36b1f99f-dd7f-4682-3fc0-08dd8bfaecc0 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 May 2025 17:33:18.6314 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 8c8c18f6-76e9-4eeb-9238-a7b3da7871d8 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 0Ry4suzggN2MLC+OsAapJHIBzHGwhigxFOKHcAb8zziFSSJQZHAQUtedX7moQHZ035sOiu63OWw+r/RQYuKSnA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR02MB6978 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Mon, 05 May 2025 10:33:26 -0700 Resent-From: tim.lewis@insyde.com Reply-To: devel@edk2.groups.io,tim.lewis@insyde.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: V7OkVJnFFmDY4NMKFUlG0YXxx7686176AA= Content-Language: en-US Content-Type: multipart/related; boundary="_005_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_"; type="multipart/alternative" X-GND-Status: MCE Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240830 header.b=tVLw2o53; dmarc=pass (policy=none) header.from=groups.io; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 45.79.224.7 as permitted sender) smtp.mailfrom=bounce@groups.io --_005_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_ Content-Type: multipart/alternative; boundary="_000_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_" --_000_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Can we discuss the EDK2 extension to allow bitfield varstores that is not a= compatible changes and, in fact, inhibits the UEFI spec from going in cert= ain directions. Back in 2017, the EDK2 version of the browser added the EDKII_IFR_BIT_VARS= TORE_GUID, which, if present, tells the EDK2 form browser to change the mea= ning of almost all fields related to storage, including VarOffset, size and= uses the bottom 6 bits of the Flags field in the question header. However, these changes are not found in the UEFI specifications. As a resul= t, any "compliant" browser cannot correctly deal with questions that requir= e these extensions. It is not problem if the form is built at the same time= as the rest of the firmware, but 3rd party drivers, UEFI applications and= option ROMs cannot assume that this support is present. We have run into this when thinking about creating a proposal for the UEFI = specification and found that adding bits in the Flags field doesn't work fo= r checkbox, one-of and numeric questions because those bits are already co-= opted by this EDK2 extension and this EDK2 extension is being used by some = 3rd party drivers. How did this ever get approved by the maintainers? Thanks, Tim [cid:image002.png@01DBBDA9.1F3EE5A0] Tim Lewis CTO Insyde Software Phone: +1-916-813-6838 -=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 (#121305): https://edk2.groups.io/g/devel/message/121305 Mute This Topic: https://groups.io/mt/112634275/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- --_000_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Can we discuss the EDK2 extension to= allow bitfield varstores that is not a compatible changes and, in fact, in= hibits the UEFI spec from going in certain directions.

 

Back in  2017, the EDK2 version= of the browser added the EDKII_IFR_BIT_VARSTORE_GUID, which, if present, t= ells the EDK2 form browser to change the meaning of almost all fields related to storage, including VarOffset, size and uses t= he bottom 6 bits of the Flags field in the question header.

 

However, these changes are not found= in the UEFI specifications. As a result, any “compliant” brows= er cannot correctly deal with questions that require these extensions. It is not problem if the form is built at the same time as the= rest of the firmware, but 3rd party  drivers, UEFI applica= tions and option ROMs cannot assume that this support is present.

 

We have run into this when thinking = about creating a proposal for the UEFI specification and found that adding = bits in the Flags field doesn’t work for checkbox, one-of and numeric questions because those bits are already co-opted by th= is EDK2 extension and this EDK2 extension is being used by some 3rd party drivers.

 

How did this ever get approved by th= e maintainers?

 

 

Thanks,

 

Tim

 

 

Tim Lewis CTO

Insyde Software 

Phone: +1-916-813-6838

 

 

_._,_._,_

Groups.io Links:

=20 You receive all messages sent to this group. =20 =20

View/Reply Online (#121305) | =20 | Mute= This Topic | New Topic
Your Subscriptio= n | Contact Group Owner | Unsubscribe [rebecca@openfw.io]

_._,_._,_
--_000_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_-- --_005_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_ Content-Type: image/gif; name="image001.gif" Content-Description: image001.gif Content-Disposition: inline; filename="image001.gif"; size=3386; creation-date="Mon, 05 May 2025 17:33:17 GMT"; modification-date="Mon, 05 May 2025 17:33:17 GMT" Content-ID: Content-Transfer-Encoding: base64 R0lGODlhQAZcAfUAAP////7//vz//Pv/+/r/+vn/+fj/+Pb/9vX/9fT/9PP/8/L/8vD/8O//7+7/ 7uz/7Ov/6+r/6un/6ej/6Of/5+T/5OP/4+L/4uH/4eD/4N//393/3dz/3Nv/29n/2dj/2Nf/19b/ 1tL/0s//z83/zcz/zAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C01TT0ZGSUNFOS4wDQAAAAFzUkdC AK7OHOkAIf8LTVNPRkZJQ0U5LjAYAAAADG1zT1BNU09GRklDRTkuMEBpS5QqACH/C01TT0ZGSUNF OS4wGAAAAAxjbVBQSkNtcDA3MTICAAAJAtxSKQAsAAAAAEAGXAEABv9AgHBILBqPyKRyyWw6n9Co dEqtWq/YrHbL7Xq/4LB4TC6bz+i0es1uu9/wuHxOr9vv+Lx+z+/7/4CBgoOEhYaHiImKi4yNjo+Q kZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJ ysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7/AAMK HBiwBMGDCBMqXMiw4RCDDiNKnEixosVqEC9q3Mixo8ePozKCHEmypMmTKOOITMmypcuXMGGujEmz ps2bOAvm3Mmzp8//n+JmAh1KtKjRo7iEIl3KtKnTp5OUQp1KtarVq26kYt3KtavXr0m0gh1LtqzZ oWLPql3Lti3ItG7jyp1LFyDcunjz6t1r7i7fv4ADC2bmd7Dhw4gTyyqsuLHjx5AxMY5MubLly34m Y97MubNnMpo/ix5NurSS0KZTq15tGTXr17Bj/4UbAMGDChtAiBhBgsQIESA2VHiAIIDs48iTb9U6 wMGFECE0UHCQoICAAAEEFEjggIIG6BccDFBOvrx5oEoVVAixQQICKAgkbAhRQcH5+/jzp5y5AMMH Cu9VgQAFH2CwgH4IJqjgRCIdYIEHEYyXxQAReGDBAQtmqOGG/UAE/wEEIExAgBcETAACBBymqOKK 7JRgwAUZZJCAGAlkcIEBLOao447alNCBBGdI0MGBPBZp5JHHNFACA2kw4EEDSEYp5ZS2OMCBa1Uk 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 d420lFRZlVZ5lViZlVq5lVyZU0EAADs= --_005_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_ Content-Type: image/png; name="image002.png" Content-Description: image002.png Content-Disposition: inline; filename="image002.png"; size=5805; creation-date="Mon, 05 May 2025 17:33:18 GMT"; modification-date="Mon, 05 May 2025 17:33:18 GMT" Content-ID: Content-Transfer-Encoding: base64 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 --_005_TYSPR02MB8447A8172CF62FEACDDB46ED838E2TYSPR02MB8447apcp_--