Commit 48cb6356 authored by Akhil R's avatar Akhil R Committed by Wolfram Sang
Browse files

i2c: tegra: Add GPCDMA support



Enable support for GPCDMA, which is used in I2C controllers
in Tegra 186 and above. The chips before that used APB DMA.
This change works under the presumption that all chips apart from
those supporting APB DMA is using GPCDMA.

Signed-off-by: default avatarAkhil R <akhilrajeev@nvidia.com>
Reviewed-by: default avatarDmitry Osipenko <digetx@gmail.com>
Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
parent 03d4287a
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -443,11 +443,16 @@ static int tegra_i2c_init_dma(struct tegra_i2c_dev *i2c_dev)
	u32 *dma_buf;
	int err;

	if (!i2c_dev->hw->has_apb_dma || i2c_dev->is_vi)
	if (i2c_dev->is_vi)
		return 0;

	if (!i2c_dev->hw->has_apb_dma) {
		if (!IS_ENABLED(CONFIG_TEGRA20_APB_DMA)) {
		dev_dbg(i2c_dev->dev, "DMA support not enabled\n");
			dev_dbg(i2c_dev->dev, "APB DMA support not enabled\n");
			return 0;
		}
	} else if (!IS_ENABLED(CONFIG_TEGRA186_GPC_DMA)) {
		dev_dbg(i2c_dev->dev, "GPC DMA support not enabled\n");
		return 0;
	}