[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160805134342.GD25152@leverpostej>
Date: Fri, 5 Aug 2016 14:43:43 +0100
From: Mark Rutland <mark.rutland@....com>
To: Fabien Lahoudere <fabien.lahoudere@...labora.co.uk>
Cc: Mark Brown <broonie@...nel.org>, Rob Herring <robh+dt@...nel.org>,
"open list:SPI SUBSYSTEM" <linux-spi@...r.kernel.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/1] generic spidev devices must be registered
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@...labora.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
>
Powered by blists - more mailing lists