]> git.karo-electronics.de Git - karo-tx-linux.git/commit
i2c: mxs: remove broken PIOQUEUE support
authorWolfram Sang <w.sang@pengutronix.de>
Fri, 12 Oct 2012 10:55:16 +0000 (11:55 +0100)
committerWolfram Sang <w.sang@pengutronix.de>
Thu, 1 Nov 2012 22:53:45 +0000 (23:53 +0100)
commit5365c0efe6f41f2775b1b994204aa47b27bb0651
treef28ec3098f7ad74c31bfefdd97915ecde4e5a956
parent8f0d8163b50e01f398b14bcd4dc039ac5ab18d64
i2c: mxs: remove broken PIOQUEUE support

This I2C master can do DMA and PIOQUEUE (PIO with FIFO). Originally,
only PIOQEUE was supported and it had issues, then DMA support was added
this cycle. The original intention was to keep PIOQUEUE since it has
less overhead what is nice for small transfers. However, runtime
switching between PIOQEUE and DMA depending on the transfer size never
worked despite a lot of trying. Since PIOQUEUE mode itself was flaky
(polling at places where interrupts failed to work) and the
implementation also imposed a size limit for transfers, it is best to
remove the support, so users don't fall over its limitations. It also
makes the driver a lot cleaner and more robust. If somebody really wants
less overhead, plain PIO mode could still be implemented with the
addidtional advantage that this mode is also available on MX23, too.

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