On 02/06, Jonathan Cameron wrote: > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > Changes since v2: > All in response to Marcelo Schmitt doing a really detailed review and > testing against the QEMU model. > > - Moved elements of patch 2 to patch 5 to avoid missing defines. > - Patch 6: Amend ordering to avoid updated software cached values until the > hardware write has succeeded. > - Patch 12 Fixed wrong callbacks in no_irq case > - Patch 14: Changed all numeric properties to u32 to avoid needing to > specify bit depth in dts. > - Patch 14: Typo fix. > - Patch 15: New Patch to drop the handling of partial aux alert channels as > it is buggy (and always was). Anyone wanting to bring this back will > hopefully have hardware to test as it will be fiddly. > - Patch 15 (old number, now 16). Update dt bindings to drop the > adi,temp-alert-last-chan given new patch 15 drops the support. > - New Patch 18: Change cb_mask software cache to not include the offset of 2 > and instead apply that only when writing the registers. > - New Patch 19: More conservative timings to allow 105 degree Centigrade > operation. > - Patch 20 is moving the new code so obviously all the above apply to that > as well! I had another look into this set (including the new patches), and it seems all good. :) Also, thanks for clarifying my doubts about the driver on the previous thread. So, Reviewed-by: Marcelo Schmitt <marcelo.schmitt1@xxxxxxxxx> for the whole series. It will be nice to see another driver getting out of staging. :D Thanks, Marcelo > > 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 becomes unavailable sometime soon. > > 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. > > All comments welcome and thanks to Marcelo for reviewing this beast! > > Thanks, > > Jonathan > > > Jonathan Cameron (20): > 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. > staging:iio:adc:ad7280a: Drop buggy support for early termination of > AUX alert. > dt-bindings:iio:adc:ad7280a: Add binding > iio:adc:ad7280a: Document ABI for cell balance switches > staging:iio:adc:ad7280a: Remove shift from cb_mask state cache. > staging:iio:adc:ad7280a: Use more conservative delays to allow 105C > operation. > iio:adc:ad7280a: Move out of staging > > .../ABI/testing/sysfs-bus-iio-adc-ad7280a | 13 + > .../bindings/iio/adc/adi,ad7280a.yaml | 77 ++ > drivers/iio/adc/Kconfig | 11 + > drivers/iio/adc/Makefile | 1 + > drivers/iio/adc/ad7280a.c | 1111 +++++++++++++++++ > 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, 1213 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.35.1 >