Re: [PATCH 2/2 v2] SPI: spi-pxa2xx: SPI support for Intel Quark X1000

From: Bryan O'Donoghue
Date: Wed Oct 08 2014 - 05:02:23 EST


On 08/10/14 08:48, Chen, Alvin wrote:

Now, we have another board which can support 4 slave spi per master, but not only Galileo. Since that board is not public, after discussing with team, we decide to make the
upstream code to support '1'.

I will change it back to
.num_chipselect = 1,

Hi Alvin.

The important thing in terms of Galileo is to ensure that a GPIO can be used for chip-select.

The user-space API ported from Arduino to Linux wants to control it's own chip-select directly - so the internal chip-select of the Quark SPI master can - and does de-assert while doing SPI transactions on Galileo. The CS on the master is tied to FIFO occupancy - so at higher bit-rates we can fail to keep the FIFO occupied :(

That doesn't matter though, because the pinned out SPI:CS on the Arduino header is a GPIO.

From the perspective of the Arduino code in user-space and the slave hardware @ the other end of the SPI bus - we see a nice and consistent chip-select for the entire duration of the SPI transaction - even though the actual SPI:CS coming from the SoC can *waggle* - when FIFOs go empty.

IMO - so long as you've tested on Galileo and seen working SPI - you're good to go anyway.

Bryan
--
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/