]> git.baikalelectronics.ru Git - kernel.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>
Fri, 2 Nov 2012 09:52:32 +0000 (10:52 +0100)
commit2edace02c36b1755501b1946190d12fce057cda4
treef28ec3098f7ad74c31bfefdd97915ecde4e5a956
parent47e9b4f8d477fa4aee4b58e1afe93ce35e1d294e
i2c: mxs: remove broken PIOQUEUE support

This I2C master can do DMA and PIOQUEUE (PIO with FIFO). Originally,
only PIOQUEUE 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