[PATCH v2 0/4] iio: adc: ad7124: Make it work on de10-nano

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

this is iteration v2 to make ad7124 work on de10-nano. (Implicit) v1 is
available at
https://lore.kernel.org/linux-iio/20241024171703.201436-5-u.kleine-koenig@xxxxxxxxxxxx.

The changes since v1:

- Write 0 instead of 0x0001 to disable channels. While 0x0001 is the
  reset default value for these registers (apart from the channel 0 one)
  there is no sensible reason to use that value (i.e.
  AD7124_CHANNEL_AINP(0) | AD7124_CHANNEL_AINM(1)) as the value is
  reprogrammed before use anyhow. This addresses the feedback that the
  magic value 0x0001 should better be constructed using register bit
  field defintions.

- Add maxItems: 1 to the new property defined in the binding patch (Krzysztof)

- Rename property to rdy-gpios (Rob)

- Use rdy-gpios only for gpio reading and continue using the usual irq
  defintion for the interrupt (Jonathan). I was surprised I can use both the
  GPIO as input and the matching irq.

- patch #1 is new, and use GPIO_ACTIVE_LOW in the gpio descriptor
  instead of 2.

Jonathan voiced concerns about the reliability of this solution and
proposed to implement polling. I'm convinced the solution implemented
here is robust, so I see no need to implement polling today.

Still open questions:

 - Is rdy-gpios the right name. The line is named ̅R̅D̅Y, so maybe nrdy-gpios? Or
   nRDY-gpios?
 - Jonathan wanted some input from ADI about this series and the
   hardware details.

Best regards
Uwe

Uwe Kleine-König (4):
  dt-bindings: iio: adc: adi,ad7124: Use symbolic name for interrupt
    flag
  dt-bindings: iio: adc: adi,ad7124: Allow specifications of a gpio for
    irq line
  iio: adc: ad_sigma_delta: Add support for reading irq status using a
    GPIO
  iio: adc: ad7124: Disable all channels at probe time

 .../bindings/iio/adc/adi,ad7124.yaml          | 11 +++++-
 drivers/iio/adc/ad7124.c                      |  3 ++
 drivers/iio/adc/ad_sigma_delta.c              | 35 ++++++++++++++++---
 include/linux/iio/adc/ad_sigma_delta.h        |  1 +
 4 files changed, 44 insertions(+), 6 deletions(-)

base-commit: 9852d85ec9d492ebef56dc5f229416c925758edc
-- 
2.45.2




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux