mirror of https://github.com/acidanthera/audk.git
65 lines
1.8 KiB
C
65 lines
1.8 KiB
C
/** @file
|
|
I2c Bus byte read/write functions.
|
|
|
|
Copyright (c) 2008, Intel Corporation
|
|
All rights reserved. This program and the accompanying materials
|
|
are licensed and made available under the terms and conditions of the BSD License
|
|
which accompanies this distribution. The full text of the license may be found at
|
|
http://opensource.org/licenses/bsd-license.php
|
|
|
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
|
|
**/
|
|
|
|
#include <Protocol/PciIo.h>
|
|
|
|
/**
|
|
Read one byte data on I2C Bus.
|
|
|
|
Read one byte data from the slave device connectet to I2C Bus.
|
|
If Data is NULL, then ASSERT().
|
|
|
|
@param PciIo The pointer to PCI_IO_PROTOCOL.
|
|
@param DeviceAddress Slave device's address.
|
|
@param RegisterAddress The register address on slave device.
|
|
@param Data The pointer to returned data if EFI_SUCCESS returned.
|
|
|
|
@retval EFI_DEVICE_ERROR
|
|
@retval EFI_SUCCESS
|
|
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
I2cReadByte (
|
|
EFI_PCI_IO_PROTOCOL *PciIo,
|
|
UINT8 DeviceAddress,
|
|
UINT8 RegisterAddress,
|
|
UINT8 *Data
|
|
);
|
|
|
|
/**
|
|
Write one byte data onto I2C Bus.
|
|
|
|
Write one byte data to the slave device connectet to I2C Bus.
|
|
If Data is NULL, then ASSERT().
|
|
|
|
@param PciIo The pointer to PCI_IO_PROTOCOL.
|
|
@param DeviceAddress Slave device's address.
|
|
@param RegisterAddress The register address on slave device.
|
|
@param Data The pointer to write data.
|
|
|
|
@retval EFI_DEVICE_ERROR
|
|
@retval EFI_SUCCESS
|
|
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
I2cWriteByte (
|
|
EFI_PCI_IO_PROTOCOL *PciIo,
|
|
UINT8 DeviceAddress,
|
|
UINT8 RegisterAddress,
|
|
UINT8 *Data
|
|
);
|
|
|