Commit | Line | Data |
---|---|---|
81dee67e SM |
1 | /******************************************************************* |
2 | * | |
3 | * Copyright (c) 2007 by Silicon Motion, Inc. (SMI) | |
4 | * | |
5 | * All rights are reserved. Reproduction or in part is prohibited | |
6 | * without the written consent of the copyright owner. | |
7 | * | |
8 | * swi2c.h --- SM750/SM718 DDK | |
9 | * This file contains the definitions for i2c using software | |
10 | * implementation. | |
11 | * | |
12 | *******************************************************************/ | |
13 | #ifndef _SWI2C_H_ | |
14 | #define _SWI2C_H_ | |
15 | ||
16 | /* Default i2c CLK and Data GPIO. These are the default i2c pins */ | |
17 | #define DEFAULT_I2C_SCL 30 | |
18 | #define DEFAULT_I2C_SDA 31 | |
19 | ||
20 | /* | |
21 | * This function initializes the i2c attributes and bus | |
22 | * | |
23 | * Parameters: | |
24 | * i2cClkGPIO - The GPIO pin to be used as i2c SCL | |
25 | * i2cDataGPIO - The GPIO pin to be used as i2c SDA | |
26 | * | |
27 | * Return Value: | |
28 | * -1 - Fail to initialize the i2c | |
29 | * 0 - Success | |
30 | */ | |
f2ea7733 | 31 | long sm750_sw_i2c_init( |
bf36fa2f IA |
32 | unsigned char i2cClkGPIO, |
33 | unsigned char i2cDataGPIO | |
81dee67e SM |
34 | ); |
35 | ||
36 | /* | |
37 | * This function reads the slave device's register | |
38 | * | |
39 | * Parameters: | |
40 | * deviceAddress - i2c Slave device address which register | |
41 | * to be read from | |
42 | * registerIndex - Slave device's register to be read | |
43 | * | |
44 | * Return Value: | |
45 | * Register value | |
46 | */ | |
288836b6 | 47 | unsigned char sm750_sw_i2c_read_reg( |
bf36fa2f IA |
48 | unsigned char deviceAddress, |
49 | unsigned char registerIndex | |
81dee67e SM |
50 | ); |
51 | ||
52 | /* | |
53 | * This function writes a value to the slave device's register | |
54 | * | |
55 | * Parameters: | |
56 | * deviceAddress - i2c Slave device address which register | |
57 | * to be written | |
58 | * registerIndex - Slave device's register to be written | |
59 | * data - Data to be written to the register | |
60 | * | |
61 | * Result: | |
62 | * 0 - Success | |
63 | * -1 - Fail | |
64 | */ | |
d33b4204 | 65 | long sm750_sw_i2c_write_reg( |
bf36fa2f IA |
66 | unsigned char deviceAddress, |
67 | unsigned char registerIndex, | |
68 | unsigned char data | |
81dee67e SM |
69 | ); |
70 | ||
81dee67e | 71 | #endif /* _SWI2C_H_ */ |