Vlv2TbltDevicePkg/Vlv2DeviceRefCodePkg: 

Add setup option to control _STA of LPE Audio.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Shifei Lu <shifeix.a.lu@intel.com>
Reviewed-by: David Wei <david.wei@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2014.SP1@19704 6f19259b-4bc3-4df7-8a09-765794883524
diff --git a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/GloblNvs.asl b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/GloblNvs.asl
index 21e526c..32cfd9d 100644
--- a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/GloblNvs.asl
+++ b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/GloblNvs.asl
@@ -5,7 +5,7 @@
 ;*    Family of Customer Reference Boards.                                *;

 ;*                                                                        *;

 ;*                                                                        *;

-;*    Copyright (c)  1999  - 2015, Intel Corporation. All rights reserved   *;

+;*    Copyright (c)  1999  - 2016, Intel Corporation. All rights reserved   *;

 ;

 ; This program and the accompanying materials are licensed and made available under

 ; the terms and conditions of the BSD License that accompanies this distribution.

@@ -349,5 +349,6 @@
   DIDX,     32,     //(793) Device ID for eDP device

   IOT,      8,      //(794) MinnowBoard Max JP1 is configured for MSFT IOT project.

   BATT,     8,      //(795) The Flag of RTC Battery Prensent.  

+  LPAD,     8,      //(796)   

 }

 

diff --git a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Pch.asl b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Pch.asl
index 38dac87..0d12719 100644
--- a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Pch.asl
+++ b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Pch.asl
@@ -5,7 +5,7 @@
 ;*    Family of Customer Reference Boards.                                *;

 ;*                                                                        *;

 ;*                                                                        *;

-;*    Copyright (c) 2012  - 2014, Intel Corporation. All rights reserved    *;

+;*    Copyright (c) 2012  - 2016, Intel Corporation. All rights reserved    *;

 ;

 ; This program and the accompanying materials are licensed and made available under

 ; the terms and conditions of the BSD License that accompanies this distribution.

@@ -139,7 +139,10 @@
     {

       If (LAnd(LAnd(LEqual(LPEE, 2), LEqual(LPED, 0)), LEqual(OSEL, 0)))

       {

-        Return (0xF)

+        If(LEqual(LPAD, 1))

+        {

+          Return (0xF)

+        }

       }

       Return (0x0)

     }

@@ -218,7 +221,10 @@
     {

       If (LAnd(LAnd(LEqual(LPEE, 2), LEqual(LPED, 0)), LEqual(OSEL, 1)))

       {

-        Return (0xF)

+        If(LEqual(LPAD, 1))

+        {

+          Return (0xF)

+        }

       }

       Return (0x0)

     }

diff --git a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/PchLpss.asl b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/PchLpss.asl
index 3e61e79..ecb20c1 100644
--- a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/PchLpss.asl
+++ b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/PchLpss.asl
@@ -5,7 +5,7 @@
 ;*    Family of Customer Reference Boards.                                *;

 ;*                                                                        *;

 ;*                                                                        *;

-;*    Copyright (c) 2012  - 2014, Intel Corporation. All rights reserved    *;

+;*    Copyright (c) 2012  - 2016, Intel Corporation. All rights reserved    *;

 ;

 ; This program and the accompanying materials are licensed and made available under

 ; the terms and conditions of the BSD License that accompanies this distribution.

@@ -605,7 +605,10 @@
     {

 

       If (LEqual(LPEE, 2)) { // LPE enable/disable

-        Return(0xF)

+        If (LEqual(LPAD, 1)) 

+        {

+          Return(0xF)

+        }

       }

       Return(0)

     }

diff --git a/Vlv2TbltDevicePkg/AcpiPlatform/AcpiPlatform.c b/Vlv2TbltDevicePkg/AcpiPlatform/AcpiPlatform.c
index a7e54e3..691a9d1 100644
--- a/Vlv2TbltDevicePkg/AcpiPlatform/AcpiPlatform.c
+++ b/Vlv2TbltDevicePkg/AcpiPlatform/AcpiPlatform.c
@@ -1,6 +1,6 @@
 /** @file

 

-  Copyright (c) 2004  - 2015, Intel Corporation. All rights reserved.<BR>

+  Copyright (c) 2004  - 2016, Intel Corporation. All rights reserved.<BR>

                                                                                    

 

   This program and the accompanying materials are licensed and made available under

@@ -1056,6 +1056,7 @@
   mGlobalNvsArea.Area->BatteryChargingSolution          = GLOBAL_NVS_DEVICE_DISABLE;

   mGlobalNvsArea.Area->ISPDevSel                        = mSystemConfiguration.ISPDevSel;

   mGlobalNvsArea.Area->LpeEnable                        = mSystemConfiguration.Lpe;

+  mGlobalNvsArea.Area->LpeAudioReportedByDSDT           = mSystemConfiguration.LpeAudioReportedByDSDT;

 

   if (mSystemConfiguration.ISPEn == 0) {

     mGlobalNvsArea.Area->ISPDevSel                      = GLOBAL_NVS_DEVICE_DISABLE;

diff --git a/Vlv2TbltDevicePkg/Include/Guid/SetupVariable.h b/Vlv2TbltDevicePkg/Include/Guid/SetupVariable.h
index 5168bd5..c7c51d0 100644
--- a/Vlv2TbltDevicePkg/Include/Guid/SetupVariable.h
+++ b/Vlv2TbltDevicePkg/Include/Guid/SetupVariable.h
@@ -1,6 +1,6 @@
 /*++
 
-  Copyright (c) 2004  - 2015, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2004  - 2016, Intel Corporation. All rights reserved.<BR>
                                                                                    
 
   This program and the accompanying materials are licensed and made available under
@@ -1309,6 +1309,7 @@
   UINT8   SdCardRemovable; // ACPI reporting MMC/SD media as: removable/non-removable
   UINT8   GpioWakeCapability;
   UINT8   RtcBattery;
+  UINT8   LpeAudioReportedByDSDT;
 
 } SYSTEM_CONFIGURATION;
 #pragma pack()
diff --git a/Vlv2TbltDevicePkg/Include/Protocol/GlobalNvsArea.h b/Vlv2TbltDevicePkg/Include/Protocol/GlobalNvsArea.h
index 5e650b6..aa7ec92 100644
--- a/Vlv2TbltDevicePkg/Include/Protocol/GlobalNvsArea.h
+++ b/Vlv2TbltDevicePkg/Include/Protocol/GlobalNvsArea.h
@@ -1,6 +1,6 @@
 /*++
 
-  Copyright (c) 2004  - 2015, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2004  - 2016, Intel Corporation. All rights reserved.<BR>
                                                                                    
 
   This program and the accompanying materials are licensed and made available under
@@ -472,6 +472,7 @@
   UINT32      DIDX;                              // 793 Device ID for eDP device
   UINT8       MicrosoftIoT;                      // (794)JP1 pins are for Microsoft IoT project.
   UINT8       RtcBattery;                        // (795) The Flag of RTC Battery Present.
+  UINT8       LpeAudioReportedByDSDT;            // (796)
 } EFI_GLOBAL_NVS_AREA;
 #pragma pack ()
 
diff --git a/Vlv2TbltDevicePkg/PlatformSetupDxe/SouthClusterConfig.vfi b/Vlv2TbltDevicePkg/PlatformSetupDxe/SouthClusterConfig.vfi
index 58e2676..258bd6f 100644
--- a/Vlv2TbltDevicePkg/PlatformSetupDxe/SouthClusterConfig.vfi
+++ b/Vlv2TbltDevicePkg/PlatformSetupDxe/SouthClusterConfig.vfi
Binary files differ
diff --git a/Vlv2TbltDevicePkg/PlatformSetupDxe/UqiList.uni b/Vlv2TbltDevicePkg/PlatformSetupDxe/UqiList.uni
index 229b75e..1de4391 100644
--- a/Vlv2TbltDevicePkg/PlatformSetupDxe/UqiList.uni
+++ b/Vlv2TbltDevicePkg/PlatformSetupDxe/UqiList.uni
Binary files differ
diff --git a/Vlv2TbltDevicePkg/PlatformSetupDxe/VfrStrings.uni b/Vlv2TbltDevicePkg/PlatformSetupDxe/VfrStrings.uni
index d1e1b6d..02d3321 100644
--- a/Vlv2TbltDevicePkg/PlatformSetupDxe/VfrStrings.uni
+++ b/Vlv2TbltDevicePkg/PlatformSetupDxe/VfrStrings.uni
Binary files differ
diff --git a/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageVariable.bin b/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageVariable.bin
index 6aa2bb5..4cacff7 100644
--- a/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageVariable.bin
+++ b/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageVariable.bin
Binary files differ