3 Copyright (c) 1999 - 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
28 #define EFI_SMBUS_HC_PROTOCOL_GUID \
30 0xe49d33ed, 0x513d, 0x4634, 0xb6, 0x98, 0x6f, 0x55, 0xaa, 0x75, 0x1c, 0x1b \
33 EFI_FORWARD_DECLARATION (EFI_SMBUS_HC_PROTOCOL
);
37 (EFIAPI
*EFI_SMBUS_HC_EXECUTE_OPERATION
) (
38 IN EFI_SMBUS_HC_PROTOCOL
* This
,
39 IN EFI_SMBUS_DEVICE_ADDRESS SlaveAddress
,
40 IN EFI_SMBUS_DEVICE_COMMAND Command
,
41 IN EFI_SMBUS_OPERATION Operation
,
49 (EFIAPI
*EFI_SMBUS_NOTIFY_FUNCTION
) (
50 IN EFI_SMBUS_DEVICE_ADDRESS SlaveAddress
,
55 // If ArpAll is TRUE, SmbusUdid/SlaveAddress is Optional.
56 // If FALSE, ArpDevice will enum SmbusUdid and the address will be at SlaveAddress
60 (EFIAPI
*EFI_SMBUS_HC_PROTOCOL_ARP_DEVICE
) (
61 IN EFI_SMBUS_HC_PROTOCOL
* This
,
63 IN EFI_SMBUS_UDID
* SmbusUdid
, OPTIONAL
64 IN OUT EFI_SMBUS_DEVICE_ADDRESS
* SlaveAddress OPTIONAL
70 (EFIAPI
*EFI_SMBUS_HC_PROTOCOL_GET_ARP_MAP
) (
71 IN EFI_SMBUS_HC_PROTOCOL
* This
,
73 IN OUT EFI_SMBUS_DEVICE_MAP
**SmbusDeviceMap
78 (EFIAPI
*EFI_SMBUS_HC_PROTOCOL_NOTIFY
) (
79 IN EFI_SMBUS_HC_PROTOCOL
* This
,
80 IN EFI_SMBUS_DEVICE_ADDRESS SlaveAddress
,
82 IN EFI_SMBUS_NOTIFY_FUNCTION NotifyFunction
85 typedef struct _EFI_SMBUS_HC_PROTOCOL
{
86 EFI_SMBUS_HC_EXECUTE_OPERATION Execute
;
87 EFI_SMBUS_HC_PROTOCOL_ARP_DEVICE ArpDevice
;
88 EFI_SMBUS_HC_PROTOCOL_GET_ARP_MAP GetArpMap
;
89 EFI_SMBUS_HC_PROTOCOL_NOTIFY Notify
;
90 } EFI_SMBUS_HC_PROTOCOL
;
92 extern EFI_GUID gEfiSmbusProtocolGuid
;