]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdePkg Protocol/AtaPassThru.h: Update PortMultiplierPort related comments
authorHao Wu <hao.a.wu@intel.com>
Fri, 8 Apr 2016 08:17:37 +0000 (16:17 +0800)
committerHao Wu <hao.a.wu@intel.com>
Thu, 12 May 2016 06:17:55 +0000 (14:17 +0800)
The UEFI2.5 Errata (Mantis ticket 1472 -
https://mantis.uefi.org/mantis/view.php?id=1472) updated
'PortMultiplierPort' parameter description for the following services in
EFI_ATA_PASS_THRU_PROTOCOL:

1. PassThru
2. BuildDevicePath
3. ResetDevice

Now, if there is no port multiplier on a ATA controller port, the
PortMultiplierPort parameter should be set to 0xFFFF instead of 0.

Please note that this is an incompatible semantic change. The consumer of
EFI_ATA_PASS_THRU_PROTOCOL needs to re-examine its usage to follow UEFI
2.5 Errata mantis 1472.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
MdePkg/Include/Protocol/AtaPassThru.h

index 6153b704f1a53293eb138a4e857eda6690c6b0fd..c0545547bd004014d1cf69c4e2634d3d0437449d 100644 (file)
@@ -3,7 +3,7 @@
   to send ATA Command Blocks to any ATA device attached to that ATA controller. The information\r
   includes the attributes of the ATA controller.\r
 \r
-  Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2009 - 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
@@ -180,7 +180,7 @@ typedef struct {
   @param[in]     This                A pointer to the EFI_ATA_PASS_THRU_PROTOCOL instance. \r
   @param[in]     Port                The port number of the ATA device to send the command. \r
   @param[in]     PortMultiplierPort  The port multiplier port number of the ATA device to send the command.\r
-                                     If there is no port multiplier, then specify 0.\r
+                                     If there is no port multiplier, then specify 0xFFFF.\r
   @param[in,out] Packet              A pointer to the ATA command to send to the ATA device specified by Port\r
                                      and PortMultiplierPort.\r
   @param[in]     Event               If non-blocking I/O is not supported then Event is ignored, and blocking\r
@@ -317,7 +317,7 @@ EFI_STATUS
                                      device path node is to be allocated and built.\r
   @param[in]     PortMultiplierPort  The port multiplier port number of the ATA device for which a\r
                                      device path node is to be allocated and built. If there is no\r
-                                     port multiplier, then specify 0.\r
+                                     port multiplier, then specify 0xFFFF.\r
   @param[in,out] DevicePath          A pointer to a single device path node that describes the ATA\r
                                      device specified by Port and PortMultiplierPort. This function\r
                                      is responsible for allocating the buffer DevicePath with the\r
@@ -437,7 +437,7 @@ EFI_STATUS
   @param[in] This                A pointer to the EFI_ATA_PASS_THRU_PROTOCOL instance.\r
   @param[in] Port                Port represents the port number of the ATA device to be reset.\r
   @param[in] PortMultiplierPort  The port multiplier port number of the ATA device to reset.\r
-                                 If there is no port multiplier, then specify 0.\r
+                                 If there is no port multiplier, then specify 0xFFFF.\r
   @retval EFI_SUCCESS            The ATA device specified by Port and PortMultiplierPort was reset.\r
   @retval EFI_UNSUPPORTED        The ATA controller does not support a device reset operation.\r
   @retval EFI_INVALID_PARAMETER  Port or PortMultiplierPort are invalid.\r