[PATCH v1 02/36] dt-bindings: spi: support non-spi bindings as SPI slaves

Sam Ravnborg sam at ravnborg.org
Mon Mar 16 13:28:44 UTC 2020


Hi Mark.

On Mon, Mar 16, 2020 at 12:02:41PM +0000, Mark Brown wrote:
> On Sun, Mar 15, 2020 at 02:43:42PM +0100, Sam Ravnborg wrote:
> 
> > Independent bindings can be SPI slaves which for example is
> > the case for several panel bindings.
> 
> What is an "independent binding"?

For several panels we have device trees that looks like this:

spi {
    #address-cells = <1>;
    #size-cells = <0>;

    panel at 0 {
        compatible = "kingdisplay,kd035g6-54nt";
        reg = <0>;

        spi-max-frequency = <3125000>;
        spi-3wire;
        spi-cs-high;
	...


The bindings are child of the spi controller node, but not specified
in the same binding file as the spi controller node.

A lot of bindings repeats the descriptions of (some of) the
pi-slave properties.
To avoid introducing yet another set of redundant and maybe incomplete
SPI slave property descriptions I moved the relevant properties
from spi-controller.yaml to spi-slave.yaml.

So SPI slaves can now reference spi-slave.yaml to get access to
the SPI slave properties - and the copies can be avoided.
Likewise spi-controller.yml now references spi-slave.yaml.

This was the best way I saw it could be done.

This approach is used in several bindings in this patch set.

	Sam


More information about the dri-devel mailing list