From: Jonathan Cameron <jic23@kernel.org>
To: "Sabau, Radu bogdan" <radu.sabau@analog.com>
Cc: Radu Sabau via B4 Relay
<devnull+radu.sabau.analog.com@kernel.org>,
Lars-Peter Clausen <lars@metafoo.de>,
"Hennerich, Michael" <Michael.Hennerich@analog.com>,
"Sa, Nuno" <Nuno.Sa@analog.com>,
David Lechner <dlechner@baylibre.com>,
Andy Shevchenko <andy@kernel.org>,
Alexandru Ardelean <alexandru.ardelean@analog.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
"linux-iio@vger.kernel.org" <linux-iio@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: [PATCH v3 2/6] dt-bindings: iio: imu: Add bindings for ADI ADIS16607
Date: Wed, 21 Oct 2026 20:07:08 +0100 [thread overview]
Message-ID: <20261021200708.5fc247c0@jic23-hlaptop> (raw)
In-Reply-To: <LV9PR03MB841470F3A6677BA505411546F7982@LV9PR03MB8414.namprd03.prod.outlook.com>
On Mon, 19 Oct 2026 08:15:41 +0000
"Sabau, Radu bogdan" <radu.sabau@analog.com> wrote:
> > -----Original Message-----
> > From: Jonathan Cameron <jic23@kernel.org>
> > Sent: Saturday, October 17, 2026 4:12 AM
>
> ...
>
> > >
> > > Add device tree bindings for the Analog Devices ADIS16607 Precision
> > > MEMS Inertial Measurement Unit. The ADIS16607 integrates a triaxial
> > > gyroscope, triaxial accelerometer, and temperature sensor, and
> > > communicates over SPI Half-Duplex.
> > >
> > > Two variants are supported: adis16607-2 and adis16607-3.
> >
> > Say briefly how they are different and hence require their
> > own compatibles.
>
> Hi Jonathan, thank you for looking at this, as well.
>
> The only difference between them is the gyroscope's fixed full-scale
> range: ±450°/s for adis16607-2, ±2000°/s for adis16607-3. Everything
> else (accelerometer range, decimation, internal clock, sync modes) is
> identical, and both report the same device ID over SPI, so the driver
> has no way to tell which gyro range is populated at runtime - the
> compatible string is the only source of that information. I'll make
> the commit message say this explicitly.
Good. A one liner to say scales differ in the commit message will do nicely.
>
> >
> > The hardware rest being a configurable pin is an unusual
> > bit of hardware design given how do we reset the reset pin
> > to issue a reset if the device is hung?
> >
>
> I agree the hardware reset being configurable is unusual. GPIO0 is configured
> as reset by default at power-up, so the driver probing at power-up is ok.
> However, to answer your question if the USER_GPIO_CFG register is altered
> by debugfs read or a bug or something else and the device is hung, the true
> answer is you can't use hardware reset anymore and the only way out of this
> would be a power-cycle.
>
> Perhaps a force write of the RESET_GPIO_MASK before the initial_startup
> would help in case the SPI communication would still be alive, and I guess
> if the SPI communication is broken we would then get an errno code anyway,
> right? I am not sure this is the best solution so I would like to know your
> thoughts on this.
Yeah. I think try to write it - but only warn if write fails rather
than error out. Gives us the best chance of recovering from any
problems.
>
> > >
> > > The binding exposes optional properties for:
> > > - An external clock for sync mode (falling back to the internal 8 kHz
> > > clock when absent)
> > > - A hardware reset GPIO (active low)
> > >
>
> ...
>
> > > + reset-gpios:
> > > + description:
> > > + Optional GPIO for hardware reset. The line is active low.
> > > + maxItems: 1
> >
> > The datasheet I looked at has 4 gpio pins. You are calling out one
> > as reset. What happens if we don't have controllable supplies
> > and someone else (firmware for instance) configured GPIO0 to not
> > be reset?
> >
> > Anyhow, feels like this isn't a full description.
> >
>
> Indeed, this is not a full description. There are a total of 5 gpio pins to
> this device and each one has a fixed function, the USER_GPIO_CFG is
> more like an enable/disable register I would say. So RESET is either
> GPIO0 or idle to say so.
>
> Would you say that a description like this would be more suitable? :
>
> reset-gpios:
> description:
> Optional GPIO for hardware reset, active low. Of the device's
> five GPIO pins, this one is dedicated to the reset function,
> which can be independently enabled or idled via an on-chip
> register.
Only talk about this one in this description.
But add the pins with appropriate names for the functions the others
support. The GPIOX naming is silly given they are only good for
one thing each. Just make sure to add something in the comment
to refer to what they are called on the datasheet.
Jonathan
> maxItems: 1
>
next prev parent reply other threads:[~2026-10-21 19:07 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-15 9:32 [PATCH v3 0/6] iio: imu: Add support for the ADI ADIS16607 Radu Sabau via B4 Relay
2026-10-15 9:32 ` [PATCH v3 1/6] iio: imu: adis: Add optional self_test callback and fix custom reset dispatch Radu Sabau via B4 Relay
2026-10-15 9:40 ` sashiko-bot
2026-10-15 18:50 ` Andy Shevchenko
2026-10-17 1:06 ` Jonathan Cameron
2026-10-22 14:37 ` Nuno Sá
2026-10-15 9:32 ` [PATCH v3 2/6] dt-bindings: iio: imu: Add bindings for ADI ADIS16607 Radu Sabau via B4 Relay
2026-10-15 20:43 ` Rob Herring (Arm)
2026-10-17 1:11 ` Jonathan Cameron
2026-10-19 8:15 ` Sabau, Radu bogdan
2026-10-21 19:07 ` Jonathan Cameron [this message]
2026-10-15 9:33 ` [PATCH v3 3/6] iio: imu: Add driver for the " Radu Sabau via B4 Relay
2026-10-15 9:44 ` sashiko-bot
2026-10-15 19:04 ` Andy Shevchenko
2026-10-22 10:25 ` Sabau, Radu bogdan
2026-10-17 1:24 ` Jonathan Cameron
2026-10-22 14:37 ` Nuno Sá
2026-10-15 9:33 ` [PATCH v3 4/6] iio: imu: adis16607: Add FIFO-based buffered/triggered capture Radu Sabau via B4 Relay
2026-10-15 9:43 ` sashiko-bot
2026-10-17 1:41 ` Jonathan Cameron
2026-10-19 8:48 ` Sabau, Radu bogdan
2026-10-21 19:11 ` Jonathan Cameron
2026-10-22 14:37 ` Nuno Sá
2026-10-15 9:33 ` [PATCH v3 5/6] iio: imu: adis16607: Add external clock sync support Radu Sabau via B4 Relay
2026-10-17 2:02 ` Jonathan Cameron
2026-10-19 9:08 ` Sabau, Radu bogdan
2026-10-15 9:33 ` [PATCH v3 6/6] iio: imu: adis16607: Add calibration bias support for gyro/accel Radu Sabau via B4 Relay
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261021200708.5fc247c0@jic23-hlaptop \
--to=jic23@kernel.org \
--cc=Michael.Hennerich@analog.com \
--cc=Nuno.Sa@analog.com \
--cc=alexandru.ardelean@analog.com \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=devnull+radu.sabau.analog.com@kernel.org \
--cc=dlechner@baylibre.com \
--cc=krzk+dt@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=radu.sabau@analog.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox