Hi Jonathan, On Mon, May 03, 2021 at 12:28:18PM +0100, Jonathan Cameron wrote: > On Wed, 28 Apr 2021 09:32:05 +0200 > Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx> wrote: > > Hi Oleksij, > > Series applied with the tweaks as per review to patch 3. Please > check I didn't mess those up though. > > Applied to the togreg branch of iio.git and pushed out as testing for > the autobuilders to poke at it. It works. Thx! Now i need to make configurable iio buffer layout for the drivers/input/touchscreen/resistive-adc-touch.c Do you have ideas what is the proper way to make it? Regards, Oleksij > > Jonathan > > > changes v6: > > - get blessing from Dmitry Torokhov > > - rebase against latest iio/testing > > - use simple name for iio_dev->name > > - use Jonathan's version for oversampling-ratio description > > > > changes v5: > > - remove type for the settling-time-us property > > > > changes v4: > > - spell fixes > > - add more comments > > - make code more readable > > - move scan_buf to the priv > > - use FIELD_GET to extract ADC data > > - make some multi line code as one line > > - do not use atomic API for trig_more_count > > - fix build warning on 64bit system > > - add NULL check for the devm_kasprintf() > > - use return devm_iio_device_register(), without additional error > > printing. > > > > changes v3: > > - different spell fixes > > - add some notes about driver structure > > - rename the trigger to point on the touchscreen nature of it > > - rename DT binding to oversampling-ratio > > - make sure we have some defaults in case no DT property is set > > > > changes v2: > > - rework and extend DT binding properties > > - remove touchscreen related code from the IIO ADC driver > > - make trigger be active longer then IRQ is requesting. This is needed > > to get "inactive" samples > > - make oversampling and settle time configurable > > > > TI TSC2046 is a touchscreen controller based on 8 channel ADC. Since most of > > this ADC based touchscreen controller share same set of challenges, it > > is better keep then as simple IIO ADC devices attached to a generic > > resistive-adc-touch driver. > > > > This driver can replace drivers/input/touchscreen/ads7846.c and has > > following advantages over it: > > - less code to maintain > > - shared code paths (resistive-adc-touch, iio-hwmon, etc) > > - can be used as plain IIO ADC to investigate signaling issues or test > > real capacity of the plates and attached low-pass filters > > (or use the touchscreen as a microphone if you like ;) ) > > > > Oleksij Rempel (3): > > dt-bindings:iio:adc: add generic settling-time-us and > > oversampling-ratio channel properties > > dt-bindings:iio:adc: add documentation for TI TSC2046 controller > > iio: adc: add ADC driver for the TI TSC2046 controller > > > > .../devicetree/bindings/iio/adc/adc.yaml | 12 + > > .../bindings/iio/adc/ti,tsc2046.yaml | 115 +++ > > MAINTAINERS | 8 + > > drivers/iio/adc/Kconfig | 12 + > > drivers/iio/adc/Makefile | 1 + > > drivers/iio/adc/ti-tsc2046.c | 720 ++++++++++++++++++ > > 6 files changed, 868 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,tsc2046.yaml > > create mode 100644 drivers/iio/adc/ti-tsc2046.c > > > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |