From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
To: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Cc: <sboyd@kernel.org>, <jic23@kernel.org>, <dlechner@baylibre.com>,
<nuno.sa@analog.com>, <andy@kernel.org>, <arnd@arndb.de>,
<gregkh@linuxfoundation.org>, <srini@kernel.org>,
<vkoul@kernel.org>, <kishon@kernel.org>, <sre@kernel.org>,
<krzysztof.kozlowski@linaro.org>, <u.kleine-koenig@baylibre.com>,
<linux-arm-msm@vger.kernel.org>, <linux-iio@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <linux-phy@lists.infradead.org>,
<linux-pm@vger.kernel.org>, <kernel@collabora.com>,
<wenst@chromium.org>, <casey.connolly@linaro.org>
Subject: Re: [PATCH v2 6/7] iio: adc: qcom-spmi-iadc: Migrate to devm_spmi_subdevice_alloc_and_add()
Date: Tue, 22 Jul 2025 15:17:08 +0100 [thread overview]
Message-ID: <20250722151708.00000873@huawei.com> (raw)
In-Reply-To: <20250722101317.76729-7-angelogioacchino.delregno@collabora.com>
On Tue, 22 Jul 2025 12:13:16 +0200
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> wrote:
> Some Qualcomm PMICs integrate an Current ADC device, reachable
> in a specific address range over SPMI.
>
> Instead of using the parent SPMI device (the main PMIC) as a kind
> of syscon in this driver, register a new SPMI sub-device and
> initialize its own regmap with this sub-device's specific base
> address, retrieved from the devicetree.
>
> This allows to stop manually adding the register base address to
> every R/W call in this driver, as this can be, and is now, handled
> by the regmap API instead.
>
> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Mostly fine. Trivial comments inline.
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
>
> static int iadc_reset(struct iadc_chip *iadc)
> @@ -270,7 +269,7 @@ static int iadc_poll_wait_eoc(struct iadc_chip *iadc, unsigned int interval_us)
>
> static int iadc_read_result(struct iadc_chip *iadc, u16 *data)
> {
> - return regmap_bulk_read(iadc->regmap, iadc->base + IADC_DATA, data, 2);
> + return regmap_bulk_read(iadc->regmap, IADC_DATA, data, 2);
Perhaps not the time for it, but I'd prefer that 2 replaced with sizeof(*data)
> }
>
> static int iadc_do_conversion(struct iadc_chip *iadc, int chan, u16 *data)
> @@ -483,12 +482,22 @@ static const struct iio_chan_spec iadc_channels[] = {
>
> static int iadc_probe(struct platform_device *pdev)
> {
> + struct regmap_config iadc_regmap_config = {
> + .reg_bits = 16,
> + .val_bits = 8,
> + .max_register = 0x100,
> + .fast_io = true,
> + };
> struct device_node *node = pdev->dev.of_node;
> struct device *dev = &pdev->dev;
> + struct spmi_subdevice *sub_sdev;
> + struct spmi_device *sparent;
> struct iio_dev *indio_dev;
> struct iadc_chip *iadc;
> int ret, irq_eoc;
> - u32 res;
> +
> + if (!dev->parent)
How would this happen?
> + return -ENODEV;
>
next prev parent reply other threads:[~2025-07-22 14:17 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-22 10:13 [PATCH v2 0/7] SPMI: Implement sub-devices and migrate drivers AngeloGioacchino Del Regno
2025-07-22 10:13 ` [PATCH v2 1/7] spmi: Implement spmi_subdevice_alloc_and_add() and devm variant AngeloGioacchino Del Regno
2025-07-22 14:09 ` Jonathan Cameron
2025-07-29 10:44 ` AngeloGioacchino Del Regno
2025-07-29 18:41 ` Jonathan Cameron
2025-07-23 8:37 ` kernel test robot
2025-07-23 9:52 ` kernel test robot
2025-07-22 10:13 ` [PATCH v2 2/7] nvmem: qcom-spmi-sdam: Migrate to devm_spmi_subdevice_alloc_and_add() AngeloGioacchino Del Regno
2025-07-22 11:11 ` Konrad Dybcio
2025-07-22 10:13 ` [PATCH v2 3/7] power: reset: qcom-pon: " AngeloGioacchino Del Regno
2025-07-22 16:05 ` Sebastian Reichel
2025-07-22 10:13 ` [PATCH v2 4/7] phy: qualcomm: eusb2-repeater: " AngeloGioacchino Del Regno
2025-07-23 10:02 ` kernel test robot
2025-07-22 10:13 ` [PATCH v2 5/7] misc: qcom-coincell: " AngeloGioacchino Del Regno
2025-07-22 10:13 ` [PATCH v2 6/7] iio: adc: qcom-spmi-iadc: " AngeloGioacchino Del Regno
2025-07-22 14:17 ` Jonathan Cameron [this message]
2025-07-22 10:13 ` [PATCH v2 7/7] iio: adc: qcom-spmi-iadc: Remove regmap R/W wrapper functions AngeloGioacchino Del Regno
2025-07-22 14:19 ` Jonathan Cameron
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=20250722151708.00000873@huawei.com \
--to=jonathan.cameron@huawei.com \
--cc=andy@kernel.org \
--cc=angelogioacchino.delregno@collabora.com \
--cc=arnd@arndb.de \
--cc=casey.connolly@linaro.org \
--cc=dlechner@baylibre.com \
--cc=gregkh@linuxfoundation.org \
--cc=jic23@kernel.org \
--cc=kernel@collabora.com \
--cc=kishon@kernel.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=linux-pm@vger.kernel.org \
--cc=nuno.sa@analog.com \
--cc=sboyd@kernel.org \
--cc=sre@kernel.org \
--cc=srini@kernel.org \
--cc=u.kleine-koenig@baylibre.com \
--cc=vkoul@kernel.org \
--cc=wenst@chromium.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
all inboxes | Powered by JetHome®