Unfortunately integrating pinctrl is proving harder than expected to port to the Raspberry Pi. Briefly, pinctrl is the module that controls which module in the SOC is connected to which IO pin. e.g. Is a pin being used for GPIO or is for the SPI module.
As such, I’ll probably just post the patch for the spi driver and pinctrl will have to wait.
However, in the meantime, here’s a new design for a buffered I/O interface. It has 8 inputs, 8 outputs (open collector, each able to sink a reasonable amount of current) with leds, buttons and a couple of relays thrown in. The design’s gone of to the PCB house today, so it should be a couple of days before the real hardware arrives. Enough time to finish the SPI kernel driver maybe!