devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/27] iio: resolver: move ad2s1210 out of staging
@ 2023-09-29 17:23 David Lechner
  2023-09-29 17:23 ` [PATCH v3 01/27] dt-bindings: iio: resolver: add devicetree bindings for ad2s1210 David Lechner
                   ` (28 more replies)
  0 siblings, 29 replies; 88+ messages in thread
From: David Lechner @ 2023-09-29 17:23 UTC (permalink / raw)
  To: linux-iio, devicetree, linux-staging
  Cc: David Lechner, Jonathan Cameron, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Michael Hennerich, Nuno Sá, Axel Haslam,
	Philip Molloy, linux-kernel, David Lechner, Apelete Seketeli

From: David Lechner <david@lechnology.com>

v3 changes:

* Added description of A0/A1 lines in DT bindings.
* Added power supply regulators to DT bindings.
* Dropped "staging: iio: Documentation: document IIO resolver AD2S1210
  sysfs attributes" (these attributes are being removed instead).
* Dropped applied patches:
  * "staging: iio: resolver: ad2s1210: fix ad2s1210_show_fault"
  * "iio: adc: MCP3564: fix the static checker warning"
* Split "staging: iio: resolver: ad2s1210: fix probe" into multiple patches.
* Moved sorting imports to separate patch.
* Renamed fclkin to clkin_hz.
* Added __be16 sample field to state struct for reading raw samples.
* Split out new function ad2s1210_single_conversion() from
  ad2s1210_read_raw().
* Split out new ad2s1210_get_hysteresis() and ad2s1210_set_hysteresis()
  functions.
* Fixed multi-line comment style.
* Added notes about soft reset not resetting config registers.
* Made use of FIELD_PREP() macro.
* Added more explanation to regmap commit message.
* Removed datasheet names from channel specs.
* Replaced "staging: iio: resolver: ad2s1210: rename fexcit attribute"
  with "staging: iio: resolver: ad2s1210: convert fexcit to channel
  attribute".
* Replaced "staging: iio: resolver: ad2s1210: add phase_lock_range
  attributes" with "staging: iio: resolver: ad2s1210: add phase lock
  range support"
* Added additional patches to convert custom device attributes to event
  attributes.
* Added patch to add channel label attributes.

v2 changes:
* Address initial device tree patch feedback
* Drop "iio: sysfs: add IIO_DEVICE_ATTR_NAMED_RW macro" (related cleanups
  also dropped for now, will address in a future series if needed)
* Apply improvements as a series of patches to the staging driver. It is
  not quite ready for the move out of staging patch yet.

This series has been tested on actual hardware using a EVAL-AD2S1210 evaluation
board. (Note: not all device tree features have been implemented in the driver
since the eval board doesn't support them out of the box. We plan to add them
later if needed.)

Most of the questions about dealing with faults from the v2 cover letter
have been addressed. There is still the question about what to do with
the current `fault` attribute (it is the only custom device attribute
remaining from the original staging driver). It was suggested to split it
out into multiple attributes in a subdirectory. Since we now have events
for all of the faults, I'm wondering if this is something that is still needed.
In the current implementation, it is possible to start listening to events,
clear the faults and then read a sample to trigger events for any current
faults so we have a way to get current faults already.

There is also the matter of clearing faults. Writing the excitation
frequency has a side-effect of clearing the faults, so we could use
that as the reset. Or we could change the current fault attribute to
write-only and rename it. Or is there a better way that I have overlooked?

Once this last issue is addressed, I think this driver will be ready
for consideration for moving out of staging.
---
David Lechner (27):
      dt-bindings: iio: resolver: add devicetree bindings for ad2s1210
      staging: iio: resolver: ad2s1210: fix use before initialization
      staging: iio: resolver: ad2s1210: remove call to spi_setup()
      staging: iio: resolver: ad2s1210: check return of ad2s1210_initial()
      staging: iio: resolver: ad2s1210: remove spi_set_drvdata()
      staging: iio: resolver: ad2s1210: sort imports
      staging: iio: resolver: ad2s1210: always use 16-bit value for raw read
      staging: iio: resolver: ad2s1210: implement IIO_CHAN_INFO_SCALE
      staging: iio: resolver: ad2s1210: use devicetree to get CLKIN rate
      staging: iio: resolver: ad2s1210: use regmap for config registers
      staging: iio: resolver: ad2s1210: add debugfs reg access
      staging: iio: resolver: ad2s1210: remove config attribute
      staging: iio: resolver: ad2s1210: rework gpios
      staging: iio: resolver: ad2s1210: implement hysteresis as channel attr
      staging: iio: resolver: ad2s1210: refactor setting excitation frequency
      staging: iio: resolver: ad2s1210: read excitation frequency from control register
      staging: iio: resolver: ad2s1210: convert fexcit to channel attribute
      staging: iio: resolver: ad2s1210: convert resolution to devicetree property
      staging: iio: resolver: ad2s1210: add phase lock range support
      staging: iio: resolver: ad2s1210: add triggered buffer support
      staging: iio: resolver: ad2s1210: convert LOT threshold attrs to event attrs
      staging: iio: resolver: ad2s1210: convert LOS threshold to event attr
      staging: iio: resolver: ad2s1210: convert DOS overrange threshold to event attr
      staging: iio: resolver: ad2s1210: convert DOS mismatch threshold to event attr
      staging: iio: resolver: ad2s1210: rename DOS reset min/max attrs
      staging: iio: resolver: ad2s1210: implement fault events
      staging: iio: resolver: ad2s1210: add label attribute support

 .../bindings/iio/resolver/adi,ad2s1210.yaml        |  177 +++
 .../Documentation/sysfs-bus-iio-resolver-ad2s1210  |   27 +
 drivers/staging/iio/resolver/Kconfig               |    1 +
 drivers/staging/iio/resolver/ad2s1210.c            | 1583 +++++++++++++++-----
 4 files changed, 1391 insertions(+), 397 deletions(-)
---
base-commit: 5e99f692d4e32e3250ab18d511894ca797407aec
change-id: 20230925-ad2s1210-mainline-2791ef75e386


^ permalink raw reply	[flat|nested] 88+ messages in thread

end of thread, other threads:[~2023-10-10  9:29 UTC | newest]

Thread overview: 88+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-29 17:23 [PATCH v3 00/27] iio: resolver: move ad2s1210 out of staging David Lechner
2023-09-29 17:23 ` [PATCH v3 01/27] dt-bindings: iio: resolver: add devicetree bindings for ad2s1210 David Lechner
2023-09-30 14:34   ` Jonathan Cameron
2023-10-04 10:41     ` Hennerich, Michael
2023-10-02  8:02   ` Dan Carpenter
2023-10-02  9:03     ` Jonathan Cameron
2023-10-02 15:18   ` Rob Herring
2023-10-05 14:13     ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 02/27] staging: iio: resolver: ad2s1210: fix use before initialization David Lechner
2023-09-30 14:28   ` Jonathan Cameron
2023-10-02  8:07   ` Dan Carpenter
2023-10-02  9:17     ` Jonathan Cameron
2023-10-06 14:48       ` Vincent Whitchurch
2023-10-10  9:29         ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 03/27] staging: iio: resolver: ad2s1210: remove call to spi_setup() David Lechner
2023-09-30 14:35   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 04/27] staging: iio: resolver: ad2s1210: check return of ad2s1210_initial() David Lechner
2023-09-30 14:37   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 05/27] staging: iio: resolver: ad2s1210: remove spi_set_drvdata() David Lechner
2023-09-30 14:38   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 06/27] staging: iio: resolver: ad2s1210: sort imports David Lechner
2023-09-30 14:39   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 07/27] staging: iio: resolver: ad2s1210: always use 16-bit value for raw read David Lechner
2023-09-30 14:41   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 08/27] staging: iio: resolver: ad2s1210: implement IIO_CHAN_INFO_SCALE David Lechner
2023-09-30 14:43   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 09/27] staging: iio: resolver: ad2s1210: use devicetree to get CLKIN rate David Lechner
2023-09-30 14:44   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 10/27] staging: iio: resolver: ad2s1210: use regmap for config registers David Lechner
2023-09-30 14:51   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 11/27] staging: iio: resolver: ad2s1210: add debugfs reg access David Lechner
2023-09-30 14:52   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 12/27] staging: iio: resolver: ad2s1210: remove config attribute David Lechner
2023-09-30 14:53   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 13/27] staging: iio: resolver: ad2s1210: rework gpios David Lechner
2023-09-30 14:55   ` Jonathan Cameron
2023-10-05 13:38     ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 14/27] staging: iio: resolver: ad2s1210: implement hysteresis as channel attr David Lechner
2023-09-29 17:53   ` David Lechner
2023-09-30 15:00     ` Jonathan Cameron
2023-09-30 21:23       ` David Lechner
2023-09-30 15:03   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 15/27] staging: iio: resolver: ad2s1210: refactor setting excitation frequency David Lechner
2023-09-30 15:06   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 16/27] staging: iio: resolver: ad2s1210: read excitation frequency from control register David Lechner
2023-09-30 15:08   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 17/27] staging: iio: resolver: ad2s1210: convert fexcit to channel attribute David Lechner
2023-09-30 15:12   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 18/27] staging: iio: resolver: ad2s1210: convert resolution to devicetree property David Lechner
2023-09-30 15:15   ` Jonathan Cameron
2023-09-29 17:23 ` [PATCH v3 19/27] staging: iio: resolver: ad2s1210: add phase lock range support David Lechner
2023-09-30 15:18   ` Jonathan Cameron
2023-10-03  8:03   ` kernel test robot
2023-09-29 17:23 ` [PATCH v3 20/27] staging: iio: resolver: ad2s1210: add triggered buffer support David Lechner
2023-09-29 17:23 ` [PATCH v3 21/27] staging: iio: resolver: ad2s1210: convert LOT threshold attrs to event attrs David Lechner
2023-09-30 15:29   ` Jonathan Cameron
2023-10-03 11:11   ` kernel test robot
2023-09-29 17:23 ` [PATCH v3 22/27] staging: iio: resolver: ad2s1210: convert LOS threshold to event attr David Lechner
2023-09-30 15:32   ` Jonathan Cameron
2023-10-04 11:01     ` Hennerich, Michael
2023-10-05 14:16       ` Jonathan Cameron
2023-09-30 15:42   ` Jonathan Cameron
2023-09-30 15:46     ` Jonathan Cameron
2023-10-02 16:09     ` David Lechner
2023-10-05 14:37       ` Jonathan Cameron
2023-10-05 19:25         ` David Lechner
2023-10-03 14:21   ` kernel test robot
2023-09-29 17:23 ` [PATCH v3 23/27] staging: iio: resolver: ad2s1210: convert DOS overrange " David Lechner
2023-09-30 15:33   ` Jonathan Cameron
2023-10-03 17:21   ` kernel test robot
2023-09-29 17:23 ` [PATCH v3 24/27] staging: iio: resolver: ad2s1210: convert DOS mismatch " David Lechner
2023-10-03 20:08   ` kernel test robot
2023-09-29 17:23 ` [PATCH v3 25/27] staging: iio: resolver: ad2s1210: rename DOS reset min/max attrs David Lechner
2023-09-30 15:47   ` Jonathan Cameron
2023-10-02 17:06     ` David Lechner
2023-10-03 23:23   ` kernel test robot
2023-09-29 17:23 ` [PATCH v3 26/27] staging: iio: resolver: ad2s1210: implement fault events David Lechner
2023-09-30  3:55   ` kernel test robot
2023-09-30 16:00   ` Jonathan Cameron
2023-10-02 16:43     ` David Lechner
2023-10-02 16:58     ` David Lechner
2023-10-02 18:49       ` David Lechner
2023-10-05 14:52       ` Jonathan Cameron
2023-10-03 10:53   ` Dan Carpenter
2023-09-29 17:23 ` [PATCH v3 27/27] staging: iio: resolver: ad2s1210: add label attribute support David Lechner
2023-09-29 17:49 ` [PATCH v3 00/27] iio: resolver: move ad2s1210 out of staging David Lechner
2023-09-30 14:26   ` Jonathan Cameron
2023-09-29 22:02 ` David Lechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).