From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (NAM12-DM6-obe.outbound.protection.outlook.com [40.107.243.43]) by mx.groups.io with SMTP id smtpd.web10.21913.1658938837845084264 for ; Wed, 27 Jul 2022 09:20:38 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@ami.com header.s=selector1 header.b=J+e9wWT+; spf=pass (domain: ami.com, ip: 40.107.243.43, mailfrom: sainadhn@ami.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Glr/e9QRbHrblkMQ6fDpMbh+GblZjKiJYDN5CFc8fMP+epN35OgSFMp8pWkdqb2G8M5SGnG3JZQv6Dsq6Lv1lFSkU+dHnOVmIov/h08wjwDxheE2wdRipDTgLH0aWDHUYutN0SphhGXR2Q4BI5Nt+qiQJDEc8JHGeiTYsjShuLYIpzKl22F/uselRiJ7Pt3iHOEwjB97DL5QAkSpBNP3fL09hJvLW80NWyj0t/RyFEbYOwvbwzmVOKB37si5TA9a0Tb2CH8CrCsLgS8vfD4Q/G178QNYr5hVuagWMAp8zzdz1manYJGJIeEQyOSEVFXOLfyan1PGBTZ7cyL3bA6GlQ== 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=RUu9hIA1b6hkAKuXbmjWxQJLmeTg6qJucRQM1X3WKUY=; b=R95WVreo6r6XspeOX2yUcyGZeoboAsKvk5rqfjedG31K38U81tjd54Cex0G/Kry81NVdFEVmZQRXpRkxAn4zQVb01Lny9M3wvaDXCG5CH4q8xdj253yLOBq7MFD4wlAxeKrEfuwsb85a16UeD4Q1RHy/qb0iYz4psGMJ3vveqmq4VkSNytdZRgGW1LFppNea7IJV2m1BG2xsL+ACtIG3aTBv27CmjfJmup2sxS9PSVp0OWE0JycWDhRYOCuq1sxj60UuRN83tODiOF29JGHdJauPyMdh5/CRgkymLpjjx6fttWuP0myKomc/1X33JoUixihO+DXyjlUWVzYf5GiccA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ami.com; dmarc=pass action=none header.from=ami.com; dkim=pass header.d=ami.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ami.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RUu9hIA1b6hkAKuXbmjWxQJLmeTg6qJucRQM1X3WKUY=; b=J+e9wWT+M1n6agxT8EiXV2m0Tbj1Cwg37bZ1SbQ1xaeU4B2qOkkBNs/SrFaMj/VwtGqRUDh98mV2B3YQNoPsnrbxCi1nR9iweNmMBzH6mTvhemFquBohmdUEOfBqkvNYer6G9lvy2tNn+D0/5KYrKB7xcfQLSz6ff208vA9GRd8= Received: from CO1PR10MB4804.namprd10.prod.outlook.com (2603:10b6:303:90::5) by BN6PR10MB1684.namprd10.prod.outlook.com (2603:10b6:405:8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5482.6; Wed, 27 Jul 2022 16:20:35 +0000 Received: from CO1PR10MB4804.namprd10.prod.outlook.com ([fe80::6905:1a28:89c:f83f]) by CO1PR10MB4804.namprd10.prod.outlook.com ([fe80::6905:1a28:89c:f83f%3]) with mapi id 15.20.5482.006; Wed, 27 Jul 2022 16:20:34 +0000 From: sainadhn@ami.com To: "devel@edk2.groups.io" CC: Sainadh Nagolu , Sundaresan S , Vasudevan Sambandan , "gaoliming@byosoft.com.cn" Subject: [PATCH] MdePkg:Improved Smbios Type9 table and Smbios 3.5.0 spec changes Thread-Topic: [PATCH] MdePkg:Improved Smbios Type9 table and Smbios 3.5.0 spec changes Thread-Index: AQHYodTMj9ewRmbJcUK6JDq1mJNMMw== Date: Wed, 27 Jul 2022 16:20:34 +0000 Message-ID: <20220727162018.1095-1-sainadhn@ami.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ami.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: e16d8dc0-63ec-428c-21ca-08da6febef3e x-ms-traffictypediagnostic: BN6PR10MB1684:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: cz3BUutSgzBeof5pnYMYWaYX8Qsb+lTrJZ/GZFMZ+XAVcMaAxfY9YhPkBcZqTQ6ChG5dMK4iJ2AbB0nybf88AGqvRNO8Wv1h6O7GJtaKLHp2yP4BnqGQ/MCPFi83edbeLVGYyBmkNMK1xoTq3dgGhE5woXiGqdZ3dk4bptKyFViAnZH72E+gdlXPVd5J7+7pTG4nUUhzNyWHEkYfUtVlDh8EmH/lCRIC6WXErc45iQLpc47vJlz+48JknzEhoLGbPpD/u6GKHBHtSUrRmpOGQu4Fdnu3YC7CU4sc6qzXS9AksNIJBW9TNn+zT0q37GhmeofpqIPjlOmktaFMFB6NuzWjyQKbLtLY7fbPG0YNbxgbvoP2Ynq+wzoI91HXgXclNvwWdAioumoQAjv0Ja1NTMmqVx69eN9kJ2HMDNbeCe2oQSuJjRQnNiWXvMTATHiGf0Bm0OxVVFctkcpvxtjShm5VKsxJA0fZ13MdMn/pSc3MFRVLBHTcFtq7PGw7Ph2eG3S2Lah9oxrTvTicMqKBWtD0a8vOV+QybOZG4ejaOB3vmkSbE4pEQxODuVtod6VVVFstgpbzLOv4dnZ8g/l5Nz1u83+HmeudpPoWCK1BCiiWekkK8dbEgGUw8FxM05VXzDtWRfGpx/Wz0U5qD3tSADPUSkT/z/0KZGIQ7o7Ml163QH2mj0Z61Rw28EBNutxEpiZ+Uo8IogqCZnHkJPInIkgC89IvgwfUufiabwLg93uaGeHvwFV/iWRNCS+rVUADiTkVDWc88UTVPBRqvgn+CZMl6+slRBS5VGIsPxpSBZ8= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4804.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(136003)(366004)(376002)(39850400004)(346002)(396003)(6486002)(71200400001)(186003)(26005)(1076003)(41300700001)(478600001)(2616005)(6512007)(55236004)(6506007)(38100700002)(83380400001)(5660300002)(40140700001)(8936002)(38070700005)(8676002)(64756008)(122000001)(4326008)(66476007)(66446008)(2906002)(36756003)(66556008)(54906003)(6916009)(316002)(66946007)(86362001)(91956017)(76116006);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?QZPtXLN/Y4GE2VJWIfRU7anoJXcUt17wFViseYEfY9UwHlE7Ok5GEaF+IZ?= =?iso-8859-1?Q?4z2t2+lGmp8AoAlJpmqL6pYl5il2eBwVL9mLfo7I5Hye8HFUNCKCGH3i+s?= =?iso-8859-1?Q?Dw6lZEBu4s5f8sVr4qb6i2E/dH4l/QqeRNMy+YflwAdkWoLawWiZa1NTQe?= =?iso-8859-1?Q?eXLXy/TEhGY/7TLtFc3aCsBNNeBcUuvaJjCln0i/nwzwVxWhbMv1f4Yk3O?= =?iso-8859-1?Q?YDCTfgvHv3XL0G9/F9e058on5A6d6VADIKOzAebJHk+E+k6VWBz4eIwXxH?= =?iso-8859-1?Q?HMAv1GqelbLKNplcP500P2BaEJL5ejvYQZ1g3ZFn1PqA1p7WYHp7vsYvjn?= =?iso-8859-1?Q?TBx26sy4saHhqAE/9Zvw9tXwAhMSzgZd3xUohpslbcvbtmyJ7H9EbnS2hf?= =?iso-8859-1?Q?MZj/7kwuEd6yrD0uDpsefln2ehGX5hdaBgdmYiXovKEGfB9Nv+sy1tomZU?= =?iso-8859-1?Q?rMziu85AZOYVtjkaPhU/YffYYRi6o/KseWuV0Wdz1yop2iNHlGiV57Y32T?= =?iso-8859-1?Q?6kKHb1Faf2Hv0/VY3iR2kSztGOss1jA8ijjZHkuPFfZcUVqWA+Ja6KwBZ1?= =?iso-8859-1?Q?U+pDI9HF/GiVE1xpBSwZaqrsJLZwoTMrCpjBwd6AtCZ2Drb+fgOqOmVHjS?= =?iso-8859-1?Q?J8OiBEC9tdImC5ThD0aD+9d3/GrOyxFYLmNy89XYQH8Vgk/1wB0Ds9jOSI?= =?iso-8859-1?Q?QKKp7nRq4gS0joV4pkBNNcI8IUfVAtF8mmyFno8M84EqYDBY25GFlo/It1?= =?iso-8859-1?Q?KIim9uNnpHg9xm4u+YEkmWY0sL5MS9Luir+1/3I0rQjzfquwXqoXUD4fZN?= =?iso-8859-1?Q?IRCMBcn5S6XANr7x7WIBHQLghJDokBA9B5Ze4x993kQUaruSsCFkqZ+SF0?= =?iso-8859-1?Q?BJiAeQ5+nf9jFAc7AS9OF3ILt3ccBOJeWa+X1oi6v4AaU2JeQqa6wquDoo?= =?iso-8859-1?Q?0ehQ2GL2OQu1E0HTyql7RBkuJCTBq52FDHp9/kjp0JrrywyDjR8MCfqM2h?= =?iso-8859-1?Q?kNwEutPFlng40SRGGb2aY6dosije4F+xuBP60+z7ZWQN21gpXpAkaVqHM0?= =?iso-8859-1?Q?sJEdzj6+kvDKchql59KAA+AyxXKCRzHREF68k346Ig/iUGfX1097hGCs7r?= =?iso-8859-1?Q?si70GpgQ0H/YRqjJ2G3X1BAOyE7k3FcrrCxwGqpFC+I0Thpv3hfZrj0K9s?= =?iso-8859-1?Q?pEkjm8AdI9VIJjVu2BEKvdrCp4TMt6n1GN8lMlqLeJ8L2je+cvQA6JoV/q?= =?iso-8859-1?Q?twDV3evRJqO64vx5M5QYM8W7zo4eHNvG0hPx9aabQY7VjKJ4TbFVZJbB8B?= =?iso-8859-1?Q?uETf4jInMBa8vUHCskmD7KywpVC/fN0weOTA1QAXPIzbMN5L1qC/3gJ1JL?= =?iso-8859-1?Q?7Bkrjn2WQ1ItP0YXMN0Ka4GhsYtH/ybs9px5GuQtGccKRlRl6uMFJ2sLPK?= =?iso-8859-1?Q?SyTwvEO+O1OSXcC0FKn5ggXFGAZIt8Gr/pH/Hq0PrKEjpxw0JzYs3yazvJ?= =?iso-8859-1?Q?T5AAXjtYG3IQlN7USJvZDF1R6JFnvHZZwluC0gArWo/tFYsauui6byFPwU?= =?iso-8859-1?Q?k4rnas1czSc569P0/1W76ch+U5UbEVr48FXWkfyma7fWmUGwtooTy6Ft5a?= =?iso-8859-1?Q?KRWxkZISQ5TUDIwQpWqMZfg50Gs0zV7ObM?= MIME-Version: 1.0 X-OriginatorOrg: ami.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4804.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e16d8dc0-63ec-428c-21ca-08da6febef3e X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jul 2022 16:20:34.7702 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 27e97857-e15f-486c-b58e-86c2b3040f93 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: j51DNPuwpKpyKKt0oW/c29CFXE9Q3MBD/lVfuC4Zp3n6tnqN12iRmE46dyNDqyS+ge/v2gV5bwMDOxkXObPFsw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR10MB1684 Content-Language: en-US Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable In Type9 structure since PeerGroups has a variable number of entries, must not define new fields in the structure.So added an extended structure and defined new fields added after PeerGroups. Also don= e some improvements to Smbios 3.5.0 spec changes. Signed-off-by: sainadh nagolu --- MdePkg/Include/IndustryStandard/SmBios.h | 62 +++++++++++--------- 1 file changed, 35 insertions(+), 27 deletions(-) diff --git a/MdePkg/Include/IndustryStandard/SmBios.h b/MdePkg/Include/Indu= stryStandard/SmBios.h index c7a4971f14..f62ad7fa4d 100644 --- a/MdePkg/Include/IndustryStandard/SmBios.h +++ b/MdePkg/Include/IndustryStandard/SmBios.h @@ -1503,6 +1503,17 @@ typedef struct { UINT8 DataBusWidth; UINT8 PeerGroupingCount; MISC_SLOT_PEER_GROUP PeerGroups[1]; + // + // Since PeerGroups has a variable number of entries, must not define ne= w + // fields in the structure. Remaining fields can be referenced using + // SMBIOS_TABLE_TYPE9_EXTENDED structure + // +} SMBIOS_TABLE_TYPE9; + +/// +/// Extended structure for System Slots (Type 9) +/// +typedef struct { // // Add for smbios 3.4 // @@ -1513,7 +1524,7 @@ typedef struct { // Add for smbios 3.5 // UINT8 SlotHeight; ///< The enumerati= on value from MISC_SLOT_HEIGHT. -} SMBIOS_TABLE_TYPE9; +} SMBIOS_TABLE_TYPE9_EXTENDED; /// /// On Board Devices Information - Device Types. @@ -2746,11 +2757,11 @@ typedef enum { /// /// Firmware Inventory Firmware Characteristics (Type 45). /// -typedef enum { - CharacteristicsUpdatable =3D 0x00, - CharacteristicsWriteProtected =3D 0x01, - CharacteristicsReserved =3D 0x02 /// 0x02 - 0x0F are reserved -} FIRMWARE_INVENTORY_CHARACTERISTICS; +typedef struct { + UINT16 Updatable :1; + UINT16 WriteProtected :1; + UINT16 Reserved :14; +} FIRMWARE_CHARACTERISTICS; /// /// Firmware Inventory State Information (Type 45). @@ -2763,7 +2774,7 @@ typedef enum { FirmwareInventoryStateAbsent =3D 0x05, FirmwareInventoryStateStandbyOffline =3D 0x06, FirmwareInventoryStateStandbySpare =3D 0x07, - FirmwareInventoryStateUnavailableOffline =3D 0x08, + FirmwareInventoryStateUnavailableOffline =3D 0x08 } FIRMWARE_INVENTORY_STATE; /// @@ -2780,21 +2791,19 @@ typedef enum { /// One Type 45 structure is provided for each firmware component. /// typedef struct { - SMBIOS_STRUCTURE Hdr; - SMBIOS_HANDLE RefHandle; - - UINT8 FirmwareComponentName; - UINT8 FirmwareVersion; - UINT8 FirmwareVersionFormat; ///< The enumeration value= from FIRMWARE_INVENTORY_VERSION_FORMAT_TYPE - UINT8 FirmwareId; - UINT8 FirmwareIdFormat; - UINT8 ReleaseDate; - UINT8 Manufacturer; - UINT8 LowestSupportedVersion; - UINT64 ImageSize; - UINT32 Characteristics; - UINT8 State; - UINT8 AssociatedComponentCount; + SMBIOS_STRUCTURE Hdr; + SMBIOS_TABLE_STRING FirmwareComponentName; + SMBIOS_TABLE_STRING FirmwareVersion; + UINT8 FirmwareVersionFormat; ///< The enumeration= value from FIRMWARE_INVENTORY_VERSION_FORMAT_TYPE + SMBIOS_TABLE_STRING FirmwareId; + UINT8 FirmwareIdFormat; ///< The enumeration= value from FIRMWARE_INVENTORY_FIRMWARE_ID_FORMAT_TYPE. + SMBIOS_TABLE_STRING ReleaseDate; + SMBIOS_TABLE_STRING Manufacturer; + SMBIOS_TABLE_STRING LowestSupportedVersion; + UINT64 ImageSize; + FIRMWARE_CHARACTERISTICS Characteristics; + UINT8 State; ///< The enumeration= value from FIRMWARE_INVENTORY_STATE. + UINT8 AssociatedComponentCount; /// /// zero or n-number of handles depends on AssociatedComponentCount /// handles are of type SMBIOS_HANDLE @@ -2820,11 +2829,10 @@ typedef enum { /// parent structure. /// typedef struct { - SMBIOS_STRUCTURE Hdr; - SMBIOS_HANDLE RefHandle; - UINT16 StringPropertyId; - UINT8 StringPropertyValue; - SMBIOS_HANDLE ParentHandle; + SMBIOS_STRUCTURE Hdr; + UINT16 StringPropertyId; ///< The enumeration v= alue from STRING_PROPERTY_ID. + SMBIOS_TABLE_STRING StringPropertyValue; + SMBIOS_HANDLE ParentHandle; } SMBIOS_TABLE_TYPE46; /// -- 2.36.0.windows.1 -The information contained in this message may be confidential and propriet= ary to American Megatrends (AMI). This communication is intended to be read= only by the individual or entity to whom it is addressed or by their desig= nee. If the reader of this message is not the intended recipient, you are o= n notice that any distribution of this message, in any form, is strictly pr= ohibited. Please promptly notify the sender by reply e-mail or by telephone= at 770-246-8600, and then delete or destroy all copies of the transmission= .