1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2007 by Silicon Motion, Inc. (SMI)
5 * All rights are reserved. Reproduction or in part is prohibited
6 * without the written consent of the copyright owner.
8 * swi2c.h --- SM750/SM718 DDK
9 * This file contains the definitions for i2c using software
17 /* Default i2c CLK and Data GPIO. These are the default i2c pins */
18 #define DEFAULT_I2C_SCL 30
19 #define DEFAULT_I2C_SDA 31
22 * This function initializes the i2c attributes and bus
25 * i2cClkGPIO - The GPIO pin to be used as i2c SCL
26 * i2cDataGPIO - The GPIO pin to be used as i2c SDA
29 * -1 - Fail to initialize the i2c
32 long sm750_sw_i2c_init(unsigned char clk_gpio, unsigned char data_gpio);
35 * This function reads the slave device's register
38 * addr - i2c Slave device address which register
40 * reg - Slave device's register to be read
45 unsigned char sm750_sw_i2c_read_reg(unsigned char addr, unsigned char reg);
48 * This function writes a value to the slave device's register
51 * addr - i2c Slave device address which register
53 * reg - Slave device's register to be written
54 * data - Data to be written to the register
60 long sm750_sw_i2c_write_reg(unsigned char addr,
64 #endif /* _SWI2C_H_ */