Thread (21 messages) 21 messages, 5 authors, 2025-01-15

Re: [PATCH v4 4/6] dt-bindings: iio: Add adis16550 bindings

From: Nuno Sá <hidden>
Date: 2025-01-14 08:19:20
Also in: linux-doc, linux-iio, lkml

On Mon, 2025-01-13 at 14:22 +0000, Budai, Robert wrote:
quoted
-----Original Message-----
From: Nuno Sá <redacted>
Sent: Monday, January 13, 2025 11:30 AM
To: Jonathan Cameron <jic23@kernel.org>; Budai, Robert
[off-list ref]
Cc: Sa, Nuno <Nuno.Sa@analog.com>; Gradinariu, Ramona
[off-list ref]; Miclaus, Antoniu
[off-list ref]; Lars-Peter Clausen [off-list ref];
Hennerich, Michael [off-list ref]; Rob Herring
[off-list ref]; Krzysztof Kozlowski [off-list ref]; Conor Dooley
[off-list ref]; Jonathan Corbet [off-list ref]; Alex Lanzano
[off-list ref]; linux-iio@vger.kernel.org;
devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; linux-
doc@vger.kernel.org
Subject: Re: [PATCH v4 4/6] dt-bindings: iio: Add adis16550 bindings

[External]

On Sun, 2025-01-12 at 15:48 +0000, Jonathan Cameron wrote:
quoted
On Fri, 10 Jan 2025 09:42:52 +0200
Robert Budai [off-list ref] wrote:
quoted
Document the ADIS16550 device devicetree bindings.

Co-developed-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
Signed-off-by: Ramona Gradinariu <ramona.gradinariu@analog.com>
Signed-off-by: Robert Budai <robert.budai@analog.com>
---

4:
- applied styling changes to the bindings file
- restricted sync-mode to intervals 1-2

 .../bindings/iio/imu/adi,adis16550.yaml       | 96 +++++++++++++++++++
 MAINTAINERS                                   |  9 ++
 2 files changed, 105 insertions(+)
 create mode 100644
Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml

diff --git
a/Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml
quoted
quoted
b/Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml
new file mode 100644
index 000000000000..e7ccf3883e55
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/imu/adi,adis16550.yaml
@@ -0,0 +1,96 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id:
https://urldefense.com/v3/__http://devicetree.org/schemas/iio/imu/adi,adis
16550.yaml*__;Iw!!A3Ni8CS0y2Y!74KHajr7iKZQ7Ld5deb4LytVFckO_Og8tIG
Ukf233OLregM6AqtN-v-IBRfAn-4Z1tC0bwbcEpNO7Glv8YjiXWI$
quoted
quoted
+$schema: https://urldefense.com/v3/__http://devicetree.org/meta-
schemas/core.yaml*__;Iw!!A3Ni8CS0y2Y!74KHajr7iKZQ7Ld5deb4LytVFckO_
Og8tIGUkf233OLregM6AqtN-v-IBRfAn-4Z1tC0bwbcEpNO7GlvNAV5ERI$
quoted
quoted
+
+title: Analog Devices ADIS16550 and similar IMUs
+
+maintainers:
+  - Nuno Sa [off-list ref]
+  - Ramona Gradinariu [off-list ref]
+  - Antoniu Miclaus [off-list ref]
+
+properties:
+  compatible:
+    enum:
+      - adi,adis16550
+      - adi,adis16550w
+
+  reg:
+    maxItems: 1
+
+  spi-cpha: true
+
+  spi-cpol: true
+
+  spi-max-frequency:
+    maximum: 15000000
+
+  vdd-supply: true
+
+  interrupts:
+    maxItems: 1
+
+  reset-gpios:
+    description:
+      RESET active low pin.
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+    description: If not provided, then the internal clock is used.
+
+  adi,sync-mode:
+    description:
+      Configures the device SYNC pin. The following modes are supported
+      0 - output_sync
+      1 - direct_sync
+      2 - scaled_sync
A little more on these would be good.  They are 'weird' options
that are not commonly seen so help the reader out.

For scaled_sync don't we need information on the scale for it to be
useful?
If we had that then a value of 1 would mean direct sync and wouldn't need
another control.

I'm not fully understanding the usecases for this.

If we have a say a pulse per second input, the control of the scale should
be userspace anyway.  So maybe this maps to the input clock that we can
elect
quoted
to
use and control the effective frequency of by using scaled sync?
I guess you likely already saw it in the driver. The scale value is
automatically set by the driver depending on the desired ODR (sampling
frequency).
quoted
I'm not sure what pulse sync is. Grepping the datasheet didn't give me
anything that seemed related.   The sync pin is input only so I'm also
not sure on output sync.
I think this is a copy paste from the adis16475 bindings. For this device,
it
seems we only have:
 * internal clock;
 * external:
   * direct mode
   * scaled mode

But yeah, as you pointed out I think we do not need the binding. The
presence
of
an optional input clock plus the frequency should be all we need in order to
set
the desired configuration. It should also be possible to add the allowed
ranges
to the external input clock in the bindings...


- Nuno Sá
Will drop this binding than and add a frequency one that is dependent on clock
with specified ranges.
Note I would not add a new binding if there's no standard one. My previous
comment can be misleading... I see there is a 'clock-frequency' property in the
clock schema but descriptions says it's legacy and apparently for fixed-clocks.
So maybe not suitable for this case?

- Nuno Sá
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help