summaryrefslogtreecommitdiff
path: root/Board/EM/MeWrapper/AmtWrapper/AsfTable
diff options
context:
space:
mode:
Diffstat (limited to 'Board/EM/MeWrapper/AmtWrapper/AsfTable')
-rw-r--r--Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.c300
-rw-r--r--Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.cif12
-rw-r--r--Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.dxs66
-rw-r--r--Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.h70
-rw-r--r--Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.mak79
-rw-r--r--Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.sdl24
6 files changed, 551 insertions, 0 deletions
diff --git a/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.c b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.c
new file mode 100644
index 0000000..4deedd4
--- /dev/null
+++ b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.c
@@ -0,0 +1,300 @@
+//*************************************************************************
+//*************************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//*************************************************************************
+//*************************************************************************
+//**********************************************************************
+//
+// $Header: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.c 3 6/18/14 3:14a Larryliu $
+//
+// $Revision: 3 $
+//
+// $Date: 6/18/14 3:14a $
+//
+//**********************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.c $
+//
+// 3 6/18/14 3:14a Larryliu
+// [TAG] EIP173999
+// [Category] Improvement
+// [Description] [HWR]Remove useless comments from Intel ME
+// component.(except RC)
+// [Files] AsfTable.c
+//
+// 1 2/08/12 1:09a Klzhan
+//
+// 1 2/25/11 1:44a Klzhan
+// Initial Check-in
+//
+// 1 12/03/10 5:10a Klzhan
+// Initial Check-in.
+//
+//
+//**********************************************************************
+
+//<AMI_FHDR_START>
+//----------------------------------------------------------------------------
+//
+// Name: AsfTable.c
+//
+// Description: Create ASF Acpi table
+//
+//----------------------------------------------------------------------------
+//<AMI_FHDR_END>
+#include "AsfTable.h"
+
+EFI_GUID gAcpiSupportGuid = EFI_ACPI_SUPPORT_GUID;
+
+EFI_STATUS
+AsfBuildTbl(
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ );
+
+//----------------------------------------------------------------------------
+// Variable declaration
+//----------------------------------------------------------------------------
+VOID *mAsfRegistration;
+
+//
+// Driver entry point
+//
+EFI_DRIVER_ENTRY_POINT (AsfTableEntryPoint);
+
+//
+// Function implementations
+//
+EFI_STATUS
+EFIAPI
+AsfTableEntryPoint (
+ IN EFI_HANDLE ImageHandle,
+ IN EFI_SYSTEM_TABLE *SystemTable
+)
+{
+ EFI_EVENT FilterEvent;
+ EFI_STATUS Status;
+
+ //
+ // Initialize the EFI Driver Library
+ //
+ EfiInitializeDriverLib (ImageHandle, SystemTable);
+
+ Status = gBS->CreateEvent ( EFI_EVENT_NOTIFY_SIGNAL,
+ EFI_TPL_CALLBACK,
+ AsfBuildTbl,
+ NULL,
+ &FilterEvent);
+ if (EFI_ERROR(Status)) {
+ return Status;
+ }
+
+ // Register for protocol notifactions on this event
+ Status = gBS->RegisterProtocolNotify ( &gAcpiSupportGuid,
+ FilterEvent,
+ &mAsfRegistration);
+
+ ASSERT_EFI_ERROR (Status);
+
+ gBS->SignalEvent (FilterEvent);
+
+ return Status;
+}
+
+//-----------------------------------------------------------------------------
+// ASF Table
+//-----------------------------------------------------------------------------
+//The table shound be runtime build like as ASFBSP
+//
+// ASF Definitions
+//
+#define EFI_ACPI_1_0_ASF_DESCRIPTION_TABLE_REVISION 0x20
+
+// need to update to asl asf 2.0 table....
+EFI_ACPI_1_0_ASF_DESCRIPTION_TABLE ASF_TABLE = {
+ EFI_ACPI_1_0_ASF_DESCRIPTION_TABLE_SIGNATURE,
+ sizeof (EFI_ACPI_1_0_ASF_DESCRIPTION_TABLE),
+ EFI_ACPI_1_0_ASF_DESCRIPTION_TABLE_REVISION,
+ 0, // to make sum of entire table == 0
+
+ // OEM identification
+ 'I', 'N', 'T', 'E', 'L', ' ',
+
+ // OEM table identification
+ ((((((((((((('D' << 8) + '8') << 8) + '6') << 8) + '5') << 8) + 'G') << 8) + 'C') << 8) + 'H') << 8) + ' ', // OEM table identification
+
+ 1, // OEM revision number
+ ((((('M' << 8) + 'S') << 8) + 'F') << 8) + 'T', // ASL compiler vendor ID
+ 1000000, // ASL compiler revision number
+
+ //
+ // ASF_INFO
+ //
+ 0x00, // Type "ASF_INFO"
+ 0x00, // Reserved
+ sizeof (EFI_ACPI_ASF_INFO), // Length
+ 0xFF, // Min Watchdog Reset Value
+ 0xFF, // Min ASF Sensor Inter-poll Wait Time
+ 0x0001, // System ID
+ 0x57010000, // IANA Manufacture ID for Intel
+ 0x00, // Feature Flag
+ 0x00, 0x00, 0x00, // Reserved
+
+ //
+ // ASF_ALRT
+ //
+
+ 0x01, // Type "ASF_ALRT"
+ 0x00, // Reserved
+ sizeof (EFI_ACPI_ASF_ALRT), // Length
+ 0x00, // Assertion Event Bit Mask
+ 0x00, // Deassertion Event Bit Mask
+ 0x03, // Number Of Alerts
+ 0x0C, // Array Element Length
+ //
+ // ICH Slave SMBUS Read devices
+ //
+ 0x89, 0x04, 0x01, 0x01, 0x05, 0x6F, 0x00, 0x68, 0x08, 0x88, 0x17, 0x00, // Device 0
+ 0x89, 0x04, 0x04, 0x04, 0x07, 0x6F, 0x00, 0x68, 0x20, 0x88, 0x03, 0x00, // Device 1
+ 0x89, 0x05, 0x01, 0x01, 0x19, 0x6F, 0x00, 0x68, 0x20, 0x88, 0x22, 0x00, // Device 2
+
+ //
+ // ASF_RCTL
+ //
+ 0x02, // Type "ASF_RCTL"
+ 0x00, // Reserved
+ sizeof (EFI_ACPI_ASF_RCTL), // Length
+ 0x04, // Number of Controls
+ 0x04, // Array Element Length
+ 0x0000, // Reserved
+ //
+ // ICH Slave SMBUS Write cmds
+ //
+ 0x00, 0x88, 0x00, 0x03, // Control 0 --> Reset system
+ 0x01, 0x88, 0x00, 0x02, // Control 1 --> Power Off system
+ 0x02, 0x88, 0x00, 0x01, // Control 2 --> Power On system
+ 0x03, 0x88, 0x00, 0x04, // Control 3 --> Power Cycle Reset (off then on)
+
+ //
+ // ASF_RCMP
+ //
+ 0x03, // Type "ASF_RCMP"
+ 0x00, // Reserved
+ sizeof (EFI_ACPI_ASF_RMCP), // Length
+
+ // Remote Control Capabilities supported Bit Masks
+ // =============================================
+ // System Firmware Capabilities Bit Mask Started
+ // =============================================
+ 0x21, // System Firmware Capabilities Bit Mask
+ // (two MSBytes are Rsvd,
+
+ // Bit7 RSVD
+ // Bit6 Support Sleep Button LOCK
+ // Bit5 Support KBD LOCK
+ // Bit4-3 RSVD
+ // Bit2 Support Reset Button LOCK
+ // Bit1 Support Power Button LOCK
+ // Bit0 Support Verbosity/ Blank Screen
+ 0xF8,
+ // Bit7 Support Configration Data Reset
+ // Bit6 Support Verbosity/ Quiet
+ // Bit5 Support Verbosity/ Verbose
+ // Bit4 Support Force Progress Event
+ // Bit3 Support User Password Bypass
+ // Bit2:0 RSVD
+ 0x00,
+ 0x00,
+ // =============================================
+ // Special Commands Bit Mask Started
+ // =============================================
+ 0x00, // RSVD
+ 0x13,
+ // Bit7:5 RSVD
+ // Bit4 Support Force CD/DVD Boot Command
+ // Bit3 Support Force Diagnostic Boot Command
+ // Bit2 Support Force Hard Drive Safe-mode Boot Command
+ // Bit1 Support Force Hard Drive Boot Command
+ // Bit0 Support Force PXE Boot Command
+ // =============================================
+ // System Capabilities Bit Mask Started
+ // =============================================
+ 0xF0, // System Capabilities Bit Mask (Supports Reset,
+ // Power-Up,Power-Down, Power-Cycle Reset
+ // for compat and secure port.
+ 0x00, // Boot Option Complete Code
+ 0x57010000, // IANA ID for Intel Manufacturer
+ 0x00, // Special Command
+ 0x00, 0x00, // Special Command Parameter
+ 0x00, 0x01, // Boot Options
+ 0x00, 0x00, // OEM Parameters
+
+ //
+ // ASF_ADDR
+ //
+ 0x84, // Type "ASF_ADDR", last record
+ 0x00, // Reserved
+ sizeof (EFI_ACPI_ASF_ADDR), // Length
+ 0x00, // SEEPROM Address
+ ASF_ADDR_DEVICE_ARRAY_LENGTH, // Number Of Devices
+ 0x5C, 0x68, 0x88, 0xC2, 0xD2, // Fixed SMBus Address (Heceta 6, 82573E device - static def (also an ARP addr),
+ 0xDC, 0xA0, 0xA2, 0xA4, 0xA6, // ICH Slave Device, SMB ARP, CK410, DB400/800, SDRAM SPD devices
+ 0xC8 // TEKOA Slave Device
+};
+
+EFI_STATUS
+AsfBuildTbl(
+ IN EFI_EVENT Event,
+ IN VOID *Context
+)
+{
+ EFI_STATUS Status;
+ UINTN AsfTableHandle=0;
+ EFI_ACPI_SUPPORT_PROTOCOL *AcpiSupport;
+ VOID *AsfStruc;
+
+ AsfStruc = (VOID *)&ASF_TABLE;
+
+ Status = gBS->LocateProtocol(&gAcpiSupportGuid,
+ NULL,
+ &AcpiSupport);
+ if (EFI_ERROR (Status))
+ {
+ return EFI_ABORTED;
+ }
+
+ Status = AcpiSupport->SetAcpiTable (AcpiSupport,
+ AsfStruc,
+ TRUE,
+ (EFI_ACPI_TABLE_VERSION_2_0|EFI_ACPI_TABLE_VERSION_1_0B),
+ &AsfTableHandle);
+ if (EFI_ERROR(Status))
+ {
+ // Handle the error appropriately
+ return EFI_ABORTED;
+ }
+
+ return Status;
+}
+//*************************************************************************
+//*************************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//*************************************************************************
+//************************************************************************* \ No newline at end of file
diff --git a/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.cif b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.cif
new file mode 100644
index 0000000..bf83bbb
--- /dev/null
+++ b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.cif
@@ -0,0 +1,12 @@
+<component>
+ name = "AsfTable"
+ category = ModulePart
+ LocalRoot = "Board\EM\MeWrapper\AmtWrapper\AsfTable"
+ RefName = "AsfTable"
+[files]
+"AsfTable.c"
+"AsfTable.h"
+"AsfTable.sdl"
+"AsfTable.mak"
+"AsfTable.dxs"
+<endComponent>
diff --git a/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.dxs b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.dxs
new file mode 100644
index 0000000..1d031bb
--- /dev/null
+++ b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.dxs
@@ -0,0 +1,66 @@
+//*************************************************************************
+//*************************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//*************************************************************************
+//*************************************************************************
+//**********************************************************************
+//
+// $Header: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.dxs 1 2/08/12 1:09a Klzhan $
+//
+// $Revision: 1 $
+//
+// $Date: 2/08/12 1:09a $
+//
+//**********************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.dxs $
+//
+// 1 2/08/12 1:09a Klzhan
+//
+// 1 2/25/11 1:44a Klzhan
+// Initial Check-in
+//
+// 1 12/03/10 5:10a Klzhan
+// Initial Check-in.
+//
+//
+//**********************************************************************
+
+//<AMI_FHDR_START>
+//----------------------------------------------------------------------------
+//
+// Name: AsfTable.DXS
+//
+// Description: This file is the dependency file for the AsfTable driver
+//
+//
+//----------------------------------------------------------------------------
+//<AMI_FHDR_END>
+
+DEPENDENCY_START
+ TRUE
+DEPENDENCY_END
+
+
+//*************************************************************************
+//*************************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//*************************************************************************
+//************************************************************************* \ No newline at end of file
diff --git a/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.h b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.h
new file mode 100644
index 0000000..09cfc72
--- /dev/null
+++ b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.h
@@ -0,0 +1,70 @@
+//*************************************************************************
+//*************************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//*************************************************************************
+//*************************************************************************
+//**********************************************************************
+//
+// $Header: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.h 1 2/08/12 1:09a Klzhan $
+//
+// $Revision: 1 $
+//
+// $Date: 2/08/12 1:09a $
+//
+//**********************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.h $
+//
+// 1 2/08/12 1:09a Klzhan
+//
+// 1 2/25/11 1:44a Klzhan
+// Initial Check-in
+//
+// 1 12/03/10 5:10a Klzhan
+// Initial Check-in.
+//
+//
+//**********************************************************************
+
+//<AMI_FHDR_START>
+//----------------------------------------------------------------------------
+//
+// Name: AsfTable.h
+//
+// Description: Header file for ASF Acpi table
+//
+//----------------------------------------------------------------------------
+//<AMI_FHDR_END>
+#ifndef _ASF_TABLE_H_
+#define _ASF_TABLE_H_
+
+#include "Efi.h"
+#include "EfiDriverLib.h"
+#include "EfiCommonLib.h"
+#include "AlertStandardFormatTable.h"
+
+#include EFI_PROTOCOL_DEFINITION (AcpiSupport)
+
+#endif
+//*************************************************************************
+//*************************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//*************************************************************************
+//************************************************************************* \ No newline at end of file
diff --git a/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.mak b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.mak
new file mode 100644
index 0000000..65f6576
--- /dev/null
+++ b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.mak
@@ -0,0 +1,79 @@
+#*************************************************************************
+#*************************************************************************
+#** **
+#** (C)Copyright 1985-2010, American Megatrends, Inc. **
+#** **
+#** All Rights Reserved. **
+#** **
+#** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+#** **
+#** Phone: (770)-246-8600 **
+#** **
+#*************************************************************************
+#*************************************************************************
+#**********************************************************************
+# $Header: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.mak 1 2/08/12 1:09a Klzhan $
+#
+# $Revision: 1 $
+#
+# $Date: 2/08/12 1:09a $
+#**********************************************************************
+# Revision History
+# ----------------
+# $Log: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/AmtWrapper/AsfTable/AsfTable.mak $
+#
+# 1 2/08/12 1:09a Klzhan
+#
+# 1 2/25/11 1:44a Klzhan
+# Initial Check-in
+#
+# 1 12/03/10 5:10a Klzhan
+# Initial Check-in.
+#
+#
+#**********************************************************************
+#<AMI_FHDR_START>
+#
+# Name: AsfTable.mak
+#
+# Description:
+#
+#<AMI_FHDR_END>
+#**********************************************************************
+EDK : AsfTable
+
+AsfTable : $(BUILD_DIR)\AsfTable.mak AsfTableBin
+
+$(BUILD_DIR)\AsfTable.mak : $(AsfTable_DIR)\$(@B).cif $(AsfTable_DIR)\$(@B).mak $(BUILD_RULES)
+ $(CIF2MAK) $(AsfTable_DIR)\$(@B).cif $(CIF2MAK_DEFAULTS)
+
+ASF_TABLE_INCLUDES=\
+ $(EDK_INCLUDES)\
+ $(MISCFRAMEWORK_INCLUDES)\
+ $(ME_INCLUDES)\
+ $(IndustryStandard_INCLUDES)\
+
+AsfTableBin : $(EFIDRIVERLIB) $(EFICOMMONLIB) $(PRINTLIB)
+ $(MAKE) /$(MAKEFLAGS) $(EDK_DEFAULTS)\
+ /f $(BUILD_DIR)\AsfTable.mak all\
+ GUID=E72527CF-505B-4b50-99CD-A32467FA4AA4\
+ "MY_INCLUDES=$(ASF_TABLE_INCLUDES)" \
+ ENTRY_POINT=AsfTableEntryPoint \
+ TYPE=BS_DRIVER LIBRARIES= \
+ DEPEX1=$(AsfTable_DIR)\AsfTable.dxs\
+ DEPEX1_TYPE=EFI_SECTION_DXE_DEPEX\
+ COMPRESS=1\
+
+#*************************************************************************
+#*************************************************************************
+#** **
+#** (C)Copyright 1985-2010, American Megatrends, Inc. **
+#** **
+#** All Rights Reserved. **
+#** **
+#** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+#** **
+#** Phone: (770)-246-8600 **
+#** **
+#*************************************************************************
+#************************************************************************* \ No newline at end of file
diff --git a/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.sdl b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.sdl
new file mode 100644
index 0000000..b370431
--- /dev/null
+++ b/Board/EM/MeWrapper/AmtWrapper/AsfTable/AsfTable.sdl
@@ -0,0 +1,24 @@
+TOKEN
+ Name = "AsfTable_SUPPORT"
+ Value = "1"
+ Help = "Main switch to enable AsfTable support in Project"
+ TokenType = Boolean
+ TargetEQU = Yes
+ TargetMAK = Yes
+ Master = Yes
+End
+
+PATH
+ Name = "AsfTable_DIR"
+End
+
+MODULE
+ Help = "Includes AsfTable.mak to Project"
+ File = "AsfTable.mak"
+End
+
+ELINK
+ Name = "$(BUILD_DIR)\AsfTable.ffs"
+ Parent = "FV_MAIN"
+ InvokeOrder = AfterParent
+End \ No newline at end of file