From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.5 required=3.0 tests=BAYES_00,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_2 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BF9A5C433C1 for ; Mon, 29 Mar 2021 15:30:57 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8173861932 for ; Mon, 29 Mar 2021 15:30:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230167AbhC2PaZ (ORCPT ); Mon, 29 Mar 2021 11:30:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:57464 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231346AbhC2PaT (ORCPT ); Mon, 29 Mar 2021 11:30:19 -0400 Received: from jic23-huawei (cpc108967-cmbg20-2-0-cust86.5-4.cable.virginm.net [81.101.6.87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 0E86F617ED; Mon, 29 Mar 2021 15:30:15 +0000 (UTC) Date: Mon, 29 Mar 2021 16:30:21 +0100 From: Jonathan Cameron To: linux-iio@vger.kernel.org, "Song Bao Hua (Barry Song)" Cc: Lars-Peter Clausen , Michael Hennerich , Alexandru Ardelean , Robh+dt@kernel.org, Alexandru Ardelean , Jonathan Cameron Subject: Re: [PATCH v2 00/24] staging:iio:cdc:ad7150: cleanup / fixup / graduate Message-ID: <20210329163021.20d9c9b7@jic23-huawei> In-Reply-To: <20210314181511.531414-1-jic23@kernel.org> References: <20210314181511.531414-1-jic23@kernel.org> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org Hi All, Whilst I'll give up at some point and just apply this without additional tags I really don't like doing that as I've made too many idiot mistakes in the past. Some of these are fairly trivial so please can people take a look if they have a chance. Rob did the DT one (thanks!) so we are down to... > > 12 - The big irq rework patch. Alex wasn't quite happy to give a tag > on that last time, but didn't mention anything specific. It's a bit > fiddly so fair enough! (it's not that bad!) > > 20 - of_match_table patch. Simple patch, and I believe I addressed all > questions in v1, but no tags given yet. > > 21 - ABI patch. I don't think there is anything controversial in here > but it's not gained any tags yet. > Perhaps didn't help that I accidentally didn't cc Barry on v2. Thanks, Jonathan > v1 description: > > This is an 'old' driver in IIO that has been in staging a while. > First submitted in October 2010. > > I wanted to try and experiment and picked this driver to try it with. > > The cleanup etc here was all tested against some basic emulation > added to QEMU rather than real hardware. Once I've cleaned that up > a tiny bit I'll push it up to https://github.com/jic23/qemu > Note that for now I'm not proposing to upstream this to QEMU but > would be interested in hearing if people thing it is a good idea to > do so. > > Whilst it's obviously hard to be absolutely sure that the emulation is > correct, the fact that the original driver worked as expected and the > cleaned up version still does is certainly encouraging. > > Note however, that there were a few more significant changes in here than > basic cleanup. > 1. Interrupts / events were handled in a rather esoteric fashion. > (Always on, window modes represented as magnitudes). > Note that for two channel devices there are separate lines. The original > driver was not supporting this at all. > They now look more like a standard IIO driver and reflect experience > that we've gained over the years in dealing with devices where these > aren't interrupt lines as such, but rather reporters of current status. > 2. Timeouts were handled in a fashion that clearly wouldn't work. > > Note that this moving out of staging makes a few bits of ABI 'official' > and so those are added to the main IIO ABI Docs. > > Thanks in advance to anyone who has time to take a look. > > Jonathan Cameron (24): > staging:iio:cdc:ad7150: use swapped reads for i2c rather than open > coding. > staging:iio:cdc:ad7150: Remove magnitude adaptive events > staging:iio:cdc:ad7150: Refactor event parameter update > staging:iio:cdc:ad7150: Timeout register covers both directions so > both need updating > staging:iio:cdc:ad7150: Drop platform data support > staging:iio:cdc:ad7150: Handle variation in chan_spec across device > and irq present or not > staging:iio:cdc:ad7150: Simplify event handling by only using rising > direction. > staging:iio:cdc:ad7150: Drop noisy print in probe > staging:iio:cdc:ad7150: Add sampling_frequency support > iio:event: Add timeout event info type > staging:iio:cdc:ad7150: Change timeout units to seconds and use core > support > staging:iio:cdc:ad7150: Rework interrupt handling. > staging:iio:cdc:ad7150: More consistent register and field naming > staging:iio:cdc:ad7150: Reorganize headers. > staging:iio:cdc:ad7150: Tidy up local variable positioning. > staging:iio:cdc:ad7150: Drop unnecessary block comments. > staging:iio:cdc:ad7150: Shift the _raw readings by 4 bits. > staging:iio:cdc:ad7150: Add scale and offset to > info_mask_shared_by_type > staging:iio:cdc:ad7150: Really basic regulator support. > staging:iio:cdc:ad7150: Add of_match_table > iio:Documentation:ABI Add missing elements as used by the adi,ad7150 > staging:iio:cdc:ad7150: Add copyright notice given substantial > changes. > dt-bindings:iio:cdc:adi,ad7150 binding doc > iio:cdc:ad7150: Move driver out of staging. > > Documentation/ABI/testing/sysfs-bus-iio | 33 + > .../bindings/iio/cdc/adi,ad7150.yaml | 69 ++ > drivers/iio/Kconfig | 1 + > drivers/iio/Makefile | 1 + > drivers/iio/cdc/Kconfig | 17 + > drivers/iio/cdc/Makefile | 6 + > drivers/iio/cdc/ad7150.c | 678 ++++++++++++++++++ > drivers/iio/industrialio-event.c | 1 + > drivers/staging/iio/cdc/Kconfig | 10 - > drivers/staging/iio/cdc/Makefile | 3 +- > drivers/staging/iio/cdc/ad7150.c | 655 ----------------- > include/linux/iio/types.h | 1 + > 12 files changed, 808 insertions(+), 667 deletions(-) > create mode 100644 Documentation/devicetree/bindings/iio/cdc/adi,ad7150.yaml > create mode 100644 drivers/iio/cdc/Kconfig > create mode 100644 drivers/iio/cdc/Makefile > create mode 100644 drivers/iio/cdc/ad7150.c > delete mode 100644 drivers/staging/iio/cdc/ad7150.c >