From: Jonathan Cameron <jic23@kernel.org>
To: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
agross@kernel.org, andersson@kernel.org, lumag@kernel.org,
dmitry.baryshkov@oss.qualcomm.com, konradybcio@kernel.org,
daniel.lezcano@linaro.org, sboyd@kernel.org, amitk@kernel.org,
thara.gopinath@gmail.com, lee@kernel.org, rafael@kernel.org,
subbaraman.narayanamurthy@oss.qualcomm.com,
david.collins@oss.qualcomm.com,
anjelique.melendez@oss.qualcomm.com,
kamal.wadhwa@oss.qualcomm.com, rui.zhang@intel.com,
lukasz.luba@arm.com, devicetree@vger.kernel.org,
linux-arm-msm@vger.kernel.org, linux-iio@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
cros-qcom-dts-watchers@chromium.org, quic_kotarake@quicinc.com,
neil.armstrong@linaro.org, stephan.gerhold@linaro.org
Subject: Re: [PATCH V10 3/4] iio: adc: Add support for QCOM PMIC5 Gen3 ADC
Date: Sat, 7 Feb 2026 16:56:38 +0000 [thread overview]
Message-ID: <20260207165638.0ed27302@jic23-huawei> (raw)
In-Reply-To: <6012ad64-3a10-4f05-9f37-f2d0c36df582@oss.qualcomm.com>
On Fri, 6 Feb 2026 18:45:02 +0530
Jishnu Prakash <jishnu.prakash@oss.qualcomm.com> wrote:
> Hi Jonathan,
>
> On 1/31/2026 11:09 PM, Jonathan Cameron wrote:
> > On Fri, 30 Jan 2026 17:24:20 +0530
> > Jishnu Prakash <jishnu.prakash@oss.qualcomm.com> wrote:
> >
> >> The ADC architecture on PMIC5 Gen3 is similar to that on PMIC5 Gen2,
> >> with all SW communication to ADC going through PMK8550 which
> >> communicates with other PMICs through PBS.
> >>
> >> One major difference is that the register interface used here is that
> >> of an SDAM (Shared Direct Access Memory) peripheral present on PMK8550.
> >> There may be more than one SDAM used for ADC5 Gen3 and each has eight
> >> channels, which may be used for either immediate reads (same functionality
> >> as previous PMIC5 and PMIC5 Gen2 ADC peripherals) or recurring measurements
> >> (same as ADC_TM functionality).
> >>
> >> By convention, we reserve the first channel of the first SDAM for all
> >> immediate reads and use the remaining channels across all SDAMs for
> >> ADC_TM monitoring functionality.
> >>
> >> Add support for PMIC5 Gen3 ADC driver for immediate read functionality.
> >> ADC_TM is implemented as an auxiliary thermal driver under this ADC
> >> driver.
> >>
> >> Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
> > Hi Jishnu
> >
> > Whilst there are a couple of comments below, I think this is ready to go.
> > Unfortunately this is just a few days too late to merge for this coming
> > cycle as I need to send the IIO pull request today or tomorrow (due to going
> > through char-misc) so this would get no soak time in next.
> >
> > Also, I'm not sure how we actually want to merge this given close coupling with
> > the thermal driver. Perhaps best bet is I do an immutable branch of next rc1
> > once available that we pull into both trees. That would have the first 3 patches
> > on it.
> >
> > Jonathan
> >
> >> diff --git a/drivers/iio/adc/qcom-spmi-adc5-gen3.c b/drivers/iio/adc/qcom-spmi-adc5-gen3.c
> >> new file mode 100644
> >> index 000000000000..f8168a14b907
> >> --- /dev/null
> >> +++ b/drivers/iio/adc/qcom-spmi-adc5-gen3.c
> >> @@ -0,0 +1,860 @@
> >> +// SPDX-License-Identifier: GPL-2.0-only
> >> +/*
> >> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
> >> + */
> >> +
> >> +#include <linux/auxiliary_bus.h>
> >> +#include <linux/bitfield.h>
> >> +#include <linux/bits.h>
> >> +#include <linux/cleanup.h>
> >> +#include <linux/completion.h>
> >> +#include <linux/container_of.h>
> >> +#include <linux/delay.h>
> >> +#include <linux/device.h>
> > If you happen to be spinning again for some reason, I think you might be able to replace
> > this device.h include with a forwards declaration of struct device;
> >
> > If you can that would be good as we are trying to reduce includes of these
> > mega headers.
>
> I have a query about this. From what I understand, having a forwards
> declaration of struct device may be valid if we only use the device struct
> definition directly, but not if we try to dereference any of the struct's members.
Ah my mistake. I missed the dereferences! You are correct to include
device.h.
>
> I see that at some places in this file(qcom-spmi-adc5-gen3.c), we dereference
> the device's parent:
>
>
> One example:
> void adc5_gen3_mutex_lock(struct device *dev)
> {
> struct iio_dev *indio_dev = dev_get_drvdata(dev->parent);
> ....
>
>
> Another example:
> static int adc5_gen3_probe(struct platform_device *pdev)
> {
> struct device *dev = &pdev->dev;
> regmap = dev_get_regmap(dev->parent, NULL);
> ....
>
> We do not dereference the device's parent in the other new files
> (qcom-adc5-gen3-common.h and qcom-spmi-adc-tm5-gen3.c), so
> I can drop the device.h inclusion and use a forward declaration
> of struct device in them.
>
>
> In this file, what would you suggest I do, keep or drop the
> device.h inclusion?
Keep it here given the dereferences you pointed out.
>
> I do see that device.h is included in auxiliary_bus.h,
> iio.h and platform_device.h, so chances may be low that
> it is somehow dropped later from all of those files and
> will need to be explicitly included here.
>
>
> Also, is it alright if I push the next series to address
> your comments immediately? Would you be able to include patches 1-3
> in the immutable branch you mentioned, once it's available?
It's fine to post a v11. I'll only be building that immutable tree
after 7.0-rc1 is out (or 6.20-rc1 depending on Linus' decision on naming
for the cycle that is about to start)
Thanks,
Jonathan
next prev parent reply other threads:[~2026-02-07 16:56 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-30 11:54 [PATCH V10 0/4] Add support for QCOM SPMI PMIC5 Gen3 ADC Jishnu Prakash
2026-01-30 11:54 ` [PATCH V10 1/4] dt-bindings: iio: adc: Split out QCOM VADC channel properties Jishnu Prakash
2026-01-30 11:54 ` [PATCH V10 2/4] dt-bindings: iio: adc: Add support for QCOM PMIC5 Gen3 ADC Jishnu Prakash
2026-01-30 11:54 ` [PATCH V10 3/4] " Jishnu Prakash
2026-01-31 17:39 ` Jonathan Cameron
2026-02-06 13:15 ` Jishnu Prakash
2026-02-07 16:56 ` Jonathan Cameron [this message]
2026-02-23 12:19 ` Jishnu Prakash
2026-02-23 20:31 ` Jonathan Cameron
2026-03-17 13:33 ` Jishnu Prakash
2026-03-17 13:39 ` Daniel Lezcano
2026-01-30 11:54 ` [PATCH V10 4/4] thermal: qcom: add support for PMIC5 Gen3 ADC thermal monitoring Jishnu Prakash
2026-01-31 17:54 ` Jonathan Cameron
2026-02-06 13:15 ` Jishnu Prakash
2026-02-07 16:55 ` Jonathan Cameron
2026-04-09 6:12 ` Daniel Lezcano
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=20260207165638.0ed27302@jic23-huawei \
--to=jic23@kernel.org \
--cc=agross@kernel.org \
--cc=amitk@kernel.org \
--cc=andersson@kernel.org \
--cc=anjelique.melendez@oss.qualcomm.com \
--cc=conor+dt@kernel.org \
--cc=cros-qcom-dts-watchers@chromium.org \
--cc=daniel.lezcano@linaro.org \
--cc=david.collins@oss.qualcomm.com \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=jishnu.prakash@oss.qualcomm.com \
--cc=kamal.wadhwa@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lee@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lukasz.luba@arm.com \
--cc=lumag@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=quic_kotarake@quicinc.com \
--cc=rafael@kernel.org \
--cc=robh@kernel.org \
--cc=rui.zhang@intel.com \
--cc=sboyd@kernel.org \
--cc=stephan.gerhold@linaro.org \
--cc=subbaraman.narayanamurthy@oss.qualcomm.com \
--cc=thara.gopinath@gmail.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