]> git.baikalelectronics.ru Git - kernel.git/commit
i2c: mxs: Add PIO and mixed-DMA support
authorMarek Vasut <marex@denx.de>
Thu, 24 Jan 2013 12:56:21 +0000 (13:56 +0100)
committerWolfram Sang <w.sang@pengutronix.de>
Mon, 28 Jan 2013 04:26:45 +0000 (05:26 +0100)
commitf5bdf3966a618646e6acb5b51935413c89dca848
tree411dd9d8d3df4b8e4ac6833f23ac94dcb0b33ff0
parent9261821730b2c7793ceacd9aaad4cd388f7ca3bf
i2c: mxs: Add PIO and mixed-DMA support

Add support for the PIO mode and mixed PIO/DMA mode support. The mixed
PIO/DMA is the default mode of operation. This shall leverage overhead
that the driver creates due to setting up DMA descriptors even for very
short transfers.

The current boundary between PIO/DMA 8 bytes, transfers shorter than 8
bytes are transfered by PIO, longer transfers use DMA. The performance
of write transfers remains unchanged, while there is a minor improvement
of read performance. Reading 16KB EEPROM with DMA-only operations gives
a read speed of 39.5KB/s, while with then new mixed-mode the speed is
blazing 40.6KB/s.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
drivers/i2c/busses/i2c-mxs.c