diff options
Diffstat (limited to 'include/linux/i2c-tegra.h')
-rw-r--r-- | include/linux/i2c-tegra.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/include/linux/i2c-tegra.h b/include/linux/i2c-tegra.h index 9c85da49857..2b200c49acf 100644 --- a/include/linux/i2c-tegra.h +++ b/include/linux/i2c-tegra.h | |||
@@ -4,6 +4,8 @@ | |||
4 | * Copyright (C) 2010 Google, Inc. | 4 | * Copyright (C) 2010 Google, Inc. |
5 | * Author: Colin Cross <ccross@android.com> | 5 | * Author: Colin Cross <ccross@android.com> |
6 | * | 6 | * |
7 | * Copyright (C) 2010-2011 NVIDIA Corporation | ||
8 | * | ||
7 | * This software is licensed under the terms of the GNU General Public | 9 | * This software is licensed under the terms of the GNU General Public |
8 | * License version 2, as published by the Free Software Foundation, and | 10 | * License version 2, as published by the Free Software Foundation, and |
9 | * may be copied, distributed, and modified under those terms. | 11 | * may be copied, distributed, and modified under those terms. |
@@ -18,8 +20,35 @@ | |||
18 | #ifndef _LINUX_I2C_TEGRA_H | 20 | #ifndef _LINUX_I2C_TEGRA_H |
19 | #define _LINUX_I2C_TEGRA_H | 21 | #define _LINUX_I2C_TEGRA_H |
20 | 22 | ||
23 | #include <mach/pinmux.h> | ||
24 | |||
25 | #define TEGRA_I2C_MAX_BUS 3 | ||
26 | |||
21 | struct tegra_i2c_platform_data { | 27 | struct tegra_i2c_platform_data { |
28 | int adapter_nr; | ||
29 | int bus_count; | ||
30 | const struct tegra_pingroup_config *bus_mux[TEGRA_I2C_MAX_BUS]; | ||
31 | int bus_mux_len[TEGRA_I2C_MAX_BUS]; | ||
32 | unsigned long bus_clk_rate[TEGRA_I2C_MAX_BUS]; | ||
33 | bool is_dvc; | ||
34 | bool is_clkon_always; | ||
35 | int retries; | ||
36 | int timeout; /* in jiffies */ | ||
37 | u16 slave_addr; | ||
38 | int scl_gpio[TEGRA_I2C_MAX_BUS]; | ||
39 | int sda_gpio[TEGRA_I2C_MAX_BUS]; | ||
40 | int (*arb_recovery)(int scl_gpio, int sda_gpio); | ||
41 | bool is_high_speed_enable; | ||
42 | u16 hs_master_code; | ||
43 | }; | ||
44 | |||
45 | struct tegra_i2c_slave_platform_data { | ||
46 | int adapter_nr; | ||
47 | const struct tegra_pingroup_config *pinmux; | ||
48 | int bus_mux_len; | ||
22 | unsigned long bus_clk_rate; | 49 | unsigned long bus_clk_rate; |
50 | int max_rx_buffer_size; | ||
51 | int max_tx_buffer_size; | ||
23 | }; | 52 | }; |
24 | 53 | ||
25 | #endif /* _LINUX_I2C_TEGRA_H */ | 54 | #endif /* _LINUX_I2C_TEGRA_H */ |