Ray,

I could not find code to compare DeviceSleepEnable/AggressiveDeviceSleepEnable 
with value 0, is that expected?


Thanks,
Star
-----Original Message-----
From: Ni, Ruiyu 
Sent: Monday, June 4, 2018 3:04 PM
To: edk2-devel@lists.01.org
Cc: Zeng, Star <star.z...@intel.com>
Subject: [PATCH v2 2/4] MdeModulePkg: Add AtaAtapiPolicy protocol definition

The patch adds AtaAtapiPolicy protocol which is produced by platform
and consumed by AtaAtapiPassThruDxe driver.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ruiyu Ni <ruiyu...@intel.com>
Cc: Star Zeng <star.z...@intel.com>
---
 MdeModulePkg/Include/Protocol/AtaAtapiPolicy.h | 59 ++++++++++++++++++++++++++
 MdeModulePkg/MdeModulePkg.dec                  |  2 +
 2 files changed, 61 insertions(+)
 create mode 100644 MdeModulePkg/Include/Protocol/AtaAtapiPolicy.h

diff --git a/MdeModulePkg/Include/Protocol/AtaAtapiPolicy.h 
b/MdeModulePkg/Include/Protocol/AtaAtapiPolicy.h
new file mode 100644
index 0000000000..12657d749e
--- /dev/null
+++ b/MdeModulePkg/Include/Protocol/AtaAtapiPolicy.h
@@ -0,0 +1,59 @@
+/** @file
+  ATA ATAPI Policy protocol is produced by platform and consumed by 
AtaAtapiPassThruDxe
+  driver.
+
+  Copyright (c) 2018, 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
+  which 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.
+
+**/
+#ifndef __ATA_ATAPI_POLICY_H__
+#define __ATA_ATAPI_POLICY_H__
+
+#define EDKII_ATA_ATAPI_POLICY_PROTOCOL_GUID \
+  { \
+    0xe59cd769, 0x5083, 0x4f26,{ 0x90, 0x94, 0x6c, 0x91, 0x9f, 0x91, 0x6c, 
0x4e } \
+  }
+
+typedef struct {
+  ///
+  /// Protocol version.
+  ///
+  UINT32  Version;
+
+  ///
+  /// 0: Disable Power-up in Standby;
+  /// 1: Enable Power-up in Standby;
+  /// others: Since PUIS setting is non-volatile, platform can use other value 
than 0/1 to keep hardware PUIS setting.
+  ///
+  UINT8   PuisEnable;
+
+  ///
+  /// 0: Disable Device Sleep;
+  /// 1: Enable Device Sleep;
+  /// others: Ignored.
+  ///
+  UINT8   DeviceSleepEnable;
+
+  ///
+  /// 0: Disable Aggressive Device Sleep;
+  /// 1: Enable Aggressive Device Sleep;
+  /// others: Ignored.
+  ///
+  UINT8   AggressiveDeviceSleepEnable;
+
+  UINT8   Reserved;
+} EDKII_ATA_ATAPI_POLICY_PROTOCOL;
+
+#define EDKII_ATA_ATAPI_POLICY_VERSION 0x00010000
+
+
+extern EFI_GUID gEdkiiAtaAtapiPolicyProtocolGuid;
+
+#endif
+
diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec
index 97ec87e1cf..3802b6e0b8 100644
--- a/MdeModulePkg/MdeModulePkg.dec
+++ b/MdeModulePkg/MdeModulePkg.dec
@@ -606,6 +606,8 @@ [Protocols]
   ## Include/Protocol/FirmwareManagementProgress.h
   gEdkiiFirmwareManagementProgressProtocolGuid = { 0x1849bda2, 0x6952, 0x4e86, 
{ 0xa1, 0xdb, 0x55, 0x9a, 0x3c, 0x47, 0x9d, 0xf1 } }
 
+  ## Include/Protocol/AtaAtapiPolicy.h
+  gEdkiiAtaAtapiPolicyProtocolGuid = { 0xe59cd769, 0x5083, 0x4f26,{ 0x90, 
0x94, 0x6c, 0x91, 0x9f, 0x91, 0x6c, 0x4e } }
 #
 # [Error.gEfiMdeModulePkgTokenSpaceGuid]
 #   0x80000001 | Invalid value provided.
-- 
2.16.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to