[U-Boot] SPI and spi_cs_activate

Wolfgang Wegner
2010-01-29T16:18:10Z

Hi Mike,

On Fri, Jan 29, 2010 at 11:11:36AM -0500, Mike Frysinger wrote:
> On Friday 29 January 2010 10:59:28 Wolfgang Wegner wrote:
> > I am trying to get the spi_mmc driver by Robert Selberg and Hans Eklund
> > to run on my new Coldfire board. (The driver was posted as a patch some
> > time ago, clearly marked as not ready for mainline. I just did not figure
> > out the correct search term to give the message ID.)
> >
> > Now I am running into problems because the driver uses spi_cs_[de]activate,
> > which is rather useless on coldfire which does automatic cs.
> >
> > Looking through other drivers' code it seems to me that spi_cs_[de]activate
> > was never meant to be called from anybody else but some special SPI
> > drivers that can not aotumatically control cs lines or for systems
> > where SPI is done in software and so setting the appropriate GPIOs
> > is handed over to special board-dependent code.
>
> there are plenty of SPI controllers which allow the CS to be manually
> controlled. this isnt a "special" driver.

OK, of course controlling CS manually is possible on most systems (via
GPIO). What I meant is that most systems do not care to control it
automatically (mostly for complexity reasons or because of real
HW limitations, as far as I understand).

> the MMC/SPI driver was written on a Blackfin system. it working on any other
> system is coincidental as a result of leveraging the common frameworks. feel
> free to submit fixes.

This is my intention in case I understand in which direction I have
to fix. (And in case I then get it to work in such a way, of course.)

So, maybe a more clear question:

Are all SPI drivers supposed to supply functions to manually control
the CS lines? If so, what means shall be provided to disable automatic
control?

Regards,
Wolfgang