On 12/05, Jonathan Cameron wrote: > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > v2: Picked up Rob's tag for the binding > Rebase and a trivial white space tidy up. > > Marcelo expressed interest in reviewing this one, but given it's > been a while I'm resending in the hope that someone else will have > time to take a look. Obviously if anyone wants to try the emulation > that's great but fundamental thing I'm looking for here is review of > the final patch as that has the whole driver in it. > I've been spending some time with this part's datasheet to provide a proper review of this series. This has been on my TODO list for a while now. For now I've got patches 1 and 2 only. The good news is that now I'm giving priority to this so will send the review for the rest along this week. > Note we don't require perfection for staging graduations, so futher > cleanup can be delayed until it's out of staging. > The interesting stuff here is anything related to the ABI as that > is pretty much fixed once it's out of staging. Obviously any > feedback welcome. > > v1 cover letter. > > 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 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 | 13 + > .../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, 1228 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.34.1 >