]> git.proxmox.com Git - mirror_edk2.git/blame_incremental - MdePkg/Include/IndustryStandard/SmBus.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / SmBus.h
... / ...
CommitLineData
1/** @file\r
2 This file declares the SMBus definitions defined in SmBus Specification V2.0\r
3 and defined in PI1.0 specification volume 5.\r
4\r
5 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
6 SPDX-License-Identifier: BSD-2-Clause-Patent\r
7\r
8**/\r
9\r
10#ifndef _SMBUS_H_\r
11#define _SMBUS_H_\r
12\r
13///\r
14/// UDID of SMBUS device.\r
15///\r
16typedef struct {\r
17 UINT32 VendorSpecificId;\r
18 UINT16 SubsystemDeviceId;\r
19 UINT16 SubsystemVendorId;\r
20 UINT16 Interface;\r
21 UINT16 DeviceId;\r
22 UINT16 VendorId;\r
23 UINT8 VendorRevision;\r
24 UINT8 DeviceCapabilities;\r
25} EFI_SMBUS_UDID;\r
26\r
27///\r
28/// Smbus Device Address\r
29///\r
30typedef struct {\r
31 ///\r
32 /// The SMBUS hardware address to which the SMBUS device is preassigned or allocated.\r
33 ///\r
34 UINTN SmbusDeviceAddress : 7;\r
35} EFI_SMBUS_DEVICE_ADDRESS;\r
36\r
37typedef struct {\r
38 ///\r
39 /// The SMBUS hardware address to which the SMBUS device is preassigned or\r
40 /// allocated. Type EFI_SMBUS_DEVICE_ADDRESS is defined in EFI_PEI_SMBUS2_PPI.Execute().\r
41 ///\r
42 EFI_SMBUS_DEVICE_ADDRESS SmbusDeviceAddress;\r
43 ///\r
44 /// The SMBUS Unique Device Identifier (UDID) as defined in EFI_SMBUS_UDID.\r
45 /// Type EFI_SMBUS_UDID is defined in EFI_PEI_SMBUS2_PPI.ArpDevice().\r
46 ///\r
47 EFI_SMBUS_UDID SmbusDeviceUdid;\r
48} EFI_SMBUS_DEVICE_MAP;\r
49\r
50///\r
51/// Smbus Operations\r
52///\r
53typedef enum _EFI_SMBUS_OPERATION {\r
54 EfiSmbusQuickRead,\r
55 EfiSmbusQuickWrite,\r
56 EfiSmbusReceiveByte,\r
57 EfiSmbusSendByte,\r
58 EfiSmbusReadByte,\r
59 EfiSmbusWriteByte,\r
60 EfiSmbusReadWord,\r
61 EfiSmbusWriteWord,\r
62 EfiSmbusReadBlock,\r
63 EfiSmbusWriteBlock,\r
64 EfiSmbusProcessCall,\r
65 EfiSmbusBWBRProcessCall\r
66} EFI_SMBUS_OPERATION;\r
67\r
68///\r
69/// EFI_SMBUS_DEVICE_COMMAND\r
70///\r
71typedef UINTN EFI_SMBUS_DEVICE_COMMAND;\r
72\r
73#endif\r