1 /*++ 2 3 Copyright (c) 2004, Intel Corporation. All rights reserved.<BR> 4 This program and the accompanying materials 5 are licensed and made available under the terms and conditions of the BSD License 6 which accompanies this distribution. The full text of the license may be found at 7 http://opensource.org/licenses/bsd-license.php 8 9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 11 12 Module Name: 13 14 DataHubSubClass.h 15 16 Abstract: 17 18 Definitions for data hub data records that contains a sub class header 19 20 Revision History 21 22 --*/ 23 24 #ifndef _DATA_HUB_SUBCLASS_H_ 25 #define _DATA_HUB_SUBCLASS_H_ 26 27 // 28 // Sub Class Header type1 29 // 30 31 #define EFI_SUBCLASS_INSTANCE_RESERVED 0 32 #define EFI_SUBCLASS_INSTANCE_NON_APPLICABLE 0xFFFF //16 bit 33 34 typedef struct { 35 UINT32 Version; 36 UINT32 HeaderSize; 37 UINT16 Instance; 38 UINT16 SubInstance; 39 UINT32 RecordType; 40 } EFI_SUBCLASS_TYPE1_HEADER; 41 42 // 43 // EXP data 44 // 45 46 typedef struct { 47 INT16 Value; 48 INT16 Exponent; 49 } EFI_EXP_BASE10_DATA; 50 51 typedef struct { 52 UINT16 Value; 53 UINT16 Exponent; 54 } EFI_EXP_BASE2_DATA; 55 56 // 57 // Inter link data that references another data record 58 // 59 60 typedef struct { 61 EFI_GUID ProducerName; 62 UINT16 Instance; 63 UINT16 SubInstance; 64 } EFI_INTER_LINK_DATA; 65 66 67 // 68 // String Token Definition 69 // 70 #define EFI_STRING_TOKEN UINT16 71 72 73 #endif 74