From: Matti Vaittinen <mazziesaccount@gmail.com>
To: Jonathan Cameron <jic23@kernel.org>
Cc: "Matti Vaittinen" <matti.vaittinen@fi.rohmeurope.com>,
"Lars-Peter Clausen" <lars@metafoo.de>,
"Michael Hennerich" <Michael.Hennerich@analog.com>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Liam Girdwood" <lgirdwood@gmail.com>,
"Mark Brown" <broonie@kernel.org>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH 0/2] iio: adc: ad7476: Simplifications
Date: Mon, 4 Aug 2025 08:29:06 +0300 [thread overview]
Message-ID: <0795e107-1b63-4656-be3e-3ea7034876ae@gmail.com> (raw)
In-Reply-To: <20250802115923.4521fa9d@jic23-huawei>
On 02/08/2025 13:59, Jonathan Cameron wrote:
> On Fri, 1 Aug 2025 13:06:46 +0300
> Matti Vaittinen <mazziesaccount@gmail.com> wrote:
>
>> This series suggests some simplifications to the ad7476 ADC. It is
>> currently 100% untested, and shouldn't be merged as is. I'd like to hear
>> opinions on these changes before adding support to the ROHM BD79105 ADC.
>>
>> Intention of the patch 1 is pretty trivial. I'd just like to hear if
>> people think the enum + ID table approach is preferred over direct
>> pointers to IC specific structs in SPI device's driver_data.
>
> Definitely prefer direct pointers as you have here.
>
>>
>> Real reason for the RFC version is the patch 2. It aims to clear the
>> supply handling logic. I did also an alternate version which requires
>> the names of the regulators to be provided in the chip_data:
>> https://github.com/M-Vaittinen/linux/commit/cf5b3078
>>
>> I believe the version in the link --^
>> is clearer, but it can potentially help people to add issues with supply
>> enable ordering.
>>
>> I can't still say if the patch 2 contained in this series is better, or
>> if the one behind the link is better way to go. So, RFC it is :)
>
> I missed this (who reads cover letters?) in first look. Anyhow, having
> taken a quick look at that alternative I slightly prefer the one you have here.
I need to ask if the "here" refers to the patch contained in this series
(let's say it's version 1)
or the
https://github.com/M-Vaittinen/linux/commit/cf5b3078
(which I shall call version 2 from now on).
> Even if we have supply ordering issues, it seems like they are unlikely to
> vary randomly across supported parts so should be easy to incorporate those
> rules with the approach here if needed.
Reason why I mentioned the supply ordering is, that (AFAIK) enabling the
supplies in wrong order may silently damage IC's in the long run. Nasty
problems which may randomly manifest themselves only after a longer
period of time - breaking the hardware with seemingly no reason.
As far as I know, the usual case is that the VCC (or VDD or
whatchamacallit) should be enabled prior V_IO (Vdrive or
whatchamacallit) or Vref. The version 1 (as well as the currently merged
driver) do always enable VCC first. The version 2 does first bulk-enable
to non VREF supplies and only then enables the VREF. Some ICs use VCC as
VREF, which might result the VCC being enabled only after other
supplies, but I didn't notice any in-tree supported ICs having both the
VCC as VREF and separate Vdrive. Also, I have no proper information
regarding _how_ unsafe it is to do enabling at wrong order. I suppose
different ICs can be more or less tolerant towards this.
Hence, I assume this is rather safe. Problem being "assume" and "rather"
- which is why I wanted to have another opinion as well :)
Thanks for the feedback all!
Yours,
-- Matti
PS. Anyone planning to attend the ELCE at Amsterdam this autumn?
prev parent reply other threads:[~2025-08-04 5:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-01 10:06 Matti Vaittinen
2025-08-01 10:07 ` [RFC PATCH 1/2] iio: adc: ad7476: Simplify chip type detection Matti Vaittinen
2025-08-01 11:09 ` Jonathan Cameron
2025-08-04 5:57 ` Matti Vaittinen
2025-08-04 8:33 ` Andy Shevchenko
2025-08-01 22:01 ` Andy Shevchenko
2025-08-04 5:56 ` Matti Vaittinen
2025-08-04 8:31 ` Andy Shevchenko
2025-08-01 10:07 ` [RFC PATCH 2/2] iio: adc: ad7476: Simplify scale handling Matti Vaittinen
2025-08-01 11:12 ` Jonathan Cameron
2025-08-05 16:09 ` David Lechner
2025-08-06 5:08 ` Matti Vaittinen
2025-08-01 12:23 ` [RFC PATCH 0/2] iio: adc: ad7476: Simplifications Nuno Sá
2025-08-02 10:59 ` Jonathan Cameron
2025-08-04 5:29 ` Matti Vaittinen [this message]
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=0795e107-1b63-4656-be3e-3ea7034876ae@gmail.com \
--to=mazziesaccount@gmail.com \
--cc=Michael.Hennerich@analog.com \
--cc=andy@kernel.org \
--cc=broonie@kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=lars@metafoo.de \
--cc=lgirdwood@gmail.com \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=matti.vaittinen@fi.rohmeurope.com \
--cc=nuno.sa@analog.com \
/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
all inboxes | Powered by JetHome®