diff options
| -rw-r--r-- | drivers/i2c/busses/i2c-tegra.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/i2c/busses/i2c-tegra.c b/drivers/i2c/busses/i2c-tegra.c index c01aeb864b5b..6d2100d6bc5d 100644 --- a/drivers/i2c/busses/i2c-tegra.c +++ b/drivers/i2c/busses/i2c-tegra.c | |||
| @@ -154,6 +154,16 @@ enum msg_end_type { | |||
| 154 | * @clk_divisor_std_fast_mode: Clock divisor in standard/fast mode. It is | 154 | * @clk_divisor_std_fast_mode: Clock divisor in standard/fast mode. It is |
| 155 | * applicable if there is no fast clock source i.e. single clock | 155 | * applicable if there is no fast clock source i.e. single clock |
| 156 | * source. | 156 | * source. |
| 157 | * @clk_divisor_fast_plus_mode: Clock divisor in fast mode plus. It is | ||
| 158 | * applicable if there is no fast clock source (i.e. single | ||
| 159 | * clock source). | ||
| 160 | * @has_multi_master_mode: The I2C controller supports running in single-master | ||
| 161 | * or multi-master mode. | ||
| 162 | * @has_slcg_override_reg: The I2C controller supports a register that | ||
| 163 | * overrides the second level clock gating. | ||
| 164 | * @has_mst_fifo: The I2C controller contains the new MST FIFO interface that | ||
| 165 | * provides additional features and allows for longer messages to | ||
| 166 | * be transferred in one go. | ||
| 157 | */ | 167 | */ |
| 158 | struct tegra_i2c_hw_feature { | 168 | struct tegra_i2c_hw_feature { |
| 159 | bool has_continue_xfer_support; | 169 | bool has_continue_xfer_support; |
| @@ -175,9 +185,11 @@ struct tegra_i2c_hw_feature { | |||
| 175 | * @adapter: core I2C layer adapter information | 185 | * @adapter: core I2C layer adapter information |
| 176 | * @div_clk: clock reference for div clock of I2C controller | 186 | * @div_clk: clock reference for div clock of I2C controller |
| 177 | * @fast_clk: clock reference for fast clock of I2C controller | 187 | * @fast_clk: clock reference for fast clock of I2C controller |
| 188 | * @rst: reset control for the I2C controller | ||
| 178 | * @base: ioremapped registers cookie | 189 | * @base: ioremapped registers cookie |
| 179 | * @cont_id: I2C controller ID, used for packet header | 190 | * @cont_id: I2C controller ID, used for packet header |
| 180 | * @irq: IRQ number of transfer complete interrupt | 191 | * @irq: IRQ number of transfer complete interrupt |
| 192 | * @irq_disabled: used to track whether or not the interrupt is enabled | ||
| 181 | * @is_dvc: identifies the DVC I2C controller, has a different register layout | 193 | * @is_dvc: identifies the DVC I2C controller, has a different register layout |
| 182 | * @msg_complete: transfer completion notifier | 194 | * @msg_complete: transfer completion notifier |
| 183 | * @msg_err: error code for completed message | 195 | * @msg_err: error code for completed message |
| @@ -185,6 +197,9 @@ struct tegra_i2c_hw_feature { | |||
| 185 | * @msg_buf_remaining: size of unsent data in the message buffer | 197 | * @msg_buf_remaining: size of unsent data in the message buffer |
| 186 | * @msg_read: identifies read transfers | 198 | * @msg_read: identifies read transfers |
| 187 | * @bus_clk_rate: current I2C bus clock rate | 199 | * @bus_clk_rate: current I2C bus clock rate |
| 200 | * @clk_divisor_non_hs_mode: clock divider for non-high-speed modes | ||
| 201 | * @is_multimaster_mode: track if I2C controller is in multi-master mode | ||
| 202 | * @xfer_lock: lock to serialize transfer submission and processing | ||
| 188 | */ | 203 | */ |
| 189 | struct tegra_i2c_dev { | 204 | struct tegra_i2c_dev { |
| 190 | struct device *dev; | 205 | struct device *dev; |
