Re: [PATCH v2 1/1] dt-bindings: iio: imx8qxp-adc: add missing vref-supply

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 02 May 2023 08:34:12 +0200
Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx> wrote:

> Am Sonntag, 30. April 2023, 19:15:58 CEST schrieb Jonathan Cameron:
> > On Mon, 24 Apr 2023 11:23:12 +0200
> > 
> > Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx> wrote:  
> > > Although this property is used right now for IIO_CHAN_INFO_SCALE,
> > > this ADC has two internal reference voltages, which the driver currently
> > > doesn't make use of.
> > > 
> > > Fixes: db73419d8c06 ("dt-bindings: iio: adc: Add binding documentation for
> > > NXP IMX8QXP ADC") Signed-off-by: Alexander Stein
> > > <alexander.stein@xxxxxxxxxxxxxxx>  
> > 
> > Interesting that we are talking her only about vrefh, what about vrefp?
> > I guess the assumption is that will be wired to 0V?  
> 
> What's vrefp? The only other signal related to ADC is vrefl.

oops. Indeed vrefl.

> 
> > The first reference I found didn't seem to imply that was necessarily the
> > case. https://www.mouser.com/pdfDocs/IMX8QXPAEC.pdf  
> 
> Assuming you are talking about vrefh and vrefl, how is this a problem? Even if 
> vrefl is not 0V, the voltage difference is what the ADC uses as reference 
> voltage, so this should be supplied in the DT then.

Those two voltages can be supplied by entirely unrelated regulators (well
probably high precision references, but represented as regulators).  Those
may well need turning on.

I don't think there is any way to define that in DT without the consumer (here
the ADC) taking two different supplies.

Maybe that's a usecase no one cares about though and they will either supply
this with fixed regulators, or with a single precision reference supplying
both voltages.

Also, assuming these are used in a moderately normal reference way, if
vrefl is not 0V the driver should be supplying offset information to
consumers of this channel (userspace etc) to account for that.

meh. I don't care that much if this isn't a case we actually need to care about.
I just found it interesting the datasheet didn't talk about these as either
a differential pair (so balanced) or a reference 0V and vref.

I'll apply this as it stands.

Applied to the fixes-togreg branch of iio.git

Thanks,

Jonathan


> 
> Best regards
> Alexander
> 
> > Jonathan
> >   
> > > ---
> > > Thanks for your inputs. This improved descritpion should make it clear
> > > that this property is only about the external reference voltage, not
> > > about the optional, internal voltages.
> > > 
> > > Changes in v2:
> > > * Improved commit message subject as suggested
> > > * Add hint about feature flag regarding multiple, internal, reference
> > > 
> > >   voltages
> > >  
> > >  .../devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml       | 7 +++++++
> > >  1 file changed, 7 insertions(+)
> > > 
> > > diff --git
> > > a/Documentation/devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml
> > > b/Documentation/devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml index
> > > 63369ba388e4..878e67054d7c 100644
> > > --- a/Documentation/devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml
> > > +++ b/Documentation/devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml
> > > 
> > > @@ -39,6 +39,12 @@ properties:
> > >    power-domains:
> > >      maxItems: 1
> > > 
> > > +  vref-supply:
> > > +    description: |
> > > +      External ADC reference voltage supply on VREFH pad. If VERID[MVI]
> > > is
> > > +      set, there are additional, internal reference voltages selectable.
> > > +      VREFH1 is always from VREFH pad.
> > > +
> > > 
> > >    "#io-channel-cells":
> > >      const: 1
> > > 
> > > @@ -72,6 +78,7 @@ examples:
> > >              assigned-clocks = <&clk IMX_SC_R_ADC_0>;
> > >              assigned-clock-rates = <24000000>;
> > >              power-domains = <&pd IMX_SC_R_ADC_0>;
> > > 
> > > +            vref-supply = <&reg_1v8>;
> > > 
> > >              #io-channel-cells = <1>;
> > >          
> > >          };
> > >      
> > >      };  
> 
> 




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux