1 /** @file 2 Header file for Platform Initialization Driver. 3 4 Copyright (c) 2013-2015 Intel Corporation. 5 6 This program and the accompanying materials 7 are licensed and made available under the terms and conditions of the BSD License 8 which accompanies this distribution. The full text of the license may be found at 9 http://opensource.org/licenses/bsd-license.php 10 11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 14 **/ 15 16 #ifndef _SETUP_PLATFORM_H 17 #define _SETUP_PLATFORM_H 18 19 // 20 // Data 21 // 22 #define PLATFORM_NUM_SMBUS_RSVD_ADDRESSES 4 23 #define VAR_OFFSET(Field) ((UINT16) ((UINTN) &(((SYSTEM_CONFIGURATION *) 0)->Field))) 24 #define QUESTION_ID(Field) (VAR_OFFSET (Field) + 1) 25 26 #define SMBUS_ADDR_CH_A_1 0xA0 27 #define SMBUS_ADDR_CK505 0xD2 28 #define SMBUS_ADDR_THERMAL_SENSOR1 0x4C 29 #define SMBUS_ADDR_THERMAL_SENSOR2 0x4D 30 31 /// 32 /// HII specific Vendor Device Path Node definition. 33 /// 34 #pragma pack(1) 35 36 typedef struct { 37 VENDOR_DEVICE_PATH VendorDevicePath; 38 UINT16 UniqueId; 39 } HII_VENDOR_DEVICE_PATH_NODE; 40 41 /// 42 /// HII specific Vendor Device Path definition. 43 /// 44 typedef struct { 45 HII_VENDOR_DEVICE_PATH_NODE Node; 46 EFI_DEVICE_PATH_PROTOCOL End; 47 } HII_VENDOR_DEVICE_PATH; 48 49 #pragma pack() 50 51 // 52 // Prototypes 53 // 54 VOID 55 ProducePlatformCpuData ( 56 VOID 57 ); 58 59 VOID 60 PlatformInitQNCRegs ( 61 VOID 62 ); 63 64 EFI_STATUS 65 InitKeyboardLayout ( 66 VOID 67 ); 68 69 // 70 // Global externs 71 // 72 extern UINT8 UefiSetupDxeStrings[]; 73 74 extern EFI_HII_DATABASE_PROTOCOL *mHiiDataBase; 75 extern EFI_HII_CONFIG_ROUTING_PROTOCOL *mHiiConfigRouting; 76 77 #endif 78