[PATCH 1/3] SPI bus core infrastructure

Kate Alhola kate at katix.org
Mon Jul 25 18:38:46 EST 2005


>
> On Jul 23, 2005, at 10:22 AM, Eugene Surovegin wrote:

> ...  and there is more.  Some devices, even when not selected, still use
> the SPI clock for clocking internal logic.  You have to ensure with such
> devices you don't ever run the SPI faster than their spec.  This is
> application specific, but something that has to be considered when there
> are multiple devices on the SPI bus.
>
> Also, many boards use external logic for the assertion of the
> device select, which is necessary if there is more than one device on
> the bus.  Sometimes it's a multiplexer that routes the controller SPI
> select, other times the multiplexer drives the selects directly. In my
> review of the patch, I didn't see anything that would provide for this.

I already made one SPI subsystem implementation. I published
it in end of 2004 with GPL ( http://www.katix.org/spi.php ).
There is still work to done for it but least basic functionality
has been working since.

There is picture how i resolved the CS problem with separeating host,
target driver and CS driver to separate modules.

In this architecture target driver like ( tsc2301 ) requests chipselect
from SPI subsystem and board specefic CS module assigns it. Then the
other SPI host driver like mpc5200psc or mpc5200spi does the actual
SPI transfer.

In this way, only the CS module need to be changed if same processor is
used with diferent boards that use separate PIO lines for SPI CS lines.



Kate





More information about the Linuxppc-embedded mailing list