Re: [PATCH/RFC 2/6] spi: core: Add support for registering SPI slave controllers

From: Mark Brown
Date: Mon Jul 18 2016 - 13:03:09 EST


On Wed, Jun 22, 2016 at 03:42:05PM +0200, Geert Uytterhoeven wrote:
> Add support for registering SPI slave controllers using the existing SPI
> master framework:
> - SPI slave controllers must set the SPI_MASTER_IS_SLAVE flag in
> spi_master.flags,
> - The "cs-gpios" property is ignored,
> - The bus is described in DT as having a single slave node, "reg" and
> "spi-max-frequency" properties are ignored.
>
> From the point of view of an SPI slave protocol handler, an SPI slave
> controller looks exactly like an ordinary SPI master controller.

I think this needs a *bit* more fleshing out around cancellation of
transfers, the inability to remove any of the modules due to them being
blocked in SPI calls. Probably just an API call that allows us to
inject a timeout/cancellation but I think it does need to be there and
used before we start getting bad practice propagating around.

I'm also wondering about supporting varible length transfers but that's
going to be rather controller specific I fear and I'm not sure there's
much demand.

Otherwise the basic idea looks OK.

Attachment: signature.asc
Description: PGP signature