summaryrefslogtreecommitdiff
path: root/ReferenceCode/RapidStart/AcpiTables
diff options
context:
space:
mode:
Diffstat (limited to 'ReferenceCode/RapidStart/AcpiTables')
-rw-r--r--ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.cif11
-rw-r--r--ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.inf66
-rw-r--r--ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.mak105
-rw-r--r--ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.sdl91
-rw-r--r--ReferenceCode/RapidStart/AcpiTables/Ssdt/RapidStart.asl80
5 files changed, 353 insertions, 0 deletions
diff --git a/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.cif b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.cif
new file mode 100644
index 0000000..9e95414
--- /dev/null
+++ b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.cif
@@ -0,0 +1,11 @@
+<component>
+ name = "RapidStartAcpiTables"
+ category = ModulePart
+ LocalRoot = "ReferenceCode\RapidStart\AcpiTables"
+ RefName = "RapidStartAcpiTables"
+[files]
+"RapidStartAcpiTables.sdl"
+"RapidStartAcpiTables.mak"
+"RapidStartAcpiTables.inf"
+"Ssdt\RapidStart.asl"
+<endComponent>
diff --git a/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.inf b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.inf
new file mode 100644
index 0000000..6b98d1f
--- /dev/null
+++ b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.inf
@@ -0,0 +1,66 @@
+## @file
+# Component description file for the ACPI tables
+#
+#@copyright
+# Copyright (c) 1999 - 2012 Intel Corporation. All rights reserved
+# This software and associated documentation (if any) is furnished
+# under a license and may only be used or copied in accordance
+# with the terms of the license. Except as permitted by such
+# license, no part of this software or documentation may be
+# reproduced, stored in a retrieval system, or transmitted in any
+# form or by any means without the express written consent of
+# Intel Corporation.
+#
+# This file contains an 'Intel Peripheral Driver' and uniquely
+# identified as "Intel Reference Module" and is
+# licensed for Intel CPUs and chipsets under the terms of your
+# license agreement with Intel or your vendor. This file may
+# be modified by the user, subject to additional terms of the
+# license agreement
+#
+
+[defines]
+BASE_NAME = RapidStartAcpiTables
+FILE_GUID = 60AC3A8F-4D66-4CD4-895A-C3F06E6665EE
+COMPONENT_TYPE = ACPITABLE #ECP Override RAPID_START_ACPI_TABLES
+FFS_EXT = .ffs
+
+[sources.common]
+ Ssdt/RapidStart.asl
+
+[libraries.common]
+
+[includes.common]
+ .
+ $(EFI_SOURCE)
+ $(EFI_SOURCE)/Include
+ $(EDK_SOURCE)/Foundation/Efi
+ $(EDK_SOURCE)/Foundation/Include
+ $(EDK_SOURCE)/Foundation/Efi/Include
+ $(EDK_SOURCE)/Foundation/Framework/Include
+ $(EFI_SOURCE)/Include/IndustryStandard
+ $(EDK_SOURCE)/Foundation/Include/IndustryStandard
+ $(EDK_SOURCE)/Foundation/Library/Dxe/Include
+ $(EDK_SOURCE)/Foundation
+ $(EDK_SOURCE)/Foundation/Framework
+#
+# Typically the sample code referenced will be available in the code base already
+# So keep this include at the end to defer to the source base definition
+# and only use the sample code definition if source base does not include these files.
+#
+
+#
+# Edk II Glue Library, some hearder are included by R9 header so have to include
+#
+
+ $(EFI_SOURCE)
+ $(EFI_SOURCE)/Framework
+ $(EDK_SOURCE)/Foundation
+ $(EDK_SOURCE)/Foundation/Framework
+ $(EDK_SOURCE)/Foundation/Include/IndustryStandard
+ $(EDK_SOURCE)/Foundation/Core/Dxe
+ $(EDK_SOURCE)/Foundation/Include/Pei
+ $(EDK_SOURCE)/Foundation/Library/Dxe/Include
+ $(EDK_SOURCE)/Foundation/Library/EdkIIGlueLib/Include
+
+[nmake.common]
diff --git a/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.mak b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.mak
new file mode 100644
index 0000000..998ef06
--- /dev/null
+++ b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.mak
@@ -0,0 +1,105 @@
+#*************************************************************************
+#*************************************************************************
+#** **
+#** (C)Copyright 1985-2011, American Megatrends, Inc. **
+#** **
+#** All Rights Reserved. **
+#** **
+#** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+#** **
+#** Phone: (770)-246-8600 **
+#** **
+#*************************************************************************
+#*************************************************************************
+
+#*************************************************************************
+# $Header: /Alaska/SOURCE/Modules/Intel Fast Flash Standby/iRST_SharkBay/RapidStartAcpiTables/RapidStartAcpiTables.mak 3 6/02/13 8:23a Joshchou $
+#
+# $Revision: 3 $
+#
+# $Date: 6/02/13 8:23a $
+#*************************************************************************
+# Revision History
+# ----------------
+# $Log: /Alaska/SOURCE/Modules/Intel Fast Flash Standby/iRST_SharkBay/RapidStartAcpiTables/RapidStartAcpiTables.mak $
+#
+# 3 6/02/13 8:23a Joshchou
+# [TAG] None
+# [Category] Improvement
+# [Description] Change IASL compiler path to
+# $(ACPIPLATFORM_ASL_COMPILER) in SharkBay project.
+#
+# 2 11/20/12 2:22a Bensonlai
+# [TAG] EIP107013
+# [Category] Improvement
+# [Description] Update Shark Bay Rapid Start Reference Code Version
+# 0.8.0.0
+# [Files] RapidStartAcpiTables.sdl
+# RapidStartAcpiTables.mak
+# RapidStartAcpiTables.inf
+# Ssdt\RapidStart.asl
+# RapidStartAcpiTables.cif
+#
+# 1 4/19/12 7:50a Yurenlai
+# Initial check in.
+#
+#*************************************************************************
+#-----------------------------------------------------------------------
+# ASL compiler definition
+#-----------------------------------------------------------------------
+MASL = $(SILENT)asl.exe # Microsoft ASL compiler
+!IF "$(ACPIPLATFORM_ASL_COMPILER)"==""
+!ERROR It is an invalid path, please check your ASL compiler path.
+!ENDIF
+
+IASL = $(ACPIPLATFORM_ASL_COMPILER)
+#-----------------------------------------------------------------------
+ASL_COMPILER = IASL # Default ASL compiler. Can be 'IASL' for Intel ASL and 'MASL' for Microsoft ASL compiler.
+# Note. Msft. ASL compiler of version 1.0.14NT correctly process ACPI 2.0 extended ASL objects.
+#-----------------------------------------------------------------------
+EDK : RapidStartASL
+
+ALLRapidStartSEC = $(BUILD_DIR)\RapidStart.sec\
+
+RapidStartASL: $(BUILD_DIR)\RapidStartAcpiTables.ffs
+
+$(BUILD_DIR)\RapidStart.aml: $(INTEL_RAPIDSTART_ASL_FILE)
+!if "$(ASL_COMPILER)" == "MASL"
+ @$(MASL) /Fo=$@ $**
+!elseif "$(ASL_COMPILER)" == "IASL"
+ @cl /C /EP $(INTEL_RAPIDSTART_ASL_FILE) > $(BUILD_DIR)\RapidStart.asl
+ $(IASL) -p $(BUILD_DIR)\RapidStart.aml $(BUILD_DIR)\RapidStart.asl
+!endif
+
+$(BUILD_DIR)\RapidStart.sec: $(BUILD_DIR)\RapidStart.aml
+ $(GENSECTION) -I $** -O $@ -S EFI_SECTION_RAW
+
+$(BUILD_DIR)\RapidStartAcpiTables.ffs: $(ALLRapidStartSEC) $(RapidStartAcpiTables_DIR)\RapidStartAcpiTables.mak
+ $(GENFFSFILE) -B $(BUILD_DIR) -V -o $@ -P1 <<$(BUILD_DIR)\RapidStartAcpiTables.pkg
+PACKAGE.INF
+[.]
+BASE_NAME = RapidStartAcpiTables
+FFS_FILEGUID = 60AC3A8F-4D66-4CD4-895A-C3F06E6665EE
+FFS_FILETYPE = EFI_FV_FILETYPE_FREEFORM
+FFS_ATTRIB_CHECKSUM = TRUE
+
+IMAGE_SCRIPT =
+{
+ Compress (dummy) {
+ $(PROJECT_DIR)\$(BUILD_DIR)\RapidStart.sec
+ }
+}
+<<KEEP
+#*************************************************************************
+#*************************************************************************
+#** **
+#** (C)Copyright 1985-2011, American Megatrends, Inc. **
+#** **
+#** All Rights Reserved. **
+#** **
+#** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+#** **
+#** Phone: (770)-246-8600 **
+#** **
+#*************************************************************************
+#*************************************************************************
diff --git a/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.sdl b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.sdl
new file mode 100644
index 0000000..be7a5f2
--- /dev/null
+++ b/ReferenceCode/RapidStart/AcpiTables/RapidStartAcpiTables.sdl
@@ -0,0 +1,91 @@
+#*************************************************************************
+#*************************************************************************
+#** **
+#** (C)Copyright 1985-2012, American Megatrends, Inc. **
+#** **
+#** All Rights Reserved. **
+#** **
+#** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+#** **
+#** Phone: (770)-246-8600 **
+#** **
+#*************************************************************************
+#*************************************************************************
+
+#*************************************************************************
+# $Header: /Alaska/SOURCE/Modules/Intel Fast Flash Standby/iRST_SharkBay/RapidStartAcpiTables/RapidStartAcpiTables.sdl 3 11/20/12 2:22a Bensonlai $
+#
+# $Revision: 3 $
+#
+# $Date: 11/20/12 2:22a $
+#*************************************************************************
+# Revision History
+# ----------------
+# $Log: /Alaska/SOURCE/Modules/Intel Fast Flash Standby/iRST_SharkBay/RapidStartAcpiTables/RapidStartAcpiTables.sdl $
+#
+# 3 11/20/12 2:22a Bensonlai
+# [TAG] EIP107013
+# [Category] Improvement
+# [Description] Update Shark Bay Rapid Start Reference Code Version
+# 0.8.0.0
+# [Files] RapidStartAcpiTables.sdl
+# RapidStartAcpiTables.mak
+# RapidStartAcpiTables.inf
+# Ssdt\RapidStart.asl
+# RapidStartAcpiTables.cif
+#
+# 2 10/15/12 5:46a Bensonlai
+# [Category] Improvement
+# [Severity] Important
+# [Description] Rename all IFFS sting to Rapid Start.
+# [Files] Board\EM\RapidStartWrapper\*.*, ReferenceCode\RapidStart\*.*
+#
+# 1 4/19/12 7:50a Yurenlai
+# Initial check in.
+#
+#*************************************************************************
+TOKEN
+ Name = "RapidStartAcpiTables_SUPPORT"
+ Value = "1"
+ TokenType = Boolean
+ TargetEQU = Yes
+ TargetMAK = Yes
+ TargetH = Yes
+ Master = Yes
+ Help = "Main switch to enable RapidStart ACPI tables in Project"
+End
+
+MODULE
+ Help = "Includes RapidStartAcpiTables.mak to Project"
+ File = "RapidStartAcpiTables.mak"
+End
+
+PATH
+ Name = "RapidStartAcpiTables_DIR"
+End
+
+TOKEN
+ Name = "INTEL_RAPIDSTART_ASL_FILE"
+ Value = "$(RapidStartAcpiTables_DIR)\Ssdt\RapidStart.asl"
+ TokenType = Expression
+ TargetMAK = Yes
+End
+
+ELINK
+ Name = "$(BUILD_DIR)\RapidStartAcpiTables.ffs"
+ Parent = "FV_MAIN"
+ InvokeOrder = AfterParent
+End
+#*************************************************************************
+#*************************************************************************
+#** **
+#** (C)Copyright 1985-2012, American Megatrends, Inc. **
+#** **
+#** All Rights Reserved. **
+#** **
+#** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 **
+#** **
+#** Phone: (770)-246-8600 **
+#** **
+#*************************************************************************
+#*************************************************************************
diff --git a/ReferenceCode/RapidStart/AcpiTables/Ssdt/RapidStart.asl b/ReferenceCode/RapidStart/AcpiTables/Ssdt/RapidStart.asl
new file mode 100644
index 0000000..0004f89
--- /dev/null
+++ b/ReferenceCode/RapidStart/AcpiTables/Ssdt/RapidStart.asl
@@ -0,0 +1,80 @@
+/*++
+ This file contains an 'Intel Peripheral Driver' and uniquely
+ identified as "Intel Reference Module" and is
+ licensed for Intel CPUs and chipsets under the terms of your
+ license agreement with Intel or your vendor. This file may
+ be modified by the user, subject to additional terms of the
+ license agreement
+--*/
+
+/*++
+
+Copyright (c) 1999 - 2012 Intel Corporation. All rights reserved
+This software and associated documentation (if any) is furnished
+under a license and may only be used or copied in accordance
+with the terms of the license. Except as permitted by such
+license, no part of this software or documentation may be
+reproduced, stored in a retrieval system, or transmitted in any
+form or by any means without the express written consent of
+Intel Corporation.
+
+Module Name:
+
+ RapidStart.asl
+
+Abstract:
+
+ RapidStart ACPI ASL code to support OS control
+
+--*/
+
+
+DefinitionBlock (
+ "RapidStart.aml",
+ "SSDT",
+ 0x01,
+ "Iffs",
+ "IffsAsl",
+ 0x3000
+ )
+{
+
+ Scope (\_SB) {
+ Device(IFFS) {
+ OperationRegion(FFSN,SystemMemory,0xFFFF0000,0xAA55)
+ Field(FFSN,AnyAcc,Lock,Preserve)
+ {
+ FFSA, 8, // (0) iFFS available events
+ FFSS, 8, // (1) iFFS enabled events
+ FFST, 16, // (2) iFFS wake timer in minutes
+ FFSP, 32 // (4) iFFS performance monitoring data
+ }
+
+ Name(_HID,EISAID("INT3392"))
+ Name(_CID,EISAID("PNP0C02"))
+
+ Method(GFFS,0,Serialized) {
+ Return(FFSS)
+ }
+ Method(SFFS,1,Serialized) {
+ And(Arg0, FFSA, FFSS)
+ Return(FFSS)
+ }
+ Method(GFTV,0,Serialized) {
+ Return(FFST)
+ }
+ Method(SFTV,1,Serialized) {
+ //
+ // 24*60=1440 minutes (24 Hours)
+ //
+ If (LLessEqual(Arg0,1440)) {
+ Store(Arg0,FFST)
+ } Else {
+ And(FFSS,0xFFFE,FFSS)
+ Store(10,FFST)
+ }
+ Return(FFST)
+ }
+ }
+ }
+}