/** @file\r
Header file for ATA/ATAPI PASS THRU driver.\r
\r
- Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>\r
- This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php\r
-\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+ Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
#ifndef __ATA_ATAPI_PASS_THRU_H__\r
#include <Protocol/IdeControllerInit.h>\r
#include <Protocol/AtaPassThru.h>\r
#include <Protocol/ScsiPassThruExt.h>\r
+#include <Protocol/AtaAtapiPolicy.h>\r
\r
#include <Library/DebugLib.h>\r
#include <Library/BaseLib.h>\r
extern EFI_COMPONENT_NAME_PROTOCOL gAtaAtapiPassThruComponentName;\r
extern EFI_COMPONENT_NAME2_PROTOCOL gAtaAtapiPassThruComponentName2;\r
\r
+extern EDKII_ATA_ATAPI_POLICY_PROTOCOL *mAtaAtapiPolicy;\r
+\r
#define ATA_ATAPI_PASS_THRU_SIGNATURE SIGNATURE_32 ('a', 'a', 'p', 't')\r
#define ATA_ATAPI_DEVICE_SIGNATURE SIGNATURE_32 ('a', 'd', 'e', 'v')\r
#define ATA_NONBLOCKING_TASK_SIGNATURE SIGNATURE_32 ('a', 't', 's', 'k')\r
// It means 3 second span.\r
//\r
#define ATA_ATAPI_TIMEOUT EFI_TIMER_PERIOD_SECONDS(3)\r
+#define ATA_SPINUP_TIMEOUT EFI_TIMER_PERIOD_SECONDS(10)\r
\r
#define IS_ALIGNED(addr, size) (((UINTN) (addr) & (size - 1)) == 0)\r
\r
@retval EFI_SUCCESS The device was started.\r
@retval EFI_DEVICE_ERROR The device could not be started due to a device error.Currently not implemented.\r
@retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources.\r
- @retval Others The driver failded to start the device.\r
+ @retval Others The driver failed to start the device.\r
\r
**/\r
EFI_STATUS\r
);\r
\r
/**\r
- Call back funtion when the timer event is signaled.\r
+ Call back function when the timer event is signaled.\r
\r
@param[in] Event The Event this notify function registered to.\r
@param[in] Context Pointer to the context data registered to the\r