Re: [PATCH 5/5] Blackfin SPI Driver: Make mmc_spi driver work onBlackfin

From: Andrew Morton
Date: Thu Feb 05 2009 - 17:14:10 EST


On Thu, 5 Feb 2009 18:07:33 +0800
Bryan Wu <cooloney@xxxxxxxxxx> wrote:

> 1. Rewrite of the non-dma data transfer functions to use only ONE
> mode of TIMOD (TIMOD=0x1). With TIMOD=0, it was not possible to set
> the TX bit pattern. So the TDBR = 0xFFFF inside the read calls won't
> work.
>
> 2. Clear SPI_RDBR before reading and before duplex transfer. Otherwise
> the garbage data in RDBR will get read. Since mmc_spi uses a lot of
> duplex transfers, this is the main cause of mmc_spi failure.
>
> 3. Poll RXS for transfer completion. Polling SPIF or TXS cannot
> guarantee transfer completion. This may interrupt a transfer before
> it is finished. Also this may leave garbage data in buffer and
> affect next transfer.
>
> [Yi Li <yi.li@xxxxxxxxxx>: add a field "u16 idle_tx_val" in "struct
> bfin5xx_spi_chip" to specify the value to transmit if no TX value
> is supplied.]


again, driver-core has destroyed your patch.

There was no _need_ to take the unusual and undesirable step of
modifying SPI via an unrelated tree.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/