From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthias Kaehlcke Subject: Re: [PATCH 2/3] arm64: dts: qcom: pm8998: Add adc node Date: Thu, 6 Sep 2018 13:36:15 -0700 Message-ID: <20180906203615.GD22824@google.com> References: <20180808191339.16875-1-mka@chromium.org> <20180808191339.16875-3-mka@chromium.org> <20180827171003.GU160295@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Return-path: Content-Disposition: inline In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Doug Anderson Cc: Andy Gross , David Brown , Rob Herring , Mark Rutland , Catalin Marinas , Will Deacon , linux-arm-msm , "open list:ARM/QUALCOMM SUPPORT" , devicetree@vger.kernel.org, Linux ARM , LKML , Siddartha Mohanadoss , Jonathan Cameron List-Id: devicetree@vger.kernel.org On Thu, Sep 06, 2018 at 11:34:32AM -0700, Doug Anderson wrote: > Hi, > > On Mon, Aug 27, 2018 at 10:10 AM, Matthias Kaehlcke wrote: > > On Fri, Aug 10, 2018 at 05:09:17PM -0700, Doug Anderson wrote: > >> Hi, > >> > >> On Wed, Aug 8, 2018 at 12:13 PM, Matthias Kaehlcke wrote: > >> > This adds the adc node to pm8998 based on the examples in the > >> > bindings. It also fixes the order of the included headers. > >> > > >> > Signed-off-by: Matthias Kaehlcke > >> > --- > >> > arch/arm64/boot/dts/qcom/pm8998.dtsi | 13 ++++++++++++- > >> > 1 file changed, 12 insertions(+), 1 deletion(-) > >> > > >> > diff --git a/arch/arm64/boot/dts/qcom/pm8998.dtsi b/arch/arm64/boot/dts/qcom/pm8998.dtsi > >> > index 92bed1e7d4bb..f70f6101bceb 100644 > >> > --- a/arch/arm64/boot/dts/qcom/pm8998.dtsi > >> > +++ b/arch/arm64/boot/dts/qcom/pm8998.dtsi > >> > @@ -1,8 +1,9 @@ > >> > // SPDX-License-Identifier: (GPL-2.0+ OR MIT) > >> > /* Copyright 2018 Google LLC. */ > >> > > >> > -#include > >> > +#include > >> > #include > >> > +#include > >> > > >> > &spmi_bus { > >> > pm8998_lsid0: pmic@0 { > >> > @@ -11,6 +12,16 @@ > >> > #address-cells = <1>; > >> > #size-cells = <0>; > >> > > >> > + pm8998_adc: adc@3100 { > >> > + compatible = "qcom,spmi-adc-rev2"; > >> > + reg = <0x3100>; > >> > + interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; > >> > + #address-cells = <1>; > >> > + #size-cells = <0>; > >> > + #io-channel-cells = <1>; > >> > + io-channel-ranges; > >> > + }; > >> > >> I'm a little confused about what the "io-channel-ranges" does here. > >> The documentation isn't clear at all to me for it. If I'm reading it > >> right it's also supposed to be for iio-consumers, but you're using it > >> in a provider. I see you copied this from the example. Maybe the > >> example is wrong? ...or I'm just confused... > > > > Yes, I copied it from the example, its use here is also not clear to > > me, other ADC providers like adc@126c0000 in exynos3250.dtsi or > > adc@180a6000 in bcm-cygnus.dtsi also specify it ... > > > > Siddartha/Jonathan, could you help to clarify if "io-channel-ranges" > > should really be specified here as the DT example suggests? > > Does everything work if you just remove the "io-channel-ranges"? Yes, the ADC channels are still available within the kernel and through sysfs and provide reasonable values. > We could remove it and always add it back in later if someone could > explain what it's for or if we find a reason why it was needed? ...or > we have any other ideas for how to get this resolved? :( Sounds good, I'll respin with 'io-channel-ranges' removed.