+++ /dev/null
-/*++\r
-\r
-Copyright (c) 1999 - 2006, 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
-\r
-Module Name:\r
-\r
- Smbus.h\r
- \r
-Abstract:\r
-\r
- Smbus PPI as defined in EFI 2.0\r
-\r
---*/\r
-\r
-#ifndef _PEI_SMBUS_PPI_H\r
-#define _PEI_SMBUS_PPI_H\r
-\r
-#include "EfiSmbus.h"\r
-\r
-#define PEI_SMBUS_PPI_GUID \\r
- { \\r
- 0xabd42895, 0x78cf, 0x4872, {0x84, 0x44, 0x1b, 0x5c, 0x18, 0xb, 0xfb, 0xda} \\r
- }\r
-\r
-EFI_FORWARD_DECLARATION (PEI_SMBUS_PPI);\r
-\r
-typedef\r
-EFI_STATUS\r
-(EFIAPI *PEI_SMBUS_PPI_EXECUTE_OPERATION) (\r
- IN EFI_PEI_SERVICES **PeiServices,\r
- IN PEI_SMBUS_PPI * This,\r
- IN EFI_SMBUS_DEVICE_ADDRESS SlaveAddress,\r
- IN EFI_SMBUS_DEVICE_COMMAND Command,\r
- IN EFI_SMBUS_OPERATION Operation,\r
- IN BOOLEAN PecCheck,\r
- IN OUT UINTN *Length,\r
- IN OUT VOID *Buffer\r
- );\r
-\r
-\r
-typedef\r
-EFI_STATUS\r
-(EFIAPI *PEI_SMBUS_NOTIFY_FUNCTION) (\r
- IN EFI_PEI_SERVICES **PeiServices,\r
- IN PEI_SMBUS_PPI * SmbusPpi,\r
- IN EFI_SMBUS_DEVICE_ADDRESS SlaveAddress,\r
- IN UINTN Data\r
- );\r
-\r
-//\r
-// If ArpAll is TRUE, SmbusUdid/SlaveAddress is Optional.\r
-// If FALSE, ArpDevice will enum SmbusUdid and the address will be at SlaveAddress\r
-//\r
-typedef\r
-EFI_STATUS\r
-(EFIAPI *PEI_SMBUS_PPI_ARP_DEVICE) (\r
- IN EFI_PEI_SERVICES **PeiServices,\r
- IN PEI_SMBUS_PPI * This,\r
- IN BOOLEAN ArpAll,\r
- IN EFI_SMBUS_UDID * SmbusUdid, OPTIONAL\r
- IN OUT EFI_SMBUS_DEVICE_ADDRESS * SlaveAddress OPTIONAL\r
- );\r
-\r
-\r
-typedef\r
-EFI_STATUS\r
-(EFIAPI *PEI_SMBUS_PPI_GET_ARP_MAP) (\r
- IN EFI_PEI_SERVICES **PeiServices,\r
- IN PEI_SMBUS_PPI * This,\r
- IN OUT UINTN *Length,\r
- IN OUT EFI_SMBUS_DEVICE_MAP **SmbusDeviceMap\r
- );\r
-\r
-typedef\r
-EFI_STATUS\r
-(EFIAPI *PEI_SMBUS_PPI_NOTIFY) (\r
- IN EFI_PEI_SERVICES **PeiServices,\r
- IN PEI_SMBUS_PPI * This,\r
- IN EFI_SMBUS_DEVICE_ADDRESS SlaveAddress,\r
- IN UINTN Data,\r
- IN PEI_SMBUS_NOTIFY_FUNCTION NotifyFunction\r
- );\r
-\r
-struct _PEI_SMBUS_PPI {\r
- PEI_SMBUS_PPI_EXECUTE_OPERATION Execute;\r
- PEI_SMBUS_PPI_ARP_DEVICE ArpDevice;\r
- PEI_SMBUS_PPI_GET_ARP_MAP GetArpMap;\r
- PEI_SMBUS_PPI_NOTIFY Notify;\r
-};\r
-\r
-extern EFI_GUID gPeiSmbusPpiGuid;\r
-\r
-#endif\r