diff options
author | minwuklee <mlee@nvidia.com> | 2010-12-01 14:34:15 +0900 |
---|---|---|
committer | Bharat Nihalani <bnihalani@nvidia.com> | 2010-12-01 03:54:29 -0800 |
commit | a0f54090dbf76ec1f07410caf302560e00ee46ef (patch) | |
tree | 554be9865de6fa330864217374738b95761af7be /drivers/spi | |
parent | 0d47e62d9e2a08831c40d2debfad7ece6eab30d2 (diff) |
[tegra:dma] set dma burst size for spi/slink
for spi/slink, set dma burst size based on
transfer size.
bug 747979
Change-Id: I8c3c0a0410648a25190847590b9ac0304fb1105f
Reviewed-on: http://git-master/r/11752
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'drivers/spi')
-rwxr-xr-x[-rw-r--r--] | drivers/spi/spi_tegra.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/spi/spi_tegra.c b/drivers/spi/spi_tegra.c index 842ac14f745d..5d7100085a5c 100644..100755 --- a/drivers/spi/spi_tegra.c +++ b/drivers/spi/spi_tegra.c @@ -197,6 +197,13 @@ static void spi_tegra_go(struct spi_tegra_data *tspi) tegra_dma_enqueue_req(tspi->rx_dma, &tspi->rx_dma_req); val |= SLINK_DMA_EN; + + val &= ~SLINK_TX_TRIG_MASK & ~SLINK_RX_TRIG_MASK; + if (tspi->rx_dma_req.size & 0xF) { + val |= SLINK_TX_TRIG_1 | SLINK_RX_TRIG_1; + } else { + val |= SLINK_TX_TRIG_4 | SLINK_RX_TRIG_4; + } spi_tegra_writel(tspi, val, SLINK_DMA_CTL); } |