TianoCore EDK2 master
|
#include <Pi/PiI2c.h>
Go to the source code of this file.
Data Structures | |
struct | _EFI_I2C_ENUMERATE_PROTOCOL |
Macros | |
#define | EFI_I2C_ENUMERATE_PROTOCOL_GUID { 0xda8cd7c4, 0x1c00, 0x49e2, { 0x80, 0x3e, 0x52, 0x14, 0xe7, 0x01, 0x89, 0x4c }} |
Typedefs | |
typedef struct _EFI_I2C_ENUMERATE_PROTOCOL | EFI_I2C_ENUMERATE_PROTOCOL |
typedef EFI_STATUS(EFIAPI * | EFI_I2C_ENUMERATE_PROTOCOL_ENUMERATE) (IN CONST EFI_I2C_ENUMERATE_PROTOCOL *This, IN OUT CONST EFI_I2C_DEVICE **Device) |
typedef EFI_STATUS(EFIAPI * | EFI_I2C_ENUMERATE_PROTOCOL_GET_BUS_FREQUENCY) (IN CONST EFI_I2C_ENUMERATE_PROTOCOL *This, IN UINTN I2cBusConfiguration, OUT UINTN *BusClockHertz) |
Variables | |
EFI_GUID | gEfiI2cEnumerateProtocolGuid |
I2C Device Enumerate Protocol as defined in the PI 1.3 specification.
This protocol supports the enumerations of device on the I2C bus.
Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file I2cEnumerate.h.
#define EFI_I2C_ENUMERATE_PROTOCOL_GUID { 0xda8cd7c4, 0x1c00, 0x49e2, { 0x80, 0x3e, 0x52, 0x14, 0xe7, 0x01, 0x89, 0x4c }} |
Definition at line 19 of file I2cEnumerate.h.
typedef struct _EFI_I2C_ENUMERATE_PROTOCOL EFI_I2C_ENUMERATE_PROTOCOL |
Definition at line 21 of file I2cEnumerate.h.
typedef EFI_STATUS(EFIAPI * EFI_I2C_ENUMERATE_PROTOCOL_ENUMERATE) (IN CONST EFI_I2C_ENUMERATE_PROTOCOL *This, IN OUT CONST EFI_I2C_DEVICE **Device) |
Enumerate the I2C devices
This function enables the caller to traverse the set of I2C devices on an I2C bus.
[in] | This | The platform data for the next device on the I2C bus was returned successfully. |
[in,out] | Device | Pointer to a buffer containing an EFI_I2C_DEVICE structure. Enumeration is started by setting the initial EFI_I2C_DEVICE structure pointer to NULL. The buffer receives an EFI_I2C_DEVICE structure pointer to the next I2C device. |
EFI_SUCCESS | The platform data for the next device on the I2C bus was returned successfully. |
EFI_INVALID_PARAMETER | Device is NULL |
EFI_NO_MAPPING | *Device does not point to a valid EFI_I2C_DEVICE structure returned in a previous call Enumerate(). |
Definition at line 47 of file I2cEnumerate.h.
typedef EFI_STATUS(EFIAPI * EFI_I2C_ENUMERATE_PROTOCOL_GET_BUS_FREQUENCY) (IN CONST EFI_I2C_ENUMERATE_PROTOCOL *This, IN UINTN I2cBusConfiguration, OUT UINTN *BusClockHertz) |
Get the requested I2C bus frequency for a specified bus configuration.
This function returns the requested I2C bus clock frequency for the I2cBusConfiguration. This routine is provided for diagnostic purposes and is meant to be called after calling Enumerate to get the I2cBusConfiguration value.
[in] | This | Pointer to an EFI_I2C_ENUMERATE_PROTOCOL structure. |
[in] | I2cBusConfiguration | I2C bus configuration to access the I2C device |
[out] | *BusClockHertz | Pointer to a buffer to receive the I2C bus clock frequency in Hertz |
EFI_SUCCESS | The I2C bus frequency was returned successfully. |
EFI_INVALID_PARAMETER | BusClockHertz was NULL |
EFI_NO_MAPPING | Invalid I2cBusConfiguration value |
Definition at line 75 of file I2cEnumerate.h.
|
extern |
Reference to variable defined in the .DEC file