GPIO chip select support

Thanks for the poke. I've been meaning to send this set out again anyways.

This is the patch I am currently using (on top of v3.0). Conceptually it's
quite similar to the first patches I sent out but some implementation details
were slightly reworked to account for the generalization of the McSPI driver to
other silicon.

I would say that the patch is close to mergable save the fact that there is
currently no clean way to set up GPIO CS pins from a board file. I'll send the
horrible hack I currently use shortly. If anyone has any ideas on how this
might be done cleanly please let me know. It's sad that the mere lack of a
configuration interface is the reason this isn't upstream.


- Ben

Many applications require more chip select lines than the board or
processor allow. Introduce a mechanism to allow use of GPIO pins as
chip select lines with the McSPI controller. To use this
one simply provides a table mapping CS line numbers to GPIO numbers


Signed-off-by: Ben Gamari <>

Hi Ben,

The McSPI1 has got “num_cs” as 4.
I would like to use McSPI1 to select my 3 chips based on the two GPIO pins.

Could you please give me some pointers on this.

Venkat Raju.