Message ID | 1470402714-10798-1-git-send-email-fabien.lahoudere@collabora.co.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Aug 05, 2016 at 03:11:53PM +0200, Fabien Lahoudere wrote: > Adding spidev in the compatible list, let configure spidev from device tree > instead of C source code. I'm not keen on this. It ties the hardware description to today's use-case, and leaves the DT without information regarding the particuarl device. The binding is also written in terms of the userspace interface, which is backwards. So NAK to this as-is. Thanks, Mark. > > Signed-off-by: Fabien Lahoudere <fabien.lahoudere@collabora.co.uk> > --- > Documentation/devicetree/bindings/spi/spidev.txt | 16 ++++++++++++++++ > drivers/spi/spidev.c | 1 + > 2 files changed, 17 insertions(+) > create mode 100644 Documentation/devicetree/bindings/spi/spidev.txt > > diff --git a/Documentation/devicetree/bindings/spi/spidev.txt b/Documentation/devicetree/bindings/spi/spidev.txt > new file mode 100644 > index 0000000..23200f2 > --- /dev/null > +++ b/Documentation/devicetree/bindings/spi/spidev.txt > @@ -0,0 +1,16 @@ > +* SPIDEV > + > +spidev is a device driver to access to SPI devices using normal userspace I/O calls. > +To make an SPI device compatible with this drivers add: > + > +Required properties: > +- compatible : should be "spidev". > + > +Example: > + > +spidev0: spi@0 { > + compatible = "spidev"; > + reg = <0>; > + spi-max-frequency = <1000000>; > + status = "okay"; > +}; > diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c > index 2e05046..d780491 100644 > --- a/drivers/spi/spidev.c > +++ b/drivers/spi/spidev.c > @@ -696,6 +696,7 @@ static struct class *spidev_class; > static const struct of_device_id spidev_dt_ids[] = { > { .compatible = "rohm,dh2228fv" }, > { .compatible = "lineartechnology,ltc2488" }, > + { .compatible = "spidev" }, > {}, > }; > MODULE_DEVICE_TABLE(of, spidev_dt_ids); > -- > 2.7.4 > -- To unsubscribe from this list: send the line "unsubscribe linux-spi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Aug 05, 2016 at 02:43:43PM +0100, Mark Rutland wrote: > On Fri, Aug 05, 2016 at 03:11:53PM +0200, Fabien Lahoudere wrote: > > Adding spidev in the compatible list, let configure spidev from device tree > > instead of C source code. > I'm not keen on this. > It ties the hardware description to today's use-case, and leaves the DT > without information regarding the particuarl device. The binding is also > written in terms of the userspace interface, which is backwards. > So NAK to this as-is. Indeed. Fabien, please see the *extensive* and repeated previous discussions of this topic. Device tree is there to describe the hardware, not the software you currently happen to be using on your system. Please also see the comments in the driver which explain why we require a compatible string which is descriptive of the hardware.
diff --git a/Documentation/devicetree/bindings/spi/spidev.txt b/Documentation/devicetree/bindings/spi/spidev.txt new file mode 100644 index 0000000..23200f2 --- /dev/null +++ b/Documentation/devicetree/bindings/spi/spidev.txt @@ -0,0 +1,16 @@ +* SPIDEV + +spidev is a device driver to access to SPI devices using normal userspace I/O calls. +To make an SPI device compatible with this drivers add: + +Required properties: +- compatible : should be "spidev". + +Example: + +spidev0: spi@0 { + compatible = "spidev"; + reg = <0>; + spi-max-frequency = <1000000>; + status = "okay"; +}; diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c index 2e05046..d780491 100644 --- a/drivers/spi/spidev.c +++ b/drivers/spi/spidev.c @@ -696,6 +696,7 @@ static struct class *spidev_class; static const struct of_device_id spidev_dt_ids[] = { { .compatible = "rohm,dh2228fv" }, { .compatible = "lineartechnology,ltc2488" }, + { .compatible = "spidev" }, {}, }; MODULE_DEVICE_TABLE(of, spidev_dt_ids);
Adding spidev in the compatible list, let configure spidev from device tree instead of C source code. Signed-off-by: Fabien Lahoudere <fabien.lahoudere@collabora.co.uk> --- Documentation/devicetree/bindings/spi/spidev.txt | 16 ++++++++++++++++ drivers/spi/spidev.c | 1 + 2 files changed, 17 insertions(+) create mode 100644 Documentation/devicetree/bindings/spi/spidev.txt