OSDN Git Service

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)
commit82fa63bd6b87969dfde0139dbede243380b087d6
treef28ec3098f7ad74c31bfefdd97915ecde4e5a956
parent8f0d8163b50e01f398b14bcd4dc039ac5ab18d64
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