vendorcode/amd/fsp/picasso Fix type 17 smbios misalignment

Add __packed to TYPE17_DMI_INFO structure to remove padding. Remove
reserved fields that are no longer required. Corresponding change will
also be made within fsp to pack the structure.

BUG=b:154046847
TEST=Boot a trembyle with and without the reserved fields and confirm
type 17 table is unchanged.

Cq-Depend: chrome-internal:3194239
Change-Id: I9ba7e2a4fb82c7b0b77ee7c6c075e6211d4f6adf
Signed-off-by: Jason Glenesk <jason.glenesk@amd.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/44086
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Rob Barnes <robbarnes@google.com>
This commit is contained in:
Jason Glenesk 2020-07-31 10:04:56 -07:00 committed by Felix Held
parent 01707406a1
commit 1e8ef3c458
1 changed files with 1 additions and 3 deletions

View File

@ -178,7 +178,6 @@ typedef struct {
OUT DMI_T17_MEMORY_TYPE MemoryType; ///< The type of memory used in this device. OUT DMI_T17_MEMORY_TYPE MemoryType; ///< The type of memory used in this device.
OUT DMI_T17_TYPE_DETAIL TypeDetail; ///< Additional detail on the memory device type OUT DMI_T17_TYPE_DETAIL TypeDetail; ///< Additional detail on the memory device type
OUT UINT16 Speed; ///< Identifies the speed of the device, in megahertz (MHz). OUT UINT16 Speed; ///< Identifies the speed of the device, in megahertz (MHz).
OUT UINT32 _Reserved1_;
OUT UINT64 ManufacturerIdCode; ///< Manufacturer ID code. OUT UINT64 ManufacturerIdCode; ///< Manufacturer ID code.
OUT CHAR8 SerialNumber[9]; ///< Serial Number. OUT CHAR8 SerialNumber[9]; ///< Serial Number.
OUT CHAR8 PartNumber[21]; ///< Part Number. OUT CHAR8 PartNumber[21]; ///< Part Number.
@ -188,8 +187,7 @@ typedef struct {
OUT UINT16 MinimumVoltage; ///< Minimum operating voltage for this device, in millivolts OUT UINT16 MinimumVoltage; ///< Minimum operating voltage for this device, in millivolts
OUT UINT16 MaximumVoltage; ///< Maximum operating voltage for this device, in millivolts OUT UINT16 MaximumVoltage; ///< Maximum operating voltage for this device, in millivolts
OUT UINT16 ConfiguredVoltage; ///< Configured voltage for this device, in millivolts OUT UINT16 ConfiguredVoltage; ///< Configured voltage for this device, in millivolts
OUT UINT32 _Reserved2_; }__packed TYPE17_DMI_INFO;
} TYPE17_DMI_INFO;
/// Collection of pointers to the DMI records /// Collection of pointers to the DMI records
typedef struct { typedef struct {