On Mon, 2025-01-13 at 14:22 +0000, Budai, Robert wrote: > > > > -----Original Message----- > > From: Nuno Sá <noname.nuno@xxxxxxxxx> > > Sent: Monday, January 13, 2025 11:30 AM > > To: Jonathan Cameron <jic23@xxxxxxxxxx>; Budai, Robert > > <Robert.Budai@xxxxxxxxxx> > > Cc: Sa, Nuno <Nuno.Sa@xxxxxxxxxx>; Gradinariu, Ramona > > <Ramona.Gradinariu@xxxxxxxxxx>; Miclaus, Antoniu > > <Antoniu.Miclaus@xxxxxxxxxx>; Lars-Peter Clausen <lars@xxxxxxxxxx>; > > Hennerich, Michael <Michael.Hennerich@xxxxxxxxxx>; Rob Herring > > <robh@xxxxxxxxxx>; Krzysztof Kozlowski <krzk+dt@xxxxxxxxxx>; Conor Dooley > > <conor+dt@xxxxxxxxxx>; Jonathan Corbet <corbet@xxxxxxx>; Alex Lanzano > > <lanzano.alex@xxxxxxxxx>; linux-iio@xxxxxxxxxxxxxxx; > > devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux- > > doc@xxxxxxxxxxxxxxx > > 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: > > > On Fri, 10 Jan 2025 09:42:52 +0200 > > > Robert Budai <robert.budai@xxxxxxxxxx> wrote: > > > > > > > Document the ADIS16550 device devicetree bindings. > > > > > > > > Co-developed-by: Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx> > > > > Signed-off-by: Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx> > > > > Signed-off-by: Ramona Gradinariu <ramona.gradinariu@xxxxxxxxxx> > > > > Signed-off-by: Robert Budai <robert.budai@xxxxxxxxxx> > > > > --- > > > > > > > > 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 > > > > 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$ > > > > +$schema: https://urldefense.com/v3/__http://devicetree.org/meta- > > schemas/core.yaml*__;Iw!!A3Ni8CS0y2Y!74KHajr7iKZQ7Ld5deb4LytVFckO_ > > Og8tIGUkf233OLregM6AqtN-v-IBRfAn-4Z1tC0bwbcEpNO7GlvNAV5ERI$ > > > > + > > > > +title: Analog Devices ADIS16550 and similar IMUs > > > > + > > > > +maintainers: > > > > + - Nuno Sa <nuno.sa@xxxxxxxxxx> > > > > + - Ramona Gradinariu <ramona.gradinariu@xxxxxxxxxx> > > > > + - Antoniu Miclaus <antoniu.miclaus@xxxxxxxxxx> > > > > + > > > > +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 > > > 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). > > > > > > > > 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á