]> pilppa.com Git - linux-2.6-omap-h63xx.git/commit
omap2_mcspi: fix PIO RX_ONLY transfer
authorKalle Valo <kalle.valo@nokia.com>
Fri, 11 Jan 2008 17:28:51 +0000 (19:28 +0200)
committerTony Lindgren <tony@atomide.com>
Tue, 15 Jan 2008 23:44:56 +0000 (15:44 -0800)
commit2ae71b94269fa117f637ba01f1f26d978ac2f60a
treec36a07f1e2f1d9ad28a434c827082064eeb18230
parent9f31780c9c10848fcebed98c92c837945623dc7e
omap2_mcspi: fix PIO RX_ONLY transfer

Before transmission of the last word in PIO RX_ONLY mode rx+tx mode
is enabled:

/* prevent last RX_ONLY read from triggering
 * more word i/o: switch to rx+tx
 */
if (c == 0 && tx == NULL)
mcspi_write_cs_reg(spi,
OMAP2_MCSPI_CHCONF0, l);

But because c is decremented after the test, c will never be zero and
rx+tx will not be enabled. This breaks RX_ONLY mode PIO transfers.

Fix it by decrementing c already in the beginning of the loop.

Signed-off-by: Kalle Valo <kalle.valo@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
drivers/spi/omap2_mcspi.c