On Tue, 22 Jun 2021 14:36:17 -0300 Marcelo Schmitt <marcelo.schmitt1@xxxxxxxxx> wrote: > Hey Jonathan, > > On 06/14, Jonathan Cameron wrote: > > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > > > Hi All, > > > > This one proved an interesting diversion. > > > > Work done against a somewhat hacked up QEMU emulation of 3 daisy chained > > ad7280a devices (18 channels). Note that the emulation isn't complete > > but does do chaining, CRC, and readout of channels etc in a fashion that > > worked with the original driver (up to the bug in patch 1) and continues > > to work with the updated version. I've not intention to upstream the > > emulation (as would need to make it more completed and flexible), but > > happy to share it with anyone who is interested. > > I'm interested in seeing your device emulation with QEMU. > I was looking at the ad7150 emulation you shared earlier this year but had > some trouble getting the i2c slave created. Sure. Let me do a bit of tidying up they I'll push a suitable branch out. (probably will still have lots of stuff missing!) Might take a little while to get to this though. > > Being able to see it running, I may feel more confident to provide a review > for this set :) :) > > Regards, > > Marcelo > > > > I briefly flirted with posting a patch to just drop the driver entirely, > > but the part is still available and it looked like fun + isn't going > > to greatly impact maintainability of the subsystem long term so is low > > cost even if it goes obsolete sometime soonish. > > > > There are lots of things we could do after this set to improved the driver > > and make things more flexible, but it should basically 'just work' > > > > Anyhow, as normal for staging graduations, last patch has rename detection > > turned off so that people can easily see what I am proposing we move > > out of staging. > > > > Jonathan Cameron (17): > > staging:iio:adc:ad7280a: Fix handing of device address bit reversing. > > staging:iio:adc:ad7280a: Register define cleanup. > > staging:iio:adc:ad7280a: rename _read() to _read_reg() > > staging:iio:adc:ad7280a: Split buff[2] into tx and rx parts > > staging:iio:adc:ad7280a: Use bitfield ops to managed fields in > > transfers. > > staging:iio:adc:ad7280a: Switch to standard event control > > staging:iio:adc:ad7280a: Standardize extended ABI naming > > staging:iio:adc:ad7280a: Drop unused timestamp channel. > > staging:iio:adc:ad7280a: Trivial comment formatting cleanup > > staging:iio:adc:ad7280a: Make oversampling_ratio a runtime control > > staging:iio:adc:ad7280a: Cleanup includes > > staging:iio:ad7280a: Reflect optionality of irq in ABI > > staging:iio:adc:ad7280a: Use a local dev pointer to avoid &spi->dev > > staging:iio:adc:ad7280a: Use device properties to replace platform > > data. > > dt-bindings:iio:adc:ad7280a: Add binding > > iio:adc:ad7280a: Document ABI for cell balance switches > > iio:adc:ad7280a: Move out of staging > > > > .../ABI/testing/sysfs-bus-iio-adc-ad7280a | 14 + > > .../bindings/iio/adc/adi,ad7280a.yaml | 87 ++ > > drivers/iio/adc/Kconfig | 11 + > > drivers/iio/adc/Makefile | 1 + > > drivers/iio/adc/ad7280a.c | 1116 +++++++++++++++++ > > drivers/staging/iio/adc/Kconfig | 11 - > > drivers/staging/iio/adc/Makefile | 1 - > > drivers/staging/iio/adc/ad7280a.c | 1044 --------------- > > drivers/staging/iio/adc/ad7280a.h | 37 - > > 9 files changed, 1229 insertions(+), 1093 deletions(-) > > create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-adc-ad7280a > > create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad7280a.yaml > > create mode 100644 drivers/iio/adc/ad7280a.c > > delete mode 100644 drivers/staging/iio/adc/ad7280a.c > > delete mode 100644 drivers/staging/iio/adc/ad7280a.h > > > > -- > > 2.32.0 > >