mirror of https://github.com/acidanthera/audk.git
220 lines
12 KiB
C
220 lines
12 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
|
||
|
|
||
|
This program and the accompanying materials are licensed and made available under
|
||
|
the terms and conditions of the BSD License that 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 IMPLIED.
|
||
|
|
||
|
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
BoardFeatures.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
EFI Platform Board Features
|
||
|
|
||
|
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef BoardFeatures_h_included
|
||
|
#define BoardFeatures_h_included
|
||
|
|
||
|
#include <Base.h>
|
||
|
|
||
|
#pragma pack(1)
|
||
|
|
||
|
//
|
||
|
// Board Features
|
||
|
//
|
||
|
#if defined LEGACY_BOARD_FEATURES && LEGACY_BOARD_FEATURES
|
||
|
#define B_BOARD_FEATURES_CHIPSET_LAN BIT0
|
||
|
#define B_BOARD_FEATURES_LAN_MARVELL BIT1
|
||
|
#define B_BOARD_FEATURES_AA_NOT_FOUND BIT2
|
||
|
#define B_BOARD_FEATURES_SIO_NO_COM1 BIT3
|
||
|
#define B_BOARD_FEATURES_SIO_COM2 BIT4
|
||
|
#define B_BOARD_FEATURES_SIO_NO_PARALLEL BIT5
|
||
|
#define B_BOARD_FEATURES_CHIPSET_VIDEO BIT6
|
||
|
#define B_BOARD_FEATURES_CHIPSET_VIDEO_OPTION0 BIT7
|
||
|
#define B_BOARD_FEATURES_VIDEO_SLOT BIT8
|
||
|
#define B_BOARD_FEATURES_MINI_CARD BIT9
|
||
|
#define B_BOARD_FEATURES_DISCRETE_1394 BIT10
|
||
|
#define B_BOARD_FEATURES_LEGACY_FREE BIT11
|
||
|
#define B_BOARD_FEATURES_USB_HUB BIT12
|
||
|
#define B_BOARD_FEATURES_TPM BIT13
|
||
|
#define B_BOARD_FEATURES_VIIV BIT14
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MASK (BIT15|BIT16|BIT17|BIT18|BIT19)
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_PBTX BIT15
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_ATX BIT16
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_BTX BIT17
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MICRO_ATX BIT18
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MICRO_BTX BIT19
|
||
|
#define B_BOARD_FEATURES_MEMORY_TYPE_DDR1 BIT20
|
||
|
#define B_BOARD_FEATURES_MEMORY_TYPE_DDR2 BIT21
|
||
|
#define B_BOARD_FEATURES_MEMORY_SLOT_MASK BIT23 | BIT22
|
||
|
#define V_BOARD_FEATURES_1_MEMORY_SLOT 0 // BIT22=0, BIT23=0
|
||
|
#define V_BOARD_FEATURES_2_MEMORY_SLOT BIT22 // BIT22=1, BIT23=0
|
||
|
#define V_BOARD_FEATURES_3_MEMORY_SLOT BIT23 // BIT22=0, BIT23=1
|
||
|
#define V_BOARD_FEATURES_4_MEMORY_SLOT BIT23 | BIT22 // BIT22=1, BIT23=1
|
||
|
#define B_BOARD_FEATURES_ALT_MEM_CLK_RT BIT24
|
||
|
#define B_BOARD_FEATURES_SLEEP_MASK BIT25
|
||
|
#define V_BOARD_FEATURES_SLEEP_S1 0 // BIT25=0
|
||
|
#define V_BOARD_FEATURES_SLEEP_S3 BIT25 // BIT25=1
|
||
|
#define B_BOARD_FEATURES_3JACK_AUDIO_SOLUTION BIT26 // 0/1= 5/3 Rear Jacks
|
||
|
#define B_BOARD_FEATURES_DISCRETE_SATA BIT27
|
||
|
#define B_BOARD_FEATURES_2_SATA BIT28 // 2SATA instead of 4(pre Ich8) or 4 SATA instead of 6(Ich8)
|
||
|
#define B_BOARD_FEATURES_RVP BIT29 // Board is an RVP board
|
||
|
#define B_BOARD_FEATURES_PORT80_LPC BIT30 // Port80 PCI(0) or LPC(1)
|
||
|
#define B_BOARD_FEATURES_LIMITED_CPU_SUPPORT BIT31 // Limited CPU support
|
||
|
#define B_BOARD_FEATURES_PMP_SUPPORT BIT32 // Support for over-voltaging memory
|
||
|
#define B_BOARD_FEATURES_HW_WATCHDOG_TIMER BIT33 // Support for the HW-based 555 Watchdog Timer feature
|
||
|
#define B_BOARD_FEATURES_NO_QRT BIT34 // disable QRT
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE1 BIT35 // Verb table 1
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE2 BIT36 // Verb table 2
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE3 BIT37 // Verb table 3
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE4 BIT38 // Verb table 4
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE5 BIT39 // Reserved for Verb table 5
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE_MASK BIT35 | BIT36 | BIT37 | BIT38 | BIT39
|
||
|
#define B_BOARD_FEATURES_KENTSFIELD_BLOCK BIT40 // Kentsfield not supported
|
||
|
#define B_BOARD_FEATURES_KENTSFIELD_WARNING BIT41 // Kentsfield warning
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT0 BIT42 // E-SATA on Port0
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT1 BIT43 // E-SATA on Port1
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT2 BIT44 // E-SATA on Port2
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT3 BIT45 // E-SATA on Port3
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT4 BIT46 // E-SATA on Port4
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT5 BIT47 // E-SATA on Port5
|
||
|
#define B_BOARD_FEATURES_ECIR BIT48 // Enhanced Consumer IR
|
||
|
#define B_BOARD_FEATURES_PS2WAKEFROMS5 BIT49 // Wake from S5 via PS2 keyboard
|
||
|
#define B_BOARD_FEATURES_HDAUDIOLINK BIT50 // HD audio link support
|
||
|
#define B_BOARD_FEATURES_1_PATA BIT51
|
||
|
#define B_BOARD_FEATURES_MOBILE BIT52
|
||
|
#define B_BOARD_FEATURES_NO_FLOPPY BIT53
|
||
|
#define B_BOARD_FEATURES_DISABLE_UNUSED_FSB BIT54
|
||
|
|
||
|
//
|
||
|
// Bit 55-58 reserved by PSID support. CPU power requirement below are preliminary.
|
||
|
// They might be changed.
|
||
|
// This is not same as 8.6.1 products so be careful.
|
||
|
//
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_BITNUM 55
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_MASK (BIT55 | BIT56 | BIT57 | BIT58)
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_35W 0 // Theoretically doesn't exist.
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_40W BIT55 // 0001
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_45W BIT56 // 0010
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_50W (BIT55 | BIT56) // 0011
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_65W BIT57 // 0100 Wolfdale-H/-M
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_70W (BIT55 | BIT57) // 0101
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_75W (BIT56 | BIT57) // 0110
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_80W (BIT55 | BIT56 | BIT57) // 0111
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_95W BIT58 // 1000 Yorkfield
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_100W (BIT55 | BIT58) // 1001
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_105W (BIT56 | BIT58) // 1010
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_110W (BIT55 | BIT56 | BIT58) // 1011
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_130W (BIT57 | BIT58) // 1100 XE Yorkfield
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_135W (BIT55 | BIT57 | BIT58) // 1101
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_Over135W (BIT56 | BIT57 | BIT58) // 1110 Reserved
|
||
|
#define B_BOARD_FEATURES_CPU_POWER_140W (BIT55 | BIT56 | BIT57 | BIT58) // 1111 Reserved
|
||
|
#define B_VV_BOARD_FEATURES BIT59
|
||
|
#define B_BOARD_FEATURES_IDCC2_SUPPORT BIT60 // Include IDCC2 support
|
||
|
#define B_BOARD_FEATURES_NO_SATA_PORT2_3 BIT61 // No SATA Port2&3 Connector, used with B_BOARD_FEATURES_2_SATA flag
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MINI_ITX BIT62
|
||
|
#define B_BOARD_FEATURES_NPI_QPI_VOLTAGE BIT63
|
||
|
|
||
|
#else
|
||
|
|
||
|
#define B_BOARD_FEATURES_CHIPSET_LAN BIT0
|
||
|
#define B_BOARD_FEATURES_CHIPSET_VIDEO BIT1
|
||
|
#define B_BOARD_FEATURES_VIDEO_SLOT BIT2
|
||
|
#define B_BOARD_FEATURES_AA_NOT_FOUND BIT3
|
||
|
#define B_BOARD_FEATURES_SIO_NO_COM1 BIT4
|
||
|
#define B_BOARD_FEATURES_SIO_COM2 BIT5
|
||
|
#define B_BOARD_FEATURES_SIO_NO_PARALLEL BIT6
|
||
|
#define B_BOARD_FEATURES_NO_FLOPPY BIT7
|
||
|
#define B_BOARD_FEATURES_PS2WAKEFROMS5 BIT8 // Wake from S5 via PS2 keyboard
|
||
|
#define B_BOARD_FEATURES_ECIR BIT9 // Enhanced Consumer IR
|
||
|
#define B_BOARD_FEATURES_LEGACY_FREE BIT10
|
||
|
#define B_BOARD_FEATURES_MINI_CARD BIT11
|
||
|
#define B_BOARD_FEATURES_DISCRETE_1394 BIT12
|
||
|
#define B_BOARD_FEATURES_USB_HUB BIT13
|
||
|
#define B_BOARD_FEATURES_TPM BIT14
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MASK (BIT15|BIT16|BIT17|BIT18|BIT19|BIT20)
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_PBTX BIT15
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_ATX BIT16
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_BTX BIT17
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MICRO_ATX BIT18
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MICRO_BTX BIT19
|
||
|
#define B_BOARD_FEATURES_FORM_FACTOR_MINI_ITX BIT20
|
||
|
#define B_BOARD_FEATURES_MEMORY_TYPE_DDR2 BIT21
|
||
|
#define B_BOARD_FEATURES_MEMORY_TYPE_DDR3 BIT22
|
||
|
#define B_BOARD_FEATURES_MEMORY_SLOT_MASK (BIT24 | BIT23)
|
||
|
#define V_BOARD_FEATURES_1_MEMORY_SLOT 0 // BIT23=0, BIT24=0
|
||
|
#define V_BOARD_FEATURES_2_MEMORY_SLOT BIT23 // BIT23=1, BIT24=0
|
||
|
#define V_BOARD_FEATURES_3_MEMORY_SLOT BIT24 // BIT23=0, BIT24=1
|
||
|
#define V_BOARD_FEATURES_4_MEMORY_SLOT (BIT24 | BIT23) // BIT23=1, BIT24=1
|
||
|
#define B_BOARD_FEATURES_2_C0_MEMORY_SLOT BIT25 // 2 Channel 0 memory slot
|
||
|
#define B_BOARD_FEATURES_SLEEP_MASK BIT26
|
||
|
#define V_BOARD_FEATURES_SLEEP_S1 0 // BIT26=0
|
||
|
#define V_BOARD_FEATURES_SLEEP_S3 BIT26 // BIT26=1
|
||
|
#define B_BOARD_FEATURES_3JACK_AUDIO_SOLUTION BIT27 // 0/1= 5/3 Rear Jacks
|
||
|
#define B_BOARD_FEATURES_HDAUDIOLINK BIT28 // HD audio link support
|
||
|
#define B_BOARD_FEATURES_DISCRETE_SATA BIT29
|
||
|
#define B_BOARD_FEATURES_2_SATA BIT30 // 2SATA instead of 4(pre Ich8) or 4 SATA instead of 6(Ich8)
|
||
|
#define B_BOARD_FEATURES_NO_SATA_PORT2_3 BIT31 // No SATA Port2&3 Connector, used with B_BOARD_FEATURES_2_SATA flag
|
||
|
#define B_BOARD_FEATURES_RVP BIT32 // Board is an RVP board
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT0 BIT33 // E-SATA on Port0
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT1 BIT34 // E-SATA on Port1
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT2 BIT35 // E-SATA on Port2
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT3 BIT36 // E-SATA on Port3
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT4 BIT37 // E-SATA on Port4
|
||
|
#define B_BOARD_FEATURES_ESATA_PORT5 BIT38 // E-SATA on Port5
|
||
|
#define B_BOARD_FEATURES_IDCC2_SUPPORT BIT39 // Include IDCC2 support
|
||
|
#define B_BOARD_FEATURES_NPI_QPI_VOLTAGE BIT40
|
||
|
#define B_BOARD_FEATURES_LIMITED_CPU_SUPPORT BIT41 // Limited CPU support
|
||
|
#define B_BOARD_FEATURES_PMP_SUPPORT BIT42 // Support for over-voltaging memory
|
||
|
#define B_BOARD_FEATURES_HW_WATCHDOG_TIMER BIT43 // Support for the HW-based 555 Watchdog Timer feature
|
||
|
#define B_BOARD_FEATURES_LVDS BIT44 // Support for LVDS
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE_MASK (BIT45|BIT46|BIT47|BIT48) // Verb table
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE1 BIT45 // Verb table 1
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE2 BIT46 // Verb table 2
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE3 BIT47 // Verb table 3
|
||
|
#define B_BOARD_FEATURES_VERB_TABLE4 BIT48 // Verb table 4
|
||
|
#define B_BOARD_FEATURES_NO_MINIPCIE BIT49 // Mini PCIe slot
|
||
|
#define B_BOARD_FEATURES_HDMI_SLOT BIT50 // HDMI slot
|
||
|
#define B_BOARD_FEATURES_PS2_HIDE BIT51 // PS2 hide
|
||
|
#define B_BOARD_FEATURES_DVID_SLOT BIT52 // DVID slot
|
||
|
|
||
|
#define B_BOARD_FEATURES_SIO_COM3 BIT53
|
||
|
#define B_BOARD_FEATURES_SIO_COM4 BIT54
|
||
|
|
||
|
#define B_BOARD_FEATURES_LAN2 BIT55
|
||
|
#define B_BOARD_FEATURES_PCIe_SLOT BIT56
|
||
|
#endif
|
||
|
|
||
|
typedef UINT64 EFI_BOARD_FEATURES;
|
||
|
|
||
|
#pragma pack()
|
||
|
|
||
|
//
|
||
|
// Global ID for the Platform Boot Mode Protocol.
|
||
|
//
|
||
|
#define EFI_BOARD_FEATURES_GUID \
|
||
|
{ 0x94b9e8ae, 0x8877, 0x479a, 0x98, 0x42, 0xf5, 0x97, 0x4b, 0x82, 0xce, 0xd3 }
|
||
|
|
||
|
extern EFI_GUID gEfiBoardFeaturesGuid;
|
||
|
|
||
|
#define BOARD_FEATURES_NAME L"BoardFeatures"
|
||
|
|
||
|
#define EFI_BOARD_ID_GUID \
|
||
|
{ 0x6b2dd245, 0x3f2, 0x414a, 0x8c, 0x2, 0x9f, 0xfc, 0x23, 0x52, 0xe3, 0x1e }
|
||
|
#define EFI_BOARD_ID_NAME (L"BoardId")
|
||
|
|
||
|
#endif
|
||
|
|