[DISCUSSION] spi multi chipselect support
From: Sebastian Reichel
Date: Wed Jul 18 2018 - 12:35:36 EST
Hi Mark,
Some SPI slave devices have more than one chip select [0]. Rob suggested
to use the following DT notation for this [1]:
spi-controller {
slave@0 {
reg = <0>, <1>;
};
};
I think this makes sense from a DT point of view, but this needs
quite some changes in the SPI core. I tried to find out, how to
implement the suggestion in the last few days and I see two
possibilities:
1. Register two SPI Linux devices from one DT node. This needs the
fewest changes in SPI core. But we loose the one-to-one mapping
of DT nodes to devices. I have a feeling, that this will backfire.
2. Add support for multiple chip-select to spi_device and modify
the transfer functions to make use of this. Unfortunately this
would require changing all spi controller as far as I can see?
Can you please advise me how to proceed?
Thanks,
-- Sebastian
[0] For example microcontrollers with ISP (in-system programming)
interface, like the NXP Kinetis K20 series or the MRF89XA,
which has one chip-select for configuration register access
and one for FIFO access
[1] https://patchwork.kernel.org/patch/10310109/
Attachment:
signature.asc
Description: PGP signature