From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Andrew F. Davis" Subject: Re: [PATCH v2 0/2] iio: add unit converter Date: Tue, 3 Apr 2018 12:41:49 -0500 Message-ID: <93a6f7fc-4a53-c65c-422c-1649732fed50@ti.com> References: <20180403153635.8228-1-peda@axentia.se> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20180403153635.8228-1-peda@axentia.se> Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org To: Peter Rosin , linux-kernel@vger.kernel.org Cc: Jonathan Cameron , Hartmut Knaack , Lars-Peter Clausen , Peter Meerwald-Stadler , Rob Herring , Mark Rutland , "David S. Miller" , Mauro Carvalho Chehab , Greg Kroah-Hartman , Linus Walleij , Andrew Morton , Randy Dunlap , Michael Hennerich , Phil Reid , linux-iio@vger.kernel.org, devicetree@vger.kernel.org List-Id: devicetree@vger.kernel.org On 04/03/2018 10:36 AM, Peter Rosin wrote: > Hi! > > This driver implements support for voltage dividers and current > sense circuits. It's pretty generic and should be easily adaptable > to other linear scaling purposes... > I really like this idea, defining channel scaling / channel type conversion in DT will be very useful. So much so that I would recommend this not be a use specific driver but instead moved into the IIO core. This would allow defining these channel conversions in the device node itself, so as to not need a separate node just for the converter (the conversion is not a device and probably should not have it's own node anyway). It would also help with enabling this support for buffered readers/writers and not just devices only supporting _raw reads/writes. Andrew > The driver is still named "unit converter", because it was not > clear to me that there was a real problem with the driver being > named that. I got the impression that the naming discussion in > v1 was mainly about the category, and that it kind of looked odd > and non-specific with unit-converter in the DT bindings, but > what do I know? > > Cheers, > Peter > > Changes since v1: https://lkml.org/lkml/2018/3/19/801 > - Put the driver in the new afe category (Analog Front Ends) and do not > move the iio-mux driver. > - Do not refer to the source channel as "parent", use "source" instead. > - Have the DT compatible drive the target unit, instead of relying on a > "type" DT-property for that. > - In the DT bindings, use an unnamed source channel. > - Do not set up writes to _RAW (sorry Phil) as I don't need it and have > not tested it. It's easy to add back if needed. > - Fail if the source channel does not support _RAW or _SCALE. > - Fix various spelling issues. > - Fix various code style issues. > > Peter Rosin (2): > dt-bindings: iio: afe: add current-sense-cuicuit and voltage-divider > iio: afe: unit-converter: new driver > > .../bindings/iio/afe/current-sense-circuit.txt | 45 ++++ > .../bindings/iio/afe/voltage-divider.txt | 45 ++++ > MAINTAINERS | 8 + > drivers/iio/Kconfig | 1 + > drivers/iio/Makefile | 1 + > drivers/iio/afe/Kconfig | 18 ++ > drivers/iio/afe/Makefile | 6 + > drivers/iio/afe/iio-unit-converter.c | 257 +++++++++++++++++++++ > 8 files changed, 381 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/afe/current-sense-circuit.txt > create mode 100644 Documentation/devicetree/bindings/iio/afe/voltage-divider.txt > create mode 100644 drivers/iio/afe/Kconfig > create mode 100644 drivers/iio/afe/Makefile > create mode 100644 drivers/iio/afe/iio-unit-converter.c >