From: David Lechner <dlechner@baylibre.com>
To: Jorge Marques <gastmaier@gmail.com>
Cc: "Jorge Marques" <jorge.marques@analog.com>,
"Jonathan Cameron" <jic23@kernel.org>,
"Lars-Peter Clausen" <lars@metafoo.de>,
"Michael Hennerich" <Michael.Hennerich@analog.com>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Jonathan Corbet" <corbet@lwn.net>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Uwe Kleine-König" <ukleinek@kernel.org>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org, linux-doc@vger.kernel.org,
linux-pwm@vger.kernel.org
Subject: Re: [PATCH v2 5/5] iio: adc: add support for ad4052
Date: Mon, 2 Jun 2025 10:33:36 -0500 [thread overview]
Message-ID: <008ea5d1-52f1-44dc-8576-d8bdd5c5beda@baylibre.com> (raw)
In-Reply-To: <zofjbh4yvtz4sfj2t6cpdohqqlrgwqdqtiahpvalbbfv2tdqqi@g5zpdp3zn4gb>
On 6/2/25 6:16 AM, Jorge Marques wrote:
> Hi David,
>
> On Fri, Apr 25, 2025 at 06:13:48PM -0500, David Lechner wrote:
>> On 4/22/25 6:34 AM, Jorge Marques wrote:
...
>>> +static int ad4052_probe(struct spi_device *spi)
>>> +{
>>> + const struct ad4052_chip_info *chip;
>>> + struct device *dev = &spi->dev;
>>> + struct iio_dev *indio_dev;
>>> + struct ad4052_state *st;
>>> + int ret = 0;
>>> +
>>> + chip = spi_get_device_match_data(spi);
>>> + if (!chip)
>>> + return dev_err_probe(dev, -ENODEV,
>>> + "Could not find chip info data\n");
>>> +
>>> + indio_dev = devm_iio_device_alloc(dev, sizeof(*st));
>>> + if (!indio_dev)
>>> + return -ENOMEM;
>>> +
>>> + st = iio_priv(indio_dev);
>>> + st->spi = spi;
>>> + spi_set_drvdata(spi, st);
>>> + init_completion(&st->completion);
>>> +
>>> + st->regmap = devm_regmap_init_spi(spi, &ad4052_regmap_config);
>>> + if (IS_ERR(st->regmap))
>>> + return dev_err_probe(dev, PTR_ERR(st->regmap),
>>> + "Failed to initialize regmap\n");
>>> +
>>> + st->mode = AD4052_SAMPLE_MODE;
>>> + st->wait_event = false;
>>> + st->chip = chip;
>>> + st->grade = chip->prod_id <= 0x75 ? AD4052_2MSPS : AD4052_500KSPS;
>>> + st->oversampling_frequency = AD4052_FS_OFFSET(st->grade);
>>> + st->events_frequency = AD4052_FS_OFFSET(st->grade);
>>
>> Somewhere around here, we should be turning on the power supplies. Also, it
>> looks like we need some special handling to get the reference voltage. If there
>> is a supply connected to REF, use that, if not, use VDD which requires writing
>> to a register to let the chip know.
>>
> Yes, v3 will add regulators.
> Vref can be sourced from either REF (default) or VDD.
> So the idea is, if REF node not provided, set VDD as REF?
>
Yes, you can do this with devm_regulator_get_enable_read_voltage() if it
returns -ENODEV, for the REF supply, then call it again on the VDD supply.
next prev parent reply other threads:[~2025-06-02 15:33 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-22 11:34 [PATCH v2 0/5] Add support for AD4052 device family Jorge Marques
2025-04-22 11:34 ` [PATCH v2 1/5] Documentation: ABI: add oversampling frequency in sysfs-bus-iio Jorge Marques
2025-04-22 15:50 ` Andy Shevchenko
2025-04-29 13:47 ` Jorge Marques
2025-04-29 15:40 ` David Lechner
2025-04-29 22:03 ` Andy Shevchenko
2025-05-05 12:39 ` Jonathan Cameron
2025-04-25 21:16 ` David Lechner
2025-04-29 13:47 ` Jorge Marques
2025-04-22 11:34 ` [PATCH v2 2/5] iio: code: mark iio_dev as const in iio_buffer_enabled Jorge Marques
2025-04-22 15:51 ` Andy Shevchenko
2025-04-26 15:45 ` Jonathan Cameron
2025-06-02 9:48 ` Jorge Marques
2025-04-22 11:34 ` [PATCH v2 3/5] dt-bindings: iio: adc: Add adi,ad4052 Jorge Marques
2025-04-25 20:58 ` Rob Herring (Arm)
2025-04-25 22:50 ` David Lechner
2025-04-29 13:48 ` Jorge Marques
2025-04-29 15:45 ` David Lechner
2025-06-02 9:17 ` Jorge Marques
2025-06-02 15:17 ` David Lechner
2025-06-02 16:32 ` Jorge Marques
2025-06-02 17:23 ` David Lechner
2025-06-03 7:29 ` Jorge Marques
2025-06-03 13:27 ` David Lechner
2025-04-22 11:34 ` [PATCH v2 4/5] docs: iio: new docs for ad4052 driver Jorge Marques
2025-04-25 21:44 ` David Lechner
2025-04-29 13:49 ` Jorge Marques
2025-04-29 15:50 ` David Lechner
2025-04-22 11:34 ` [PATCH v2 5/5] iio: adc: add support for ad4052 Jorge Marques
2025-04-22 16:33 ` Andy Shevchenko
2025-04-29 13:49 ` Jorge Marques
2025-04-25 23:13 ` David Lechner
2025-06-02 11:16 ` Jorge Marques
2025-06-02 15:33 ` David Lechner [this message]
2025-04-26 16:03 ` Jonathan Cameron
2025-06-02 10:50 ` Jorge Marques
2025-05-16 10:11 ` Uwe Kleine-König
2025-06-02 10:38 ` Jorge Marques
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=008ea5d1-52f1-44dc-8576-d8bdd5c5beda@baylibre.com \
--to=dlechner@baylibre.com \
--cc=Michael.Hennerich@analog.com \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=corbet@lwn.net \
--cc=devicetree@vger.kernel.org \
--cc=gastmaier@gmail.com \
--cc=jic23@kernel.org \
--cc=jorge.marques@analog.com \
--cc=krzk+dt@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-doc@vger.kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pwm@vger.kernel.org \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
--cc=ukleinek@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