/** @file\r
- This file declares the SMBus definitions defined in SmBus Specifciation\r
- V2.0.\r
+ This file declares the SMBus definitions defined in SmBus Specifciation V2.0\r
+ and defined in PI1.0 specification volume 5.\r
\r
- Copyright (c) 2007, Intel Corporation \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
+ Copyright (c) 2007 - 2018, 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
-\r
- @par Revision Reference:\r
- These definitions are defined in System Management Bus (SmBus) Specification V2.0.\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
**/\r
\r
#define _SMBUS_H_\r
\r
\r
-//\r
-// UDID of SMBUS device.\r
-//\r
+///\r
+/// UDID of SMBUS device.\r
+///\r
typedef struct {\r
UINT32 VendorSpecificId;\r
UINT16 SubsystemDeviceId;\r
UINT8 DeviceCapabilities;\r
} EFI_SMBUS_UDID;\r
\r
-//\r
-// Smbus Device Address, Smbus Device Command, Smbus Operations\r
-//\r
+///\r
+/// Smbus Device Address\r
+///\r
typedef struct {\r
+ ///\r
+ /// The SMBUS hardware address to which the SMBUS device is preassigned or allocated.\r
+ ///\r
UINTN SmbusDeviceAddress : 7;\r
} EFI_SMBUS_DEVICE_ADDRESS;\r
\r
-typedef UINTN EFI_SMBUS_DEVICE_COMMAND;\r
+typedef struct {\r
+ ///\r
+ /// The SMBUS hardware address to which the SMBUS device is preassigned or\r
+ /// allocated. Type EFI_SMBUS_DEVICE_ADDRESS is defined in EFI_PEI_SMBUS2_PPI.Execute().\r
+ ///\r
+ EFI_SMBUS_DEVICE_ADDRESS SmbusDeviceAddress;\r
+ ///\r
+ /// The SMBUS Unique Device Identifier (UDID) as defined in EFI_SMBUS_UDID.\r
+ /// Type EFI_SMBUS_UDID is defined in EFI_PEI_SMBUS2_PPI.ArpDevice().\r
+ ///\r
+ EFI_SMBUS_UDID SmbusDeviceUdid;\r
+} EFI_SMBUS_DEVICE_MAP;\r
\r
-typedef enum _EFI_SMBUS_OPERATION\r
-{\r
+///\r
+/// Smbus Operations\r
+///\r
+typedef enum _EFI_SMBUS_OPERATION {\r
EfiSmbusQuickRead,\r
EfiSmbusQuickWrite,\r
EfiSmbusReceiveByte,\r
EfiSmbusBWBRProcessCall\r
} EFI_SMBUS_OPERATION;\r
\r
+///\r
+/// EFI_SMBUS_DEVICE_COMMAND\r
+///\r
+typedef UINTN EFI_SMBUS_DEVICE_COMMAND;\r
+\r
#endif\r
\r