From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) (using TLSv1 with cipher CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 92B281A1DF7 for ; Mon, 29 Aug 2016 13:37:38 -0700 (PDT) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga104.fm.intel.com with ESMTP; 29 Aug 2016 13:37:38 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.30,252,1470726000"; d="scan'208";a="2416015" Received: from orsmsx110.amr.corp.intel.com ([10.22.240.8]) by fmsmga006.fm.intel.com with ESMTP; 29 Aug 2016 13:37:38 -0700 Received: from orsmsx113.amr.corp.intel.com ([169.254.9.118]) by ORSMSX110.amr.corp.intel.com ([169.254.10.94]) with mapi id 14.03.0248.002; Mon, 29 Aug 2016 13:37:37 -0700 From: "Kinney, Michael D" To: "Mudusuru, Giri P" , "edk2-devel@lists.01.org" , "Kinney, Michael D" CC: "Yao, Jiewen" Thread-Topic: [edk2] [PATCH] IntelSiliconPkg: Add Firmware Interface Table (FIT) definitions Thread-Index: AQHR/+Y/Q4lEOenMo0uVlPdMdPeVbqBgam1Q Date: Mon, 29 Aug 2016 20:37:36 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ctpclassification: CTP_IC x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNmZkNGE0OWMtYjcwZS00MjM5LWJhZDEtZDQzZDg4ZjcyNGJlIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6Ims1cmRKR3VKVEVsOUdqV3AyeGtuVG9SY09LK0ZjQWM1MFJFZWNBck5QKzA9In0= x-originating-ip: [10.22.254.140] MIME-Version: 1.0 Subject: Re: [PATCH] IntelSiliconPkg: Add Firmware Interface Table (FIT) definitions X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Aug 2016 20:37:38 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Giri, Please just use #pragma pack(1) and #pragma pack(). Mike > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Gi= ri P Mudusuru > Sent: Friday, August 26, 2016 3:07 PM > To: edk2-devel@lists.01.org > Cc: Kinney, Michael D ; Yao, Jiewen > Subject: [edk2] [PATCH] IntelSiliconPkg: Add Firmware Interface Table (FI= T) definitions >=20 > Adding Processor Firmware Interface Table (FIT) related defines & structu= res >=20 > Cc: Jiewen Yao > Cc: Michael Kinney > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Giri P Mudusuru > --- > .../IndustryStandard/FirmwareInterfaceTable.h | 75 ++++++++++++++++= ++++++ > 1 file changed, 75 insertions(+) > create mode 100644 IntelSiliconPkg/Include/IndustryStandard/FirmwareInte= rfaceTable.h >=20 > diff --git a/IntelSiliconPkg/Include/IndustryStandard/FirmwareInterfaceTa= ble.h > b/IntelSiliconPkg/Include/IndustryStandard/FirmwareInterfaceTable.h > new file mode 100644 > index 0000000..ea54578 > --- /dev/null > +++ b/IntelSiliconPkg/Include/IndustryStandard/FirmwareInterfaceTable.h > @@ -0,0 +1,75 @@ > +/** @file > + FirmwareInterfaceTable (FIT) related definitions. > + > + @todo: update document/spec reference > + > + Copyright (c) 2016, Intel Corporation. All rights reserved.
> + This program and the accompanying materials > + are licensed and made available under the terms and conditions of the = BSD License > + which accompanies this distribution. The full text of the license may= be found at > + http://opensource.org/licenses/bsd-license.php > + > + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, > + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR I= MPLIED. > + > +**/ > + > +#ifndef __FIRMWARE_INTERFACE_TABLE_H__ > +#define __FIRMWARE_INTERFACE_TABLE_H__ > + > +// > +// FIT Entry type definitions > +// > +#define FIT_TYPE_00_HEADER 0x00 > +#define FIT_TYPE_01_MICROCODE 0x01 > +#define FIT_TYPE_02_STARTUP_ACM 0x02 > +#define FIT_TYPE_07_BIOS_STARTUP_MODULE 0x07 > +#define FIT_TYPE_08_TPM_POLICY 0x08 > +#define FIT_TYPE_09_BIOS_POLICY 0x09 > +#define FIT_TYPE_0A_TXT_POLICY 0x0A > +#define FIT_TYPE_0B_KEY_MANIFEST 0x0B > +#define FIT_TYPE_0C_BOOT_POLICY_MANIFEST 0x0C > +#define FIT_TYPE_10_CSE_SECURE_BOOT 0x10 > +#define FIT_TYPE_2D_TXTSX_POLICY 0x2D > +#define FIT_TYPE_2F_JMP_DEBUG_POLICY 0x2F > +#define FIT_TYPE_7F_SKIP 0x7F > + > +#define FIT_POINTER_ADDRESS 0xFFFFFFC0 ///< Fixed addres= s at 4G - 40h > + > +#define FIT_TYPE_VERSION 0x0100 > + > +#define FIT_TYPE_00_SIGNATURE SIGNATURE_64 ('_', 'F', 'I', 'T', '_', ' = ', ' ', ' ') > + > +#pragma pack(push, 1) > + > +typedef struct { > + /** > + Address is the base address of the firmware component > + must be aligned on 16 byte boundary > + **/ > + UINT64 Address; > + UINT8 Size[3]; ///< Size is the span of the component in multiple o= f 16 bytes > + UINT8 Reserved; ///< Reserved must be set to 0 > + /** > + Component's version number in binary coded decimal (BCD) format. > + For the FIT header entry, the value in this field will indicate the = revision > + number of the FIT data structure. The upper byte of the revision fie= ld > + indicates the major revision and the lower byte indicates the minor = revision. > + **/ > + UINT16 Version; > + UINT8 Type : 7; ///< FIT types 0x00 to 0x7F > + /// > + /// Checksum Valid indicates whether component has valid checksum. > + /// > + UINT8 C_V : 1; > + /** > + Component's checksum. The modulo sum of all the bytes in the compone= nt and > + the value in this field (Chksum) must add up to zero. This field is = only > + valid if the C_V flag is non-zero. > + **/ > + UINT8 Chksum; > +} FIRMWARE_INTERFACE_TABLE_ENTRY; > + > +#pragma pack(pop) > + > +#endif > -- > 2.9.0.windows.1 >=20 > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel