]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/DxeSmbusLib/SmbusLib.c
Function headers in .h and .c files synchronized with spec
[mirror_edk2.git] / MdePkg / Library / DxeSmbusLib / SmbusLib.c
index 93fadb6598fdf4e5dd8a6a8eebb474d6fc0a53bc..71487dc2fbd97c902f52ea2074ad193cac2ee984 100644 (file)
@@ -1,17 +1,15 @@
 /** @file\r
-Implementation of SmBusLib class library for PEI phase.\r
+Implementation of SmBusLib class library for DXE phase.\r
 \r
 Copyright (c) 2006, Intel Corporation<BR>\r
-All rights reserved. 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
+All rights reserved. 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
 \r
-Module Name: SmbusLib.c\r
 \r
 **/\r
 \r
@@ -28,10 +26,17 @@ Module Name: SmbusLib.c
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS  The SMBUS command was executed.\r
+                        RETURN_TIMEOUT  A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
 **/\r
 VOID\r
@@ -44,7 +49,7 @@ SmBusQuickRead (
   ASSERT (!SMBUS_LIB_PEC (SmBusAddress));\r
   ASSERT (SMBUS_LIB_COMMAND (SmBusAddress)   == 0);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   InternalSmBusExec (EfiSmbusQuickRead, SmBusAddress, 0, NULL, Status);\r
 }\r
@@ -60,10 +65,17 @@ SmBusQuickRead (
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
 **/\r
 VOID\r
@@ -76,7 +88,7 @@ SmBusQuickWrite (
   ASSERT (!SMBUS_LIB_PEC (SmBusAddress));\r
   ASSERT (SMBUS_LIB_COMMAND (SmBusAddress)   == 0);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   InternalSmBusExec (EfiSmbusQuickWrite, SmBusAddress, 0, NULL, Status);\r
 }\r
@@ -92,10 +104,18 @@ SmBusQuickWrite (
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The byte received from the SMBUS.\r
 \r
@@ -111,7 +131,7 @@ SmBusReceiveByte (
 \r
   ASSERT (SMBUS_LIB_COMMAND (SmBusAddress) == 0);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)  == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   InternalSmBusExec (EfiSmbusReceiveByte, SmBusAddress, 1, &Byte, Status);\r
 \r
@@ -129,11 +149,19 @@ SmBusReceiveByte (
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Value           The 8-bit value to send.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Value         The 8-bit value to send.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The parameter of Value.\r
 \r
@@ -150,7 +178,7 @@ SmBusSendByte (
 \r
   ASSERT (SMBUS_LIB_COMMAND (SmBusAddress)   == 0);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   Byte   = Value;\r
   InternalSmBusExec (EfiSmbusSendByte, SmBusAddress, 1, &Byte, Status);\r
@@ -170,8 +198,16 @@ SmBusSendByte (
 \r
   @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
                           SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The byte read from the SMBUS.\r
 \r
@@ -186,10 +222,10 @@ SmBusReadDataByte (
   UINT8   Byte;\r
 \r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   InternalSmBusExec (EfiSmbusReadByte, SmBusAddress, 1, &Byte, Status);\r
-  \r
+\r
   return Byte;\r
 }\r
 \r
@@ -204,11 +240,19 @@ SmBusReadDataByte (
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Value           The 8-bit value to write.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Value         The 8-bit value to write.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The parameter of Value.\r
 \r
@@ -224,11 +268,11 @@ SmBusWriteDataByte (
   UINT8   Byte;\r
 \r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   Byte = Value;\r
   InternalSmBusExec (EfiSmbusWriteByte, SmBusAddress, 1, &Byte, Status);\r
-  \r
+\r
   return Value;\r
 }\r
 \r
@@ -242,10 +286,18 @@ SmBusWriteDataByte (
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
   \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The byte read from the SMBUS.\r
 \r
@@ -260,10 +312,10 @@ SmBusReadDataWord (
   UINT16  Word;\r
 \r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   InternalSmBusExec (EfiSmbusReadWord, SmBusAddress, 2, &Word, Status);\r
-  \r
+\r
   return Word;\r
 }\r
 \r
@@ -278,11 +330,19 @@ SmBusReadDataWord (
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Value           The 16-bit value to write.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Value         The 16-bit value to write.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The parameter of Value.\r
 \r
@@ -298,7 +358,7 @@ SmBusWriteDataWord (
   UINT16  Word;\r
 \r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   Word = Value;\r
   InternalSmBusExec (EfiSmbusWriteWord, SmBusAddress, 2, &Word, Status);\r
@@ -317,11 +377,19 @@ SmBusWriteDataWord (
   If Length in SmBusAddress is not zero, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Value           The 16-bit value to write.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Value         The 16-bit value to write.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The 16-bit value returned by the process call command.\r
 \r
@@ -335,10 +403,10 @@ SmBusProcessCall (
   )\r
 {\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   InternalSmBusExec (EfiSmbusProcessCall, SmBusAddress, 2, &Value, Status);\r
-  \r
+\r
   return Value;\r
 }\r
 \r
@@ -356,11 +424,19 @@ SmBusProcessCall (
   If Buffer is NULL, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Buffer          Pointer to the buffer to store the bytes read from the SMBUS.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Buffer        Pointer to the buffer to store the bytes read from the SMBUS.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_SUCCESS The SMBUS command was executed.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The number of bytes read.\r
 \r
@@ -375,7 +451,7 @@ SmBusReadBlock (
 {\r
   ASSERT (Buffer != NULL);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress)    == 0);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   return InternalSmBusExec (EfiSmbusReadBlock, SmBusAddress, 0x20, Buffer, Status);\r
 }\r
@@ -392,11 +468,18 @@ SmBusReadBlock (
   If Buffer is NULL, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  Buffer          Pointer to the buffer to store the bytes read from the SMBUS.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        MBUS Command, SMBUS Data Length, and PEC.\r
+  @param  Buffer        Pointer to the buffer to store the bytes read from the SMBUS.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The number of bytes written.\r
 \r
@@ -414,7 +497,7 @@ SmBusWriteBlock (
   ASSERT (Buffer != NULL);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress) >= 1);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress) <= 32);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   Length = SMBUS_LIB_LENGTH (SmBusAddress);\r
   return InternalSmBusExec (EfiSmbusWriteBlock, SmBusAddress, Length, Buffer, Status);\r
@@ -434,12 +517,19 @@ SmBusWriteBlock (
   If ReadBuffer is NULL, then ASSERT().\r
   If any reserved bits of SmBusAddress are set, then ASSERT().\r
 \r
-  @param  SmBusAddress    Address that encodes the SMBUS Slave Address,\r
-                          SMBUS Command, SMBUS Data Length, and PEC.\r
-  @param  WriteBuffer     Pointer to the buffer of bytes to write to the SMBUS.\r
-  @param  ReadBuffer      Pointer to the buffer of bytes to read from the SMBUS.\r
-  @param  Status          Return status for the executed command.\r
-                          This is an optional parameter and may be NULL.\r
+  @param  SmBusAddress  Address that encodes the SMBUS Slave Address,\r
+                        SMBUS Command, SMBUS Data Length, and PEC.\r
+  @param  WriteBuffer   Pointer to the buffer of bytes to write to the SMBUS.\r
+  @param  ReadBuffer    Pointer to the buffer of bytes to read from the SMBUS.\r
+  @param  Status        Return status for the executed command.\r
+                        This is an optional parameter and may be NULL.\r
+                        RETURN_TIMEOUT A timeout occurred while executing the SMBUS command.\r
+                        RETURN_DEVICE_ERROR  The request was not completed because a failure\r
+                        reflected in the Host Status Register bit.  Device errors are a result\r
+                        of a transaction collision, illegal command field, unclaimed cycle\r
+                        (host initiated), or bus errors (collisions).\r
+                        RETURN_CRC_ERROR  The checksum is not correct (PEC is incorrect)\r
+                        RETURN_UNSUPPORTED  The SMBus operation is not supported.\r
 \r
   @return The number of bytes written.\r
 \r
@@ -459,7 +549,7 @@ SmBusBlockProcessCall (
   ASSERT (ReadBuffer  != NULL);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress) >= 1);\r
   ASSERT (SMBUS_LIB_LENGTH (SmBusAddress) <= 32);\r
-  ASSERT (SMBUS_LIB_RESEARVED (SmBusAddress) == 0);\r
+  ASSERT (SMBUS_LIB_RESERVED (SmBusAddress) == 0);\r
 \r
   Length = SMBUS_LIB_LENGTH (SmBusAddress);\r
   //\r