33#define I2C_DEVICE_SIGNATURE SIGNATURE_32 ('I', '2', 'C', 'D')
34#define I2C_HOST_SIGNATURE SIGNATURE_32 ('I', '2', 'C', 'H')
35#define I2C_REQUEST_SIGNATURE SIGNATURE_32 ('I', '2', 'C', 'R')
40#define TPL_I2C_SYNC TPL_NOTIFY
89#define I2C_DEVICE_CONTEXT_FROM_PROTOCOL(a) CR (a, I2C_DEVICE_CONTEXT, I2cIo, I2C_DEVICE_SIGNATURE)
108 UINTN I2cBusConfiguration;
132#define I2C_REQUEST_FROM_ENTRY(a) CR (a, I2C_REQUEST, Link, I2C_REQUEST_SIGNATURE);
146 UINTN I2cBusConfiguration;
166 BOOLEAN I2cBusConfigurationManagementPending;
189#define I2C_HOST_CONTEXT_FROM_PROTOCOL(a) CR (a, I2C_HOST_CONTEXT, I2cHost, I2C_HOST_SIGNATURE)
260 IN BOOLEAN BuildControllerNode
519 OUT CHAR16 **DriverName
597 OUT CHAR16 **ControllerName
866 OUT CHAR16 **DriverName
944 OUT CHAR16 **ControllerName
EFI_STATUS EFIAPI I2cBusUnload(IN EFI_HANDLE ImageHandle)
EFI_STATUS UnRegisterI2cDevice(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_HANDLE Handle)
EFI_STATUS EFIAPI I2cBusDriverStart(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
EFI_STATUS I2cBusDevicePathAppend(IN I2C_DEVICE_CONTEXT *I2cDeviceContext, IN BOOLEAN BuildControllerNode)
EFI_STATUS EFIAPI I2cHostDriverStart(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
VOID ReleaseI2cDeviceContext(IN I2C_DEVICE_CONTEXT *I2cDeviceContext)
EFI_STATUS EFIAPI I2cHostUnload(IN EFI_HANDLE ImageHandle)
EFI_STATUS EFIAPI I2cHostComponentNameGetDriverName(IN EFI_COMPONENT_NAME2_PROTOCOL *This, IN CHAR8 *Language, OUT CHAR16 **DriverName)
EFI_STATUS EFIAPI I2cBusDriverSupported(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
VOID EFIAPI I2cHostI2cBusConfigurationAvailable(IN EFI_EVENT Event, IN VOID *Context)
EFI_STATUS EFIAPI InitializeI2cHost(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
EFI_STATUS EFIAPI I2cBusQueueRequest(IN CONST EFI_I2C_IO_PROTOCOL *This, IN UINTN SlaveAddressIndex, IN EFI_EVENT Event OPTIONAL, IN EFI_I2C_REQUEST_PACKET *RequestPacket, OUT EFI_STATUS *I2cStatus OPTIONAL)
EFI_STATUS I2cHostRequestEnable(I2C_HOST_CONTEXT *I2cHost)
EFI_STATUS EFIAPI InitializeI2cBus(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
EFI_STATUS EFIAPI I2cHostComponentNameGetControllerName(IN EFI_COMPONENT_NAME2_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
EFI_STATUS EFIAPI I2cBusDriverStop(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
EFI_STATUS EFIAPI I2cHostDriverSupported(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
EFI_STATUS RegisterI2cDevice(IN I2C_BUS_CONTEXT *I2cBus, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
EFI_STATUS EFIAPI I2cHostQueueRequest(IN CONST EFI_I2C_HOST_PROTOCOL *This, IN UINTN I2cBusConfiguration, IN UINTN SlaveAddress, IN EFI_EVENT Event OPTIONAL, IN EFI_I2C_REQUEST_PACKET *RequestPacket, OUT EFI_STATUS *I2cStatus OPTIONAL)
EFI_STATUS EFIAPI I2cHostDriverStop(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
EFI_STATUS EFIAPI I2cBusComponentNameGetControllerName(IN EFI_COMPONENT_NAME2_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
EFI_STATUS I2cHostRequestComplete(I2C_HOST_CONTEXT *I2cHost, EFI_STATUS Status)
VOID EFIAPI I2cHostRequestCompleteEvent(IN EFI_EVENT Event, IN VOID *Context)
EFI_STATUS EFIAPI I2cBusComponentNameGetDriverName(IN EFI_COMPONENT_NAME2_PROTOCOL *This, IN CHAR8 *Language, OUT CHAR16 **DriverName)