/** @file
This protocol is EFI compatible.
@copyright
Copyright 2005 - 2021 Intel Corporation.
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef _DXE_SYSTEM_BOARD_H_
#define _DXE_SYSTEM_BOARD_H_
#include
#include
#include
#define PCI_DEVICE_NUMBER_IMC0_CH_0 0x08
#define PCI_FUNCTION_NUMBER_IMC0_CH_0 0
#define PCI_DEVICE_ID_IMC0_CH_0 0x2014
#define BIOSGUARD_SUPPORT_ENABLED BIT0
#define OC_SUPPORT_ENABLED BIT1
#ifndef __AML_OFFSET_TABLE_H
#define __AML_OFFSET_TABLE_H
typedef struct {
char *Pathname; /* Full pathname (from root) to the object */
unsigned short ParentOpcode; /* AML opcode for the parent object */
unsigned long NamesegOffset; /* Offset of last nameseg in the parent namepath */
unsigned char Opcode; /* AML opcode for the data */
unsigned long Offset; /* Offset for the data */
unsigned long long Value; /* Original value of the data (as applicable) */
} AML_OFFSET_TABLE_ENTRY;
#endif
//
// Global variables for Option ROMs
//
#define NULL_ROM_FILE_GUID \
{ \
0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } \
}
typedef struct {
EFI_GUID FileName;
UINTN Segment;
UINTN Bus;
UINTN Device;
UINTN Function;
UINT16 VendorId;
UINT16 DeviceId;
} PCI_OPTION_ROM_TABLE;
//
// System board information table
//
typedef struct {
//
// Pci option ROM data
//
PCI_OPTION_ROM_TABLE *PciOptionRomTable;
//
// System CPU data
//
UINT32 CpuSocketCount;
//
// System device and irq routing data
//
DEVICE_DATA *DeviceData;
PLATFORM_PIRQ_DATA *SystemPirqData;
} DXE_SYSTEM_BOARD_INFO;
#endif